metanorma-jis 1.1.3 → 1.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +13 -1
- data/lib/isodoc/jis/jis.international-standard.xsl +48 -17
- data/lib/metanorma/jis/basicdoc.rng +31 -6
- data/lib/metanorma/jis/isodoc.rng +22 -3
- data/lib/metanorma/jis/mathml3-common.rng +257 -0
- data/lib/metanorma/jis/mathml3-content.rng +1544 -0
- data/lib/metanorma/jis/mathml3-presentation.rng +2324 -0
- data/lib/metanorma/jis/mathml3-strict-content.rng +205 -0
- data/lib/metanorma/jis/mathml3.rng +23 -0
- data/lib/metanorma/jis/metanorma-mathml.rng +45 -0
- data/lib/metanorma/jis/reqt.rng +10 -2
- data/lib/metanorma/jis/version.rb +1 -1
- data/metanorma-jis.gemspec +1 -1
- metadata +10 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b87cd55f0519a978c4ae4be412172919a6e7eae9acfeb1d690dfc7a500af99e2
|
|
4
|
+
data.tar.gz: 863e8655d1d0f61baa970b21f218f755a5e8ff6d61e34c8855faf63d7c8ec9b7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 77f3f33959afc2eb072cfa70ea734cb6b9529c194a898fdcf5f65358d9cf7a98048f69f95d96f48dd282f3272e218e8fff974da50803c67d9ce3140a57ea9e35
|
|
7
|
+
data.tar.gz: d9600c009eccb9731c8ea7312adb5bf5010a55ba65e90abdcd223ba697ff48daf3f4b752d5ac922915496fe8a18c7ea0f4448be5699660446b1e1b4c57cb8a15
|
data/.rubocop.yml
CHANGED
|
@@ -3,8 +3,20 @@
|
|
|
3
3
|
inherit_from:
|
|
4
4
|
- https://raw.githubusercontent.com/riboseinc/oss-guides/main/ci/rubocop.yml
|
|
5
5
|
|
|
6
|
+
# Rubocop plugins enabled centrally so every metanorma-org gem picks them up
|
|
7
|
+
# on cimas sync — best practice belongs at the shared-template layer, not
|
|
8
|
+
# per-repo. Per ronaldtse feedback on metanorma/ci#332.
|
|
9
|
+
plugins:
|
|
10
|
+
- rubocop-rspec
|
|
11
|
+
- rubocop-performance
|
|
12
|
+
- rubocop-rake
|
|
13
|
+
|
|
6
14
|
# local repo-specific modifications
|
|
7
15
|
# ...
|
|
8
16
|
|
|
9
17
|
AllCops:
|
|
10
|
-
|
|
18
|
+
# 3.3 matches the org-wide minimum being pushed via #274 (Raise minimum
|
|
19
|
+
# Ruby version to 3.3 due to EOL of 3.2 on 2026-03-31). Was 3.4 before
|
|
20
|
+
# this commit — 3.4 was above the org's stated minimum and would have
|
|
21
|
+
# applied Rubocop rules that fail-close on gems still targeting 3.3.
|
|
22
|
+
TargetRubyVersion: 3.3
|
|
@@ -11198,6 +11198,12 @@
|
|
|
11198
11198
|
<style name="{$key}-left"><xsl:value-of select="$value"/></style>
|
|
11199
11199
|
<style name="{$key}-bottom"><xsl:value-of select="$value"/></style>
|
|
11200
11200
|
</xsl:if>
|
|
11201
|
+
<xsl:if test="$key = 'page-break-inside' and $value = 'avoid'">
|
|
11202
|
+
<style name="keep-together.within-page">always</style>
|
|
11203
|
+
</xsl:if>
|
|
11204
|
+
<xsl:if test="$key = 'page-break-after' and $value = 'always'">
|
|
11205
|
+
<style name="break-after">page</style>
|
|
11206
|
+
</xsl:if>
|
|
11201
11207
|
</xsl:for-each>
|
|
11202
11208
|
</xsl:variable>
|
|
11203
11209
|
<xsl:variable name="styles" select="xalan:nodeset($styles_)"/>
|
|
@@ -11241,6 +11247,11 @@
|
|
|
11241
11247
|
|
|
11242
11248
|
<fo:block role="SKIP">
|
|
11243
11249
|
|
|
11250
|
+
<xsl:variable name="styles">
|
|
11251
|
+
<styles><xsl:call-template name="setTableStyles"/></styles>
|
|
11252
|
+
</xsl:variable>
|
|
11253
|
+
<xsl:copy-of select="xalan:nodeset($styles)/styles/@break-after"/>
|
|
11254
|
+
|
|
11244
11255
|
<xsl:if test="$isGenerateTableIF = 'true'">
|
|
11245
11256
|
<fo:inline>
|
|
11246
11257
|
<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
|
|
@@ -13436,21 +13447,38 @@
|
|
|
13436
13447
|
<!-- ====== -->
|
|
13437
13448
|
<!-- ====== -->
|
|
13438
13449
|
|
|
13439
|
-
<xsl:attribute-set name="quote-style">
|
|
13450
|
+
<xsl:attribute-set name="quote-container-style">
|
|
13440
13451
|
<xsl:attribute name="margin-left">12mm</xsl:attribute>
|
|
13441
13452
|
<xsl:attribute name="margin-right">12mm</xsl:attribute>
|
|
13453
|
+
<xsl:attribute name="role">SKIP</xsl:attribute>
|
|
13454
|
+
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
|
13442
13455
|
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
|
13443
13456
|
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
|
13444
|
-
</xsl:attribute-set>
|
|
13457
|
+
</xsl:attribute-set>
|
|
13445
13458
|
|
|
13446
|
-
<xsl:template name="refine_quote-style">
|
|
13459
|
+
<xsl:template name="refine_quote-container-style">
|
|
13460
|
+
<xsl:if test="parent::mn:note">
|
|
13461
|
+
<xsl:if test="not(ancestor::mn:table)">
|
|
13462
|
+
<xsl:attribute name="margin-left">5mm</xsl:attribute>
|
|
13463
|
+
</xsl:if>
|
|
13464
|
+
</xsl:if>
|
|
13447
13465
|
<xsl:if test="ancestor::mn:li">
|
|
13448
13466
|
<xsl:attribute name="margin-left">7.5mm</xsl:attribute>
|
|
13449
13467
|
</xsl:if>
|
|
13468
|
+
</xsl:template>
|
|
13469
|
+
|
|
13470
|
+
<xsl:attribute-set name="quote-style">
|
|
13471
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
|
13472
|
+
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
|
13473
|
+
|
|
13474
|
+
</xsl:attribute-set> <!-- quote-style -->
|
|
13475
|
+
|
|
13476
|
+
<xsl:template name="refine_quote-style">
|
|
13450
13477
|
</xsl:template> <!-- refine_quote-style -->
|
|
13451
13478
|
|
|
13452
13479
|
<xsl:attribute-set name="quote-source-style">
|
|
13453
13480
|
<xsl:attribute name="text-align">right</xsl:attribute>
|
|
13481
|
+
<xsl:attribute name="margin-right">-12mm</xsl:attribute>
|
|
13454
13482
|
</xsl:attribute-set> <!-- quote-source-style -->
|
|
13455
13483
|
|
|
13456
13484
|
<xsl:template name="refine_quote-source-style">
|
|
@@ -13473,12 +13501,9 @@
|
|
|
13473
13501
|
|
|
13474
13502
|
<xsl:call-template name="setBlockSpanAll"/>
|
|
13475
13503
|
|
|
13476
|
-
<xsl:
|
|
13477
|
-
<xsl:
|
|
13478
|
-
|
|
13479
|
-
</xsl:if>
|
|
13480
|
-
</xsl:if>
|
|
13481
|
-
<fo:block-container margin-left="0mm" role="SKIP">
|
|
13504
|
+
<fo:block-container xsl:use-attribute-sets="quote-container-style">
|
|
13505
|
+
<xsl:call-template name="refine_quote-container-style"/>
|
|
13506
|
+
|
|
13482
13507
|
<fo:block-container xsl:use-attribute-sets="quote-style" role="SKIP">
|
|
13483
13508
|
|
|
13484
13509
|
<xsl:call-template name="refine_quote-style"/>
|
|
@@ -13490,14 +13515,16 @@
|
|
|
13490
13515
|
</fo:block-container>
|
|
13491
13516
|
</fo:block-container>
|
|
13492
13517
|
<xsl:if test="mn:author or mn:fmt-source or mn:attribution">
|
|
13493
|
-
<fo:block
|
|
13494
|
-
<xsl:
|
|
13495
|
-
|
|
13496
|
-
|
|
13497
|
-
|
|
13498
|
-
|
|
13499
|
-
|
|
13500
|
-
|
|
13518
|
+
<fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
|
|
13519
|
+
<fo:block xsl:use-attribute-sets="quote-source-style">
|
|
13520
|
+
<xsl:call-template name="refine_quote-source-style"/>
|
|
13521
|
+
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
|
13522
|
+
<xsl:apply-templates select="mn:author"/>
|
|
13523
|
+
<xsl:apply-templates select="mn:fmt-source"/>
|
|
13524
|
+
<!-- added for https://github.com/metanorma/isodoc/issues/607 -->
|
|
13525
|
+
<xsl:apply-templates select="mn:attribution/mn:p/node()"/>
|
|
13526
|
+
</fo:block>
|
|
13527
|
+
</fo:block-container>
|
|
13501
13528
|
</xsl:if>
|
|
13502
13529
|
<!-- render footnotes after references -->
|
|
13503
13530
|
<xsl:apply-templates select=".//mn:fn[generate-id(.)=generate-id(key('kfn',@reference)[1])]" mode="fn_after_element">
|
|
@@ -18873,6 +18900,10 @@
|
|
|
18873
18900
|
<fo:block break-after="page"/>
|
|
18874
18901
|
</xsl:template>
|
|
18875
18902
|
|
|
18903
|
+
<xsl:template match="mn:pagebreak[ancestor::mn:table]" priority="2">
|
|
18904
|
+
<fo:block break-after="page"/>
|
|
18905
|
+
</xsl:template>
|
|
18906
|
+
|
|
18876
18907
|
<xsl:variable name="font_main_root_style">
|
|
18877
18908
|
<root-style xsl:use-attribute-sets="root-style">
|
|
18878
18909
|
</root-style>
|
|
@@ -1902,15 +1902,40 @@ or as the string "auto"</a:documentation>
|
|
|
1902
1902
|
<a:documentation>Mathematically formatted text</a:documentation>
|
|
1903
1903
|
<element name="stem">
|
|
1904
1904
|
<ref name="StemAttributes"/>
|
|
1905
|
-
<
|
|
1906
|
-
<
|
|
1905
|
+
<optional>
|
|
1906
|
+
<text>
|
|
1907
1907
|
<a:documentation>The content of the mathematically formatted text</a:documentation>
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1908
|
+
</text>
|
|
1909
|
+
</optional>
|
|
1910
|
+
<optional>
|
|
1911
|
+
<ref name="mathml"/>
|
|
1912
|
+
</optional>
|
|
1913
|
+
<optional>
|
|
1914
|
+
<ref name="asciimath"/>
|
|
1915
|
+
</optional>
|
|
1916
|
+
<optional>
|
|
1917
|
+
<ref name="latexmath"/>
|
|
1918
|
+
</optional>
|
|
1912
1919
|
</element>
|
|
1913
1920
|
</define>
|
|
1921
|
+
<define name="latexmath">
|
|
1922
|
+
<a:documentation>Encoding of LatexMath</a:documentation>
|
|
1923
|
+
<element name="latexmath">
|
|
1924
|
+
<text/>
|
|
1925
|
+
</element>
|
|
1926
|
+
</define>
|
|
1927
|
+
<define name="asciimath">
|
|
1928
|
+
<a:documentation>Encoding of AsciiMath</a:documentation>
|
|
1929
|
+
<element name="asciimath">
|
|
1930
|
+
<text/>
|
|
1931
|
+
</element>
|
|
1932
|
+
</define>
|
|
1933
|
+
<define name="mathml">
|
|
1934
|
+
<a:documentation>Encoding of MathML: the official W3C MathML 3.0 grammar (namespace
|
|
1935
|
+
http://www.w3.org/1998/Math/MathML), via the metanorma wrapper in
|
|
1936
|
+
grammars/mathml/. See grammars/mathml/README.adoc and basicdoc-models#35.</a:documentation>
|
|
1937
|
+
<externalRef href="metanorma-mathml.rng"/>
|
|
1938
|
+
</define>
|
|
1914
1939
|
<define name="StemAttributes">
|
|
1915
1940
|
<attribute name="type">
|
|
1916
1941
|
<a:documentation>The notation used to mathematically format the text</a:documentation>
|
|
@@ -852,7 +852,7 @@ titlecase, or lowercase</a:documentation>
|
|
|
852
852
|
<a:documentation>Width of the figure block in rendering</a:documentation>
|
|
853
853
|
</attribute>
|
|
854
854
|
</optional>
|
|
855
|
-
<ref name="
|
|
855
|
+
<ref name="BlockAttributesCore"/>
|
|
856
856
|
</define>
|
|
857
857
|
<define name="SourceAttributes" combine="interleave">
|
|
858
858
|
<ref name="BlockAttributes"/>
|
|
@@ -1283,7 +1283,11 @@ That concept may be defined as a term within the current document, or it may be
|
|
|
1283
1283
|
<a:documentation>Class of input form</a:documentation>
|
|
1284
1284
|
</attribute>
|
|
1285
1285
|
</optional>
|
|
1286
|
-
<ref name="
|
|
1286
|
+
<ref name="BlockAttributesCore">
|
|
1287
|
+
<a:documentation>form declares its own class above, so it uses BlockAttributesCore to
|
|
1288
|
+
avoid duplicating the custom-class slot in BlockAttributes. Treated like
|
|
1289
|
+
figure. See metanorma/metanorma-standoc#1197</a:documentation>
|
|
1290
|
+
</ref>
|
|
1287
1291
|
<zeroOrMore>
|
|
1288
1292
|
<!-- Input form contents -->
|
|
1289
1293
|
<choice>
|
|
@@ -2768,7 +2772,11 @@ links within an SVG file, so that the SVG file can hyperlink to anchors within t
|
|
|
2768
2772
|
</oneOrMore>
|
|
2769
2773
|
</element>
|
|
2770
2774
|
</define>
|
|
2771
|
-
<define name="
|
|
2775
|
+
<define name="BlockAttributesCore">
|
|
2776
|
+
<a:documentation>Block attributes excluding the custom CSS class. Blocks that already carry
|
|
2777
|
+
their own `class` attribute (e.g. figure, via basicdoc FigureAttributes)
|
|
2778
|
+
include this directly, to avoid a duplicate-attribute collision with the
|
|
2779
|
+
`class` added in BlockAttributes. See metanorma/metanorma-standoc#1197</a:documentation>
|
|
2772
2780
|
<optional>
|
|
2773
2781
|
<attribute name="keep-with-next">
|
|
2774
2782
|
<a:documentation>Keep this block on the same page as the following block in paged media</a:documentation>
|
|
@@ -2800,6 +2808,17 @@ to span across both columns</a:documentation>
|
|
|
2800
2808
|
</attribute>
|
|
2801
2809
|
</optional>
|
|
2802
2810
|
</define>
|
|
2811
|
+
<define name="BlockAttributes">
|
|
2812
|
+
<a:documentation>Universal block attributes, including a custom CSS class (space-separated,
|
|
2813
|
+
appended additively to the block's built-in HTML class, HTML output only).
|
|
2814
|
+
See metanorma/metanorma-standoc#1197</a:documentation>
|
|
2815
|
+
<ref name="BlockAttributesCore"/>
|
|
2816
|
+
<optional>
|
|
2817
|
+
<attribute name="class">
|
|
2818
|
+
<a:documentation>Custom CSS class(es) for the block in HTML output</a:documentation>
|
|
2819
|
+
</attribute>
|
|
2820
|
+
</optional>
|
|
2821
|
+
</define>
|
|
2803
2822
|
<define name="DisplayDirective">
|
|
2804
2823
|
<a:documentation>Directive on how to render a block in Presentation XML </a:documentation>
|
|
2805
2824
|
<optional>
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
This is the Mathematical Markup Language (MathML) 3.0, an XML
|
|
4
|
+
application for describing mathematical notation and capturing
|
|
5
|
+
both its structure and content.
|
|
6
|
+
|
|
7
|
+
Copyright 1998-2014 W3C (MIT, ERCIM, Keio, Beihang)
|
|
8
|
+
|
|
9
|
+
Use and distribution of this code are permitted under the terms
|
|
10
|
+
W3C Software Notice and License
|
|
11
|
+
http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
|
|
12
|
+
-->
|
|
13
|
+
<grammar ns="http://www.w3.org/1998/Math/MathML" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
|
14
|
+
<start>
|
|
15
|
+
<ref name="math"/>
|
|
16
|
+
</start>
|
|
17
|
+
<define name="math">
|
|
18
|
+
<element name="math">
|
|
19
|
+
<ref name="math.attributes"/>
|
|
20
|
+
<zeroOrMore>
|
|
21
|
+
<ref name="MathExpression"/>
|
|
22
|
+
</zeroOrMore>
|
|
23
|
+
</element>
|
|
24
|
+
</define>
|
|
25
|
+
<define name="MathExpression">
|
|
26
|
+
<ref name="semantics"/>
|
|
27
|
+
</define>
|
|
28
|
+
<define name="NonMathMLAtt">
|
|
29
|
+
<attribute>
|
|
30
|
+
<anyName>
|
|
31
|
+
<except>
|
|
32
|
+
<nsName ns=""/>
|
|
33
|
+
<nsName/>
|
|
34
|
+
</except>
|
|
35
|
+
</anyName>
|
|
36
|
+
<data type="string"/>
|
|
37
|
+
</attribute>
|
|
38
|
+
</define>
|
|
39
|
+
<define name="CommonDeprecatedAtt">
|
|
40
|
+
<optional>
|
|
41
|
+
<attribute name="other"/>
|
|
42
|
+
</optional>
|
|
43
|
+
</define>
|
|
44
|
+
<define name="CommonAtt">
|
|
45
|
+
<optional>
|
|
46
|
+
<attribute name="id">
|
|
47
|
+
<data type="ID"/>
|
|
48
|
+
</attribute>
|
|
49
|
+
</optional>
|
|
50
|
+
<optional>
|
|
51
|
+
<attribute name="xref"/>
|
|
52
|
+
</optional>
|
|
53
|
+
<optional>
|
|
54
|
+
<attribute name="class">
|
|
55
|
+
<data type="NMTOKENS"/>
|
|
56
|
+
</attribute>
|
|
57
|
+
</optional>
|
|
58
|
+
<optional>
|
|
59
|
+
<attribute name="style">
|
|
60
|
+
<data type="string"/>
|
|
61
|
+
</attribute>
|
|
62
|
+
</optional>
|
|
63
|
+
<optional>
|
|
64
|
+
<attribute name="href">
|
|
65
|
+
<data type="anyURI"/>
|
|
66
|
+
</attribute>
|
|
67
|
+
</optional>
|
|
68
|
+
<ref name="CommonDeprecatedAtt"/>
|
|
69
|
+
<zeroOrMore>
|
|
70
|
+
<ref name="NonMathMLAtt"/>
|
|
71
|
+
</zeroOrMore>
|
|
72
|
+
</define>
|
|
73
|
+
<define name="math.attributes">
|
|
74
|
+
<ref name="CommonAtt"/>
|
|
75
|
+
<optional>
|
|
76
|
+
<attribute name="display">
|
|
77
|
+
<choice>
|
|
78
|
+
<value>block</value>
|
|
79
|
+
<value>inline</value>
|
|
80
|
+
</choice>
|
|
81
|
+
</attribute>
|
|
82
|
+
</optional>
|
|
83
|
+
<optional>
|
|
84
|
+
<attribute name="maxwidth">
|
|
85
|
+
<ref name="length"/>
|
|
86
|
+
</attribute>
|
|
87
|
+
</optional>
|
|
88
|
+
<optional>
|
|
89
|
+
<attribute name="overflow">
|
|
90
|
+
<choice>
|
|
91
|
+
<value>linebreak</value>
|
|
92
|
+
<value>scroll</value>
|
|
93
|
+
<value>elide</value>
|
|
94
|
+
<value>truncate</value>
|
|
95
|
+
<value>scale</value>
|
|
96
|
+
</choice>
|
|
97
|
+
</attribute>
|
|
98
|
+
</optional>
|
|
99
|
+
<optional>
|
|
100
|
+
<attribute name="altimg">
|
|
101
|
+
<data type="anyURI"/>
|
|
102
|
+
</attribute>
|
|
103
|
+
</optional>
|
|
104
|
+
<optional>
|
|
105
|
+
<attribute name="altimg-width">
|
|
106
|
+
<ref name="length"/>
|
|
107
|
+
</attribute>
|
|
108
|
+
</optional>
|
|
109
|
+
<optional>
|
|
110
|
+
<attribute name="altimg-height">
|
|
111
|
+
<ref name="length"/>
|
|
112
|
+
</attribute>
|
|
113
|
+
</optional>
|
|
114
|
+
<optional>
|
|
115
|
+
<attribute name="altimg-valign">
|
|
116
|
+
<choice>
|
|
117
|
+
<ref name="length"/>
|
|
118
|
+
<value>top</value>
|
|
119
|
+
<value>middle</value>
|
|
120
|
+
<value>bottom</value>
|
|
121
|
+
</choice>
|
|
122
|
+
</attribute>
|
|
123
|
+
</optional>
|
|
124
|
+
<optional>
|
|
125
|
+
<attribute name="alttext"/>
|
|
126
|
+
</optional>
|
|
127
|
+
<optional>
|
|
128
|
+
<attribute name="cdgroup">
|
|
129
|
+
<data type="anyURI"/>
|
|
130
|
+
</attribute>
|
|
131
|
+
</optional>
|
|
132
|
+
<ref name="math.deprecatedattributes"/>
|
|
133
|
+
</define>
|
|
134
|
+
<!--
|
|
135
|
+
the mathml3-presentation schema adds additional attributes
|
|
136
|
+
to the math element, all those valid on mstyle
|
|
137
|
+
-->
|
|
138
|
+
<define name="math.deprecatedattributes">
|
|
139
|
+
<optional>
|
|
140
|
+
<attribute name="mode">
|
|
141
|
+
<data type="string"/>
|
|
142
|
+
</attribute>
|
|
143
|
+
</optional>
|
|
144
|
+
<optional>
|
|
145
|
+
<attribute name="macros">
|
|
146
|
+
<data type="string"/>
|
|
147
|
+
</attribute>
|
|
148
|
+
</optional>
|
|
149
|
+
</define>
|
|
150
|
+
<define name="name">
|
|
151
|
+
<attribute name="name">
|
|
152
|
+
<data type="NCName"/>
|
|
153
|
+
</attribute>
|
|
154
|
+
</define>
|
|
155
|
+
<define name="cd">
|
|
156
|
+
<attribute name="cd">
|
|
157
|
+
<data type="NCName"/>
|
|
158
|
+
</attribute>
|
|
159
|
+
</define>
|
|
160
|
+
<define name="src">
|
|
161
|
+
<optional>
|
|
162
|
+
<attribute name="src">
|
|
163
|
+
<data type="anyURI"/>
|
|
164
|
+
</attribute>
|
|
165
|
+
</optional>
|
|
166
|
+
</define>
|
|
167
|
+
<define name="annotation">
|
|
168
|
+
<element name="annotation">
|
|
169
|
+
<ref name="annotation.attributes"/>
|
|
170
|
+
<text/>
|
|
171
|
+
</element>
|
|
172
|
+
</define>
|
|
173
|
+
<define name="annotation-xml.model">
|
|
174
|
+
<zeroOrMore>
|
|
175
|
+
<choice>
|
|
176
|
+
<ref name="MathExpression"/>
|
|
177
|
+
<ref name="anyElement"/>
|
|
178
|
+
</choice>
|
|
179
|
+
</zeroOrMore>
|
|
180
|
+
</define>
|
|
181
|
+
<define name="anyElement">
|
|
182
|
+
<element>
|
|
183
|
+
<anyName>
|
|
184
|
+
<except>
|
|
185
|
+
<nsName/>
|
|
186
|
+
</except>
|
|
187
|
+
</anyName>
|
|
188
|
+
<zeroOrMore>
|
|
189
|
+
<choice>
|
|
190
|
+
<attribute>
|
|
191
|
+
<anyName/>
|
|
192
|
+
</attribute>
|
|
193
|
+
<text/>
|
|
194
|
+
<ref name="anyElement"/>
|
|
195
|
+
</choice>
|
|
196
|
+
</zeroOrMore>
|
|
197
|
+
</element>
|
|
198
|
+
</define>
|
|
199
|
+
<define name="annotation-xml">
|
|
200
|
+
<element name="annotation-xml">
|
|
201
|
+
<ref name="annotation.attributes"/>
|
|
202
|
+
<ref name="annotation-xml.model"/>
|
|
203
|
+
</element>
|
|
204
|
+
</define>
|
|
205
|
+
<define name="annotation.attributes">
|
|
206
|
+
<ref name="CommonAtt"/>
|
|
207
|
+
<optional>
|
|
208
|
+
<ref name="cd"/>
|
|
209
|
+
</optional>
|
|
210
|
+
<optional>
|
|
211
|
+
<ref name="name"/>
|
|
212
|
+
</optional>
|
|
213
|
+
<ref name="DefEncAtt"/>
|
|
214
|
+
<optional>
|
|
215
|
+
<ref name="src"/>
|
|
216
|
+
</optional>
|
|
217
|
+
</define>
|
|
218
|
+
<define name="DefEncAtt">
|
|
219
|
+
<optional>
|
|
220
|
+
<attribute name="encoding">
|
|
221
|
+
<data type="string"/>
|
|
222
|
+
</attribute>
|
|
223
|
+
</optional>
|
|
224
|
+
<optional>
|
|
225
|
+
<attribute name="definitionURL">
|
|
226
|
+
<data type="anyURI"/>
|
|
227
|
+
</attribute>
|
|
228
|
+
</optional>
|
|
229
|
+
</define>
|
|
230
|
+
<define name="semantics">
|
|
231
|
+
<element name="semantics">
|
|
232
|
+
<ref name="semantics.attributes"/>
|
|
233
|
+
<ref name="MathExpression"/>
|
|
234
|
+
<zeroOrMore>
|
|
235
|
+
<choice>
|
|
236
|
+
<ref name="annotation"/>
|
|
237
|
+
<ref name="annotation-xml"/>
|
|
238
|
+
</choice>
|
|
239
|
+
</zeroOrMore>
|
|
240
|
+
</element>
|
|
241
|
+
</define>
|
|
242
|
+
<define name="semantics.attributes">
|
|
243
|
+
<ref name="CommonAtt"/>
|
|
244
|
+
<ref name="DefEncAtt"/>
|
|
245
|
+
<optional>
|
|
246
|
+
<ref name="cd"/>
|
|
247
|
+
</optional>
|
|
248
|
+
<optional>
|
|
249
|
+
<ref name="name"/>
|
|
250
|
+
</optional>
|
|
251
|
+
</define>
|
|
252
|
+
<define name="length">
|
|
253
|
+
<data type="string">
|
|
254
|
+
<param name="pattern">\s*((-?[0-9]*([0-9]\.?|\.[0-9])[0-9]*(e[mx]|in|cm|mm|p[xtc]|%)?)|(negative)?((very){0,2}thi(n|ck)|medium)mathspace)\s*</param>
|
|
255
|
+
</data>
|
|
256
|
+
</define>
|
|
257
|
+
</grammar>
|