mml 2.3.0 → 2.3.2

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.
Files changed (336) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +9 -0
  3. data/.rubocop.yml +4 -0
  4. data/.rubocop_todo.yml +83 -18
  5. data/Gemfile +0 -2
  6. data/README.adoc +176 -47
  7. data/Rakefile +16 -1
  8. data/lib/mml/base/common_attributes.rb +44 -0
  9. data/lib/mml/base/content/annotation.rb +28 -0
  10. data/lib/mml/base/content/annotation_xml.rb +31 -0
  11. data/lib/mml/base/content/apply.rb +27 -0
  12. data/lib/mml/base/content/arith.rb +243 -0
  13. data/lib/mml/base/content/bind.rb +27 -0
  14. data/lib/mml/base/content/bvar.rb +20 -0
  15. data/lib/mml/base/content/calculus.rb +103 -0
  16. data/lib/mml/base/content/cbytes.rb +24 -0
  17. data/lib/mml/base/content/cerror.rb +24 -0
  18. data/lib/mml/base/content/ci.rb +77 -0
  19. data/lib/mml/base/content/cn.rb +33 -0
  20. data/lib/mml/base/content/condition.rb +20 -0
  21. data/lib/mml/base/content/constants.rb +173 -0
  22. data/lib/mml/base/content/cs.rb +22 -0
  23. data/lib/mml/base/content/csymbol.rb +79 -0
  24. data/lib/mml/base/content/declare.rb +34 -0
  25. data/lib/mml/base/content/degree.rb +20 -0
  26. data/lib/mml/base/content/elementary_functions.rb +309 -0
  27. data/lib/mml/base/content/fn.rb +25 -0
  28. data/lib/mml/base/content/functions.rb +85 -0
  29. data/lib/mml/base/content/interval.rb +24 -0
  30. data/lib/mml/base/content/inverse.rb +25 -0
  31. data/lib/mml/base/content/lambda.rb +20 -0
  32. data/lib/mml/base/content/linear_algebra.rb +122 -0
  33. data/lib/mml/base/content/logic.rb +93 -0
  34. data/lib/mml/base/content/otherwise.rb +20 -0
  35. data/lib/mml/base/content/piece.rb +20 -0
  36. data/lib/mml/base/content/piecewise.rb +20 -0
  37. data/lib/mml/base/content/relations.rb +113 -0
  38. data/lib/mml/base/content/reln.rb +19 -0
  39. data/lib/mml/base/content/semantics.rb +27 -0
  40. data/lib/mml/base/content/sep.rb +19 -0
  41. data/lib/mml/base/content/sets.rb +163 -0
  42. data/lib/mml/base/content/share.rb +22 -0
  43. data/lib/mml/base/content/statistics.rb +95 -0
  44. data/lib/mml/base/content/vector_calculus.rb +63 -0
  45. data/lib/mml/base/content_loader.rb +195 -0
  46. data/lib/mml/base/maction.rb +1 -0
  47. data/lib/mml/base/math.rb +47 -0
  48. data/lib/mml/base/menclose.rb +1 -1
  49. data/lib/mml/base/mfenced.rb +2 -2
  50. data/lib/mml/base/mglyph.rb +2 -2
  51. data/lib/mml/base/mi.rb +9 -6
  52. data/lib/mml/base/mlabeledtr.rb +2 -6
  53. data/lib/mml/base/mn.rb +3 -2
  54. data/lib/mml/base/mo.rb +3 -3
  55. data/lib/mml/base/mrow.rb +0 -2
  56. data/lib/mml/base/ms.rb +4 -6
  57. data/lib/mml/base/mscarries.rb +1 -1
  58. data/lib/mml/base/mspace.rb +0 -2
  59. data/lib/mml/base/mstyle.rb +4 -8
  60. data/lib/mml/base/mtable.rb +8 -0
  61. data/lib/mml/base/mtd.rb +6 -0
  62. data/lib/mml/base/mtext.rb +0 -2
  63. data/lib/mml/base/semantics.rb +4 -2
  64. data/lib/mml/base/universal_presentation_attributes.rb +46 -0
  65. data/lib/mml/base/v3_common.rb +16 -0
  66. data/lib/mml/base/v3_presentation_attributes.rb +15 -0
  67. data/lib/mml/base/v4_attributes.rb +4 -18
  68. data/lib/mml/base.rb +11 -0
  69. data/lib/mml/common_elements.rb +336 -0
  70. data/lib/mml/context_configuration.rb +29 -0
  71. data/lib/mml/v2/annotation.rb +9 -0
  72. data/lib/mml/v2/annotation_xml.rb +9 -0
  73. data/lib/mml/v2/apply.rb +9 -0
  74. data/lib/mml/v2/arith.rb +93 -0
  75. data/lib/mml/v2/bind.rb +9 -0
  76. data/lib/mml/v2/bvar.rb +9 -0
  77. data/lib/mml/v2/calculus.rb +33 -0
  78. data/lib/mml/v2/ci.rb +9 -0
  79. data/lib/mml/v2/cn.rb +9 -0
  80. data/lib/mml/v2/common_elements.rb +34 -0
  81. data/lib/mml/v2/condition.rb +9 -0
  82. data/lib/mml/v2/configuration.rb +13 -0
  83. data/lib/mml/v2/constants.rb +65 -0
  84. data/lib/mml/v2/csymbol.rb +9 -0
  85. data/lib/mml/v2/degree.rb +9 -0
  86. data/lib/mml/v2/elementary_functions.rb +121 -0
  87. data/lib/mml/v2/fn.rb +9 -0
  88. data/lib/mml/v2/functions.rb +29 -0
  89. data/lib/mml/v2/interval.rb +9 -0
  90. data/lib/mml/v2/inverse.rb +9 -0
  91. data/lib/mml/v2/lambda.rb +9 -0
  92. data/lib/mml/v2/linear_algebra.rb +41 -0
  93. data/lib/mml/v2/logic.rb +33 -0
  94. data/lib/mml/v2/maction.rb +9 -0
  95. data/lib/mml/v2/maligngroup.rb +9 -0
  96. data/lib/mml/v2/malignmark.rb +9 -0
  97. data/lib/mml/v2/math.rb +11 -0
  98. data/lib/mml/v2/menclose.rb +9 -0
  99. data/lib/mml/v2/merror.rb +9 -0
  100. data/lib/mml/v2/mfenced.rb +9 -0
  101. data/lib/mml/v2/mfrac.rb +9 -0
  102. data/lib/mml/v2/mfraction.rb +9 -0
  103. data/lib/mml/v2/mglyph.rb +9 -0
  104. data/lib/mml/v2/mi.rb +9 -0
  105. data/lib/mml/v2/mlabeledtr.rb +9 -0
  106. data/lib/mml/v2/mlongdiv.rb +9 -0
  107. data/lib/mml/v2/mmultiscripts.rb +9 -0
  108. data/lib/mml/v2/mn.rb +9 -0
  109. data/lib/mml/v2/mo.rb +10 -0
  110. data/lib/mml/v2/mover.rb +9 -0
  111. data/lib/mml/v2/mpadded.rb +9 -0
  112. data/lib/mml/v2/mphantom.rb +9 -0
  113. data/lib/mml/v2/mprescripts.rb +9 -0
  114. data/lib/mml/v2/mroot.rb +9 -0
  115. data/lib/mml/v2/mrow.rb +9 -0
  116. data/lib/mml/v2/ms.rb +9 -0
  117. data/lib/mml/v2/mscarries.rb +9 -0
  118. data/lib/mml/v2/mscarry.rb +9 -0
  119. data/lib/mml/v2/msgroup.rb +9 -0
  120. data/lib/mml/v2/msline.rb +9 -0
  121. data/lib/mml/v2/mspace.rb +9 -0
  122. data/lib/mml/v2/msqrt.rb +9 -0
  123. data/lib/mml/v2/msrow.rb +9 -0
  124. data/lib/mml/v2/mstack.rb +9 -0
  125. data/lib/mml/v2/mstyle.rb +10 -0
  126. data/lib/mml/v2/msub.rb +9 -0
  127. data/lib/mml/v2/msubsup.rb +9 -0
  128. data/lib/mml/v2/msup.rb +9 -0
  129. data/lib/mml/v2/mtable.rb +9 -0
  130. data/lib/mml/v2/mtd.rb +9 -0
  131. data/lib/mml/v2/mtext.rb +9 -0
  132. data/lib/mml/v2/mtr.rb +9 -0
  133. data/lib/mml/v2/munder.rb +9 -0
  134. data/lib/mml/v2/munderover.rb +9 -0
  135. data/lib/mml/v2/namespace.rb +7 -0
  136. data/lib/mml/v2/none.rb +9 -0
  137. data/lib/mml/v2/otherwise.rb +9 -0
  138. data/lib/mml/v2/piece.rb +9 -0
  139. data/lib/mml/v2/piecewise.rb +9 -0
  140. data/lib/mml/v2/relations.rb +41 -0
  141. data/lib/mml/v2/reln.rb +13 -0
  142. data/lib/mml/v2/semantics.rb +9 -0
  143. data/lib/mml/v2/sep.rb +9 -0
  144. data/lib/mml/v2/sets.rb +57 -0
  145. data/lib/mml/v2/statistics.rb +33 -0
  146. data/lib/mml/v2/vector_calculus.rb +21 -0
  147. data/lib/mml/v2.rb +311 -0
  148. data/lib/mml/v3/annotation.rb +10 -0
  149. data/lib/mml/v3/annotation_xml.rb +10 -0
  150. data/lib/mml/v3/apply.rb +10 -0
  151. data/lib/mml/v3/arith.rb +115 -0
  152. data/lib/mml/v3/bind.rb +10 -0
  153. data/lib/mml/v3/calculus.rb +40 -0
  154. data/lib/mml/v3/cbytes.rb +10 -0
  155. data/lib/mml/v3/cerror.rb +10 -0
  156. data/lib/mml/v3/ci.rb +10 -0
  157. data/lib/mml/v3/cn.rb +10 -0
  158. data/lib/mml/v3/common_elements.rb +34 -0
  159. data/lib/mml/v3/constants.rb +80 -0
  160. data/lib/mml/v3/constructs.rb +55 -0
  161. data/lib/mml/v3/cs.rb +10 -0
  162. data/lib/mml/v3/csymbol.rb +10 -0
  163. data/lib/mml/v3/deprecated_content.rb +29 -0
  164. data/lib/mml/v3/elementary_functions.rb +145 -0
  165. data/lib/mml/v3/functions.rb +35 -0
  166. data/lib/mml/v3/linear_algebra.rb +50 -0
  167. data/lib/mml/v3/logic.rb +40 -0
  168. data/lib/mml/v3/maction.rb +1 -1
  169. data/lib/mml/v3/math.rb +7 -1
  170. data/lib/mml/v3/mi.rb +1 -0
  171. data/lib/mml/v3/mn.rb +1 -0
  172. data/lib/mml/v3/mo.rb +1 -0
  173. data/lib/mml/v3/mrow.rb +1 -0
  174. data/lib/mml/v3/ms.rb +1 -0
  175. data/lib/mml/v3/mstyle.rb +1 -0
  176. data/lib/mml/v3/mtext.rb +1 -0
  177. data/lib/mml/v3/relations.rb +50 -0
  178. data/lib/mml/v3/sets.rb +70 -0
  179. data/lib/mml/v3/statistics.rb +40 -0
  180. data/lib/mml/v3/vector_calculus.rb +25 -0
  181. data/lib/mml/v3.rb +25 -0
  182. data/lib/mml/v4/a.rb +4 -3
  183. data/lib/mml/v4/annotation.rb +10 -0
  184. data/lib/mml/v4/annotation_xml.rb +14 -0
  185. data/lib/mml/v4/apply.rb +9 -0
  186. data/lib/mml/v4/arith.rb +93 -0
  187. data/lib/mml/v4/calculus.rb +25 -0
  188. data/lib/mml/v4/cbytes.rb +9 -0
  189. data/lib/mml/v4/cerror.rb +9 -0
  190. data/lib/mml/v4/ci.rb +9 -0
  191. data/lib/mml/v4/cn.rb +9 -0
  192. data/lib/mml/v4/common_elements.rb +33 -0
  193. data/lib/mml/v4/constants.rb +65 -0
  194. data/lib/mml/v4/constructs.rb +49 -0
  195. data/lib/mml/v4/cs.rb +9 -0
  196. data/lib/mml/v4/csymbol.rb +9 -0
  197. data/lib/mml/v4/deprecated_content.rb +25 -0
  198. data/lib/mml/v4/elementary_functions.rb +118 -0
  199. data/lib/mml/v4/factorof.rb +9 -0
  200. data/lib/mml/v4/functions.rb +30 -0
  201. data/lib/mml/v4/limit.rb +9 -0
  202. data/lib/mml/v4/linear_algebra.rb +41 -0
  203. data/lib/mml/v4/logic.rb +33 -0
  204. data/lib/mml/v4/maction.rb +1 -2
  205. data/lib/mml/v4/maligngroup.rb +0 -1
  206. data/lib/mml/v4/malignmark.rb +0 -1
  207. data/lib/mml/v4/math.rb +1 -1
  208. data/lib/mml/v4/menclose.rb +0 -1
  209. data/lib/mml/v4/merror.rb +0 -1
  210. data/lib/mml/v4/mfenced.rb +0 -1
  211. data/lib/mml/v4/mfrac.rb +0 -1
  212. data/lib/mml/v4/mfraction.rb +0 -1
  213. data/lib/mml/v4/mglyph.rb +0 -1
  214. data/lib/mml/v4/mi.rb +1 -1
  215. data/lib/mml/v4/mlabeledtr.rb +0 -1
  216. data/lib/mml/v4/mlongdiv.rb +0 -1
  217. data/lib/mml/v4/mmultiscripts.rb +0 -1
  218. data/lib/mml/v4/mn.rb +1 -1
  219. data/lib/mml/v4/mo.rb +1 -1
  220. data/lib/mml/v4/mover.rb +0 -1
  221. data/lib/mml/v4/mpadded.rb +0 -1
  222. data/lib/mml/v4/mphantom.rb +0 -1
  223. data/lib/mml/v4/mprescripts.rb +0 -1
  224. data/lib/mml/v4/mroot.rb +0 -1
  225. data/lib/mml/v4/mrow.rb +1 -1
  226. data/lib/mml/v4/ms.rb +1 -1
  227. data/lib/mml/v4/mscarries.rb +0 -1
  228. data/lib/mml/v4/mscarry.rb +0 -1
  229. data/lib/mml/v4/msgroup.rb +0 -1
  230. data/lib/mml/v4/msline.rb +0 -1
  231. data/lib/mml/v4/mspace.rb +0 -1
  232. data/lib/mml/v4/msqrt.rb +0 -1
  233. data/lib/mml/v4/msrow.rb +0 -1
  234. data/lib/mml/v4/mstack.rb +0 -1
  235. data/lib/mml/v4/mstyle.rb +1 -1
  236. data/lib/mml/v4/msub.rb +0 -1
  237. data/lib/mml/v4/msubsup.rb +0 -1
  238. data/lib/mml/v4/msup.rb +0 -1
  239. data/lib/mml/v4/mtable.rb +0 -1
  240. data/lib/mml/v4/mtd.rb +0 -1
  241. data/lib/mml/v4/mtext.rb +1 -1
  242. data/lib/mml/v4/mtr.rb +0 -1
  243. data/lib/mml/v4/munder.rb +0 -1
  244. data/lib/mml/v4/munderover.rb +0 -1
  245. data/lib/mml/v4/none.rb +0 -1
  246. data/lib/mml/v4/relations.rb +37 -0
  247. data/lib/mml/v4/semantics.rb +0 -1
  248. data/lib/mml/v4/sets.rb +57 -0
  249. data/lib/mml/v4/statistics.rb +33 -0
  250. data/lib/mml/v4/tendsto.rb +9 -0
  251. data/lib/mml/v4/vector_calculus.rb +21 -0
  252. data/lib/mml/v4.rb +421 -44
  253. data/lib/mml/version.rb +1 -1
  254. data/lib/mml/versioned_parser.rb +1 -1
  255. data/lib/mml.rb +3 -1
  256. data/reference-docs/mathml-source/pubtext/mathmlspec.dtd +150 -0
  257. data/reference-docs/mathml-source/pubtext/xmlspec.dtd +2649 -0
  258. data/reference-docs/mathml-source/readme.txt +40 -0
  259. data/reference-docs/mathml-source/run +296 -0
  260. data/reference-docs/mathml-source/style/html/html2xhtml.xsl +216 -0
  261. data/reference-docs/mathml-source/style/html/images.xsl +98 -0
  262. data/reference-docs/mathml-source/style/html/mml6.xsl +1156 -0
  263. data/reference-docs/mathml-source/style/html/mmldiff.xsl +566 -0
  264. data/reference-docs/mathml-source/style/html/mmlspec.xsl +2531 -0
  265. data/reference-docs/mathml-source/style/html/slices-common.xsl +312 -0
  266. data/reference-docs/mathml-source/style/html/slices.xsl +48 -0
  267. data/reference-docs/mathml-source/style/html/xmlspec.xsl +2542 -0
  268. data/reference-docs/mathml-source/style/pdf/mathmlspec.xsl +2510 -0
  269. data/reference-docs/mathml-source/xml/changes.xml +773 -0
  270. data/reference-docs/mathml-source/xml/character-set.xml +1011 -0
  271. data/reference-docs/mathml-source/xml/content-element-def.xml +6143 -0
  272. data/reference-docs/mathml-source/xml/content-markup.xml +8178 -0
  273. data/reference-docs/mathml-source/xml/contributors.xml +425 -0
  274. data/reference-docs/mathml-source/xml/dom-bindings.xml +20 -0
  275. data/reference-docs/mathml-source/xml/dom-intro.xml +114 -0
  276. data/reference-docs/mathml-source/xml/fundamentals.xml +1646 -0
  277. data/reference-docs/mathml-source/xml/glossary.xml +519 -0
  278. data/reference-docs/mathml-source/xml/interface.xml +1096 -0
  279. data/reference-docs/mathml-source/xml/introduction.xml +724 -0
  280. data/reference-docs/mathml-source/xml/mathml-css-sample.xml +304 -0
  281. data/reference-docs/mathml-source/xml/mathml-dom.xml +3813 -0
  282. data/reference-docs/mathml-source/xml/mathml-spec.xml +356 -0
  283. data/reference-docs/mathml-source/xml/mixing.xml +982 -0
  284. data/reference-docs/mathml-source/xml/operator-dict.xml +551 -0
  285. data/reference-docs/mathml-source/xml/parsing.xml +2565 -0
  286. data/reference-docs/mathml-source/xml/presentation-markup.xml +6834 -0
  287. data/reference-docs/mathml-source/xml/references.xml +323 -0
  288. data/reference-docs/mathml-source/xml/validation-grammar.xml +877 -0
  289. data/schemas/README.adoc +17 -0
  290. data/schemas/mathml2/common/common-attribs.xsd +41 -0
  291. data/schemas/mathml2/common/math.xsd +126 -0
  292. data/schemas/mathml2/common/xlink-href.xsd +20 -0
  293. data/schemas/mathml2/content/CVS/Entries +16 -0
  294. data/schemas/mathml2/content/CVS/Repository +1 -0
  295. data/schemas/mathml2/content/CVS/Root +1 -0
  296. data/schemas/mathml2/content/arith.xsd +90 -0
  297. data/schemas/mathml2/content/calculus.xsd +146 -0
  298. data/schemas/mathml2/content/common-attrib.xsd +30 -0
  299. data/schemas/mathml2/content/constants.xsd +83 -0
  300. data/schemas/mathml2/content/constructs.xsd +260 -0
  301. data/schemas/mathml2/content/elementary-functions.xsd +117 -0
  302. data/schemas/mathml2/content/functions.xsd +73 -0
  303. data/schemas/mathml2/content/linear-algebra.xsd +173 -0
  304. data/schemas/mathml2/content/logic.xsd +53 -0
  305. data/schemas/mathml2/content/relations.xsd +55 -0
  306. data/schemas/mathml2/content/semantics.xsd +85 -0
  307. data/schemas/mathml2/content/sets.xsd +236 -0
  308. data/schemas/mathml2/content/statistics.xsd +136 -0
  309. data/schemas/mathml2/content/tokens.xsd +120 -0
  310. data/schemas/mathml2/content/tokens.xsd.~1.3.~ +119 -0
  311. data/schemas/mathml2/content/vector-calculus.xsd +88 -0
  312. data/schemas/mathml2/mathml2.xsd +59 -0
  313. data/schemas/mathml2/presentation/action.xsd +44 -0
  314. data/schemas/mathml2/presentation/characters.xsd +37 -0
  315. data/schemas/mathml2/presentation/common-attribs.xsd +113 -0
  316. data/schemas/mathml2/presentation/common-types.xsd +103 -0
  317. data/schemas/mathml2/presentation/error.xsd +40 -0
  318. data/schemas/mathml2/presentation/layout.xsd +195 -0
  319. data/schemas/mathml2/presentation/scripts.xsd +186 -0
  320. data/schemas/mathml2/presentation/space.xsd +52 -0
  321. data/schemas/mathml2/presentation/style.xsd +69 -0
  322. data/schemas/mathml2/presentation/table.xsd +216 -0
  323. data/schemas/mathml2/presentation/tokens.xsd +124 -0
  324. data/schemas/mathml3/mathml3-common.xsd +99 -0
  325. data/schemas/mathml3/mathml3-content.xsd +684 -0
  326. data/schemas/mathml3/mathml3-presentation.xsd +2151 -0
  327. data/schemas/mathml3/mathml3-strict-content.xsd +186 -0
  328. data/schemas/mathml3/mathml3.xsd +9 -0
  329. data/schemas/mathml4/mathml4-content.rnc +382 -0
  330. data/schemas/mathml4/mathml4-core.rnc +361 -0
  331. data/schemas/mathml4/mathml4-presentation.rnc +358 -0
  332. data/schemas/mathml4/mathml4-strict-content.rnc +86 -0
  333. data/schemas/mathml4/mathml4.rnc +21 -0
  334. data/schemas/mathml4/mathml4.rnc.1 +21 -0
  335. data/schemas/mathml4/mathml4.rng +37 -0
  336. metadata +249 -2
