Skip to content
Snippets Groups Projects
Commit 5afd3b39 authored by MoSelim's avatar MoSelim
Browse files

Merge branch 'shared-data-model' of...

Merge branch 'shared-data-model' of https://gitlab.coko.foundation/xpub/xpub-epmc.git into shared-data-model
parents 8273486c 0345e7ad
No related branches found
No related tags found
2 merge requests!81Dev,!80Shared data model
Showing
with 2 additions and 29936 deletions
......@@ -1704,7 +1704,8 @@
.super,
.fn-label,
.super + .suptest,
sup + .suptest{
sup + .suptest,
.xref-table-fn {
vertical-align: 20%;
font-size: .8em;
}
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes"/>
<xsl:param name="filename"/>
<xsl:param name="full" select="'yes'"/>
<xsl:template match="ERR">
<xsl:choose>
<xsl:when test="$full='yes'">
<html>
<head>
<title></title>
</head>
<body style="width:1000px;">
<ol>
<h2>
<xsl:text>Style report for "</xsl:text>
<xsl:choose>
<xsl:when test="$filename">
<xsl:value-of select="$filename"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="//processing-instruction('TITLE')"/>
</xsl:otherwise>
</xsl:choose>
<xsl:text>"</xsl:text>
</h2>
<xsl:choose>
<xsl:when test="contains(//processing-instruction('SC-DETAILS'),'||')">
<h4>
<xsl:value-of select="substring-before(//processing-instruction('SC-DETAILS'),'||')"/>
</h4>
<h4>
<xsl:value-of select="substring-after(//processing-instruction('SC-DETAILS'),'||')"/>
</h4>
</xsl:when>
<xsl:otherwise>
<h4>
<xsl:value-of select="//processing-instruction('SC-DETAILS')"/>
</h4>
</xsl:otherwise>
</xsl:choose>
</ol>
<xsl:call-template name="reportmeat"/>
</body>
</html>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="reportmeat"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="reportmeat">
<div class="report-details">
<ol>
<h3>
<xsl:if test="//warning">
<xsl:text>Total of warnings = </xsl:text><xsl:value-of select="count(//warning)"/><br/>
</xsl:if>
<xsl:text>Total of errors = </xsl:text><xsl:value-of select="count(//error)"/><br/>Unique errors are listed below.
</h3>
<xsl:apply-templates select="descendant::*[self::error or self::warning]"/>
</ol>
<hr/>
<ol>
<pre style="white-space: pre-wrap;">
<xsl:apply-templates mode="copy"/>
</pre>
</ol>
</div>
</xsl:template>
<xsl:template match="error|warning">
<xsl:variable name="nodepath">
<xsl:call-template name="nodePath"/>
</xsl:variable>
<xsl:variable name="preceding-nodepath">
<xsl:for-each select="preceding::*[self::error or self::warning][1]">
<xsl:call-template name="nodePath"/>
</xsl:for-each>
</xsl:variable>
<xsl:if test="$nodepath != $preceding-nodepath and string(node()) != string(preceding::*[self::error or self::warning][1])">
<p>
<a href="#{generate-id()}"><b><xsl:value-of select="substring-before(substring-after($nodepath,'/ERR'),'/error')"/>: </b></a>
<!--<xsl:if test="current()[self::warning]">
<xsl:text> [warning] </xsl:text>
</xsl:if> -->
<b>
<font>
<xsl:attribute name="color">
<xsl:choose>
<xsl:when test="name()='warning'">
<xsl:value-of select="'#FF8D00'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'red'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:text>[</xsl:text>
<xsl:value-of select="name()"/>
<xsl:text>]</xsl:text>
</font>
</b>
<xsl:apply-templates/>
</p>
</xsl:if>
<xsl:if test="$nodepath = $preceding-nodepath and string(node()) != string(preceding::*[self::error or self::warning][1])">
<p>
<a href="#{generate-id()}"><b><xsl:value-of select="substring-before(substring-after($nodepath,'/ERR'),'/error')"/>: </b></a>
<!-- <xsl:if test="current()[self::warning]">
<xsl:text> [warning] </xsl:text>
</xsl:if> -->
<b>
<font>
<xsl:attribute name="color">
<xsl:choose>
<xsl:when test="name()='warning'">
<xsl:value-of select="'#FF8D00'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'red'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:text>[</xsl:text>
<xsl:value-of select="name()"/>
<xsl:text>]</xsl:text>
</font>
</b>
<xsl:apply-templates/>
</p>
</xsl:if>
</xsl:template>
<xsl:template match="*" mode="copy">
<xsl:text>&lt;</xsl:text><xsl:value-of select="name()"/><xsl:apply-templates select="@*" mode="copy"/><xsl:text>&gt;</xsl:text>
<xsl:apply-templates mode="copy"/>
<xsl:text>&lt;/</xsl:text><xsl:value-of select="name()"/><xsl:text>&gt;</xsl:text>
</xsl:template>
<xsl:template match="processing-instruction()" mode="copy">
<xsl:choose>
<xsl:when test="name()='SC-DETAILS' or name()='TITLE'"/>
<xsl:otherwise>
<xsl:text>&lt;?</xsl:text><xsl:value-of select="name()"/><xsl:text> </xsl:text><xsl:value-of select="."/><xsl:text>?&gt;</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="@*" mode="copy">
<xsl:text> </xsl:text>
<xsl:value-of select="name()"/>
<xsl:text>="</xsl:text>
<xsl:value-of select="."/>
<xsl:text>"</xsl:text>
</xsl:template>
<xsl:template match="error" mode="copy">
<a name="{generate-id()}"/>
<font color="red"><b><xsl:text>[ERROR: </xsl:text><xsl:apply-templates/><xsl:text>]</xsl:text></b></font>
</xsl:template>
<xsl:template match="warning" mode="copy">
<a name="{generate-id()}"/>
<font color="#FF8D00"><b><xsl:text>[WARNING: </xsl:text><xsl:apply-templates/><xsl:text>]</xsl:text></b></font>
</xsl:template>
<xsl:template name="nodePath">
<xsl:for-each select="ancestor-or-self::*">
<xsl:choose>
<xsl:when test="name() = 'warning'">
<xsl:text>/error</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="concat('/',name())"/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:template>
<xsl:template match="tlink">
<a href="{@target}" target="_new">
<xsl:apply-templates/>
</a>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:mml="http://www.w3.org/1998/Math/MathML"
version="1.0">
<!-- ######################## HELPER TEMPLATES ############################## -->
<!--
Templates for 'everything else'.
-->
<!-- ######################################################################## -->
<!-- ********************************************* -->
<!-- Template: node() | @*
Mode: output
Copy all nodes and attributes to output after
being checked by special processing rules. -->
<!-- ********************************************* -->
<xsl:template match="* | @*" mode="output">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="@xsi:noNamespaceSchemaLocation"/>
<!-- ********************************************* -->
<!-- Template: node() | @*
Copy all nodes and attributes to output that
do not have special processing rules
-->
<!-- ********************************************* -->
<xsl:template match="* | @*">
<xsl:copy>
<!-- Copy out all attributes -->
<xsl:apply-templates select="@*"/>
<!-- Copy all children -->
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<!-- ********************************************************************* -->
<!-- Template: make-error
Outputs an error or warning element with the provided
type and description.
PARAMS:
error-type
description Long text of error message
class "error": style-check should fail (the default).
"warning": style-check can still pass.
other value: the message becomes a "warning",
and a note is added warning about the bad value.
This is done to guard against typing mistakes.
-->
<!-- ********************************************************************* -->
<xsl:template name="make-error">
<xsl:param name="error-type" select="''"/>
<xsl:param name="description" select="''"/>
<xsl:param name="tg-target" select="''"/>
<xsl:param name="class" select="'error'"/>
<xsl:variable name="class-type">
<xsl:choose>
<xsl:when test="$class = 'error'">
<xsl:text>error</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>warning</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="errpath">
<xsl:for-each select="ancestor-or-self::*">
<xsl:variable name="name" select="name()"/>
<xsl:text/>/<xsl:value-of select="name()"/><xsl:text/>
<xsl:choose>
<xsl:when test="@id">
<xsl:text>[</xsl:text>
<xsl:value-of select="concat('@id=&quot;',@id,'&quot;')"/>
<xsl:text>]</xsl:text>
</xsl:when>
<xsl:when test="preceding-sibling::node()[name()=$name]">
<xsl:text>[</xsl:text>
<xsl:value-of select="count(preceding-sibling::node()[name()=$name])+1"/>
<xsl:text>]</xsl:text>
</xsl:when>
</xsl:choose>
</xsl:for-each>
</xsl:variable>
<!-- Make sure have all needed values, otherwise don't output -->
<xsl:if test="string-length($error-type) &gt; 0 and
string-length($description) &gt; 0">
<xsl:element name="{$class-type}">
<xsl:choose>
<xsl:when test="$notices='yes'">
<xsl:attribute name="notice">
<xsl:value-of select="concat('sc:',translate(normalize-space($error-type),' ','_'))"/>
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$error-type"/>
<xsl:text>: </xsl:text>
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="$description"/>
<xsl:if test="$stream='manuscript'">
<xsl:text> (</xsl:text>
<xsl:value-of select="$errpath"/>
<xsl:text>)</xsl:text>
</xsl:if>
<xsl:if test="string-length($tg-target) &gt; 0">
<xsl:call-template name="tglink">
<xsl:with-param name="tg-target" select="$tg-target"/>
</xsl:call-template>
</xsl:if>
</xsl:element>
<xsl:call-template name="output-message">
<xsl:with-param name="class" select="$class-type"/>
<xsl:with-param name="errpath" select="$errpath"/>
<xsl:with-param name="description">
<xsl:value-of select="$description"/>
<xsl:if test="$class!='error' and $class!='warning'">
<xsl:text> *** Error class was neither 'error' nor 'warning' *** </xsl:text>
</xsl:if>
</xsl:with-param>
<xsl:with-param name="type" select="$error-type"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
<xsl:template name="tglink">
<xsl:param name="tg-target"/>
<xsl:variable name="base">
<xsl:choose>
<xsl:when test="$stream='book'">
<xsl:value-of select="'https://www.ncbi.nlm.nih.gov/pmc/pmcdoc/tagging-guidelines/book/'"/>
</xsl:when>
<xsl:when test="$stream='manuscript'">
<xsl:value-of select="'https://www.ncbi.nlm.nih.gov/pmc/pmcdoc/tagging-guidelines/manuscript/'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="'https://www.ncbi.nlm.nih.gov/pmc/pmcdoc/tagging-guidelines/article/'"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:text> </xsl:text>
<tlink>
<xsl:attribute name="target">
<xsl:value-of select="concat($base,$tg-target)"/>
</xsl:attribute>
<xsl:text>(Tagging Guidelines)</xsl:text>
</tlink>
</xsl:template>
<!-- ********************************************************************* -->
<!-- TEMPLATE: output-message
Takes an error message and outputs it. Does nothing if $messages
global is set to false or if the xsl:message element is not available.
PARAMS:
class, description, type: (as for make-error)
-path: path to output the error log (Eh? No such param)
CALLED: Only from make-error, above.
-->
<!-- ********************************************************************* -->
<xsl:template name="output-message">
<xsl:param name="class" select="'error'"/>
<xsl:param name="description" select="''"/>
<xsl:param name="errpath" />
<xsl:param name="type" select="''"/>
<!--<xsl:variable name="descriptor">
<xsl:choose>
<xsl:when test="$class='warning'">
<xsl:text> (warning)</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text></xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="element-available('xsl:message') and $messages = 'true'">
<xsl:message terminate="no">
<xsl:value-of select="concat($type, $descriptor)"/>
<xsl:text>: </xsl:text>
<xsl:value-of select="$description"/>
<xsl:if test="$errpath!=''">
<xsl:text> (</xsl:text>
<xsl:value-of select="$errpath"/>
<xsl:text>)</xsl:text>
<!-\-</xsl:if>-\->
<xsl:text disable-output-escaping="yes">&#10;</xsl:text>
</xsl:message>
</xsl:if>-->
</xsl:template>
<!-- ********************************************************************* -->
<!-- Template: text(), and
NAMED check-prohibited-math-characters-outside-math-context
Scans all text nodes for prohibited characters, outside math context
-->
<!-- ********************************************************************* -->
<!-- ********************************************************************* -->
<xsl:template match="text()" name="check-prohibited-math-characters-outside-math-context">
<!-- are we in math context ?-->
<xsl:if test="not(ancestor::node()[local-name() = 'math'
or local-name() = 'inline-formula'
or local-name() = 'disp-formula'
or local-name() = 'text-math'])">
<!-- here you can list using "OR" a banch of contains function calls
to check prohibited characters. -->
<xsl:if test="contains(., '&#xFE37;')">
<xsl:call-template name="make-error">
<xsl:with-param name="error-type" select="'math character check'"/>
<xsl:with-param name="description">
<xsl:text>prohibited character is being used outside of math context in this node.</xsl:text>
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:if>
<!-- If we are in the text() node copy its content to the output,
otherwise we're in the attribute node, and we do not do output here,
because it is done in other place. -->
<xsl:if test="(name(.)='')">
<xsl:copy-of select="."/>
</xsl:if>
</xsl:template>
<!-- ********************************************************************* -->
<xsl:template match="@*" mode="check-prohibited-math-characters-outside-math-context">
<xsl:call-template name="check-prohibited-math-characters-outside-math-context"/>
</xsl:template>
<xsl:template name="capitalize">
<xsl:param name="str"/>
<xsl:value-of select="translate($str, 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
</xsl:template>
<xsl:template name="knockdown">
<xsl:param name="str"/>
<xsl:value-of select="translate($str,'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz')"/>
</xsl:template>
<!-- ==================================================================== -->
<!-- TEMPLATE: replace-substring
Removes/replaces all occurrences of a 'substring' in the original string.
If no replacement is specified, then the specified substring
is removed. If no substring is specified or the substring is
an empty string, then the template simply returns the original string.
Parameters:
main-string: main string to operate on
substring: substring to locate in main string
replacement: replacement string for the substring
-->
<!-- ==================================================================== -->
<xsl:template name="replace-substring">
<xsl:param name="main-string"/>
<xsl:param name="substring"/>
<xsl:param name="replacement"/>
<xsl:choose>
<!-- Error case -->
<xsl:when test="not($substring)">
<xsl:value-of select="$main-string"/>
</xsl:when>
<!-- Base Case: no more substrings to remove -->
<xsl:when test="not(contains($main-string, $substring))">
<xsl:value-of select="$main-string"/>
</xsl:when>
<!-- Case 1: Substring is in the main string -->
<xsl:otherwise>
<xsl:value-of select="substring-before($main-string, $substring )"/>
<xsl:value-of select="$replacement"/>
<xsl:call-template name="replace-substring">
<xsl:with-param name="main-string"
select="substring-after($main-string, $substring)"/>
<xsl:with-param name="substring" select="$substring"/>
<xsl:with-param name="replacement" select="$replacement"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<!-- ==================================================================== -->
<!-- TEMPLATE: is-in-list (aka contains-token)
PARAMS:
list String containing list of acceptable items
token Token to look for in list
case Regard case when matching (default = 0 = ignore)
delim Char that separates items in list (default = ' ')
NOTES: Return 1 if $token occurs in $list (say, of month-names).
Tokens in $list must be separated by spaces, unless
a different char or string is specified in $delim.
Unless $case is true, case will be ignored.
WARNING: If $token = '', returns nil.
ADDED: sjd, ~2006-10.
-->
<!-- ==================================================================== -->
<xsl:template name="is-in-list">
<xsl:param name="list"/>
<xsl:param name="token"/>
<xsl:param name="case" select="0"/>
<xsl:param name="delim" select="' '"/>
<!-- Make sure the list of tokens is capped if needed, and has delims -->
<xsl:variable name="myList">
<xsl:choose>
<xsl:when test="$case">
<xsl:value-of select="concat($delim,$list,$delim)"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="capitalize">
<xsl:with-param name="str"
select="concat($delim,$list,$delim)"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- Same for token to look for (exactly one delim at each end) -->
<xsl:variable name="myToken">
<xsl:if test="substring($token,1,1)!=$delim">
<xsl:value-of select="$delim"/>
</xsl:if>
<xsl:choose>
<xsl:when test="$case">
<xsl:value-of select="$token"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="capitalize">
<xsl:with-param name="str" select="$token"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="substring($token,string-length($token))!=$delim">
<xsl:value-of select="$delim"/>
</xsl:if>
</xsl:variable>
<!-- Now that we're normalized, the test is easy -->
<xsl:if test="$myToken!='' and contains($myList,$myToken)">1</xsl:if>
</xsl:template>
<!-- Outputs the substring after the last dot in the input string -->
<xsl:template name="substring-after-last-dot">
<xsl:param name="str"/>
<xsl:if test="$str">
<xsl:choose>
<xsl:when test="contains($str,'.')">
<xsl:call-template name="substring-after-last-dot">
<xsl:with-param name="str"
select="substring-after($str,'.')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$str"/>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:template>
<xsl:template name="get-context">
<xsl:text>(context: </xsl:text>
<xsl:choose>
<xsl:when test="@id">
<xsl:value-of select="name()"/>
<xsl:text>[@id="</xsl:text>
<xsl:value-of select="@id"/>
<xsl:text>"]</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="nodePath"/>
</xsl:otherwise>
</xsl:choose>
<xsl:text>)</xsl:text>
</xsl:template>
<xsl:template name="nodePath">
<xsl:for-each select="ancestor-or-self::*">
<xsl:variable name="nm" select="name()"/>
<xsl:variable name="pos" select="count(preceding-sibling::node()[name() = $nm])"/>
<xsl:variable name="more" select="count(following-sibling::node()[name() = $nm])"/>
<xsl:variable name="poslabel">
<xsl:if test="($pos + 1 &gt; 1) or ($more &gt; 0)">
<xsl:text>[</xsl:text><xsl:value-of select="$pos + 1"/><xsl:text>]</xsl:text>
</xsl:if>
</xsl:variable>
<xsl:choose>
<xsl:when test="name() = 'warning'">
<xsl:text>/error</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="concat('/',name(),$poslabel)"/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
D/common////
D/content////
D/presentation////
/mathml2.xsd/1.3/Wed May 12 16:10:20 2004//
WWW/Math/XMLSchema/mathml2
:ext:cvs.w3.org:/w3ccvs
/xlink-href.xsd/1.2/Fri Dec 13 16:57:02 2002//
/common-attribs.xsd/1.4/Wed May 12 16:10:20 2004//
/math.xsd/1.4/Wed May 12 16:10:20 2004//
D
WWW/Math/XMLSchema/mathml2/common
:ext:cvs.w3.org:/w3ccvs
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.w3.org/1998/Math/MathML"
xmlns:xlink="http://www.w3.org/1999/xlink"
targetNamespace="http://www.w3.org/1998/Math/MathML"
elementFormDefault="qualified"
>
<xs:annotation>
<xs:documentation>
This is the common attributes module for MathML.
Author: St&#233;phane Dalmas, INRIA.
</xs:documentation>
</xs:annotation>
<!-- A tweaked import statement for NCBI schema invokes xlink.xsd in the current
NCBI schema's home subdirectory -->
<xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="../../xlink.xsd"/>
<!-- The original import statement invokes xlink-href.xsd in the current subdirectory:
xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink-href.xsd"/ -->
<xs:import/> <!-- import any foreign namespace -->
<!-- The type of "class" is from the XHTML modularization with Schema
document -->
<xs:attributeGroup name="Common.attrib">
<xs:attribute name="class" type="xs:NMTOKENS"/>
<xs:attribute name="style" type="xs:string"/>
<xs:attribute name="xref" type="xs:IDREF"/>
<xs:attribute name="id" type="xs:ID"/>
<xs:attribute ref="xlink:href"/>
<!-- allow attributes from foreign namespaces, and don't check them -->
<xs:anyAttribute namespace="##other" processContents="skip"/>
</xs:attributeGroup>
</xs:schema>
<!--
Copyright &#251; 2002 World Wide Web Consortium, (Massachusetts Institute
of Technology, Institut National de Recherche en Informatique et en
Automatique, Keio University). All Rights Reserved. See
http://www.w3.org/Consortium/Legal/.
-->
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.w3.org/1998/Math/MathML"
targetNamespace="http://www.w3.org/1998/Math/MathML"
elementFormDefault="qualified"
>
<xs:annotation>
<xs:documentation>
This is an XML Schema module defining the "math" element of MathML.
Author: St&#233;phane Dalmas, INRIA.
</xs:documentation>
</xs:annotation>
<!-- The four groups that govern a lot of things -->
<!-- currently very lax. Should be tightened from Chapter 5 -->
<xs:group name="Presentation-expr.class">
<xs:choice>
<xs:group ref="PresExpr.class"/>
<xs:group ref="ContExpr.class"/>
</xs:choice>
</xs:group>
<xs:group name="Content-expr.class">
<xs:choice>
<xs:group ref="ContExpr.class"/>
<xs:group ref="PresExpr.class"/>
</xs:choice>
</xs:group>
<xs:group name="PresExpr.class">
<xs:choice>
<xs:group ref="Presentation-token.class"/>
<xs:group ref="Presentation-layout.class"/>
<xs:group ref="Presentation-script.class"/>
<xs:group ref="Presentation-table.class"/>
<xs:element ref="mspace"/>
<xs:element ref="maction"/>
<xs:element ref="merror"/>
<xs:element ref="mstyle"/>
</xs:choice>
</xs:group>
<xs:group name="ContExpr.class">
<xs:choice>
<xs:group ref="Content-tokens.class"/>
<xs:group ref="Content-arith.class"/>
<xs:group ref="Content-functions.class"/>
<xs:group ref="Content-logic.class"/>
<xs:group ref="Content-constants.class"/>
<xs:group ref="Content-sets.class"/>
<xs:group ref="Content-relations.class"/>
<xs:group ref="Content-elementary-functions.class"/>
<xs:group ref="Content-calculus.class"/>
<xs:group ref="Content-linear-algebra.class"/>
<xs:group ref="Content-vector-calculus.class"/>
<xs:group ref="Content-statistics.class"/>
<xs:group ref="Content-constructs.class"/>
<xs:element ref="semantics"/>
</xs:choice>
</xs:group>
<!-- "math" -->
<xs:attributeGroup name="Browser-interface.attrib">
<xs:attribute name="baseline" type="xs:string"/>
<xs:attribute name="overflow" default="scroll">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="scroll"/>
<xs:enumeration value="elide"/>
<xs:enumeration value="truncate"/>
<xs:enumeration value="scale"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="altimg" type="xs:anyURI"/>
<xs:attribute name="alttext" type="xs:string"/>
<xs:attribute name="type" type="xs:string"/>
<xs:attribute name="name" type="xs:string"/>
<xs:attribute name="height" type="xs:string"/>
<xs:attribute name="width" type="xs:string"/>
</xs:attributeGroup>
<xs:attributeGroup name="math.attlist">
<xs:attributeGroup ref="Browser-interface.attrib"/>
<xs:attribute name="macros" type="xs:string"/>
<!-- deprecated
<xs:attribute name="mode" type="xs:string"/>
-->
<xs:attribute name="display" default="inline">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="block"/>
<xs:enumeration value="inline"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="Common.attrib"/>
</xs:attributeGroup>
<xs:group name="math.content">
<xs:choice>
<xs:group ref="PresExpr.class"/>
<xs:group ref="ContExpr.class"/>
</xs:choice>
</xs:group>
<xs:complexType name="math.type">
<xs:group ref="math.content" minOccurs="0" maxOccurs="unbounded"/>
<xs:attributeGroup ref="math.attlist"/>
</xs:complexType>
<xs:element name="math" type="math.type"/>
</xs:schema>
<!--
Copyright &#251; 2002 World Wide Web Consortium, (Massachusetts Institute
of Technology, Institut National de Recherche en Informatique et en
Automatique, Keio University). All Rights Reserved. See
http://www.w3.org/Consortium/Legal/.
-->
<schema targetNamespace="http://www.w3.org/1999/xlink"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<documentation xml:lang="en">
This schema provides the XLink href attribute for use in the MathML2
schema. Written by Max Froumentin, W3C.
</documentation>
</annotation>
<attribute name="href" type="anyURI"/>
</schema>
<!--
Copyright &#251; 2002 World Wide Web Consortium, (Massachusetts Institute
of Technology, Institut National de Recherche en Informatique et en
Automatique, Keio University). All Rights Reserved. See
http://www.w3.org/Consortium/Legal/.
-->
/arith.xsd/1.3/Wed May 12 16:10:20 2004//
/calculus.xsd/1.3/Wed May 12 16:10:20 2004//
/common-attrib.xsd/1.3/Wed May 12 16:10:20 2004//
/constants.xsd/1.3/Wed May 12 16:10:20 2004//
/constructs.xsd/1.6/Wed May 12 16:10:20 2004//
/elementary-functions.xsd/1.3/Wed May 12 16:10:20 2004//
/functions.xsd/1.3/Wed May 12 16:10:20 2004//
/linear-algebra.xsd/1.3/Wed May 12 16:10:20 2004//
/logic.xsd/1.3/Wed May 12 16:10:20 2004//
/relations.xsd/1.3/Wed May 12 16:10:20 2004//
/semantics.xsd/1.3/Wed May 12 16:10:20 2004//
/sets.xsd/1.3/Wed May 12 16:10:20 2004//
/statistics.xsd/1.3/Wed May 12 16:10:20 2004//
/tokens.xsd/1.3/Wed May 12 16:10:20 2004//
/vector-calculus.xsd/1.3/Wed May 12 16:10:20 2004//
D
WWW/Math/XMLSchema/mathml2/content
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment