first commit

This commit is contained in:
CHIEFSOFT\ameye
2024-06-08 17:09:23 -04:00
commit df3a033196
17887 changed files with 8637778 additions and 0 deletions
+13
View File
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE install SYSTEM "../dtd/install.dtd">
<!--
* defaultPluginInstall.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Empty dummy installation descriptor file for backwards compatible plug-in installation.
-->
<install />
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0"?>
<!--
* xml/importexport.xsd
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Schema describing common XML import/export elements shared across PKP applications
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://pkp.sfu.ca" xmlns:pkp="http://pkp.sfu.ca" elementFormDefault="qualified">
<!-- Identifies a particular I18N locale, e.g. en -->
<simpleType name="locale">
<restriction base="string">
<pattern value="([a-z]{2,3})((_[A-Z]{2})?)(@[a-z]{0,})?" />
</restriction>
</simpleType>
<!-- A text node with an attribute describing its locale, e.g. title -->
<complexType name="localizedNode" mixed="true">
<attribute name="locale" type="pkp:locale" use="optional" />
</complexType>
</schema>
+659
View File
@@ -0,0 +1,659 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
XSL Transform to convert OAI 2.0 responses into XHTML
By Christopher Gutteridge, University of Southampton
-->
<!--
Copyright (c) 2000-2004 University of Southampton, UK. SO17 1BJ.
EPrints 2 is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
EPrints 2 is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with EPrints 2; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-->
<!--
All the elements really needed for EPrints are done but if
you want to use this XSL for other OAI archive you may want
to make some minor changes or additions.
Not Done
The 'about' section of 'record'
The 'compession' part of 'identify'
The optional attributes of 'resumptionToken'
The optional 'setDescription' container of 'set'
All the links just link to oai_dc versions of records.
-->
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:oai="http://www.openarchives.org/OAI/2.0/"
>
<xsl:output method="html"/>
<xsl:template name="style">
td.value {
vertical-align: top;
padding-left: 1em;
padding: 3px;
}
td.key {
background-color: #e0e0ff;
padding: 3px;
text-align: right;
border: 1px solid #c0c0c0;
white-space: nowrap;
font-weight: bold;
vertical-align: top;
}
.dcdata td.key {
background-color: #ffffe0;
}
body {
margin: 1em 2em 1em 2em;
}
h1, h2, h3 {
font-family: sans-serif;
clear: left;
}
h1 {
padding-bottom: 4px;
margin-bottom: 0px;
}
h2 {
margin-bottom: 0.5em;
}
h3 {
margin-bottom: 0.3em;
font-size: medium;
}
.link {
border: 1px outset #88f;
background-color: #c0c0ff;
padding: 1px 4px 1px 4px;
font-size: 80%;
text-decoration: none;
font-weight: bold;
font-family: sans-serif;
color: black;
}
.link:hover {
color: red;
}
.link:active {
color: red;
border: 1px inset #88f;
background-color: #a0a0df;
}
.oaiRecord, .oaiRecordTitle {
background-color: #f0f0ff;
border-style: solid;
border-color: #d0d0d0;
}
h2.oaiRecordTitle {
background-color: #e0e0ff;
font-size: medium;
font-weight: bold;
padding: 10px;
border-width: 2px 2px 0px 2px;
margin: 0px;
}
.oaiRecord {
margin-bottom: 3em;
border-width: 2px;
padding: 10px;
}
.results {
margin-bottom: 1.5em;
}
ul.quicklinks {
margin-top: 2px;
padding: 4px;
text-align: left;
border-bottom: 2px solid #ccc;
border-top: 2px solid #ccc;
clear: left;
}
ul.quicklinks li {
font-size: 80%;
display: inline;
list-stlye: none;
font-family: sans-serif;
}
p.intro {
font-size: 80%;
}
<xsl:call-template name='xmlstyle' />
</xsl:template>
<xsl:variable name='identifier' select="substring-before(concat(substring-after(/oai:OAI-PMH/oai:request,'identifier='),'&amp;'),'&amp;')" />
<xsl:template match="/">
<html>
<head>
<title>OAI 2.0 Request Results</title>
<style><xsl:call-template name="style"/></style>
</head>
<body>
<h1>OAI 2.0 Request Results</h1>
<xsl:call-template name="quicklinks"/>
<p class="intro">You are viewing an HTML version of the XML OAI response. To see the underlying XML use your web browsers view source option. More information about this XSLT is at the <a href="#moreinfo">bottom of the page</a>.</p>
<xsl:apply-templates select="/oai:OAI-PMH" />
<xsl:call-template name="quicklinks"/>
<h2><a name="moreinfo">About the XSLT</a></h2>
<p>An XSLT file has converted the <a href="http://www.openarchives.org">OAI-PMH 2.0</a> responses into XHTML which looks nice in a browser which supports XSLT such as Mozilla, Firebird and Internet Explorer. The XSLT file was created by <a href="http://www.ecs.soton.ac.uk/people/cjg">Christopher Gutteridge</a> at the University of Southampton as part of the <a href="http://software.eprints.org">GNU EPrints system</a>, and is freely redistributable under the <a href="http://www.gnu.org">GPL</a>.</p><p>If you want to use the XSL file on your own OAI interface you may but due to the way XSLT works you must install the XSL file on the same server as the OAI script, you can't just link to this copy.</p><p>For more information or to download the XSL file please see the <a href="http://software.eprints.org/xslt.php">OAI to XHTML XSLT homepage</a>.</p>
</body>
</html>
</xsl:template>
<xsl:template name="quicklinks">
<ul class="quicklinks">
<li><a href="?verb=Identify">Identify</a> | </li>
<li><a href="?verb=ListRecords&amp;metadataPrefix=oai_dc">ListRecords</a> | </li>
<li><a href="?verb=ListSets">ListSets</a> | </li>
<li><a href="?verb=ListMetadataFormats">ListMetadataFormats</a> | </li>
<li><a href="?verb=ListIdentifiers&amp;metadataPrefix=oai_dc">ListIdentifiers</a></li>
</ul>
</xsl:template>
<xsl:template match="/oai:OAI-PMH">
<table class="values">
<tr><td class="key">Datestamp of response</td>
<td class="value"><xsl:value-of select="oai:responseDate"/></td></tr>
<tr><td class="key">Request URL</td>
<td class="value"><xsl:value-of select="oai:request"/></td></tr>
</table>
<!-- verb: [<xsl:value-of select="oai:request/@verb" />]<br /> -->
<xsl:choose>
<xsl:when test="oai:error">
<h2>OAI Error(s)</h2>
<p>The request could not be completed due to the following error or errors.</p>
<div class="results">
<xsl:apply-templates select="oai:error"/>
</div>
</xsl:when>
<xsl:otherwise>
<p>Request was of type <xsl:value-of select="oai:request/@verb"/>.</p>
<div class="results">
<xsl:apply-templates select="oai:Identify" />
<xsl:apply-templates select="oai:GetRecord"/>
<xsl:apply-templates select="oai:ListRecords"/>
<xsl:apply-templates select="oai:ListSets"/>
<xsl:apply-templates select="oai:ListMetadataFormats"/>
<xsl:apply-templates select="oai:ListIdentifiers"/>
</div>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<!-- ERROR -->
<xsl:template match="/oai:OAI-PMH/oai:error">
<table class="values">
<tr><td class="key">Error Code</td>
<td class="value"><xsl:value-of select="@code"/></td></tr>
</table>
<p class="error"><xsl:value-of select="." /></p>
</xsl:template>
<!-- IDENTIFY -->
<xsl:template match="/oai:OAI-PMH/oai:Identify">
<table class="values">
<tr><td class="key">Repository Name</td>
<td class="value"><xsl:value-of select="oai:repositoryName"/></td></tr>
<tr><td class="key">Base URL</td>
<td class="value"><xsl:value-of select="oai:baseURL"/></td></tr>
<tr><td class="key">Protocol Version</td>
<td class="value"><xsl:value-of select="oai:protocolVersion"/></td></tr>
<tr><td class="key">Earliest Datestamp</td>
<td class="value"><xsl:value-of select="oai:earliestDatestamp"/></td></tr>
<tr><td class="key">Deleted Record Policy</td>
<td class="value"><xsl:value-of select="oai:deletedRecord"/></td></tr>
<tr><td class="key">Granularity</td>
<td class="value"><xsl:value-of select="oai:granularity"/></td></tr>
<xsl:apply-templates select="oai:adminEmail"/>
</table>
<xsl:apply-templates select="oai:description"/>
<!--no warning about unsupported descriptions -->
</xsl:template>
<xsl:template match="/oai:OAI-PMH/oai:Identify/oai:adminEmail">
<tr><td class="key">Admin Email</td>
<td class="value"><xsl:value-of select="."/></td></tr>
</xsl:template>
<!--
Identify / Unsupported Description
-->
<xsl:template match="oai:description/*" priority="-100">
<h2>Unsupported Description Type</h2>
<p>The XSL currently does not support this type of description.</p>
<div class="xmlSource">
<xsl:apply-templates select="." mode='xmlMarkup' />
</div>
</xsl:template>
<!--
Identify / OAI-Identifier
-->
<xsl:template match="id:oai-identifier" xmlns:id="http://www.openarchives.org/OAI/2.0/oai-identifier">
<h2>OAI-Identifier</h2>
<table class="values">
<tr><td class="key">Scheme</td>
<td class="value"><xsl:value-of select="id:scheme"/></td></tr>
<tr><td class="key">Repository Identifier</td>
<td class="value"><xsl:value-of select="id:repositoryIdentifier"/></td></tr>
<tr><td class="key">Delimiter</td>
<td class="value"><xsl:value-of select="id:delimiter"/></td></tr>
<tr><td class="key">Sample OAI Identifier</td>
<td class="value"><xsl:value-of select="id:sampleIdentifier"/></td></tr>
</table>
</xsl:template>
<!--
Identify / EPrints
-->
<xsl:template match="ep:eprints" xmlns:ep="http://www.openarchives.org/OAI/1.1/eprints">
<h2>EPrints Description</h2>
<h3>Content</h3>
<xsl:apply-templates select="ep:content"/>
<xsl:if test="ep:submissionPolicy">
<h3>Submission Policy</h3>
<xsl:apply-templates select="ep:submissionPolicy"/>
</xsl:if>
<h3>Metadata Policy</h3>
<xsl:apply-templates select="ep:metadataPolicy"/>
<h3>Data Policy</h3>
<xsl:apply-templates select="ep:dataPolicy"/>
<xsl:if test="ep:content">
<h3>Content</h3>
<xsl:apply-templates select="ep:content"/>
</xsl:if>
<xsl:apply-templates select="ep:comment"/>
</xsl:template>
<xsl:template match="ep:content|ep:dataPolicy|ep:metadataPolicy|ep:submissionPolicy" xmlns:ep="http://www.openarchives.org/OAI/1.1/eprints">
<xsl:if test="ep:text">
<p><xsl:value-of select="ep:text" /></p>
</xsl:if>
<xsl:if test="ep:URL">
<div><a href="{ep:URL}"><xsl:value-of select="ep:URL" /></a></div>
</xsl:if>
</xsl:template>
<xsl:template match="ep:comment" xmlns:ep="http://www.openarchives.org/OAI/1.1/eprints">
<h3>Comment</h3>
<div><xsl:value-of select="."/></div>
</xsl:template>
<!--
Identify / Friends
-->
<xsl:template match="fr:friends" xmlns:fr="http://www.openarchives.org/OAI/2.0/friends/">
<h2>Friends</h2>
<ul>
<xsl:apply-templates select="fr:baseURL"/>
</ul>
</xsl:template>
<xsl:template match="fr:baseURL" xmlns:fr="http://www.openarchives.org/OAI/2.0/friends/">
<li><xsl:value-of select="."/>
<xsl:text> </xsl:text>
<a class="link" href="{.}?verb=Identify">Identify</a></li>
</xsl:template>
<!--
Identify / Branding
-->
<xsl:template match="br:branding" xmlns:br="http://www.openarchives.org/OAI/2.0/branding/">
<h2>Branding</h2>
<xsl:apply-templates select="br:collectionIcon"/>
<xsl:apply-templates select="br:metadataRendering"/>
</xsl:template>
<xsl:template match="br:collectionIcon" xmlns:br="http://www.openarchives.org/OAI/2.0/branding/">
<h3>Icon</h3>
<xsl:choose>
<xsl:when test="link!=''">
<a href="{br:link}"><img src="{br:url}" alt="{br:title}" width="{br:width}" height="{br:height}" border="0" /></a>
</xsl:when>
<xsl:otherwise>
<img src="{br:url}" alt="{br:title}" width="{br:width}" height="{br:height}" border="0" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="br:metadataRendering" xmlns:br="http://www.openarchives.org/OAI/2.0/branding/">
<h3>Metadata Rendering Rule</h3>
<table class="values">
<tr><td class="key">URL</td>
<td class="value"><xsl:value-of select="."/></td></tr>
<tr><td class="key">Namespace</td>
<td class="value"><xsl:value-of select="@metadataNamespace"/></td></tr>
<tr><td class="key">Mime Type</td>
<td class="value"><xsl:value-of select="@mimetype"/></td></tr>
</table>
</xsl:template>
<!--
Identify / Gateway
-->
<xsl:template match="gw:gateway" xmlns:gw="http://www.openarchives.org/OAI/2.0/gateway/x">
<h2>Gateway Information</h2>
<table class="values">
<tr><td class="key">Source</td>
<td class="value"><xsl:value-of select="gw:source"/></td></tr>
<tr><td class="key">Description</td>
<td class="value"><xsl:value-of select="gw:gatewayDescription"/></td></tr>
<xsl:apply-templates select="gw:gatewayAdmin"/>
<xsl:if test="gw:gatewayURL">
<tr><td class="key">URL</td>
<td class="value"><xsl:value-of select="gw:gatewayURL"/></td></tr>
</xsl:if>
<xsl:if test="gw:gatewayNotes">
<tr><td class="key">Notes</td>
<td class="value"><xsl:value-of select="gw:gatewayNotes"/></td></tr>
</xsl:if>
</table>
</xsl:template>
<xsl:template match="gw:gatewayAdmin" xmlns:gw="http://www.openarchives.org/OAI/2.0/gateway/">
<tr><td class="key">Admin</td>
<td class="value"><xsl:value-of select="."/></td></tr>
</xsl:template>
<!-- GetRecord -->
<xsl:template match="oai:GetRecord">
<xsl:apply-templates select="oai:record" />
</xsl:template>
<!-- ListRecords -->
<xsl:template match="oai:ListRecords">
<xsl:apply-templates select="oai:record" />
<xsl:apply-templates select="oai:resumptionToken" />
</xsl:template>
<!-- ListIdentifiers -->
<xsl:template match="oai:ListIdentifiers">
<xsl:apply-templates select="oai:header" />
<xsl:apply-templates select="oai:resumptionToken" />
</xsl:template>
<!-- ListSets -->
<xsl:template match="oai:ListSets">
<xsl:apply-templates select="oai:set" />
<xsl:apply-templates select="oai:resumptionToken" />
</xsl:template>
<xsl:template match="oai:set">
<h2>Set</h2>
<table class="values">
<tr><td class="key">setName</td>
<td class="value"><xsl:value-of select="oai:setName"/></td></tr>
<xsl:apply-templates select="oai:setSpec" />
</table>
</xsl:template>
<!-- ListMetadataFormats -->
<xsl:template match="oai:ListMetadataFormats">
<xsl:choose>
<xsl:when test="$identifier">
<p>This is a list of metadata formats available for the record "<xsl:value-of select='$identifier' />". Use these links to view the metadata: <xsl:apply-templates select="oai:metadataFormat/oai:metadataPrefix" /></p>
</xsl:when>
<xsl:otherwise>
<p>This is a list of metadata formats available from this archive.</p>
</xsl:otherwise>
</xsl:choose>
<xsl:apply-templates select="oai:metadataFormat" />
</xsl:template>
<xsl:template match="oai:metadataFormat">
<h2>Metadata Format</h2>
<table class="values">
<tr><td class="key">metadataPrefix</td>
<td class="value"><xsl:value-of select="oai:metadataPrefix"/></td></tr>
<tr><td class="key">metadataNamespace</td>
<td class="value"><xsl:value-of select="oai:metadataNamespace"/></td></tr>
<tr><td class="key">schema</td>
<td class="value"><a href="{oai:schema}"><xsl:value-of select="oai:schema"/></a></td></tr>
</table>
</xsl:template>
<xsl:template match="oai:metadataPrefix">
<xsl:text> </xsl:text><a class="link" href="?verb=GetRecord&amp;metadataPrefix={.}&amp;identifier={$identifier}"><xsl:value-of select='.' /></a>
</xsl:template>
<!-- record object -->
<xsl:template match="oai:record">
<h2 class="oaiRecordTitle">OAI Record: <xsl:value-of select="oai:header/oai:identifier"/></h2>
<div class="oaiRecord">
<xsl:apply-templates select="oai:header" />
<xsl:apply-templates select="oai:metadata" />
<xsl:apply-templates select="oai:about" />
</div>
</xsl:template>
<xsl:template match="oai:header">
<h3>OAI Record Header</h3>
<table class="values">
<tr><td class="key">OAI Identifier</td>
<td class="value">
<xsl:value-of select="oai:identifier"/>
<xsl:text> </xsl:text><a class="link" href="?verb=GetRecord&amp;metadataPrefix=oai_dc&amp;identifier={oai:identifier}">oai_dc</a>
<xsl:text> </xsl:text><a class="link" href="?verb=ListMetadataFormats&amp;identifier={oai:identifier}">formats</a>
</td></tr>
<tr><td class="key">Datestamp</td>
<td class="value"><xsl:value-of select="oai:datestamp"/></td></tr>
<xsl:apply-templates select="oai:setSpec" />
</table>
<xsl:if test="@status='deleted'">
<p>This record has been deleted.</p>
</xsl:if>
</xsl:template>
<xsl:template match="oai:about">
<p>"about" part of record container not supported by the XSL</p>
</xsl:template>
<xsl:template match="oai:metadata">
&#160;
<div class="metadata">
<xsl:apply-templates select="*" />
</div>
</xsl:template>
<!-- oai setSpec object -->
<xsl:template match="oai:setSpec">
<tr><td class="key">setSpec</td>
<td class="value"><xsl:value-of select="."/>
<xsl:text> </xsl:text><a class="link" href="?verb=ListIdentifiers&amp;metadataPrefix=oai_dc&amp;set={.}">Identifiers</a>
<xsl:text> </xsl:text><a class="link" href="?verb=ListRecords&amp;metadataPrefix=oai_dc&amp;set={.}">Records</a>
</td></tr>
</xsl:template>
<!-- oai resumptionToken -->
<xsl:template match="oai:resumptionToken">
<p>There are more results.</p>
<table class="values">
<tr><td class="key">resumptionToken:</td>
<td class="value"><xsl:value-of select="."/>
<xsl:text> </xsl:text>
<a class="link" href="?verb={/oai:OAI-PMH/oai:request/@verb}&amp;resumptionToken={.}">Resume</a></td></tr>
</table>
</xsl:template>
<!-- unknown metadata format -->
<xsl:template match="oai:metadata/*" priority='-100'>
<h3>Unknown Metadata Format</h3>
<div class="xmlSource">
<xsl:apply-templates select="." mode='xmlMarkup' />
</div>
</xsl:template>
<!-- oai_dc record -->
<xsl:template match="oai_dc:dc" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" >
<div class="dcdata">
<h3>Dublin Core Metadata (oai_dc)</h3>
<table class="dcdata">
<xsl:apply-templates select="*" />
</table>
</div>
</xsl:template>
<xsl:template match="dc:title" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Title</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:creator" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Author or Creator</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:subject" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Subject and Keywords</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:description" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Description</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:publisher" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Publisher</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:contributor" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Other Contributor</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:date" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Date</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:type" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Resource Type</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:format" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Format</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:identifier" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Resource Identifier</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:source" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Source</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:language" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Language</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:relation" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Relation</td><td class="value">
<xsl:choose>
<xsl:when test='starts-with(.,"http" )'>
<xsl:choose>
<xsl:when test='string-length(.) &gt; 50'>
<a class="link" href="{.}">URL</a>
<i> URL not shown as it is very long.</i>
</xsl:when>
<xsl:otherwise>
<a href="{.}"><xsl:value-of select="."/></a>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</td></tr></xsl:template>
<xsl:template match="dc:coverage" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<xsl:template match="dc:rights" xmlns:dc="http://purl.org/dc/elements/1.1/">
<tr><td class="key">Rights Management</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
<!-- XML Pretty Maker -->
<xsl:template match="node()" mode='xmlMarkup'>
<div class="xmlBlock">
&lt;<span class="xmlTagName"><xsl:value-of select='name(.)' /></span><xsl:apply-templates select="@*" mode='xmlMarkup'/>&gt;<xsl:apply-templates select="node()" mode='xmlMarkup' />&lt;/<span class="xmlTagName"><xsl:value-of select='name(.)' /></span>&gt;
</div>
</xsl:template>
<xsl:template match="text()" mode='xmlMarkup'><span class="xmlText"><xsl:value-of select='.' /></span></xsl:template>
<xsl:template match="@*" mode='xmlMarkup'>
<xsl:text> </xsl:text><span class="xmlAttrName"><xsl:value-of select='name()' /></span>="<span class="xmlAttrValue"><xsl:value-of select='.' /></span>"
</xsl:template>
<xsl:template name="xmlstyle">
.xmlSource {
font-size: 70%;
border: solid #c0c0a0 1px;
background-color: #ffffe0;
padding: 2em 2em 2em 0em;
}
.xmlBlock {
padding-left: 2em;
}
.xmlTagName {
color: #800000;
font-weight: bold;
}
.xmlAttrName {
font-weight: bold;
}
.xmlAttrValue {
color: #0000c0;
}
</xsl:template>
</xsl:stylesheet>
+61
View File
@@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
* xml/onixFilter.xsl
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* XSL-based filter to remove extraneous elements (e.g. List7) for use in OMP
-->
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:oai="http://www.openarchives.org/OAI/2.0/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
<xsl:param name="listName" /><!-- this is handed in via XSLTransformer->setParameters() -->
<xsl:output method="xml"/>
<xsl:template match="/">
<xs:simpleType><xsl:attribute name="name"><xsl:value-of select="$listName" /></xsl:attribute>
<xsl:for-each select="//xs:simpleType[@name=$listName]/xs:restriction/xs:enumeration">
<xsl:variable name="value"><xsl:value-of select="@value" /></xsl:variable>
<xsl:choose>
<!---
Lists not specifically referenced in a <xsl:when> block will be processed with
all of their values included in the returned codelist. To filter a list, just
create a new <xsl:when></xsl:when> block with a test for the list name, and then
define the test you want to use.
-->
<xsl:when test="$listName='List7'"><!-- ONIX list for formats -->
<xsl:if test="@value = 'AA' or @value = 'BC' or @value = 'BB' or @value = 'DA' or @value = 'EA'">
<xsl:call-template name="onixFilterOutputWithCode" />
</xsl:if>
</xsl:when>
<xsl:when test="$listName='List55'"><!-- Don't include code number in dates -->
<xsl:call-template name="onixFilterOutputWithoutCode" />
</xsl:when>
<xsl:otherwise> <!-- define a case for all lists that are not filtered (yet) -->
<xsl:call-template name="onixFilterOutputWithCode" />
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xs:simpleType>
</xsl:template>
<!-- recreate the ONIX node with the appropriate content. Note: this removes the extraneous xs:documentation element -->
<xsl:template name="onixFilterOutputWithCode">
<xs:enumeration><xsl:attribute name="value"><xsl:value-of select="@value"/></xsl:attribute>
<xs:documentation><xsl:value-of select="xs:annotation/xs:documentation[position()=1]"/> (<xsl:value-of select="@value"/>)</xs:documentation>
</xs:enumeration>
</xsl:template>
<xsl:template name="onixFilterOutputWithoutCode">
<xs:enumeration><xsl:attribute name="value"><xsl:value-of select="@value"/></xsl:attribute>
<xs:documentation><xsl:value-of select="xs:annotation/xs:documentation[position()=1]"/></xs:documentation>
</xs:enumeration>
</xsl:template>
</xsl:stylesheet>
+130
View File
@@ -0,0 +1,130 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/announcements.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Announcements schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE announcement_types
*
-->
<table name="announcement_types">
<field name="type_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="assoc_type" type="I2">
<!-- NOT NULL not included for upgrade purposes -->
</field>
<field name="assoc_id" type="I8">
<NOTNULL/>
</field>
<descr>Announcement types.</descr>
<index name="announcement_types_assoc">
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
<!--
*
* TABLE announcement_type_settings
*
-->
<table name="announcement_type_settings">
<field name="type_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Locale-specific announcement type data</descr>
<index name="announcement_type_settings_type_id">
<col>type_id</col>
</index>
<index name="announcement_type_settings_pkey">
<col>type_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE announcements
*
-->
<table name="announcements">
<field name="announcement_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="assoc_type" type="I2">
<!-- NOT NULL not included for upgrade purposes -->
</field>
<field name="assoc_id" type="I8">
<NOTNULL/>
</field>
<field name="type_id" type="I8"/>
<field name="date_expire" type="T"/>
<field name="date_posted" type="T">
<NOTNULL/>
</field>
<descr>Announcements.</descr>
<index name="announcements_assoc">
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
<!--
*
* TABLE announcement_settings
*
-->
<table name="announcement_settings">
<field name="announcement_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Locale-specific announcement data</descr>
<index name="announcement_settings_announcement_id">
<col>announcement_id</col>
</index>
<index name="announcement_settings_pkey">
<col>announcement_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
</schema>
+99
View File
@@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/submissions.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Submission-related schema (e.g. authors) in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE categories
*
-->
<table name="categories">
<field name="category_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="context_id" type="I8">
<NOTNULL/>
</field>
<field name="parent_id" type="I8">
<NOTNULL/>
</field>
<field name="seq" type="I8" />
<field name="path" type="C2" size="255">
<NOTNULL />
</field>
<field name="image" type="X"/>
<descr>Permits the organization of content into categories.</descr>
<index name="category_context_id">
<col>context_id</col>
<col>parent_id</col>
</index>
<index name="category_path">
<col>context_id</col>
<col>path</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE category_settings
*
-->
<table name="category_settings">
<field name="category_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
<descr>(bool|int|float|string|object)</descr>
</field>
<descr>Category-specific settings</descr>
<index name="category_settings_pkey">
<col>category_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE publication_categories
*
-->
<table name="publication_categories">
<field name="publication_id" type="I8">
<NOTNULL/>
</field>
<field name="category_id" type="I8">
<NOTNULL/>
</field>
<descr>Associations for categories and publications.</descr>
<index name="publication_categories_id">
<col>publication_id</col>
<col>category_id</col>
<UNIQUE/>
</index>
</table>
</schema>
+588
View File
@@ -0,0 +1,588 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/common.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Common elements of the PKP database schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE versions
*
-->
<table name="versions">
<field name="major" type="I4">
<NOTNULL />
<DEFAULT VALUE="0"/>
<descr>Major component of version number, e.g. the 2 in OJS 2.3.8-0</descr>
</field>
<field name="minor" type="I4">
<NOTNULL />
<DEFAULT VALUE="0"/>
<descr>Minor component of version number, e.g. the 3 in OJS 2.3.8-0</descr>
</field>
<field name="revision" type="I4">
<NOTNULL />
<DEFAULT VALUE="0"/>
<descr>Revision component of version number, e.g. the 8 in OJS 2.3.8-0</descr>
</field>
<field name="build" type="I4">
<NOTNULL />
<DEFAULT VALUE="0"/>
<descr>Build component of version number, e.g. the 0 in OJS 2.3.8-0</descr>
</field>
<field name="date_installed" type="T">
<NOTNULL/>
</field>
<field name="current" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
<descr>1 iff the version entry being described is currently active. This permits the table to store past installation history for forensic purposes.</descr>
</field>
<field name="product_type" type="C2" size="30">
<descr>Describes the type of product this row describes, e.g. "plugins.generic" (for a generic plugin) or "core" for the application itelf</descr>
</field>
<field name="product" type="C2" size="30">
<descr>Uniquely identifies the product this version row describes, e.g. "ojs2" for OJS 2.x, "languageToggle" for the language toggle block plugin, etc.</descr>
</field>
<field name="product_class_name" type="C2" size="80">
<descr>Specifies the class name associated with this product, for plugins, or the empty string where not applicable.</descr>
</field>
<field name="lazy_load" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
<descr>1 iff the row describes a lazy-load plugin; 0 otherwise</descr>
</field>
<field name="sitewide" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
<descr>1 iff the row describes a site-wide plugin; 0 otherwise</descr>
</field>
<descr>Describes the installation and upgrade version history for the application and all installed plugins.</descr>
<index name="versions_pkey">
<col>product_type</col>
<col>product</col>
<col>major</col>
<col>minor</col>
<col>revision</col>
<col>build</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE site
*
-->
<table name="site">
<field name="redirect" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
<descr>If not 0, redirect to the specified journal/conference/... site.</descr>
</field>
<field name="primary_locale" type="C2" size="14">
<NOTNULL/>
<descr>Primary locale for the site.</descr>
</field>
<field name="min_password_length" type="I1">
<NOTNULL/>
<DEFAULT VALUE="6"/>
</field>
<field name="installed_locales" type="C2" size="1024">
<NOTNULL/>
<DEFAULT VALUE="en"/>
<descr>Locales for which support has been installed.</descr>
</field>
<field name="supported_locales" type="C2" size="1024">
<descr>Locales supported by the site (for hosted journals/conferences/...).</descr>
</field>
<field name="original_style_file_name" type="C2" size="255"/>
<descr>Common site settings.</descr>
</table>
<!--
*
* TABLE site_settings
*
-->
<table name="site_settings">
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_value" type="X"/>
<descr>Site settings.</descr>
<index name="site_settings_pkey">
<col>setting_name</col>
<col>locale</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE users
*
-->
<table name="users">
<field name="user_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="username" type="C2" size="32">
<NOTNULL/>
</field>
<field name="password" type="C2" size="255">
<NOTNULL/>
</field>
<field name="email" type="C2" size="255">
<NOTNULL/>
</field>
<field name="url" type="C2" size="2047"/>
<field name="phone" type="C2" size="32"/>
<field name="mailing_address" type="C2" size="255"/>
<field name="billing_address" type="C2" size="255"/>
<field name="country" type="C2" size="90"/>
<field name="locales" type="C2" size="255"/>
<field name="gossip" type="X"/>
<field name="date_last_email" type="T"/>
<field name="date_registered" type="T">
<NOTNULL/>
</field>
<field name="date_validated" type="T"/>
<field name="date_last_login" type="T">
<NOTNULL/>
</field>
<field name="must_change_password" type="I1"/>
<field name="auth_id" type="I8"/>
<field name="auth_str" type="C2" size="255"/>
<field name="disabled" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="disabled_reason" type="X"/>
<field name="inline_help" type="I1" />
<descr>User authentication credentials and profile data.</descr>
<index name="users_username">
<col>username</col>
<UNIQUE />
</index>
<index name="users_email">
<col>email</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE user_settings
*
-->
<table name="user_settings">
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<field name="locale" type="C2" size="14">
<NOTNULL/>
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL/>
</field>
<field name="assoc_type" type="I8">
<!-- Not null not specified for sake of upgrade. -->
<DEFAULT VALUE="0"/>
</field>
<field name="assoc_id" type="I8">
<!-- Not null not specified for sake of upgrade. -->
<DEFAULT VALUE="0"/>
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Locale-specific user data</descr>
<index name="user_settings_user_id">
<col>user_id</col>
</index>
<index name="user_settings_pkey">
<col>user_id</col>
<col>locale</col>
<col>setting_name</col>
<col>assoc_type</col>
<col>assoc_id</col>
<UNIQUE />
</index>
<index name="user_settings_locale_setting_name_index">
<col>setting_name</col>
<col>locale</col>
</index>
</table>
<!--
*
* TABLE sessions
*
-->
<table name="sessions">
<field name="session_id" type="C2" size="128">
<NOTNULL/>
</field>
<field name="user_id" type="I8"/>
<field name="ip_address" type="C2" size="39">
<NOTNULL/>
</field>
<field name="user_agent" type="C2" size="255"/>
<field name="created" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="last_used" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="remember" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="data" type="X">
<NOTNULL/>
<DEFAULT VALUE=""/>
</field>
<field name="domain" type="C2" size="255"/>
<descr>Browser/user sessions and session data.</descr>
<index name="sessions_user_id">
<col>user_id</col>
</index>
<index name="sessions_pkey">
<col>session_id</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE access_keys
*
-->
<table name="access_keys">
<field name="access_key_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="context" type="C2" size="40">
<NOTNULL/>
</field>
<field name="key_hash" type="C2" size="40">
<NOTNULL/>
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<field name="assoc_id" type="I8"/>
<field name="expiry_date" type="T">
<NOTNULL/>
</field>
<descr>Access keys are used to provide pseudo-login functionality for security-minimal tasks. Passkeys can be emailed directly to users, who can use them for a limited time in lieu of standard username and password.</descr>
<index name="access_keys_hash">
<col>key_hash</col>
<col>user_id</col>
<col>context</col>
</index>
</table>
<!-- Notification tables -->
<!--
*
* TABLE notifications
*
-->
<table name="notifications">
<field name="notification_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="context_id" type="I8">
<NOTNULL/>
</field>
<field name="user_id" type="I8">
</field>
<field name="level" type="I8">
<NOTNULL/>
</field>
<field name="type" type="I8">
<NOTNULL/>
</field>
<field name="date_created" type="T">
<NOTNULL/>
</field>
<field name="date_read" type="T" />
<field name="assoc_type" type="I8" />
<field name="assoc_id" type="I8" />
<descr>Stores notifications for users as created by the system after certain operations.</descr>
<index name="notifications_context_id_user_id">
<col>context_id</col>
<col>user_id</col>
<col>level</col>
</index>
<index name="notifications_context_id">
<col>context_id</col>
<col>level</col>
</index>
<index name="notifications_assoc">
<col>assoc_type</col>
<col>assoc_id</col>
</index>
<index name="notifications_user_id_level">
<col>user_id</col>
<col>level</col>
</index>
</table>
<!--
*
* TABLE notification_settings
*
-->
<table name="notification_settings">
<field name="notification_id" type="I8">
<NOTNULL/>
</field>
<field name="locale" type="C2" size="14" />
<field name="setting_name" type="C2" size="64">
<NOTNULL/>
</field>
<field name="setting_value" type="X">
<NOTNULL/>
</field>
<field name="setting_type" type="C2" size="6">
<NOTNULL />
<descr>(bool|int|float|string|object)</descr>
</field>
<descr>Stores metadata for specific notifications</descr>
<index name="notification_settings_pkey">
<col>notification_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE notification_subscription_settings
*
-->
<table name="notification_subscription_settings">
<field name="setting_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="setting_name" type="C2" size="64">
<NOTNULL/>
</field>
<field name="setting_value" type="X">
<NOTNULL/>
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<field name="context" type="I8">
<NOTNULL/>
</field>
<field name="setting_type" type="C2" size="6">
<NOTNULL />
<descr>(bool|int|float|string|object)</descr>
</field>
<descr>Stores user preferences on what notifications should be blocked and/or emailed to them</descr>
</table>
<!-- Email tables -->
<!--
*
* TABLE email_templates_default
*
-->
<table name="email_templates_default">
<field name="email_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="email_key" type="C2" size="64">
<NOTNULL/>
<descr>Unique identifier for this email.</descr>
</field>
<field name="can_disable" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="can_edit" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="stage_id" type="I8"/>
<field name="from_role_id" type="I8"/>
<field name="to_role_id" type="I8"/>
<descr>Default email templates.</descr>
<index name="email_templates_default_email_key">
<col>email_key</col>
</index>
</table>
<!--
*
* TABLE email_templates_default_data
*
-->
<table name="email_templates_default_data">
<field name="email_key" type="C2" size="64">
<NOTNULL />
<descr>Unique identifier for this email.</descr>
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE="en"/>
</field>
<field name="subject" type="C2" size="120">
<NOTNULL/>
</field>
<field name="body" type="X"/>
<field name="description" type="X"/>
<descr>Default data for email templates.</descr>
<index name="email_templates_default_data_pkey">
<col>email_key</col>
<col>locale</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE email_templates
*
-->
<table name="email_templates">
<field name="email_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="email_key" type="C2" size="64">
<NOTNULL/>
<descr>Unique identifier for this email.</descr>
</field>
<field name="context_id" type="I8">
<!-- Not null not specified for sake of upgrade. -->
<DEFAULT VALUE="0"/>
</field>
<field name="enabled" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<descr>Templates for emails.</descr>
<index name="email_templates_email_key">
<col>email_key</col>
<col>context_id</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE email_templates_settings
*
-->
<table name="email_templates_settings">
<field name="email_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X" />
<index name="email_settings_email_id">
<col>email_id</col>
</index>
<index name="email_settings_pkey">
<col>email_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!-- OAI Tables -->
<!--
*
* TABLE oai_resumption_tokens
*
-->
<table name="oai_resumption_tokens">
<field name="token" type="C2" size="32">
<NOTNULL />
</field>
<field name="expire" type="I8">
<NOTNULL/>
</field>
<field name="record_offset" type="I4">
<NOTNULL/>
</field>
<field name="params" type="X" />
<descr>Resumption tokens for the OAI protocol interface.</descr>
<index name="oai_resumption_tokens_pkey">
<col>token</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE plugin_settings
*
-->
<table name="plugin_settings">
<field name="plugin_name" type="C2" size="80">
<NOTNULL/>
</field>
<field name="context_id" type="I8">
<NOTNULL/>
</field>
<field name="setting_name" type="C2" size="80">
<NOTNULL/>
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
<descr>(bool|int|float|string|object)</descr>
</field>
<descr>Plugin settings.</descr>
<index name="plugin_settings_plugin_name">
<col>plugin_name</col>
</index>
<index name="plugin_settings_pkey">
<col>plugin_name</col>
<col>context_id</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
</schema>
+118
View File
@@ -0,0 +1,118 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/controlledVocab.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Controlled vocabulary schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE controlled_vocabs
*
-->
<table name="controlled_vocabs">
<field name="controlled_vocab_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="symbolic" type="C2" size="64">
<NOTNULL/>
</field>
<field name="assoc_type" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="assoc_id" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<descr>Controlled vocabularies</descr>
<index name="controlled_vocab_symbolic">
<col>symbolic</col>
<col>assoc_type</col>
<col>assoc_id</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE controlled_vocab_entries
*
-->
<table name="controlled_vocab_entries">
<field name="controlled_vocab_entry_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="controlled_vocab_id" type="I8">
<NOTNULL />
</field>
<field name="seq" type="F" />
<descr>Controlled vocabulary entries</descr>
<index name="controlled_vocab_entries_cv_id">
<col>controlled_vocab_id</col>
<col>seq</col>
</index>
</table>
<!--
*
* TABLE controlled_vocab_entry_settings
*
-->
<table name="controlled_vocab_entry_settings">
<field name="controlled_vocab_entry_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Controlled vocabulary entry settings</descr>
<index name="c_v_e_s_entry_id">
<col>controlled_vocab_entry_id</col>
</index>
<index name="c_v_e_s_pkey">
<col>controlled_vocab_entry_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE user_interests
*
-->
<table name="user_interests">
<field name="user_id" type="I8">
<NOTNULL />
</field>
<field name="controlled_vocab_entry_id" type="I8">
<NOTNULL />
</field>
<descr>Reviewer Interests Associative Table</descr>
<index name="u_e_pkey">
<col>user_id</col>
<col>controlled_vocab_entry_id</col>
<UNIQUE />
</index>
</table>
</schema>
+84
View File
@@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/genres.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Genre list schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE genres
*
-->
<table name="genres">
<field name="genre_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="context_id" type="I8">
<NOTNULL />
</field>
<field name="seq" type="I8">
<!-- NOTNULL --><!-- For upgrades; see bug #8585 -->
</field>
<field name="enabled" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="category" type="I8">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="dependent" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="supplementary" type="I1">
<!-- NOTNULL/ --><!-- Commented for upgrade purposes -->
<DEFAULT VALUE="0"/>
</field>
<field name="entry_key" type="C2" size="30"/>
<descr>A context's submission file genres.</descr>
</table>
<!--
*
* TABLE genre_settings
*
-->
<table name="genre_settings">
<field name="genre_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
<descr>(bool|int|float|string|object)</descr>
</field>
<descr>Genre settings</descr>
<index name="genre_settings_genre_id">
<col>genre_id</col>
</index>
<index name="genre_settings_pkey">
<col>genre_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
</schema>
+97
View File
@@ -0,0 +1,97 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/libraryFiles.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Library files schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE library_files
*
-->
<table name="library_files">
<field name="file_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="context_id" type="I8">
<NOTNULL/>
</field>
<field name="file_name" type="C2" size="255">
<NOTNULL/>
</field>
<field name="original_file_name" type="C2" size="255">
<NOTNULL/>
</field>
<field name="file_type" type="C2" size="255">
<NOTNULL/>
</field>
<field name="file_size" type="I8">
<NOTNULL/>
</field>
<field name="type" type="I1">
<NOTNULL/>
</field>
<field name="date_uploaded" type="T">
<NOTNULL/>
</field>
<field name="date_modified" type="T">
<NOTNULL/>
</field>
<field name="submission_id" type="I8">
<NOTNULL/>
</field>
<field name="public_access" type="I1">
<DEFAULT VALUE="0"/>
</field>
<descr>Library files for a context</descr>
<index name="library_files_context_id">
<col>context_id</col>
</index>
<index name="library_files_submission_id">
<col>submission_id</col>
</index>
</table>
<!--
*
* TABLE library_file_settings
*
-->
<table name="library_file_settings">
<field name="file_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
<descr>(bool|int|float|string|object|date)</descr>
</field>
<descr>Library file metadata.</descr>
<index name="library_file_settings_id">
<col>file_id</col>
</index>
<index name="library_file_settings_pkey">
<col>file_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
</schema>
+131
View File
@@ -0,0 +1,131 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/log.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Event and email log schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE event_log
*
-->
<table name="event_log">
<field name="log_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="assoc_type" type="I8">
<!-- Nullable for upgrade purposes only -->
</field>
<field name="assoc_id" type="I8">
<!-- Nullable for upgrade purposes only -->
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<field name="date_logged" type="T">
<NOTNULL/>
</field>
<field name="event_type" type="I8"/>
<field name="message" type="X"/>
<field name="is_translated" type="I1"/>
<descr>A log of all events associated with an object.</descr>
<index name="event_log_assoc">
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
<!--
*
* TABLE event_log_settings
*
-->
<table name="event_log_settings">
<field name="log_id" type="I8">
<NOTNULL />
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
<descr>(bool|int|float|string|object)</descr>
</field>
<descr>Event log associative data</descr>
<index name="event_log_settings_log_id">
<col>log_id</col>
</index>
<index name="event_log_settings_pkey">
<col>log_id</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE email_log
*
-->
<table name="email_log">
<field name="log_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="assoc_type" type="I8">
<!-- Nullable for upgrade purposes only -->
</field>
<field name="assoc_id" type="I8">
<!-- Nullable for upgrade purposes only -->
</field>
<field name="sender_id" type="I8">
<NOTNULL/>
</field>
<field name="date_sent" type="T">
<NOTNULL/>
</field>
<field name="event_type" type="I8"/>
<field name="from_address" type="C2" size="255"/>
<field name="recipients" type="X"/>
<field name="cc_recipients" type="X"/>
<field name="bcc_recipients" type="X"/>
<field name="subject" type="C2" size="255"/>
<field name="body" type="X"/>
<descr>A log of all emails sent out related to an object.</descr>
<index name="email_log_assoc">
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
<!--
*
* TABLE email_log_users
*
-->
<table name="email_log_users">
<field name="email_log_id" type="I8">
<NOTNULL/>
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<descr>Associations for email logs within a user.</descr>
<index name="email_log_user_id">
<col>email_log_id</col>
<col>user_id</col>
<UNIQUE/>
</index>
</table>
</schema>
+168
View File
@@ -0,0 +1,168 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/metadata.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Citation tables.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE citations
*
-->
<table name="citations">
<field name="citation_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="publication_id" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="raw_citation" type="X">
<NOTNULL/>
</field>
<field name="seq" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<descr>Citations</descr>
<index name="citations_publication">
<col>publication_id</col>
</index>
<index name="citations_publication_seq">
<col>publication_id</col>
<col>seq</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE citation_settings
*
-->
<table name="citation_settings">
<field name="citation_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Citation settings</descr>
<index name="citation_settings_citation_id">
<col>citation_id</col>
</index>
<index name="citation_settings_pkey">
<col>citation_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE filter_groups
*
-->
<table name="filter_groups">
<field name="filter_group_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="symbolic" type="C2" size="255" />
<field name="display_name" type="C2" size="255" />
<field name="description" type="C2" size="255" />
<field name="input_type" type="C2" size="255" />
<field name="output_type" type="C2" size="255" />
<descr>Filter groups</descr>
<index name="filter_groups_symbolic">
<col>symbolic</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE filters
*
-->
<table name="filters">
<field name="filter_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="filter_group_id" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="context_id" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="display_name" type="C2" size="255" />
<field name="class_name" type="C2" size="255"/>
<field name="is_template" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="parent_filter_id" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="seq" type="I8">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<descr>Configured filter instances (transformations)</descr>
</table>
<!--
*
* TABLE filter_settings
*
-->
<table name="filter_settings">
<field name="filter_id" type="I8">
<NOTNULL/>
</field>
<field name="locale" type="C2" size="14">
<NOTNULL/>
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL/>
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Filter Settings</descr>
<index name="filter_settings_id">
<col>filter_id</col>
</index>
<index name="filter_settings_pkey">
<col>filter_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
</schema>
+72
View File
@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/metrics.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Metrics schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE metrics
*
-->
<table name="metrics">
<field name="load_id" type="C2" size="255">
<NOTNULL />
</field>
<field name="context_id" type="I8">
<NOTNULL />
</field>
<field name="pkp_section_id" type="I8" />
<field name="assoc_object_type" type="I8" />
<field name="assoc_object_id" type="I8" />
<field name="submission_id" type="I8" />
<field name="representation_id" type="I8" />
<field name="assoc_type" type="I8">
<NOTNULL />
</field>
<field name="assoc_id" type="I8">
<NOTNULL />
</field>
<field name="day" type="C" size="8" />
<field name="month" type="C" size="6"/>
<field name="file_type" type="I1" />
<field name="country_id" type="C2" size="2" />
<field name="region" type="C2" size="2" />
<field name="city" type="C2" size="255" />
<field name="metric_type" type="C2" size="255">
<NOTNULL />
</field>
<field name="metric" type="I4">
<NOTNULL />
</field>
<descr>OLAP statistics data table.</descr>
<index name="metrics_load_id">
<col>load_id</col>
</index>
<index name="metrics_metric_type_context_id">
<col>metric_type</col>
<col>context_id</col>
</index>
<index name="metrics_metric_type_submission_id_assoc_type">
<col>metric_type</col>
<col>submission_id</col>
<col>assoc_type</col>
</index>
<index name="metrics_metric_type_submission_id_assoc">
<col>metric_type</col>
<col>context_id</col>
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
</schema>
+150
View File
@@ -0,0 +1,150 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/navigationMenus.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* NavigationMenus schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE navigation_menus
*
-->
<table name="navigation_menus">
<field name="navigation_menu_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="context_id" type="I8">
<NOTNULL/>
</field>
<field name="area_name" type="C2" size="255">
<DEFAULT VALUE=""/>
</field>
<field name="title" type="C2" size="255">
<NOTNULL />
</field>
<descr>NavigationMenus</descr>
</table>
<!--
*
* TABLE navigation_menu_items
*
-->
<table name="navigation_menu_items">
<field name="navigation_menu_item_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="context_id" type="I8">
<NOTNULL/>
</field>
<field name="url" type="C2" size="255">
<DEFAULT VALUE=""/>
</field>
<field name="path" type="C2" size="255">
<DEFAULT VALUE=""/>
</field>
<field name="type" type="C2" size="255">
<DEFAULT VALUE=""/>
</field>
<descr>NavigationMenuItems</descr>
</table>
<!--
*
* TABLE navigation_menu_item_settings
*
-->
<table name="navigation_menu_item_settings">
<field name="navigation_menu_item_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="XL"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Locale-specific navigation menu item data</descr>
<index name="navigation_menu_item_settings_navigation_menu_id">
<col>navigation_menu_item_id</col>
</index>
<index name="navigation_menu_item_settings_pkey">
<col>navigation_menu_item_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE navigation_menu_item_assignments
*
-->
<table name="navigation_menu_item_assignments">
<field name="navigation_menu_item_assignment_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="navigation_menu_id" type="I8">
<NOTNULL/>
</field>
<field name="navigation_menu_item_id" type="I8">
<NOTNULL/>
</field>
<field name="parent_id" type="I8">
</field>
<field name="seq" type="I8">
<DEFAULT VALUE="0"/>
</field>
<descr>NavigationMenuItemAssignments which assign menu items to a menu and describe nested menu structure.</descr>
</table>
<!--
*
* TABLE navigation_menu_item_assignment_settings
*
-->
<table name="navigation_menu_item_assignment_settings">
<field name="navigation_menu_item_assignment_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Locale-specific navigation menu item assignments data</descr>
<index name="assignment_settings_navigation_menu_item_assignment_id">
<col>navigation_menu_item_assignment_id</col>
</index>
<index name="navigation_menu_item_assignment_settings_pkey">
<col>navigation_menu_item_assignment_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
</schema>
+46
View File
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/notes.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Notes schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE notes
*
-->
<table name="notes">
<field name="note_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="assoc_type" type="I8">
<!-- Not flagged NOTNULL for upgrade purposes -->
</field>
<field name="assoc_id" type="I8">
<!-- Not flagged NOTNULL for upgrade purposes -->
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<field name="date_created" type="T">
<NOTNULL/>
</field>
<field name="date_modified" type="T" />
<field name="title" type="C2" size="255" />
<field name="contents" type="X"/>
<index name="notes_assoc">
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
</schema>
+117
View File
@@ -0,0 +1,117 @@
<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://pkp.sfu.ca" xmlns:pkp="http://pkp.sfu.ca" elementFormDefault="qualified">
<element name="plugins">
<complexType>
<sequence>
<element name="plugin" type="pkp:pluginType" minOccurs="0" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
<complexType name="pluginType">
<sequence>
<element name="name" type="pkp:localizedNode" minOccurs="1" maxOccurs="unbounded" />
<element name="homepage" type="anyURI" minOccurs="1" maxOccurs="1" />
<element name="summary" type="pkp:localizedNode" minOccurs="1" maxOccurs="unbounded" />
<element name="description" type="pkp:localizedNode" minOccurs="1" maxOccurs="unbounded" />
<element name="installation" type="pkp:localizedNode" minOccurs="0" maxOccurs="unbounded" />
<element name="maintainer" type="pkp:entityType" minOccurs="1" maxOccurs="1" />
<element name="release" type="pkp:releaseType" minOccurs="1" maxOccurs="unbounded" />
</sequence>
<attribute name="category" use="required">
<simpleType>
<restriction base="string">
<enumeration value="metadata" />
<enumeration value="auth" />
<enumeration value="blocks" />
<enumeration value="gateways" />
<enumeration value="generic" />
<enumeration value="importexport" />
<enumeration value="oaiMetadataFormats" />
<enumeration value="paymethod" />
<enumeration value="pubIds" />
<enumeration value="reports" />
<enumeration value="themes" />
</restriction>
</simpleType>
</attribute>
<attribute name="product" use="required" type="string" />
</complexType>
<complexType name="entityType">
<sequence>
<element name="name" type="string" />
<element name="institution" type="string" />
<element name="email" type="pkp:emailAddressType" />
</sequence>
</complexType>
<complexType name="releaseType">
<sequence>
<element name="package" type="anyURI" minOccurs="1" maxOccurs="1" />
<element name="compatibility" type="pkp:compatibilityType" minOccurs="1" maxOccurs="unbounded" />
<element name="certification" type="pkp:certificationType" minOccurs="0" maxOccurs="unbounded" />
<element name="description" type="pkp:localizedNode" minOccurs="1" maxOccurs="unbounded" />
</sequence>
<attribute name="date" type="date" use="required" />
<attribute name="version" type="string" use="required" />
<attribute name="md5" use="required">
<simpleType>
<restriction base="hexBinary">
<pattern value="[0-9A-Fa-f]{32}"/>
</restriction>
</simpleType>
</attribute>
</complexType>
<complexType name="compatibilityType">
<sequence>
<element name="version" minOccurs="1" maxOccurs="unbounded">
<simpleType>
<restriction base="string" />
</simpleType>
</element>
</sequence>
<attribute name="application" use="required">
<simpleType>
<restriction base="string">
<enumeration value="ojs2" />
<enumeration value="ocs2" />
<enumeration value="ops" />
<enumeration value="omp" />
<enumeration value="ohs" />
</restriction>
</simpleType>
</attribute>
</complexType>
<complexType name="certificationType">
<attribute name="type" use="required">
<simpleType>
<restriction base="string">
<enumeration value="official" />
<enumeration value="reviewed" />
<enumeration value="partner" />
</restriction>
</simpleType>
</attribute>
</complexType>
<simpleType name="emailAddressType">
<restriction base="string">
<pattern value="[^@]+@[^\.]+\..+" />
</restriction>
</simpleType>
<!-- FIXME: These are duplicated from importexport.xsd. Better way? -->
<!-- Identifies a particular I18N locale, e.g. en -->
<simpleType name="locale">
<restriction base="string">
<pattern value="[a-z][a-z](_[A-Z][A-Z])?" />
</restriction>
</simpleType>
<!-- A text node with an attribute describing its locale, e.g. title -->
<complexType name="localizedNode" mixed="true">
<attribute name="locale" type="pkp:locale" use="optional" />
</complexType>
</schema>
+144
View File
@@ -0,0 +1,144 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/reviewForms.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Review Form schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE review_forms
*
-->
<table name="review_forms">
<field name="review_form_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="assoc_type" type="I8">
<!-- NOTNULL constraint omitted for upgrade purposes -->
</field>
<field name="assoc_id" type="I8">
<!-- NOTNULL constraint omitted for upgrade purposes -->
</field>
<field name="seq" type="F" />
<field name="is_active" type="I1" />
<descr>Review forms.</descr>
</table>
<!--
*
* TABLE review_form_settings
*
-->
<table name="review_form_settings">
<field name="review_form_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Review form settings</descr>
<index name="review_form_settings_review_form_id">
<col>review_form_id</col>
</index>
<index name="review_form_settings_pkey">
<col>review_form_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE review_form_elements
*
-->
<table name="review_form_elements">
<field name="review_form_element_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="review_form_id" type="I8">
<NOTNULL/>
</field>
<field name="seq" type="F" />
<field name="element_type" type="I8" />
<field name="required" type="I1" />
<field name="included" type="I1" />
<descr>Review form elements.</descr>
<index name="review_form_elements_review_form_id">
<col>review_form_id</col>
</index>
</table>
<!--
*
* TABLE review_form_element_settings
*
-->
<table name="review_form_element_settings">
<field name="review_form_element_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
</field>
<descr>Review form element settings</descr>
<index name="review_form_element_settings_review_form_element_id">
<col>review_form_element_id</col>
</index>
<index name="review_form_element_settings_pkey">
<col>review_form_element_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE review_form_responses
*
-->
<table name="review_form_responses">
<field name="review_form_element_id" type="I8">
<NOTNULL />
</field>
<field name="review_id" type="I8">
<NOTNULL/>
</field>
<field name="response_type" type="C2" size="6"/>
<field name="response_value" type="X" />
<descr>Review form responses.</descr>
<index name="review_form_responses_pkey">
<col>review_form_element_id</col>
<col>review_id</col>
</index>
</table>
</schema>
+183
View File
@@ -0,0 +1,183 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/reviews.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Review assignment schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE review_assignments
*
-->
<table name="review_assignments">
<field name="review_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="submission_id" type="I8">
<NOTNULL/>
</field>
<field name="reviewer_id" type="I8">
<NOTNULL/>
</field>
<field name="competing_interests" type="X"/>
<field name="recommendation" type="I1"/>
<field name="date_assigned" type="T"/>
<field name="date_notified" type="T"/>
<field name="date_confirmed" type="T"/>
<field name="date_completed" type="T"/>
<field name="date_acknowledged" type="T"/>
<field name="date_due" type="T"/>
<field name="date_response_due" type="T"/>
<field name="last_modified" type="T"/>
<field name="reminder_was_automatic" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="declined" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="cancelled" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="reviewer_file_id" type="I8"/>
<field name="date_rated" type="T"/>
<field name="date_reminded" type="T"/>
<field name="quality" type="I1"/>
<field name="review_round_id" type="I8">
<!-- NOTNULL constraint not included b/c of bug #8247 -->
</field>
<field name="stage_id" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="review_method" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="round" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="step" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="review_form_id" type="I8"/>
<field name="unconsidered" type="I1"/>
<descr>Reviewing assignments.</descr>
<index name="review_assignments_submission_id">
<col>submission_id</col>
</index>
<index name="review_assignments_reviewer_id">
<col>reviewer_id</col>
</index>
<index name="review_assignments_form_id">
<col>review_form_id</col>
</index>
<index name="review_assignments_reviewer_review">
<col>reviewer_id</col>
<col>review_id</col>
</index>
</table>
<!--
*
* TABLE review_rounds
*
-->
<table name="review_rounds">
<field name="review_round_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="submission_id" type="I8">
<NOTNULL />
</field>
<field name="stage_id" type="I8" />
<field name="round" type="I1">
<NOTNULL />
</field>
<field name="review_revision" type="I8" />
<field name="status" type="I8" />
<descr>Review rounds.</descr>
<index name="review_rounds_submission_id">
<col>submission_id</col>
</index>
<index name="review_rounds_submission_id_stage_id_round_pkey">
<col>submission_id</col>
<col>stage_id</col>
<col>round</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE review_round_files
*
-->
<table name="review_round_files">
<field name="submission_id" type="I8">
<NOTNULL/>
</field>
<field name="review_round_id" type="I8">
<NOTNULL/>
</field>
<field name="stage_id" type="I1">
<NOTNULL/>
</field>
<field name="file_id" type="I8">
<NOTNULL/>
</field>
<field name="revision" type="I8">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<descr>Submission Files for each review round</descr>
<index name="review_round_files_submission_id">
<col>submission_id</col>
</index>
<index name="review_round_files_pkey">
<col>submission_id</col>
<col>review_round_id</col>
<col>file_id</col>
<col>revision</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE review_files
*
-->
<table name="review_files">
<field name="review_id" type="I8">
<NOTNULL/>
</field>
<field name="file_id" type="I8">
<NOTNULL/>
</field>
<descr>Associates reviewable submission files with reviews</descr>
<index name="review_files_review_id">
<col>review_id</col>
</index>
<index name="review_files_pkey">
<col>review_id</col>
<col>file_id</col>
<UNIQUE/>
</index>
</table>
</schema>
+193
View File
@@ -0,0 +1,193 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/rolesAndUserGroups.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Roles and User Groups schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE user_groups
*
-->
<table name="user_groups">
<field name="user_group_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="context_id" type="I8">
<NOTNULL />
</field>
<field name="role_id" type="I8">
<NOTNULL />
</field>
<field name="is_default" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="show_title" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="permit_self_registration" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="permit_metadata_edit" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<descr>User groups for a context.</descr>
<index name="user_groups_user_group_id">
<col>user_group_id</col>
</index>
<index name="user_groups_context_id">
<col>context_id</col>
</index>
<index name="user_groups_role_id">
<col>role_id</col>
</index>
</table>
<!--
*
* TABLE user_group_settings
*
-->
<table name="user_group_settings">
<field name="user_group_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<descr>User Group-specific settings</descr>
<index name="user_group_settings_pkey">
<col>user_group_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE user_user_groups
*
-->
<table name="user_user_groups">
<field name="user_group_id" type="I8">
<NOTNULL />
</field>
<field name="user_id" type="I8">
<NOTNULL />
</field>
<descr>User group assignments (mapping of user to user groups)</descr>
<index name="user_user_groups_user_group_id">
<col>user_group_id</col>
</index>
<index name="user_user_groups_user_id">
<col>user_id</col>
</index>
<index name="user_user_groups_pkey">
<col>user_group_id</col>
<col>user_id</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE user_group_stage
*
-->
<table name="user_group_stage">
<field name="context_id" type="I8">
<NOTNULL />
</field>
<field name="user_group_id" type="I8">
<NOTNULL />
</field>
<field name="stage_id" type="I8">
<NOTNULL />
</field>
<descr>User groups assignments to stages in the workflow</descr>
<index name="user_group_stage_context_id">
<col>context_id</col>
</index>
<index name="user_group_stage_user_group_id">
<col>user_group_id</col>
</index>
<index name="user_group_stage_stage_id">
<col>stage_id</col>
</index>
<index name="user_group_stage_pkey">
<col>context_id</col>
<col>user_group_id</col>
<col>stage_id</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE stage_assignments
*
-->
<table name="stage_assignments">
<field name="stage_assignment_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="submission_id" type="I8">
<NOTNULL/>
</field>
<field name="user_group_id" type="I8">
<NOTNULL/>
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<field name="date_assigned" type="T">
<NOTNULL/>
</field>
<field name="recommend_only" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="can_change_metadata" type="I1">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<descr>Stage Assignments</descr>
<index name="stage_assignment">
<col>submission_id</col>
<col>user_group_id</col>
<col>user_id</col>
<UNIQUE />
</index>
<index name="stage_assignments_submission_id">
<col>submission_id</col>
</index>
<index name="stage_assignments_user_group_id">
<col>user_group_id</col>
</index>
<index name="stage_assignments_user_id">
<col>user_id</col>
</index>
</table>
</schema>
+32
View File
@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/scheduledTasks.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Scheduled tasks schema descriptor in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE scheduled_tasks
*
-->
<table name="scheduled_tasks">
<field name="class_name" type="C2" size="255">
<NOTNULL/>
</field>
<field name="last_run" type="T" />
<descr>The last run times of all scheduled tasks.</descr>
<index name="scheduled_tasks_pkey">
<col>class_name</col>
<UNIQUE />
</index>
</table>
</schema>
+138
View File
@@ -0,0 +1,138 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/submissionFiles.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Submission files schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE submission_files
*
-->
<table name="submission_files">
<field name="file_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="revision" type="I8">
<KEY />
</field>
<field name="source_file_id" type="I8" />
<field name="source_revision" type="I8" />
<field name="submission_id" type="I8">
<NOTNULL/>
</field>
<field name="file_type" type="C2" size="255">
<NOTNULL/>
</field>
<field name="genre_id" type="I8" />
<field name="file_size" type="I8">
<NOTNULL/>
</field>
<field name="original_file_name" type="C2" size="127"/>
<field name="file_stage" type="I8">
<NOTNULL/>
</field>
<field name="direct_sales_price" type="C2" size="255"/>
<field name="sales_type" type="C2" size="255"/>
<field name="viewable" type="I1" />
<field name="date_uploaded" type="T">
<NOTNULL/>
</field>
<field name="date_modified" type="T">
<NOTNULL/>
</field>
<field name="uploader_user_id" type="I8" />
<field name="assoc_type" type="I8"/>
<field name="assoc_id" type="I8"/>
<descr>Files associated with submission. Includes submission files, etc.</descr>
<index name="submission_files_submission_id">
<col>submission_id</col>
</index>
<index name="submission_files_stage_assoc"><!-- pkp/pkp-lib#5804 -->
<col>file_stage</col>
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
<!--
*
* TABLE submission_file_settings
*
-->
<table name="submission_file_settings">
<field name="file_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
<descr>(bool|int|float|string|object|date)</descr>
</field>
<descr>Article supplementary file metadata.</descr>
<index name="submission_file_settings_id">
<col>file_id</col>
</index>
<index name="submission_file_settings_pkey">
<col>file_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE submission_artwork_files
*
-->
<table name="submission_artwork_files">
<field name="file_id" type="I8">
<KEY />
</field>
<field name="revision" type="I8">
<KEY />
</field>
<field name="caption" type="X"/>
<field name="credit" type="C2" size="255"/>
<field name="copyright_owner" type="C2" size="255"/>
<field name="copyright_owner_contact" type="X"/>
<field name="permission_terms" type="X"/>
<field name="permission_file_id" type="I8"/>
<field name="chapter_id" type="I8"/>
<field name="contact_author" type="I8"/>
<descr>Submission visuals.</descr>
</table>
<!--
*
* TABLE submission_supplementary_files
*
-->
<table name="submission_supplementary_files">
<field name="file_id" type="I8">
<KEY />
</field>
<field name="revision" type="I8">
<KEY />
</field>
<descr>Submission supplementary content.</descr>
</table>
</schema>
+382
View File
@@ -0,0 +1,382 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/submissions.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Submission-related schema (e.g. authors) in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE submissions
*
-->
<table name="submissions">
<field name="submission_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="locale" type="C2" size="14"/>
<field name="context_id" type="I8">
<NOTNULL />
</field>
<field name="section_id" type="I8">
<!-- DEPRECATED: DO NOT USE. Held over for OJS 3.2 upgrade -->
</field>
<field name="current_publication_id" type="I8" />
<field name="date_last_activity" type="T"/>
<field name="date_submitted" type="T"/>
<field name="last_modified" type="T"/>
<field name="stage_id" type="I8">
<NOTNULL/>
<DEFAULT VALUE="1"/><!-- WORKFLOW_STAGE_ID_SUBMISSION -->
</field>
<field name="status" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/><!-- PKPSubmission::STATUS_QUEUED -->
</field>
<field name="submission_progress" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="work_type" type="I1">
<DEFAULT VALUE="0"/><!-- Used in OMP only; should not be null there -->
</field>
<descr>Submissions</descr>
<index name="submissions_context_id">
<col>context_id</col>
</index>
</table>
<!--
*
* TABLE submission_settings
*
-->
<table name="submission_settings">
<field name="submission_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<descr>Submission metadata</descr>
<index name="submission_settings_submission_id">
<col>submission_id</col>
</index>
<index name="submission_settings_pkey">
<col>submission_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE publication_settings
*
-->
<table name="publication_settings">
<field name="publication_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<descr>publication metadata</descr>
<index name="publication_settings_publication_id">
<col>publication_id</col>
</index>
<index name="publication_settings_pkey">
<col>publication_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE authors
*
-->
<table name="authors">
<field name="author_id" type="I8">
<KEY/>
<AUTOINCREMENT/>
</field>
<field name="email" type="C2" size="90">
<NOTNULL/>
</field>
<field name="include_in_browse" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="publication_id" type="I8">
<!-- NOTNULL Constraint commented to allow upgrade to 3.2 -->
</field>
<field name="submission_id" type="I8">
<!-- DEPRECATED Held over for 3.2 upgrade -->
</field>
<field name="seq" type="F">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="user_group_id" type="I8" />
<descr>Authors for submissions.</descr>
<index name="authors_publication_id">
<col>publication_id</col>
</index>
</table>
<!--
*
* TABLE author_settings
*
-->
<table name="author_settings">
<field name="author_id" type="I8">
<NOTNULL />
</field>
<field name="locale" type="C2" size="14">
<NOTNULL />
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<!-- DEPRECATED: Held over for OJS pre-3.2 upgrade -->
</field>
<descr>Language dependent author metadata.</descr>
<index name="author_settings_author_id">
<col>author_id</col>
</index>
<index name="author_settings_pkey">
<col>author_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE edit_decisions
*
-->
<table name="edit_decisions">
<field name="edit_decision_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="submission_id" type="I8">
<NOTNULL/>
</field>
<field name="review_round_id" type="I8">
<!-- NOTNULL/ --><!-- For upgrades -->
</field>
<field name="stage_id" type="I8" />
<field name="round" type="I1">
<NOTNULL/>
</field>
<field name="editor_id" type="I8">
<NOTNULL/>
</field>
<field name="decision" type="I1">
<NOTNULL/>
</field>
<field name="date_decided" type="T">
<NOTNULL/>
</field>
<descr>Editor decisions.</descr>
<index name="edit_decisions_submission_id">
<col>submission_id</col>
</index>
<index name="edit_decisions_editor_id">
<col>editor_id</col>
</index>
</table>
<!--
*
* TABLE submission_comments
*
-->
<table name="submission_comments">
<field name="comment_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="comment_type" type="I8"/>
<field name="role_id" type="I8">
<NOTNULL/>
</field>
<field name="submission_id" type="I8">
<NOTNULL/>
</field>
<field name="assoc_id" type="I8">
<NOTNULL/>
</field>
<field name="author_id" type="I8">
<NOTNULL/>
</field>
<field name="comment_title" type="X">
<NOTNULL/>
</field>
<field name="comments" type="X"/>
<field name="date_posted" type="T"/>
<field name="date_modified" type="T"/>
<field name="viewable" type="I1" />
<descr>Comments posted on submissions</descr>
<index name="submission_comments_submission_id">
<col>submission_id</col>
</index>
</table>
<!--
*
* TABLE queries
*
-->
<table name="queries">
<field name="query_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="assoc_type" type="I8">
<NOTNULL/>
</field>
<field name="assoc_id" type="I8">
<NOTNULL/>
</field>
<field name="stage_id" type="I1">
<NOTNULL/>
<DEFAULT VALUE="1"/>
</field>
<field name="seq" type="F">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<field name="date_posted" type="T"/>
<field name="date_modified" type="T"/>
<field name="closed" type="I2">
<NOTNULL/>
<DEFAULT VALUE="0"/>
</field>
<descr>queries posted on submission workflow</descr>
<index name="queries_assoc_id">
<col>assoc_type</col>
<col>assoc_id</col>
</index>
</table>
<!--
*
* TABLE query_participants
*
-->
<table name="query_participants">
<field name="query_id" type="I8">
<NOTNULL />
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<descr>queries posted on submission workflow</descr>
<index name="query_participants_pkey">
<col>query_id</col>
<col>user_id</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE submission_search_keyword_list
*
-->
<table name="submission_search_keyword_list">
<field name="keyword_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="keyword_text" type="C2" size="60">
<NOTNULL/>
</field>
<descr>List of all keywords.</descr>
<index name="submission_search_keyword_text">
<col>keyword_text</col>
<UNIQUE/>
</index>
</table>
<!--
*
* TABLE submission_search_objects
*
-->
<table name="submission_search_objects">
<field name="object_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="submission_id" type="I8">
<NOTNULL />
</field>
<field name="type" type="I4">
<NOTNULL />
<descr>Type of item. E.g., abstract, fulltext, etc.</descr>
</field>
<field name="assoc_id" type="I8">
<descr>Optional ID of an associated record (e.g., a file_id)</descr>
</field>
<descr>Indexed objects.</descr>
</table>
<!--
*
* TABLE submission_search_object_keywords
*
-->
<table name="submission_search_object_keywords">
<field name="object_id" type="I8">
<NOTNULL />
</field>
<field name="keyword_id" type="I8">
<NOTNULL />
</field>
<field name="pos" type="I4">
<NOTNULL />
<descr>Word position of the keyword in the object.</descr>
</field>
<descr>Keyword occurrences for each indexed object.</descr>
<index name="submission_search_object_keywords_keyword_id">
<col>keyword_id</col>
</index>
<index name="submission_search_object_keywords_pkey">
<col>object_id</col>
<col>pos</col>
<UNIQUE />
</index>
</table>
</schema>
+46
View File
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/temporaryFiles.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Temporary file management support for the PKP database schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE temporary_files
*
-->
<table name="temporary_files">
<field name="file_id" type="I8">
<KEY />
<AUTOINCREMENT/>
</field>
<field name="user_id" type="I8">
<NOTNULL/>
</field>
<field name="file_name" type="C2" size="90">
<NOTNULL/>
</field>
<field name="file_type" type="C2" size="255">
</field>
<field name="file_size" type="I8">
<NOTNULL/>
</field>
<field name="original_file_name" type="C2" size="127"/>
<field name="date_uploaded" type="T">
<NOTNULL/>
</field>
<descr>Temporary file storage</descr>
<index name="temporary_files_user_id">
<col>user_id</col>
</index>
</table>
</schema>
+105
View File
@@ -0,0 +1,105 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE schema SYSTEM "../../dtd/xmlSchema.dtd">
<!--
* xml/schema/tombstone.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Tombstone schema in XML.
* XML-BASED DESCRIPTORS ARE DEPRECATED AND SHOULD NOT BE EDITED.
-->
<schema version="0.2">
<!--
*
* TABLE data_object_tombstones
*
-->
<table name="data_object_tombstones">
<field name="tombstone_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="data_object_id" type="I8">
<NOTNULL />
</field>
<field name="date_deleted" type="T">
<NOTNULL />
</field>
<field name="set_spec" type="C2" size="255">
<NOTNULL />
</field>
<field name="set_name" type="C2" size="255">
<NOTNULL />
</field>
<field name="oai_identifier" type="C2" size="255">
<NOTNULL />
</field>
<descr>Unnavailable data object tombstones.</descr>
<index name="data_object_tombstones_data_object_id">
<col>data_object_id</col>
</index>
</table>
<!--
*
* TABLE data_object_tombstone_settings
*
-->
<table name="data_object_tombstone_settings">
<field name="tombstone_id" type="I8">
<NOTNULL/>
</field>
<field name="locale" type="C2" size="14">
<NOTNULL/>
<DEFAULT VALUE=""/>
</field>
<field name="setting_name" type="C2" size="255">
<NOTNULL/>
</field>
<field name="setting_value" type="X"/>
<field name="setting_type" type="C2" size="6">
<NOTNULL/>
<descr>(bool|int|float|string|object)</descr>
</field>
<descr>Data object tombstone settings.</descr>
<index name="data_object_tombstone_settings_tombstone_id">
<col>tombstone_id</col>
</index>
<index name="data_object_tombstone_settings_pkey">
<col>tombstone_id</col>
<col>locale</col>
<col>setting_name</col>
<UNIQUE />
</index>
</table>
<!--
*
* TABLE data_object_tombstone_oai_set_objects
*
-->
<table name="data_object_tombstone_oai_set_objects">
<field name="object_id" type="I8">
<KEY />
<AUTOINCREMENT />
</field>
<field name="tombstone_id" type="I8">
<NOTNULL />
</field>
<field name="assoc_type" type="I8">
<NOTNULL />
</field>
<field name="assoc_id" type="I8">
<NOTNULL />
</field>
<descr>Objects that are part of a data object tombstone OAI set.</descr>
<index name="data_object_tombstone_oai_set_objects_tombstone_id">
<col>tombstone_id</col>
</index>
</table>
</schema>