@@ -0,0 +1,312 @@
1
+ <?xml version="1.0"?>
2
+ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3
+ version="1.0">
4
+
5
+ <xsl:import href="xmlspec.xsl"/>
6
+
7
+ <xsl:template name="href.target">
8
+ <xsl:param name="target" select="."/>
9
+
10
+ <xsl:variable name="slice"
11
+ select="($target/ancestor-or-self::div1
12
+ |$target/ancestor-or-self::inform-div1
13
+ |$target/ancestor-or-self::spec)[last()]"/>
14
+
15
+ <xsl:apply-templates select="$slice" mode="slice-filename"/>
16
+
17
+ <xsl:if test="$target != $slice">
18
+ <xsl:text>#</xsl:text>
19
+ <xsl:choose>
20
+ <xsl:when test="$target/@id">
21
+ <xsl:value-of select="$target/@id"/>
22
+ </xsl:when>
23
+ <xsl:otherwise>
24
+ <xsl:value-of select="generate-id($target)"/>
25
+ </xsl:otherwise>
26
+ </xsl:choose>
27
+ </xsl:if>
28
+ </xsl:template>
29
+
30
+ <xsl:template match="spec" mode="slice-filename">
31
+ <xsl:text>index.html</xsl:text>
32
+ </xsl:template>
33
+
34
+ <xsl:template match="body/div1" mode="slice-filename">
35
+ <xsl:variable name="docnumber">
36
+ <xsl:number count="div1" level="multiple" format="1"/>
37
+ </xsl:variable>
38
+ <xsl:text>slice</xsl:text>
39
+ <xsl:value-of select="$docnumber"/>
40
+ <xsl:text>.html</xsl:text>
41
+ </xsl:template>
42
+
43
+ <xsl:template match="back/div1 | inform-div1" mode="slice-filename">
44
+ <xsl:variable name="docnumber">
45
+ <xsl:number count="div1|inform-div1" level="multiple" format="A"/>
46
+ </xsl:variable>
47
+ <xsl:text>slice</xsl:text>
48
+ <xsl:value-of select="$docnumber"/>
49
+ <xsl:text>.html</xsl:text>
50
+ </xsl:template>
51
+
52
+ <xsl:template match="body/div1">
53
+ <xsl:variable name="prev"
54
+ select="(preceding::div1|preceding::inform-div1)[last()]"/>
55
+ <xsl:variable name="next"
56
+ select="(following::div1|following::inform-div1)[1]"/>
57
+
58
+ <xsl:call-template name="write.chunk">
59
+ <xsl:with-param name="filename">
60
+ <xsl:apply-templates select="." mode="slice-filename"/>
61
+ </xsl:with-param>
62
+ <xsl:with-param name="content">
63
+ <html>
64
+ <head>
65
+ <title><xsl:value-of select="head"/></title>
66
+ <xsl:call-template name="css"/>
67
+ </head>
68
+ <body>
69
+ <xsl:call-template name="navigation.top">
70
+ <xsl:with-param name="prev" select="$prev"/>
71
+ <xsl:with-param name="next" select="$next"/>
72
+ </xsl:call-template>
73
+
74
+ <div class="div1">
75
+ <xsl:apply-templates/>
76
+ </div>
77
+
78
+ <xsl:call-template name="navigation.bottom">
79
+ <xsl:with-param name="prev" select="$prev"/>
80
+ <xsl:with-param name="next" select="$next"/>
81
+ </xsl:call-template>
82
+ </body>
83
+ </html>
84
+ </xsl:with-param>
85
+ </xsl:call-template>
86
+ </xsl:template>
87
+
88
+ <xsl:template match="back/div1 | back/inform-div1">
89
+ <xsl:variable name="prev"
90
+ select="(preceding::div1|preceding::inform-div1)[last()]"/>
91
+ <xsl:variable name="next"
92
+ select="(following::div1|following::inform-div1)[1]"/>
93
+
94
+ <xsl:call-template name="write.chunk">
95
+ <xsl:with-param name="filename">
96
+ <xsl:apply-templates select="." mode="slice-filename"/>
97
+ </xsl:with-param>
98
+ <xsl:with-param name="content">
99
+ <html>
100
+ <head>
101
+ <title><xsl:value-of select="head"/></title>
102
+ <xsl:call-template name="css"/>
103
+ </head>
104
+ <body>
105
+ <xsl:call-template name="navigation.top">
106
+ <xsl:with-param name="prev" select="$prev"/>
107
+ <xsl:with-param name="next" select="$next"/>
108
+ </xsl:call-template>
109
+
110
+ <div class="div1">
111
+ <xsl:apply-templates/>
112
+ </div>
113
+
114
+ <xsl:call-template name="navigation.bottom">
115
+ <xsl:with-param name="prev" select="$prev"/>
116
+ <xsl:with-param name="next" select="$next"/>
117
+ </xsl:call-template>
118
+ </body>
119
+ </html>
120
+ </xsl:with-param>
121
+ </xsl:call-template>
122
+ </xsl:template>
123
+
124
+ <xsl:template match="inform-div1">
125
+ <xsl:variable name="prev"
126
+ select="(preceding::div1|preceding::inform-div1)[last()]"/>
127
+ <xsl:variable name="next"
128
+ select="(following::div1|following::inform-div1)[1]"/>
129
+
130
+ <xsl:call-template name="write.chunk">
131
+ <xsl:with-param name="filename">
132
+ <xsl:apply-templates select="." mode="slice-filename"/>
133
+ </xsl:with-param>
134
+ <xsl:with-param name="content">
135
+ <html>
136
+ <head>
137
+ <title><xsl:value-of select="head"/></title>
138
+ <xsl:call-template name="css"/>
139
+ </head>
140
+ <body>
141
+ <xsl:call-template name="navigation.top">
142
+ <xsl:with-param name="prev" select="$prev"/>
143
+ <xsl:with-param name="next" select="$next"/>
144
+ </xsl:call-template>
145
+
146
+ <div class="div1">
147
+ <xsl:apply-templates/>
148
+ </div>
149
+
150
+ <xsl:call-template name="navigation.bottom">
151
+ <xsl:with-param name="prev" select="$prev"/>
152
+ <xsl:with-param name="next" select="$next"/>
153
+ </xsl:call-template>
154
+ </body>
155
+ </html>
156
+ </xsl:with-param>
157
+ </xsl:call-template>
158
+ </xsl:template>
159
+
160
+ <xsl:template match="spec">
161
+ <xsl:call-template name="write.chunk">
162
+ <xsl:with-param name="filename">
163
+ <xsl:apply-templates select="." mode="slice-filename"/>
164
+ </xsl:with-param>
165
+ <xsl:with-param name="content">
166
+ <html>
167
+ <xsl:if test="header/langusage/language">
168
+ <xsl:attribute name="lang">
169
+ <xsl:value-of select="header/langusage/language/@id"/>
170
+ </xsl:attribute>
171
+ </xsl:if>
172
+ <head>
173
+ <title>
174
+ <xsl:apply-templates select="header/title"/>
175
+ <xsl:if test="header/version">
176
+ <xsl:text> </xsl:text>
177
+ <xsl:apply-templates select="header/version"/>
178
+ </xsl:if>
179
+ </title>
180
+ <xsl:call-template name="css"/>
181
+ </head>
182
+ <body>
183
+ <xsl:apply-templates/>
184
+ <xsl:if test="//footnote">
185
+ <hr/>
186
+ <div class="endnotes">
187
+ <h3>
188
+ <a name="endnotes">
189
+ <xsl:text>End Notes</xsl:text>
190
+ </a>
191
+ </h3>
192
+ <dl>
193
+ <xsl:apply-templates select="//footnote" mode="notes"/>
194
+ </dl>
195
+ </div>
196
+ </xsl:if>
197
+ </body>
198
+ </html>
199
+ </xsl:with-param>
200
+ </xsl:call-template>
201
+ </xsl:template>
202
+
203
+ <xsl:template name="navigation.top">
204
+ <xsl:param name="prev" select="''"/>
205
+ <xsl:param name="next" select="''"/>
206
+
207
+ <a name="Top"/>
208
+ <xsl:comment> TOP NAVIGATION BAR </xsl:comment>
209
+ <table border="0" width="90%"
210
+ cellpadding="4" cellspacing="0"
211
+ bgcolor="#eeeeff"
212
+ class="navigation"
213
+ summary="Navigation Bar">
214
+ <col width="25%"/>
215
+ <col width="25%"/>
216
+ <col width="25%"/>
217
+ <col width="25%"/>
218
+ <tr>
219
+ <td>&#xa0;</td>
220
+ <td>&#xa0;</td>
221
+ <td>&#xa0;</td>
222
+ <td>&#xa0;</td>
223
+ </tr>
224
+ <tr>
225
+ <td align="left">
226
+ <a href="index.html#contents">Table of Contents</a>
227
+ </td>
228
+ <td align="left">
229
+ <xsl:choose>
230
+ <xsl:when test="$prev">
231
+ <a>
232
+ <xsl:attribute name="href">
233
+ <xsl:call-template name="href.target">
234
+ <xsl:with-param name="target" select="$prev"/>
235
+ <xsl:with-param name="just.filename" select="1"/>
236
+ </xsl:call-template>
237
+ </xsl:attribute>
238
+ <xsl:text>Prev</xsl:text>
239
+ </a>
240
+ </xsl:when>
241
+ <xsl:otherwise>&#160;</xsl:otherwise>
242
+ </xsl:choose>
243
+ </td>
244
+ <td align="left">
245
+ <xsl:choose>
246
+ <xsl:when test="$next">
247
+ <a>
248
+ <xsl:attribute name="href">
249
+ <xsl:call-template name="href.target">
250
+ <xsl:with-param name="target" select="$next"/>
251
+ <xsl:with-param name="just.filename" select="1"/>
252
+ </xsl:call-template>
253
+ </xsl:attribute>
254
+ <xsl:text>Next</xsl:text>
255
+ </a>
256
+ </xsl:when>
257
+ <xsl:otherwise>&#160;</xsl:otherwise>
258
+ </xsl:choose>
259
+ </td>
260
+ <td align="left">
261
+ <a href="#Bottom">Bottom</a>
262
+ </td>
263
+ </tr>
264
+ </table>
265
+
266
+ <!-- quick table of contents -->
267
+ <table border="0" width="90%"
268
+ cellpadding="4" cellspacing="0"
269
+ bgcolor="#eeeeff"
270
+ class="navigation-toc"
271
+ summary="Navigation TOC"
272
+ >
273
+ <col width="100%"/>
274
+ <tr align="left"><th><hr/>Quick Table of Contents<hr/></th></tr>
275
+ <tr>
276
+ <td>
277
+ <xsl:apply-templates mode="toc" select=".">
278
+ <xsl:with-param name="just.filename" select="'0'"/>
279
+ </xsl:apply-templates>
280
+ </td>
281
+ </tr>
282
+ </table>
283
+ </xsl:template>
284
+
285
+ <xsl:template name="navigation.bottom">
286
+ <xsl:param name="prev" select="''"/>
287
+ <xsl:param name="next" select="''"/>
288
+
289
+ <a name="Bottom"/>
290
+ <xsl:comment> BOTTOM NAVIGATION BAR </xsl:comment>
291
+ <table border="0" width="90%"
292
+ cellpadding="4" cellspacing="0"
293
+ bgcolor="#eeeeff"
294
+ class="navigation"
295
+ summary="Navigation">
296
+ <col width="50%"/>
297
+ <col width="50%"/>
298
+ <tr><td>&#xa0;</td><td>&#xa0;</td></tr>
299
+ <tr>
300
+ <td align="left">
301
+ <a href="index.html#contents">Table of Contents</a>
302
+ </td>
303
+ <td align="left">
304
+ <a href="#Top">Top</a>
305
+ </td>
306
+ </tr>
307
+ </table>
308
+ </xsl:template>
309
+
310
+
311
+ </xsl:stylesheet>
312
+
@@ -0,0 +1,48 @@
1
+ <?xml version="1.0"?>
2
+ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3
+ xmlns:saxon="http://icl.com/saxon"
4
+ xmlns:lxslt="http://xml.apache.org/xslt"
5
+ xmlns:xalanredirect="org.apache.xalan.xslt.extensions.Redirect"
6
+ extension-element-prefixes="saxon xalanredirect lxslt"
7
+ version="1.0">
8
+
9
+ <!-- This stylesheet does not work with XT. Use xtslices.xsl instead. -->
10
+
11
+ <xsl:include href="slices-common.xsl"/>
12
+
13
+ <!-- ==================================================================== -->
14
+ <!-- This is a workaround for a XalanJ1 bug in element-available. -->
15
+
16
+ <lxslt:component prefix="xalanredirect" elements="write">
17
+ <lxslt:script lang="javaclass"
18
+ src="org.apache.xalan.xslt.extensions.Redirect"/>
19
+ </lxslt:component>
20
+
21
+ <!-- ==================================================================== -->
22
+
23
+ <xsl:template name="write.chunk">
24
+ <xsl:param name="filename" select="''"/>
25
+ <xsl:param name="content" select="''"/>
26
+
27
+ <xalanredirect:write file="{$filename}">
28
+ <xsl:copy-of select="$content"/>
29
+ <xsl:fallback>
30
+ <!-- doctype not propagating down from top level xsl:output
31
+ using saxon, not sure why (dpc) -->
32
+ <saxon:output method="html"
33
+
34
+ doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"
35
+ doctype-system="http://www.w3.org/TR/html4/loose.dtd"
36
+
37
+ href="{$filename}" encoding="ISO-8859-1">
38
+ <xsl:copy-of select="$content"/>
39
+ <xsl:fallback>
40
+ <xsl:copy-of select="$content"/>
41
+ </xsl:fallback>
42
+ </saxon:output>
43
+ </xsl:fallback>
44
+ </xalanredirect:write>
45
+ </xsl:template>
46
+
47
+ </xsl:stylesheet>
48
+