home *** CD-ROM | disk | FTP | other *** search
/ MacFormat UK 160 - Disc 2 / MF_UK_160_2.iso / pc / DiscContent / Trials / oxygen / lib / oxygen.jar / builtin / xsl.dtd < prev    next >
Encoding:
Text File  |  2005-07-21  |  6.7 KB  |  286 lines

  1. <!ENTITY % char-instructions "
  2.   | xsl:apply-templates
  3.   | xsl:call-template
  4.   | xsl:apply-imports
  5.   | xsl:for-each
  6.   | xsl:value-of
  7.   | xsl:copy-of
  8.   | xsl:number
  9.   | xsl:choose
  10.   | xsl:if
  11.   | xsl:text
  12.   | xsl:copy
  13.   | xsl:variable
  14.   | xsl:message
  15.   | xsl:fallback
  16. ">
  17. <!ENTITY % instructions "
  18.   %char-instructions;
  19.   | xsl:processing-instruction
  20.   | xsl:comment
  21.   | xsl:element
  22.   | xsl:attribute
  23. ">
  24. <!ENTITY % char-template "
  25.  (#PCDATA
  26.   %char-instructions;)*
  27. ">
  28. <!ENTITY % template "
  29.  (#PCDATA
  30.   %instructions;)*
  31. ">
  32. <!-- Used for the type of an attribute value that is a URI reference.-->
  33. <!ENTITY % URI "CDATA">
  34. <!-- Used for the type of an attribute value that is a pattern.-->
  35. <!ENTITY % pattern "CDATA">
  36. <!-- Used for the type of an attribute value that is an
  37.      attribute value template.-->
  38. <!ENTITY % avt "CDATA">
  39. <!-- Used for the type of an attribute value that is a QName; the prefix
  40.      gets expanded by the XSLT processor. -->
  41. <!ENTITY % qname "NMTOKEN">
  42. <!-- Like qname but a whitespace-separated list of QNames. -->
  43. <!ENTITY % qnames "NMTOKENS">
  44. <!-- Used for the type of an attribute value that is an expression.-->
  45. <!ENTITY % expr "CDATA">
  46. <!-- Used for the type of an attribute value that consists
  47.      of a single character.-->
  48. <!ENTITY % char "CDATA">
  49. <!-- Used for the type of an attribute value that is a priority. -->
  50. <!ENTITY % priority "NMTOKEN">
  51. <!ENTITY % space-att "xml:space (default|preserve) #IMPLIED">
  52. <!-- This may be overridden to customize the set of elements allowed
  53. at the top-level. -->
  54. <!ENTITY % non-xsl-top-level "">
  55. <!ENTITY % top-level "
  56.  (xsl:import*,
  57.   (xsl:include
  58.   | xsl:strip-space
  59.   | xsl:preserve-space
  60.   | xsl:output
  61.   | xsl:key
  62.   | xsl:decimal-format
  63.   | xsl:attribute-set
  64.   | xsl:variable
  65.   | xsl:param
  66.   | xsl:template
  67.   | xsl:namespace-alias
  68.   %non-xsl-top-level;)*)
  69. ">
  70. <!ENTITY % top-level-atts '
  71.   extension-element-prefixes CDATA #IMPLIED
  72.   exclude-result-prefixes CDATA #IMPLIED
  73.   id ID #IMPLIED
  74.   version NMTOKEN #REQUIRED
  75.   xmlns:xsl CDATA #FIXED "http://www.w3.org/1999/XSL/Transform"
  76.   %space-att;
  77. '>
  78. <!-- This entity is defined for use in the ATTLIST declaration
  79. for result elements. -->
  80. <!ENTITY % result-element-atts '
  81.   xsl:extension-element-prefixes CDATA #IMPLIED
  82.   xsl:exclude-result-prefixes CDATA #IMPLIED
  83.   xsl:use-attribute-sets %qnames; #IMPLIED
  84.   xsl:version NMTOKEN #IMPLIED
  85. '>
  86. <!ELEMENT xsl:stylesheet %top-level;>
  87. <!ATTLIST xsl:stylesheet
  88.     %top-level-atts; 
  89. >
  90. <!ELEMENT xsl:transform %top-level;>
  91. <!ATTLIST xsl:transform
  92.     %top-level-atts; 
  93. >
  94. <!ELEMENT xsl:import EMPTY>
  95. <!ATTLIST xsl:import
  96.     href %URI; #REQUIRED
  97. >
  98. <!ELEMENT xsl:include EMPTY>
  99. <!ATTLIST xsl:include
  100.     href %URI; #REQUIRED
  101. >
  102. <!ELEMENT xsl:strip-space EMPTY>
  103. <!ATTLIST xsl:strip-space
  104.     elements CDATA #REQUIRED
  105. >
  106. <!ELEMENT xsl:preserve-space EMPTY>
  107. <!ATTLIST xsl:preserve-space
  108.     elements CDATA #REQUIRED
  109. >
  110. <!ELEMENT xsl:output EMPTY>
  111. <!ATTLIST xsl:output
  112.     method %qname; #IMPLIED
  113.     version NMTOKEN #IMPLIED
  114.     encoding CDATA #IMPLIED
  115.     omit-xml-declaration (yes | no) #IMPLIED
  116.     standalone (yes | no) #IMPLIED
  117.     doctype-public CDATA #IMPLIED
  118.     doctype-system CDATA #IMPLIED
  119.     cdata-section-elements %qnames; #IMPLIED
  120.     indent (yes | no) #IMPLIED
  121.     media-type CDATA #IMPLIED
  122. >
  123. <!ELEMENT xsl:key EMPTY>
  124. <!ATTLIST xsl:key
  125.     name %qname; #REQUIRED
  126.     match %pattern; #REQUIRED
  127.     use %expr; #REQUIRED
  128. >
  129. <!ELEMENT xsl:decimal-format EMPTY>
  130. <!ATTLIST xsl:decimal-format
  131.     name %qname; #IMPLIED
  132.     decimal-separator %char; "."
  133.     grouping-separator %char; ","
  134.     infinity CDATA "Infinity"
  135.     minus-sign %char; "-"
  136.     NaN CDATA "NaN"
  137.     percent %char; "%"
  138.     per-mille %char; "‰"
  139.     zero-digit %char; "0"
  140.     digit %char; "#"
  141.     pattern-separator %char; ";"
  142. >
  143. <!ELEMENT xsl:namespace-alias EMPTY>
  144. <!ATTLIST xsl:namespace-alias
  145.     stylesheet-prefix CDATA #REQUIRED
  146.     result-prefix CDATA #REQUIRED
  147. >
  148. <!ELEMENT xsl:template (#PCDATA
  149.   %instructions;
  150.   | xsl:param)*
  151. >
  152. <!ATTLIST xsl:template
  153.     match %pattern; #IMPLIED
  154.     name %qname; #IMPLIED
  155.     priority %priority; #IMPLIED
  156.     mode %qname; #IMPLIED
  157.     %space-att; 
  158. >
  159. <!ELEMENT xsl:value-of EMPTY>
  160. <!ATTLIST xsl:value-of
  161.     select %expr; #REQUIRED
  162.     disable-output-escaping (yes | no) "no"
  163. >
  164. <!ELEMENT xsl:copy-of EMPTY>
  165. <!ATTLIST xsl:copy-of
  166.     select %expr; #REQUIRED
  167. >
  168. <!ELEMENT xsl:number EMPTY>
  169. <!ATTLIST xsl:number
  170.     level (single | multiple | any) "single"
  171.     count %pattern; #IMPLIED
  172.     from %pattern; #IMPLIED
  173.     value %expr; #IMPLIED
  174.     format %avt; "1"
  175.     lang %avt; #IMPLIED
  176.     letter-value %avt; #IMPLIED
  177.     grouping-separator %avt; #IMPLIED
  178.     grouping-size %avt; #IMPLIED
  179. >
  180. <!ELEMENT xsl:apply-templates (xsl:sort | xsl:with-param)*>
  181. <!ATTLIST xsl:apply-templates
  182.     select %expr; "node()"
  183.     mode %qname; #IMPLIED
  184. >
  185. <!ELEMENT xsl:apply-imports EMPTY>
  186. <!-- xsl:sort cannot occur after any other elements or
  187. any non-whitespace character -->
  188. <!ELEMENT xsl:for-each (#PCDATA
  189.   %instructions;
  190.   | xsl:sort)*
  191. >
  192. <!ATTLIST xsl:for-each
  193.     select %expr; #REQUIRED
  194.     %space-att; 
  195. >
  196. <!ELEMENT xsl:sort EMPTY>
  197. <!ATTLIST xsl:sort
  198.     select %expr; "."
  199.     lang %avt; #IMPLIED
  200.     data-type %avt; "text"
  201.     order %avt; "ascending"
  202.     case-order %avt; #IMPLIED
  203. >
  204. <!ELEMENT xsl:if %template;>
  205. <!ATTLIST xsl:if
  206.     test %expr; #REQUIRED
  207.     %space-att; 
  208. >
  209. <!ELEMENT xsl:choose (xsl:when+, xsl:otherwise?)>
  210. <!ATTLIST xsl:choose
  211.     %space-att; 
  212. >
  213. <!ELEMENT xsl:when %template;>
  214. <!ATTLIST xsl:when
  215.     test %expr; #REQUIRED
  216.     %space-att; 
  217. >
  218. <!ELEMENT xsl:otherwise %template;>
  219. <!ATTLIST xsl:otherwise
  220.     %space-att; 
  221. >
  222. <!ELEMENT xsl:attribute-set (xsl:attribute)*>
  223. <!ATTLIST xsl:attribute-set
  224.     name %qname; #REQUIRED
  225.     use-attribute-sets %qnames; #IMPLIED
  226. >
  227. <!ELEMENT xsl:call-template (xsl:with-param)*>
  228. <!ATTLIST xsl:call-template
  229.     name %qname; #REQUIRED
  230. >
  231. <!ELEMENT xsl:with-param %template;>
  232. <!ATTLIST xsl:with-param
  233.     name %qname; #REQUIRED
  234.     select %expr; #IMPLIED
  235. >
  236. <!ELEMENT xsl:variable %template;>
  237. <!ATTLIST xsl:variable
  238.     name %qname; #REQUIRED
  239.     select %expr; #IMPLIED
  240. >
  241. <!ELEMENT xsl:param %template;>
  242. <!ATTLIST xsl:param
  243.     name %qname; #REQUIRED
  244.     select %expr; #IMPLIED
  245. >
  246. <!ELEMENT xsl:text (#PCDATA)>
  247. <!ATTLIST xsl:text
  248.     disable-output-escaping (yes | no) "no"
  249. >
  250. <!ELEMENT xsl:processing-instruction %char-template;>
  251. <!ATTLIST xsl:processing-instruction
  252.     name %avt; #REQUIRED
  253.     %space-att; 
  254. >
  255. <!ELEMENT xsl:element %template;>
  256. <!ATTLIST xsl:element
  257.     name %avt; #REQUIRED
  258.     namespace %avt; #IMPLIED
  259.     use-attribute-sets %qnames; #IMPLIED
  260.     %space-att; 
  261. >
  262. <!ELEMENT xsl:attribute %char-template;>
  263. <!ATTLIST xsl:attribute
  264.     name %avt; #REQUIRED
  265.     namespace %avt; #IMPLIED
  266.     %space-att; 
  267. >
  268. <!ELEMENT xsl:comment %char-template;>
  269. <!ATTLIST xsl:comment
  270.     %space-att; 
  271. >
  272. <!ELEMENT xsl:copy %template;>
  273. <!ATTLIST xsl:copy
  274.     %space-att; 
  275.     use-attribute-sets %qnames; #IMPLIED
  276. >
  277. <!ELEMENT xsl:message %template;>
  278. <!ATTLIST xsl:message
  279.     %space-att; 
  280.     terminate (yes | no) "no"
  281. >
  282. <!ELEMENT xsl:fallback %template;>
  283. <!ATTLIST xsl:fallback
  284.     %space-att; 
  285. >
  286.