Project

Profile

Help

Revision dd751c72

Added by Debbie Lockett over 1 year ago

Bug #4458 fixes: configuration file schema updates (including file renaming)

View differences:

latest9.9/samples/config/config.xsd
1 1
<?xml version="1.0" encoding="UTF-8"?>
2
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
3
  targetNamespace="http://saxon.sf.net/ns/configuration" xmlns:saxon="http://saxon.sf.net/"
4
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:c="http://saxon.sf.net/ns/configuration">
5
  <xs:import namespace="http://saxon.sf.net/" schemaLocation="saxon-attributes.xsd"/>
6
  
7
  <xs:element name="configuration">
8
    <xs:complexType>
9
      <xs:all>
10
        <xs:element ref="c:global" minOccurs="0"/>
11
        <xs:element ref="c:xslt" minOccurs="0"/>
12
        <xs:element ref="c:xsltPackages" minOccurs="0"/>
13
        <xs:element ref="c:xquery" minOccurs="0"/>
14
        <xs:element ref="c:xsd" minOccurs="0"/>
15
        <xs:element ref="c:serialization" minOccurs="0"/>
16
        <xs:element ref="c:resources" minOccurs="0"/>
17
        <xs:element ref="c:collations" minOccurs="0"/>
18
        <xs:element ref="c:localizations" minOccurs="0"/>
19
      </xs:all>
20
      <xs:attribute name="edition" use="optional" type="c:editionType">
21
        <xs:annotation>
22
          <xs:documentation> Defines which Saxon edition is to be used. </xs:documentation>
23
        </xs:annotation>
24
      </xs:attribute>
25
      <xs:attribute name="licenseFileLocation" use="optional" type="xs:anyURI">
26
        <xs:annotation>
27
          <xs:documentation> Defines the location of the Saxon license file, as a URI relative to
2
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
           xmlns:saxon="http://saxon.sf.net/"
4
           xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
5
           xmlns:c="http://saxon.sf.net/ns/configuration"
6
           elementFormDefault="qualified"
7
           targetNamespace="http://saxon.sf.net/ns/configuration">
8
   <xs:import namespace="http://saxon.sf.net/" schemaLocation="saxon-attributes.xsd"/>
9

  
10
   <xs:element name="configuration">
11
      <xs:complexType>
12
         <xs:all>
13

  
14
            <xs:element ref="c:global" minOccurs="0"/>
15

  
16
            <xs:element ref="c:xslt" minOccurs="0"/>
17

  
18
            <xs:element ref="c:xsltPackages" minOccurs="0"/>
19

  
20
            <xs:element ref="c:xquery" minOccurs="0"/>
21

  
22
            <xs:element ref="c:xsd" minOccurs="0"/>
23

  
24
            <xs:element ref="c:serialization" minOccurs="0"/>
25

  
26
            <xs:element ref="c:resources" minOccurs="0"/>
27

  
28
            <xs:element ref="c:collations" minOccurs="0"/>
29

  
30
            <xs:element ref="c:localizations" minOccurs="0"/>
31
         </xs:all>
32
         <xs:attribute name="edition" use="optional" type="c:editionType">
33
            <xs:annotation>
34
               <xs:documentation> Defines which Saxon edition is to be used. </xs:documentation>
35
            </xs:annotation>
36
         </xs:attribute>
37
         <xs:attribute name="licenseFileLocation" use="optional" type="xs:anyURI">
38
            <xs:annotation>
39
               <xs:documentation> Defines the location of the Saxon license file, as a URI relative to
28 40
            the base URI of the configuration file. When made absolute, it must use the "file" URI
29 41
            scheme. 
30 42
          </xs:documentation>
31
        </xs:annotation>
32
      </xs:attribute>
33
      <xs:attribute name="label" type="xs:string">
34
        <xs:annotation>
35
          <xs:documentation>A label to identify this configuration or otherwise transmit textual
43
            </xs:annotation>
44
         </xs:attribute>
45
         <xs:attribute name="label" type="xs:string">
46
            <xs:annotation>
47
               <xs:documentation>A label to identify this configuration or otherwise transmit textual
36 48
            information into the execution.</xs:documentation>
37
        </xs:annotation>
38
      </xs:attribute>
39
    </xs:complexType>
40
  </xs:element>
41
  
42
  <xs:element name="global">
43
    <xs:annotation>
44
      <xs:documentation> Defines properties of the global configuration. </xs:documentation>
45
    </xs:annotation>
46
    <xs:complexType>
47
      <xs:attribute name="allowExternalFunctions" use="optional" type="xs:boolean"/>
48
      <xs:attribute name="allowMultiThreading" use="optional" type="xs:boolean"/>
49
      <xs:attribute name="allowOldJavaUriFormat" use="optional" type="xs:boolean"/>
50
      <xs:attribute name="allowStreamabilityExtensions" use="optional" type="xs:boolean">
51
        <xs:annotation>
52
          <xs:documentation> Saxon 9.5 only. </xs:documentation>
53
        </xs:annotation>
54
      </xs:attribute>
55
      <xs:attribute name="allowSyntaxExtensions" use="optional" type="xs:boolean"/>    
56
      <xs:attribute name="collationUriResolver" use="optional" type="c:javaClassNameType"/>
57
      <xs:attribute name="collectionFinder" use="optional" type="c:javaClassNameType"/>
58
      <xs:attribute name="collectionUriResolver" use="optional" type="c:javaClassNameType"/>
59
      <xs:attribute name="compileWithTracing" use="optional" type="xs:boolean"/>
60
      <xs:attribute name="debugByteCode" use="optional" type="xs:boolean"/>
61
      <xs:attribute name="debugByteCodeDirectory" use="optional" type="c:fileNameType"/>
62
      <xs:attribute name="defaultCollation" use="optional" type="xs:anyURI"/>
63
      <xs:attribute name="defaultCollection" use="optional" type="xs:anyURI"/>
64
      <xs:attribute name="defaultRegexEngine" use="optional" type="c:regexEngineType"/>
65
      <xs:attribute name="displayByteCode" use="optional" type="xs:boolean"/>
66
      <xs:attribute name="dtdValidation" use="optional" type="xs:boolean"/>
67
      <xs:attribute name="dtdValidationRecoverable" use="optional" type="xs:boolean"/>
68
      <xs:attribute name="eagerEvaluation" use="optional" type="xs:boolean"/>
69
      <xs:attribute name="entityResolver" use="optional" type="c:javaClassNameType"/>
70
      <xs:attribute name="environmentVariableResolver" use="optional" type="c:javaClassNameType"/>
71
      <xs:attribute name="errorListener" use="optional" type="c:javaClassNameType"/>
72
      <xs:attribute name="expandAttributeDefaults" use="optional" type="xs:boolean"/>
73
      <xs:attribute name="generateByteCode" use="optional" type="xs:boolean"/>
74
      <xs:attribute name="ignoreSAXSourceParser" use="optional" type="xs:boolean"/>
75
      <xs:attribute name="lazyConstructionMode" use="optional" type="xs:boolean"/>
76
      <xs:attribute name="lineNumbering" use="optional" type="xs:boolean"/>
77
      <xs:attribute name="markDefaultedAttributes" use="optional" type="xs:boolean"/>
78
      <xs:attribute name="maxCompiledClasses" use="optional" type="xs:nonNegativeInteger"/>
79
      <xs:attribute name="monitorHotSpotByteCode" use="optional" type="xs:boolean"/>
80
      <xs:attribute name="optimizationLevel" use="optional" type="xs:integer"/>
81
      <xs:attribute name="parser" use="optional" type="c:javaClassNameType"/>
82
      <xs:attribute name="preEvaluateDoc" use="optional" type="xs:boolean"/>
83
      <xs:attribute name="preferJaxpParser" use="optional" type="xs:boolean"/>
84
      <xs:attribute name="recognizeUriQueryParameters" use="optional" type="xs:boolean"/>
85
      <xs:attribute name="regexBacktrackingLimit" use="optional" type="xs:integer"/>
86
      <xs:attribute name="schemaValidation" use="optional" type="c:schemaValidationType"/>
87
      <xs:attribute name="serializerFactory" use="optional" type="c:javaClassNameType"/>
88
      <xs:attribute name="sourceResolver" use="optional" type="c:javaClassNameType"/>
89
      <xs:attribute name="stableCollectionUri" use="optional" type="xs:boolean"/>
90
      <xs:attribute name="stableUnparsedText" use="optional" type="xs:boolean"/>
91
      <xs:attribute name="standardErrorOutputFile" use="optional" type="c:fileNameType"/>
92
      <xs:attribute name="streamability" use="optional" type="c:streamabilityType"/>
93
      <xs:attribute name="streamingFallback" use="optional" type="xs:boolean"/>
94
      <xs:attribute name="stripSpace" use="optional" type="c:stripSpaceType"/>
95
      <xs:attribute name="styleParser" use="optional" type="c:javaClassNameType"/>
96
      <xs:attribute name="suppressEvaluationExpiryWarning" use="optional" type="xs:boolean"/>
97
      <xs:attribute name="suppressXPathWarnings" use="optional" type="xs:boolean"/>
98
      <xs:attribute name="suppressXsltNamespaceCheck" use="optional" type="xs:boolean"/>
99
      <xs:attribute name="thresholdForFunctionInlining" use="optional" type="xs:integer"/>
100
      <xs:attribute name="thresholdForHotspotByteCode" use="optional" type="xs:integer"/>
101
      <xs:attribute name="timing" use="optional" type="xs:boolean"/>
102
      <xs:attribute name="traceExternalFunctions" use="optional" type="xs:boolean"/>
103
      <xs:attribute name="traceListener" use="optional" type="c:javaClassNameType"/>
104
      <xs:attribute name="traceListenerOutputFile" use="optional" type="c:fileNameType"/>
105
      <xs:attribute name="traceOptimizerDecisions" use="optional" type="xs:boolean"/>
106
      <xs:attribute name="treeModel" use="optional" type="c:treeModelType"/>
107
      <xs:attribute name="unparsedTextURIResolver" use="optional" type="c:javaClassNameType"/>
108
      <xs:attribute name="uriResolver" use="optional" type="c:javaClassNameType"/>
109
      <xs:attribute name="usePiDisableOutputEscaping" use="optional" type="xs:boolean"/>
110
      <xs:attribute name="useTypedValueCache" use="optional" type="xs:boolean"/>
111
      <xs:attribute name="validationComments" use="optional" type="xs:boolean"/>
112
      <xs:attribute name="validationWarnings" use="optional" type="xs:boolean"/>
113
      <xs:attribute name="versionOfXml" use="optional" type="xs:decimal"/>
114
      <xs:attribute name="xInclude" use="optional" type="xs:boolean"/>
115
      <xs:attribute name="xpathVersionForXsd" use="optional" type="xs:integer"/>
116
      <xs:attribute name="xpathVersionForXslt" use="optional" type="xs:integer"/>
117
    </xs:complexType>
118
  </xs:element>
119

  
120
  <xs:element name="xslt">
121
    <xs:annotation>
122
      <xs:documentation> Defines configuration properties specific to XSLT processing.
49
            </xs:annotation>
50
         </xs:attribute>
51
      </xs:complexType>
52
   </xs:element>
53

  
54
   <xs:element name="global">
55
      <xs:annotation>
56
         <xs:documentation> Defines properties of the global configuration. </xs:documentation>
57
      </xs:annotation>
58
      <xs:complexType>
59
         <xs:attribute name="allowExternalFunctions" use="optional" type="xs:boolean">
60
            <xs:annotation>
61
               <xs:documentation>
62
                  <p>True if calls to external Java or .NET functions are allowed.</p>
63
               </xs:documentation>
64
            </xs:annotation>
65
         </xs:attribute>
66
         <xs:attribute name="allowMultiThreading" use="optional" type="xs:boolean">
67
            <xs:annotation>
68
               <xs:documentation>
69
                  <p>True if <a class="bodylink code" href="/extensions/attributes/threads">saxon:threads</a> attribute on <code>xsl:for-each</code> causes multi-threading
70
                under Saxon-EE; false to disable multi-threading. Default is true (but
71
                multi-threading only happens if explicitly requested using
72
                    <code>saxon:threads</code>).</p>
73
               </xs:documentation>
74
            </xs:annotation>
75
         </xs:attribute>
76
         <xs:attribute name="allowOldJavaUriFormat" use="optional" type="xs:boolean">
77
            <xs:annotation>
78
               <xs:documentation>
79
                  <p>True if reflexive calls to external Java functions are allowed to use the "liberal"
80
                syntax (for example "http://my.com/extensions/ java.util.Date"). The default is to
81
                allow only the "strict" form of URI such as "java:java.util.Date".</p>
82
               </xs:documentation>
83
            </xs:annotation>
84
         </xs:attribute>
85
         <xs:attribute name="allowStreamabilityExtensions"
86
                       use="optional"
87
                       type="xs:boolean">
88
            <xs:annotation>
89
               <xs:documentation> Saxon 9.5 only. </xs:documentation>
90
            </xs:annotation>
91
         </xs:attribute>
92
         <xs:attribute name="allowSyntaxExtensions" use="optional" type="xs:boolean">
93
            <xs:annotation>
94
               <xs:documentation>
95
                  <p>Enables use of (experimental and non-conformant) extensions to XPath syntax.</p>
96
               </xs:documentation>
97
            </xs:annotation>
98
         </xs:attribute>
99
         <xs:attribute name="collationUriResolver"
100
                       use="optional"
101
                       type="c:javaClassNameType">
102
            <xs:annotation>
103
               <xs:documentation>
104
                  <p>User-supplied class used to interpret collation URIs.</p>
105
               </xs:documentation>
106
            </xs:annotation>
107
         </xs:attribute>
108
         <xs:attribute name="collectionFinder" use="optional" type="c:javaClassNameType">
109
            <xs:annotation>
110
               <xs:documentation>
111
                  <p>User-supplied class used for retrieving the <link>net.sf.saxon.lib.ResourceCollection</link> to resolve the URI supplied to the <a class="bodylink code" href="/functions/fn/collection">collection()</a>
112
                function.</p>
113
               </xs:documentation>
114
            </xs:annotation>
115
         </xs:attribute>
116
         <xs:attribute name="collectionUriResolver"
117
                       use="optional"
118
                       type="c:javaClassNameType">
119
            <xs:annotation>
120
               <xs:documentation>
121
                  <p>User-supplied class used for resolving the URI supplied to the <a class="bodylink code" href="/functions/fn/collection">collection()</a>
122
                function.</p>
123
               </xs:documentation>
124
            </xs:annotation>
125
         </xs:attribute>
126
         <xs:attribute name="compileWithTracing" use="optional" type="xs:boolean">
127
            <xs:annotation>
128
               <xs:documentation>
129
                  <p>Generates trace code in the expression tree, allowing a
130
                    <link>net.sf.saxon.lib.TraceListener</link> to be used at run-time.</p>
131
               </xs:documentation>
132
            </xs:annotation>
133
         </xs:attribute>
134
         <xs:attribute name="debugByteCode" use="optional" type="xs:boolean">
135
            <xs:annotation>
136
               <xs:documentation>
137
                  <p>Causes bytecode generation to be run in debugging mode, for use when diagnosing a
138
                problem. Only to be used if requested by Saxonica support.</p>
139
               </xs:documentation>
140
            </xs:annotation>
141
         </xs:attribute>
142
         <xs:attribute name="debugByteCodeDirectory" use="optional" type="c:fileNameType">
143
            <xs:annotation>
144
               <xs:documentation>
145
                  <p>Identifies the directory for output files produced when <code>displayByteCode</code>
146
                is set to true.</p>
147
               </xs:documentation>
148
            </xs:annotation>
149
         </xs:attribute>
150
         <xs:attribute name="defaultCollation" use="optional" type="xs:anyURI">
151
            <xs:annotation>
152
               <xs:documentation>
153
                  <p>(Requires Saxon-PE.) The collation URI to be used when no explicit collation is
154
                requested.</p>
155
               </xs:documentation>
156
            </xs:annotation>
157
         </xs:attribute>
158
         <xs:attribute name="defaultCollection" use="optional" type="xs:anyURI">
159
            <xs:annotation>
160
               <xs:documentation>
161
                  <p>The collection URI to be used when no argument is passed to the <a class="bodylink code" href="/functions/fn/collection">collection()</a>
162
                function.</p>
163
               </xs:documentation>
164
            </xs:annotation>
165
         </xs:attribute>
166
         <xs:attribute name="defaultRegexEngine" use="optional" type="c:regexEngineType">
167
            <xs:annotation>
168
               <xs:documentation>
169
                  <p>Determines which regular expression engine should be used for evaluating regular expressions.</p>
170
               </xs:documentation>
171
            </xs:annotation>
172
         </xs:attribute>
173
         <xs:attribute name="displayByteCode" use="optional" type="xs:boolean">
174
            <xs:annotation>
175
               <xs:documentation>
176
                  <p>Causes files containing a human-readable print of the generated bytecode to be
177
                output, to the directory identified by the <code>debugByteCodeDir</code> option.</p>
178
               </xs:documentation>
179
            </xs:annotation>
180
         </xs:attribute>
181
         <xs:attribute name="dtdValidation" use="optional" type="xs:boolean">
182
            <xs:annotation>
183
               <xs:documentation>
184
                  <p>Controls whether DTD validation is applied to input files.</p>
185
               </xs:documentation>
186
            </xs:annotation>
187
         </xs:attribute>
188
         <xs:attribute name="dtdValidationRecoverable" use="optional" type="xs:boolean">
189
            <xs:annotation>
190
               <xs:documentation>
191
                  <p>Controls whether DTD validation errors are recoverable or fatal.</p>
192
               </xs:documentation>
193
            </xs:annotation>
194
         </xs:attribute>
195
         <xs:attribute name="eagerEvaluation" use="optional" type="xs:boolean">
196
            <xs:annotation>
197
               <xs:documentation>
198
                  <p>Forces Saxon to do eager evaluation of expressions in contexts where normally it would do lazy evaluation,
199
            for example when evaluating variables and function results. This can make for easier debugging.</p>
200
               </xs:documentation>
201
            </xs:annotation>
202
         </xs:attribute>
203
         <xs:attribute name="entityResolver" use="optional" type="c:javaClassNameType">
204
            <xs:annotation>
205
               <xs:documentation>
206
                  <p>The class used whenever Saxon creates an <code>XMLReader</code> for parsing source
207
                documents.</p>
208
               </xs:documentation>
209
            </xs:annotation>
210
         </xs:attribute>
211
         <xs:attribute name="environmentVariableResolver"
212
                       use="optional"
213
                       type="c:javaClassNameType">
214
            <xs:annotation>
215
               <xs:documentation>
216
                  <p>Defines the environment variable resolver for all queries and transforms using this
217
                configuration. This affects the result of the XPath functions <a class="bodylink code"
218
                        href="/functions/fn/available-environment-variables">available-environment-variables()</a> and <a class="bodylink code" href="/functions/fn/environment-variable">environment-variable()</a>. </p>
219
               </xs:documentation>
220
            </xs:annotation>
221
         </xs:attribute>
222
         <xs:attribute name="errorListener" use="optional" type="c:javaClassNameType">
223
            <xs:annotation>
224
               <xs:documentation>
225
                  <p>Defines the default <code>ErrorListener</code> for reporting both compile-time and
226
                run-time errors.</p>
227
               </xs:documentation>
228
            </xs:annotation>
229
         </xs:attribute>
230
         <xs:attribute name="expandAttributeDefaults" use="optional" type="xs:boolean">
231
            <xs:annotation>
232
               <xs:documentation>
233
                  <p>Controls whether attribute default values found in a DTD or schema are expanded or
234
                not.</p>
235
               </xs:documentation>
236
            </xs:annotation>
237
         </xs:attribute>
238
         <xs:attribute name="generateByteCode" use="optional" type="xs:boolean">
239
            <xs:annotation>
240
               <xs:documentation>
241
                  <p>By default, Saxon-EE attempts to generate Java bytecode for evaluation of certain
242
                parts of a query or stylesheet. Setting this option to false disables this.</p>
243
               </xs:documentation>
244
            </xs:annotation>
245
         </xs:attribute>
246
         <xs:attribute name="ignoreSAXSourceParser" use="optional" type="xs:boolean">
247
            <xs:annotation>
248
               <xs:documentation>
249
                  <p>Set to true to ignore the <code>XMLReader</code> supplied as a <code>SAXSource</code>
250
                as input to an XSLT transformation, to use one specified by the <code>parser</code>
251
                option instead.</p>
252
               </xs:documentation>
253
            </xs:annotation>
254
         </xs:attribute>
255
         <xs:attribute name="lazyConstructionMode" use="optional" type="xs:boolean">
256
            <xs:annotation>
257
               <xs:documentation>
258
                  <p>If true, causes temporary trees to be constructed lazily.</p>
259
               </xs:documentation>
260
            </xs:annotation>
261
         </xs:attribute>
262
         <xs:attribute name="lineNumbering" use="optional" type="xs:boolean">
263
            <xs:annotation>
264
               <xs:documentation>
265
                  <p>Controls whether line and column number information is maintained for input
266
                files.</p>
267
               </xs:documentation>
268
            </xs:annotation>
269
         </xs:attribute>
270
         <xs:attribute name="markDefaultedAttributes" use="optional" type="xs:boolean">
271
            <xs:annotation>
272
               <xs:documentation>
273
                  <p>Indicates that Saxon should retain the fact that attributes are derived
274
            from defaults defined in a schema or DTD where this information is available from the XML parser.</p>
275
               </xs:documentation>
276
            </xs:annotation>
277
         </xs:attribute>
278
         <xs:attribute name="maxCompiledClasses"
279
                       use="optional"
280
                       type="xs:nonNegativeInteger">
281
            <xs:annotation>
282
               <xs:documentation>
283
                  <p>Places a limit on the number of classes for which Saxon will generate bytecode.</p>
284
               </xs:documentation>
285
            </xs:annotation>
286
         </xs:attribute>
287
         <xs:attribute name="monitorHotSpotByteCode" use="optional" type="xs:boolean">
288
            <xs:annotation>
289
               <xs:documentation>
290
                  <p>Enables monitoring of hot-spot byte-code generation.</p>
291
               </xs:documentation>
292
            </xs:annotation>
293
         </xs:attribute>
294
         <xs:attribute name="optimizationLevel" use="optional" type="xs:integer">
295
            <xs:annotation>
296
               <xs:documentation>
297
                  <p>Defines the level of code optimization to be applied.</p>
298
               </xs:documentation>
299
            </xs:annotation>
300
         </xs:attribute>
301
         <xs:attribute name="parser" use="optional" type="c:javaClassNameType">
302
            <xs:annotation>
303
               <xs:documentation>
304
                  <p>XML parser used for source documents.</p>
305
               </xs:documentation>
306
            </xs:annotation>
307
         </xs:attribute>
308
         <xs:attribute name="preEvaluateDoc" use="optional" type="xs:boolean">
309
            <xs:annotation>
310
               <xs:documentation>
311
                  <p>If true, allows calls on <a class="bodylink code" href="/functions/fn/doc">doc()</a>
312
                with a literal argument to be evaluated early, at compile time.</p>
313
               </xs:documentation>
314
            </xs:annotation>
315
         </xs:attribute>
316
         <xs:attribute name="preferJaxpParser" use="optional" type="xs:boolean">
317
            <xs:annotation>
318
               <xs:documentation>
319
                  <p>Relevant only on .NET, determines whether the Java Classpath parser is used in
320
                preference to the Microsoft .NET parser.</p>
321
               </xs:documentation>
322
            </xs:annotation>
323
         </xs:attribute>
324
         <xs:attribute name="recognizeUriQueryParameters" use="optional" type="xs:boolean">
325
            <xs:annotation>
326
               <xs:documentation>
327
                  <p>If true, and the standard <code>URIResolver</code> is in use, query parameters such
328
                as <code>val=strict</code> will be recognized on URIs supplied to the <a class="bodylink code" href="/functions/fn/doc">doc()</a> or <a class="bodylink code" href="/functions/fn/document">document()</a>
329
                functions.</p>
330
               </xs:documentation>
331
            </xs:annotation>
332
         </xs:attribute>
333
         <xs:attribute name="regexBacktrackingLimit" use="optional" type="xs:integer">
334
            <xs:annotation>
335
               <xs:documentation>
336
                  <p>Sets a limit on the amount of backtracking performed during regular expression evaluation.</p>
337
               </xs:documentation>
338
            </xs:annotation>
339
         </xs:attribute>
340
         <xs:attribute name="schemaValidation"
341
                       use="optional"
342
                       type="c:schemaValidationType">
343
            <xs:annotation>
344
               <xs:documentation>
345
                  <p>Controls whether schema validation is applied to input files.</p>
346
               </xs:documentation>
347
            </xs:annotation>
348
         </xs:attribute>
349
         <xs:attribute name="serializerFactory" use="optional" type="c:javaClassNameType">
350
            <xs:annotation>
351
               <xs:documentation>
352
                  <p>Allows the serialization pipeline to be customized, for example to handle
353
                user-defined serialization parameters.</p>
354
               </xs:documentation>
355
            </xs:annotation>
356
         </xs:attribute>
357
         <xs:attribute name="sourceResolver" use="optional" type="c:javaClassNameType">
358
            <xs:annotation>
359
               <xs:documentation>
360
                  <p>Name of a user-supplied class that resolves unknown implementations of the JAXP
361
                    <code>Source</code> class into a known implementation.</p>
362
               </xs:documentation>
363
            </xs:annotation>
364
         </xs:attribute>
365
         <xs:attribute name="stableCollectionUri" use="optional" type="xs:boolean">
366
            <xs:annotation>
367
               <xs:documentation>
368
                  <p>Indicates that collections read using the <code>fn:collection()</code> function are
369
                to be stable, that is, repeated calls with the same collection URI return identical
370
                results.</p>
371
               </xs:documentation>
372
            </xs:annotation>
373
         </xs:attribute>
374
         <xs:attribute name="stableUnparsedText" use="optional" type="xs:boolean">
375
            <xs:annotation>
376
               <xs:documentation>
377
                  <p>Indicates that unparsed text files read using functions such as
378
                    <code>fn:unparsed-text()</code>, <code/>function are to be stable, that is,
379
                repeated calls with the same URI return identical results.</p>
380
               </xs:documentation>
381
            </xs:annotation>
382
         </xs:attribute>
383
         <xs:attribute name="standardErrorOutputFile" use="optional" type="c:fileNameType">
384
            <xs:annotation>
385
               <xs:documentation>
386
                  <p>Redirects output which would otherwise go to the stardard error output stream
387
                    <code>System.err</code>, to this file.</p>
388
               </xs:documentation>
389
            </xs:annotation>
390
         </xs:attribute>
391
         <xs:attribute name="streamability" use="optional" type="c:streamabilityType">
392
            <xs:annotation>
393
               <xs:documentation>
394
                  <p>Determines the test applied to see if constructs are streamable (if streaming is
395
                requested).</p>
396
               </xs:documentation>
397
            </xs:annotation>
398
         </xs:attribute>
399
         <xs:attribute name="streamingFallback" use="optional" type="xs:boolean">
400
            <xs:annotation>
401
               <xs:documentation>
402
                  <p>If true, then constructs for which streaming is requested will be exectued in
403
                non-streaming mode if the code is not actually streamable.</p>
404
               </xs:documentation>
405
            </xs:annotation>
406
         </xs:attribute>
407
         <xs:attribute name="stripSpace" use="optional" type="c:stripSpaceType">
408
            <xs:annotation>
409
               <xs:documentation>
410
                  <p>Controls what whitespace is removed from input documents (all inter-element
411
                whitespace, no inter-element whitespace, or all inter-element whitespace in elements
412
                having element-only content models).</p>
413
               </xs:documentation>
414
            </xs:annotation>
415
         </xs:attribute>
416
         <xs:attribute name="styleParser" use="optional" type="c:javaClassNameType">
417
            <xs:annotation>
418
               <xs:documentation>
419
                  <p>XML parser used for stylesheets and schema documents.</p>
420
               </xs:documentation>
421
            </xs:annotation>
422
         </xs:attribute>
423
         <xs:attribute name="suppressEvaluationExpiryWarning"
424
                       use="optional"
425
                       type="xs:boolean">
426
            <xs:annotation>
427
               <xs:documentation>
428
                  <p>Suppresses the warning issued to indicate that an evaluation license in use is due to
429
                expire.</p>
430
               </xs:documentation>
431
            </xs:annotation>
432
         </xs:attribute>
433
         <xs:attribute name="suppressXPathWarnings" use="optional" type="xs:boolean">
434
            <xs:annotation>
435
               <xs:documentation>
436
                  <p>Suppresses all warnings issued by the XPath and XQuery parsers.</p>
437
               </xs:documentation>
438
            </xs:annotation>
439
         </xs:attribute>
440
         <xs:attribute name="suppressXsltNamespaceCheck" use="optional" type="xs:boolean">
441
            <xs:annotation>
442
               <xs:documentation>
443
                  <p>Suppresses the warning when there is no commonality between the namespaces used in
444
                stylesheet match patterns and the namespaces used in the source document.</p>
445
               </xs:documentation>
446
            </xs:annotation>
447
         </xs:attribute>
448
         <xs:attribute name="thresholdForFunctionInlining"
449
                       use="optional"
450
                       type="xs:integer">
451
            <xs:annotation>
452
               <xs:documentation>
453
                  <p>Defines a limit on the size of user-defined functions that will be inlined.</p>
454
               </xs:documentation>
455
            </xs:annotation>
456
         </xs:attribute>
457
         <xs:attribute name="thresholdForHotspotByteCode" use="optional" type="xs:integer">
458
            <xs:annotation>
459
               <xs:documentation>
460
                  <p>Defines how many times a code fragment must be executed before bytecode generation kicks in.</p>
461
               </xs:documentation>
462
            </xs:annotation>
463
         </xs:attribute>
464
         <xs:attribute name="timing" use="optional" type="xs:boolean">
465
            <xs:annotation>
466
               <xs:documentation>
467
                  <p>Outputs progress messages to <code>System.err</code>. Equivalent to the
468
                    <code>-t</code> option on the command line.</p>
469
               </xs:documentation>
470
            </xs:annotation>
471
         </xs:attribute>
472
         <xs:attribute name="traceExternalFunctions" use="optional" type="xs:boolean">
473
            <xs:annotation>
474
               <xs:documentation>
475
                  <p>Provides diagnostics when external functions are dynamically loaded.</p>
476
               </xs:documentation>
477
            </xs:annotation>
478
         </xs:attribute>
479
         <xs:attribute name="traceListener" use="optional" type="c:javaClassNameType">
480
            <xs:annotation>
481
               <xs:documentation>
482
                  <p>User-defined class to be used for handling run-time trace output.</p>
483
               </xs:documentation>
484
            </xs:annotation>
485
         </xs:attribute>
486
         <xs:attribute name="traceListenerOutputFile" use="optional" type="c:fileNameType">
487
            <xs:annotation>
488
               <xs:documentation>
489
                  <p>Supplies a file as destination for trace listener output.</p>
490
               </xs:documentation>
491
            </xs:annotation>
492
         </xs:attribute>
493
         <xs:attribute name="traceOptimizerDecisions" use="optional" type="xs:boolean">
494
            <xs:annotation>
495
               <xs:documentation>
496
                  <p>Causes tracing of decisions made by the optimizer.</p>
497
               </xs:documentation>
498
            </xs:annotation>
499
         </xs:attribute>
500
         <xs:attribute name="treeModel" use="optional" type="c:treeModelType">
501
            <xs:annotation>
502
               <xs:documentation>
503
                  <p>Determines the tree model implementation used for input files: TinyTree, LinkedTree,
504
                or TinyTree(condensed).</p>
505
               </xs:documentation>
506
            </xs:annotation>
507
         </xs:attribute>
508
         <xs:attribute name="unparsedTextURIResolver"
509
                       use="optional"
510
                       type="c:javaClassNameType">
511
            <xs:annotation>
512
               <xs:documentation>
513
                  <p>The class name of the <code>UnparsedTextURIResolver</code> to be used for deferencing
514
                URIs used in calls on <code>fn:unparsed-text()</code> and related functions.</p>
515
               </xs:documentation>
516
            </xs:annotation>
517
         </xs:attribute>
518
         <xs:attribute name="uriResolver" use="optional" type="c:javaClassNameType">
519
            <xs:annotation>
520
               <xs:documentation>
521
                  <p>The <code>URIResolver</code> to be used for deferencing URIs used in <a class="bodylink code" href="/xsl-elements/include">xsl:include</a>, <a class="bodylink code" href="/xsl-elements/import">xsl:import</a>, <a class="bodylink code" href="/functions/fn/doc">doc()</a>, and <a class="bodylink code" href="/functions/fn/document">document()</a>.</p>
522
               </xs:documentation>
523
            </xs:annotation>
524
         </xs:attribute>
525
         <xs:attribute name="usePiDisableOutputEscaping" use="optional" type="xs:boolean">
526
            <xs:annotation>
527
               <xs:documentation>
528
                  <p>When sending output to a user-defined content handler, indicates whether JAXP-defined
529
                processing instructions are used to signal the start and end of text in which output
530
                escaping is disabled.</p>
531
               </xs:documentation>
532
            </xs:annotation>
533
         </xs:attribute>
534
         <xs:attribute name="useTypedValueCache" use="optional" type="xs:boolean">
535
            <xs:annotation>
536
               <xs:documentation>
537
                  <p>If true, typed values of element and attribute nodes are cached in the TinyTree. Uses
538
                extra memory, may make execution faster.</p>
539
               </xs:documentation>
540
            </xs:annotation>
541
         </xs:attribute>
542
         <xs:attribute name="validationComments" use="optional" type="xs:boolean">
543
            <xs:annotation>
544
               <xs:documentation>
545
                  <p>Only relevant when <code>validationWarnings=true</code>, indicates that validation
546
                error messages should where possible be added as comments in the document instance
547
                being validated rather than fatal errors.</p>
548
               </xs:documentation>
549
            </xs:annotation>
550
         </xs:attribute>
551
         <xs:attribute name="validationWarnings" use="optional" type="xs:boolean">
552
            <xs:annotation>
553
               <xs:documentation>
554
                  <p>For result trees subjected to schema validation, indicates whether validation
555
                failures should be treated as warnings rather than fatal errors.</p>
556
               </xs:documentation>
557
            </xs:annotation>
558
         </xs:attribute>
559
         <xs:attribute name="versionOfXml" use="optional" type="xs:decimal">
560
            <xs:annotation>
561
               <xs:documentation>
562
                  <p>Determines whether XML 1.0 or XML 1.1 rules are used for names. (1.0 means the rules
563
                before Edition 5.)</p>
564
               </xs:documentation>
565
            </xs:annotation>
566
         </xs:attribute>
567
         <xs:attribute name="xInclude" use="optional" type="xs:boolean">
568
            <xs:annotation>
569
               <xs:documentation>
570
                  <p>Controls whether XInclude processing is applied to input files.</p>
571
               </xs:documentation>
572
            </xs:annotation>
573
         </xs:attribute>
574
         <xs:attribute name="xpathVersionForXsd" use="optional" type="xs:integer">
575
            <xs:annotation>
576
               <xs:documentation>
577
                  <p>Defines what version of the XPath language may be used in XML Schema 1.1 assertions and type alternatives.</p>
578
               </xs:documentation>
579
            </xs:annotation>
580
         </xs:attribute>
581
         <xs:attribute name="xpathVersionForXslt" use="optional" type="xs:integer">
582
            <xs:annotation>
583
               <xs:documentation>
584
                  <p>Defines what version of the XPath language may be used in XSLT 3.0 stylesheets.</p>
585
               </xs:documentation>
586
            </xs:annotation>
587
         </xs:attribute>
588
      </xs:complexType>
589
   </xs:element>
590

  
591
   <xs:element name="xslt">
592
      <xs:annotation>
593
         <xs:documentation> Defines configuration properties specific to XSLT processing.
123 594
      </xs:documentation>
124
    </xs:annotation>
125
    <xs:complexType>
126
      <xs:sequence>
127
        <xs:element ref="c:extensionElement" minOccurs="0" maxOccurs="unbounded"/>
128
      </xs:sequence>
129
      <xs:attribute name="disableXslEvaluate" use="optional" type="xs:boolean"/>
130
      <xs:attribute name="enableAssertions" use="optional" type="xs:boolean"/>
131
      <xs:attribute name="initialMode" use="optional" type="c:EQName"/>
132
      <xs:attribute name="initialTemplate" use="optional" type="c:EQName"/>
133
      <xs:attribute name="messageEmitter" use="optional" type="c:javaClassNameType"/>
134
      <xs:attribute name="outputUriResolver" use="optional" type="c:javaClassNameType"/>
135
      <xs:attribute name="recoveryPolicy" use="optional" type="c:recoveryPolicyType"/>
136
      <xs:attribute name="resultDocumentThreads" use="optional" type="xs:integer"/>
137
      <xs:attribute name="schemaAware" use="optional" type="xs:boolean"/>
138
      <xs:attribute name="staticErrorListener" use="optional" type="c:javaClassNameType"/>
139
      <xs:attribute name="staticUriResolver" use="optional" type="c:javaClassNameType"/>
140
      <xs:attribute name="strictStreamability" use="optional" type="xs:boolean"/>
141
      <xs:attribute name="styleParser" use="optional" type="c:javaClassNameType"/>
142
      <xs:attribute name="version" use="optional" type="xs:decimal"/>
143
      <xs:attribute name="versionWarning" use="optional" type="xs:boolean"/>
144
    </xs:complexType>
145
  </xs:element>
146

  
147
  <xs:element name="extensionElement">
148
    <xs:annotation>
149
      <xs:documentation> Describes a user-supplied library of XSLT extension instructions.
595
      </xs:annotation>
596
      <xs:complexType>
597
         <xs:sequence>
598

  
599
            <xs:element ref="c:extensionElement" minOccurs="0" maxOccurs="unbounded"/>
600
         </xs:sequence>
601
         <xs:attribute name="disableXslEvaluate" use="optional" type="xs:boolean">
602
            <xs:annotation>
603
               <xs:documentation>
604
                  <p>If set, the use of the <code>xsl:evaluate</code> instruction in XSLT 3.0
605
                is disabled.</p>
606
               </xs:documentation>
607
            </xs:annotation>
608
         </xs:attribute>
609
         <xs:attribute name="enableAssertions" use="optional" type="xs:boolean">
610
            <xs:annotation>
611
               <xs:documentation>
612
                  <p>Indicates whether assertions (XSLT 3.0 xsl:assert instructions) are enabled.</p>
613
               </xs:documentation>
614
            </xs:annotation>
615
         </xs:attribute>
616
         <xs:attribute name="initialMode" use="optional" type="c:EQName">
617
            <xs:annotation>
618
               <xs:documentation>
619
                  <p>The name of a mode within a stylesheet in which execution should begin.</p>
620
               </xs:documentation>
621
            </xs:annotation>
622
         </xs:attribute>
623
         <xs:attribute name="initialTemplate" use="optional" type="c:EQName">
624
            <xs:annotation>
625
               <xs:documentation>
626
                  <p>The name of a named template within a stylesheet where execution should begin.</p>
627
               </xs:documentation>
628
            </xs:annotation>
629
         </xs:attribute>
630
         <xs:attribute name="messageEmitter" use="optional" type="c:javaClassNameType">
631
            <xs:annotation>
632
               <xs:documentation>
633
                  <p>Destination of <a class="bodylink code" href="/xsl-elements/message">xsl:message</a>
634
                output.</p>
635
               </xs:documentation>
636
            </xs:annotation>
637
         </xs:attribute>
638
         <xs:attribute name="outputUriResolver" use="optional" type="c:javaClassNameType">
639
            <xs:annotation>
640
               <xs:documentation>
641
                  <p>Handles documents written using <a class="bodylink code" href="/xsl-elements/result-document">xsl:result-document</a>. </p>
642
               </xs:documentation>
643
            </xs:annotation>
644
         </xs:attribute>
645
         <xs:attribute name="recoveryPolicy" use="optional" type="c:recoveryPolicyType">
646
            <xs:annotation>
647
               <xs:documentation>
648
                  <p>Indicates how XSLT recoverable errors are handled (for example, ambiguous template
649
                rules).</p>
650
               </xs:documentation>
651
            </xs:annotation>
652
         </xs:attribute>
653
         <xs:attribute name="resultDocumentThreads" use="optional" type="xs:integer">
654
            <xs:annotation>
655
               <xs:documentation>
656
                  <p>Indicates the maximum number of threads to be used for processing
657
                <code>xsl:result-document</code> instructions in parallel.</p>
658
               </xs:documentation>
659
            </xs:annotation>
660
         </xs:attribute>
661
         <xs:attribute name="schemaAware" use="optional" type="xs:boolean">
662
            <xs:annotation>
663
               <xs:documentation>
664
                  <p>Indicates whether stylesheet should be compiled to be able to handle schema-typed
665
                input, even if they contain no <a class="bodylink code" href="/xsl-elements/import-schema">xsl:import-schema</a> declaration.</p>
666
               </xs:documentation>
667
            </xs:annotation>
668
         </xs:attribute>
669
         <xs:attribute name="staticErrorListener"
670
                       use="optional"
671
                       type="c:javaClassNameType">
672
            <xs:annotation>
673
               <xs:documentation>
674
                  <p>Receives reports of compile-time errors in a stylesheet.</p>
675
               </xs:documentation>
676
            </xs:annotation>
677
         </xs:attribute>
678
         <xs:attribute name="staticUriResolver" use="optional" type="c:javaClassNameType">
679
            <xs:annotation>
680
               <xs:documentation>
681
                  <p>User-defined class for dereferencing URIs on <a class="bodylink code" href="/xsl-elements/include">xsl:include</a> or <a class="bodylink code" href="/xsl-elements/import">xsl:import</a>. </p>
682
               </xs:documentation>
683
            </xs:annotation>
684
         </xs:attribute>
685
         <xs:attribute name="strictStreamability" use="optional" type="xs:boolean">
686
            <xs:annotation>
687
               <xs:documentation>
688
                  <p>Causes the XSLT processor to verify that constructs that are declared streamable are
689
                in fact "guaranteed streamable" according to the W3C rules.</p>
690
               </xs:documentation>
691
            </xs:annotation>
692
         </xs:attribute>
693
         <xs:attribute name="styleParser" use="optional" type="c:javaClassNameType">
694
            <xs:annotation>
695
               <xs:documentation>
696
                  <p>XML parser used for stylesheets and schema documents.</p>
697
               </xs:documentation>
698
            </xs:annotation>
699
         </xs:attribute>
700
         <xs:attribute name="version" use="optional" type="xs:decimal">
701
            <xs:annotation>
702
               <xs:documentation>
703
                  <p>XSLT language version to be supported by the processor. From Saxon 9.8, an XSLT 3.0
704
                processor is always used by default. So setting this property has no effect.</p>
705
               </xs:documentation>
706
            </xs:annotation>
707
         </xs:attribute>
708
         <xs:attribute name="versionWarning" use="optional" type="xs:boolean">
709
            <xs:annotation>
710
               <xs:documentation>
711
                  <p>False suppresses the warning produced when the XSLT processor version is not the same
712
                as the version in the <code>xsl:stylesheet</code> element. From Saxon 9.8, the
713
                warning is no longer output, so this attribute is ignored.</p>
714
               </xs:documentation>
715
            </xs:annotation>
716
         </xs:attribute>
717
      </xs:complexType>
718
   </xs:element>
719

  
720
   <xs:element name="extensionElement">
721
      <xs:annotation>
722
         <xs:documentation> Describes a user-supplied library of XSLT extension instructions.
150 723
      </xs:documentation>
151
    </xs:annotation>
152
    <xs:complexType>
153
      <xs:attribute name="factory" use="optional" type="c:javaClassNameType">
154
        <xs:annotation>
155
          <xs:documentation> The Java class that implements the extension instructions.
724
      </xs:annotation>
725
      <xs:complexType>
726
         <xs:attribute name="factory" use="optional" type="c:javaClassNameType">
727
            <xs:annotation>
728
               <xs:documentation> The Java class that implements the extension instructions.
156 729
          </xs:documentation>
157
        </xs:annotation>
158
      </xs:attribute>
159
      <xs:attribute name="namespace" use="optional" type="xs:anyURI">
160
        <xs:annotation>
161
          <xs:documentation> The namespace URI of the extension instructions implemented by this
730
            </xs:annotation>
731
         </xs:attribute>
732
         <xs:attribute name="namespace" use="optional" type="xs:anyURI">
733
            <xs:annotation>
734
               <xs:documentation> The namespace URI of the extension instructions implemented by this
162 735
            extension library. </xs:documentation>
163
        </xs:annotation>
164
      </xs:attribute>
165
    </xs:complexType>
166
  </xs:element>
167
  
168
  <xs:element name="xsltPackages">
169
    <xs:annotation>
170
      <xs:documentation> Defines configuration properties specific to XSLT processing with packages.
736
            </xs:annotation>
737
         </xs:attribute>
738
      </xs:complexType>
739
   </xs:element>
740

  
741
   <xs:element name="xsltPackages">
742
      <xs:annotation>
743
         <xs:documentation> Defines configuration properties specific to XSLT processing with packages.
171 744
      </xs:documentation>
172
    </xs:annotation>
173
    <xs:complexType>
174
      <xs:sequence>
175
        <xs:element ref="c:package" minOccurs="0" maxOccurs="unbounded"/>
176
      </xs:sequence>
177
    </xs:complexType>
178
  </xs:element>
179
  
180
  <xs:element name="package">
181
    <xs:annotation>
182
      <xs:documentation> Defines an XSLT 3.0 package, or version of a package.
745
      </xs:annotation>
746
      <xs:complexType>
747
         <xs:sequence>
748

  
749
            <xs:element ref="c:package" minOccurs="0" maxOccurs="unbounded"/>
750
         </xs:sequence>
751
      </xs:complexType>
752
   </xs:element>
753

  
754
   <xs:element name="package">
755
      <xs:annotation>
756
         <xs:documentation> Defines an XSLT 3.0 package, or version of a package.
183 757
      </xs:documentation>
184
    </xs:annotation>
185
    <xs:complexType>
186
      <xs:sequence>
187
        <xs:element ref="c:withParam" minOccurs="0" maxOccurs="unbounded"/>
188
      </xs:sequence>
189
      <xs:attribute name="name" use="required" type="xs:anyURI"/>
190
      <xs:attribute name="version" use="required" type="xs:string"/>
191
      <xs:attribute name="base" use="optional" type="xs:anyURI"/>
192
      <xs:attribute name="exportLocation" use="optional" type="xs:anyURI"/>
193
      <xs:attribute name="priority" use="optional" type="xs:integer"/>
194
      <xs:attribute name="shortName" use="optional" type="xs:string"/>
195
      <xs:attribute name="sourceLocation" use="optional" type="xs:anyURI"/>
196
    </xs:complexType>
197
  </xs:element>
198
  
199
  <xs:element name="withParam">
200
    <xs:annotation>
201
      <xs:documentation> Supplies values of static stylesheet parameters used during package
758
      </xs:annotation>
759
      <xs:complexType>
760
         <xs:sequence>
761

  
762
            <xs:element ref="c:withParam" minOccurs="0" maxOccurs="unbounded"/>
763
         </xs:sequence>
764
         <xs:attribute name="name" use="required" type="xs:anyURI">
765
            <xs:annotation>
766
               <xs:documentation>
767
                  <p>The package name. Must match the value in the <code>name</code> attribute of the <code>xsl:package</code> element,
768
                unless the <code>base</code> attribute is present. When <code>xsl:use-package</code> searches for an appropriate package to use,
769
                it is this name that will be matched.</p>
770
               </xs:documentation>
771
            </xs:annotation>
772
         </xs:attribute>
773
         <xs:attribute name="version" use="required" type="xs:string">
774
            <xs:annotation>
775
               <xs:documentation>
776
                  <p>The package version. Required. The numeric part of the version number must match the value in the <code>package-version</code> 
777
                attribute of the <code>xsl:package</code> element; the NamePart (if any) can differ. When <code>xsl:use-package</code>
778
                searches for an appropriate package to use, it is the version number in the configuration file that is used, not the version
779
                in the XSLT source.</p>
780
               </xs:documentation>
781
            </xs:annotation>
782
         </xs:attribute>
783
         <xs:attribute name="base" use="optional" type="xs:anyURI">
784
            <xs:annotation>
785
               <xs:documentation>
786
                  <p>The original package name. Required only if the package name defined in the <code>name</code> attribute differs from the
787
                package name in the XSLT source. If present, the value must match the package name defined in the XSLT source. Using this
788
                attribute allows packages to be renamed. This is useful when a package has static parameters whose values are bound in child
789
                <code>withParam</code> elements: it allows two instances of a package to be made available (under different names) with different
790
                bindings for the static parameters.</p>
791
               </xs:documentation>
792
            </xs:annotation>
793
         </xs:attribute>
794
         <xs:attribute name="exportLocation" use="optional" type="xs:anyURI">
795
            <xs:annotation>
796
               <xs:documentation>
797
                  <p>The location (relative to the configuration file) of a representation of this package in SEF (stylesheet export format) form.
798
                If this attribute is present then the SEF form will always be used in preference to the source form; the <code>sourceLocation</code> is then ignored,
799
                and it is an error if any <code>withParam</code> children are present (because static parameters will have been bound when the SEF was created).                
800
                It is entirely a user responsibility to keep the SEF form up-to-date with changes to the source.</p>
801
               </xs:documentation>
802
            </xs:annotation>
803
         </xs:attribute>
804
         <xs:attribute name="priority" use="optional" type="xs:integer">
805
            <xs:annotation>
806
               <xs:documentation>
807
                  <p>Used when there are several versions of a package available and the client does not specify which version to use. The value
808
                must be an integer. Versions
809
                with higher priority are preferred over versions with lower priority or unspecified priority; if the priorities are equal (or unspecified) 
810
                then the highest available version is used. The rules for ordering of version numbers are given in section ยง3.5.1 of the
811
                W3C specification.</p>
812
               </xs:documentation>
813
            </xs:annotation>
814
         </xs:attribute>
815
         <xs:attribute name="shortName" use="optional" type="xs:string">
816
            <xs:annotation>
817
               <xs:documentation>
818
                  <p>Any convenient short name for the package name/version combination. This can be used for convenience 
819
                as the value of the <code>-xsl</code> option on the <code>Transform</code> command line. (We suggest using a value that
820
                is unlikely to be confused with a filename, for example <code>*</code> if the same stylesheet package is used all the time.)</p>
821
               </xs:documentation>
822
            </xs:annotation>
823
         </xs:attribute>
824
         <xs:attribute name="sourceLocation" use="optional" type="xs:anyURI">
825
            <xs:annotation>
826
               <xs:documentation>
827
                  <p>The location (relative to the configuration file) of the source XSLT code of the top-level module of the package.</p>
828
               </xs:documentation>
829
            </xs:annotation>
830
         </xs:attribute>
831
      </xs:complexType>
832
   </xs:element>
833

  
834
   <xs:element name="withParam">
835
      <xs:annotation>
836
         <xs:documentation> Supplies values of static stylesheet parameters used during package
202 837
        compilation.
203 838
      </xs:documentation>
204
    </xs:annotation>
205
    <xs:complexType>
206
      <xs:attribute name="name" use="required" type="c:EQName"/>
207
      <xs:attribute name="select" use="required" type="c:exprType"/>
208
    </xs:complexType>
209
  </xs:element>
210

  
211
  <xs:element name="xquery">
212
    <xs:annotation>
213
      <xs:documentation> Defines configuration properties specific to XQuery processing.
839
      </xs:annotation>
840
      <xs:complexType>
841
         <xs:attribute name="name" use="required" type="c:EQName">
842
            <xs:annotation>
843
               <xs:documentation>
844
                  <p>The parameter name.</p>
845
               </xs:documentation>
846
            </xs:annotation>
847
         </xs:attribute>
848
         <xs:attribute name="select" use="required" type="c:exprType">
849
            <xs:annotation>
850
               <xs:documentation>
851
                  <p>An XPath expression that is evaluated to give the value of the parameter (so a boolean parameter might be written
852
                <code>select="true()"</code>, while a string parameter would be expressed as <code>select="'London'"</code>).</p>
853
               </xs:documentation>
854
            </xs:annotation>
855
         </xs:attribute>
856
      </xs:complexType>
857
   </xs:element>
858

  
859
   <xs:element name="xquery">
860
      <xs:annotation>
861
         <xs:documentation> Defines configuration properties specific to XQuery processing.
214 862
      </xs:documentation>
215
    </xs:annotation>
216
    <xs:complexType>
217
      <xs:attribute name="allowUpdate" use="optional" type="xs:boolean"/>
218
      <xs:attribute name="constructionMode" use="optional" type="c:constructionModeType"/>
219
      <xs:attribute name="defaultElementNamespace" use="optional" type="xs:anyURI"/>
220
      <xs:attribute name="defaultFunctionNamespace" use="optional" type="xs:anyURI"/>
221
      <xs:attribute name="emptyLeast" use="optional" type="xs:boolean"/>
222
      <xs:attribute name="inheritNamespaces" use="optional" type="xs:boolean"/>
223
      <xs:attribute name="moduleUriResolver" use="optional" type="c:javaClassNameType"/>
224
      <xs:attribute name="multipleModuleImports" use="optional" type="xs:boolean"/>
225
      <xs:attribute name="preserveBoundarySpace" use="optional" type="xs:boolean"/>
226
      <xs:attribute name="preserveNamespaces" use="optional" type="xs:boolean"/>
227
      <xs:attribute name="requiredContextItemType" use="optional" type="c:itemTypeType"/>
228
      <xs:attribute name="schemaAware" use="optional" type="xs:boolean"/>
229
      <xs:attribute name="staticErrorListener" use="optional" type="c:javaClassNameType"/>
230
      <xs:attribute name="version" use="optional" type="xs:decimal"/>
231
    </xs:complexType>
232
  </xs:element>
233

  
234
  <xs:element name="xsd">
235
    <xs:annotation>
236
      <xs:documentation> Defines configuration properties specific to XML Schema processing.
863
      </xs:annotation>
864
      <xs:complexType>
865
         <xs:attribute name="allowUpdate" use="optional" type="xs:boolean">
866
            <xs:annotation>
867
               <xs:documentation>
868
                  <p>Indicates whether XQuery Update syntax is accepted.</p>
869
               </xs:documentation>
870
            </xs:annotation>
871
         </xs:attribute>
872
         <xs:attribute name="constructionMode"
873
                       use="optional"
874
                       type="c:constructionModeType">
875
            <xs:annotation>
876
               <xs:documentation>
877
                  <p>Default value for construction mode in the static context.</p>
878
               </xs:documentation>
879
            </xs:annotation>
880
         </xs:attribute>
881
         <xs:attribute name="defaultElementNamespace" use="optional" type="xs:anyURI">
882
            <xs:annotation>
883
               <xs:documentation>
884
                  <p>Default namespace for elements and types.</p>
885
               </xs:documentation>
886
            </xs:annotation>
887
         </xs:attribute>
888
         <xs:attribute name="defaultFunctionNamespace" use="optional" type="xs:anyURI">
889
            <xs:annotation>
890
               <xs:documentation>
891
                  <p>Default namespace for functions.</p>
892
               </xs:documentation>
893
            </xs:annotation>
894
         </xs:attribute>
895
         <xs:attribute name="emptyLeast" use="optional" type="xs:boolean">
896
            <xs:annotation>
897
               <xs:documentation>
898
                  <p>True if the empty sequence comes first in sort order.</p>
899
               </xs:documentation>
900
            </xs:annotation>
901
         </xs:attribute>
902
         <xs:attribute name="inheritNamespaces" use="optional" type="xs:boolean">
903
            <xs:annotation>
904
               <xs:documentation>
905
                  <p>Default value for "inherit namespaces" in the static context.</p>
906
               </xs:documentation>
907
            </xs:annotation>
908
         </xs:attribute>
909
         <xs:attribute name="moduleUriResolver" use="optional" type="c:javaClassNameType">
910
            <xs:annotation>
911
               <xs:documentation>
912
                  <p>Used for locating query modules referenced by "import module".</p>
913
               </xs:documentation>
914
            </xs:annotation>
915
         </xs:attribute>
916
         <xs:attribute name="multipleModuleImports" use="optional" type="xs:boolean">
917
            <xs:annotation>
918
               <xs:documentation>
919
                  <p>If set to true, the XQuery processor attempts to fetch an XQuery module appearing in
920
                an <code>import module</code> directive, whether or not a module with that module
921
                URI has already been loaded, unless the location URI of the existing module is the
922
                same as that of the requested module.</p>
923
               </xs:documentation>
924
            </xs:annotation>
925
         </xs:attribute>
926
         <xs:attribute name="preserveBoundarySpace" use="optional" type="xs:boolean">
927
            <xs:annotation>
928
               <xs:documentation>
929
                  <p>Policy for preserving boundary space within direct element content.</p>
930
               </xs:documentation>
931
            </xs:annotation>
932
         </xs:attribute>
933
         <xs:attribute name="preserveNamespaces" use="optional" type="xs:boolean">
934
            <xs:annotation>
935
               <xs:documentation>
936
                  <p>Default value for "preserve namespaces" in the static context.</p>
937
               </xs:documentation>
938
            </xs:annotation>
939
         </xs:attribute>
940
         <xs:attribute name="requiredContextItemType" use="optional" type="c:itemTypeType">
941
            <xs:annotation>
942
               <xs:documentation>
943
                  <p>The required type for the context item.</p>
944
               </xs:documentation>
945
            </xs:annotation>
946
         </xs:attribute>
947
         <xs:attribute name="schemaAware" use="optional" type="xs:boolean">
948
            <xs:annotation>
949
               <xs:documentation>
950
                  <p>True if the query makes use of schema information.</p>
951
               </xs:documentation>
952
            </xs:annotation>
953
         </xs:attribute>
954
         <xs:attribute name="staticErrorListener"
955
                       use="optional"
956
                       type="c:javaClassNameType">
957
            <xs:annotation>
958
               <xs:documentation>
959
                  <p>Receives notification of static errors occurring in a Query.</p>
960
               </xs:documentation>
961
            </xs:annotation>
962
         </xs:attribute>
963
         <xs:attribute name="version" use="optional" type="xs:decimal">
964
            <xs:annotation>
965
               <xs:documentation>
966
                  <p>Indicates whether XQuery 3.0 or 3.1 syntax is accepted. From Saxon 9.8, an XQuery 3.1
967
                processor is always used by default. So setting this property has no effect.</p>
968
               </xs:documentation>
969
            </xs:annotation>
970
         </xs:attribute>
971
      </xs:complexType>
972
   </xs:element>
973

  
974
   <xs:element name="xsd">
975
      <xs:annotation>
976
         <xs:documentation> Defines configuration properties specific to XML Schema processing.
237 977
      </xs:documentation>
238
    </xs:annotation>
239
    <xs:complexType>
240
      <xs:attribute name="assertionsCanSeeComments" use="optional" type="xs:boolean"/>
241
      <xs:attribute name="implicitSchemaImports" use="optional" type="xs:boolean"/>
242
      <xs:attribute name="multipleSchemaImports" use="optional" type="xs:boolean"/>
243
      <xs:attribute name="occurrenceLimits" use="optional" type="c:occurrenceLimitsType"/>
244
      <xs:attribute name="schemaUriResolver" use="optional" type="c:javaClassNameType"/>
245
      <xs:attribute name="thresholdForCompilingTypes" use="optional" type="xs:nonNegativeInteger"/>   
246
      <xs:attribute name="useXsiSchemaLocation" use="optional" type="xs:boolean"/>
247
      <xs:attribute name="version" use="optional" type="xs:decimal"/>
248
    </xs:complexType>
249
  </xs:element>
250
  
251
  <xs:element name="serialization">
252
    <xs:annotation>
253
      <xs:documentation> Defines defaults for serialization properties. </xs:documentation>
254
    </xs:annotation>
255
    <xs:complexType>
256
      <xs:attribute name="allow-duplicate-names" use="optional" type="c:yesOrNoType"/>
257
      <xs:attribute name="byte-order-mark" use="optional" type="c:yesOrNoType"/>
258
      <xs:attribute name="cdata-section-elements" use="optional" type="c:listOfQNameType"/>
259
      <xs:attribute name="doctype-public" use="optional" type="xs:string"/>
260
      <xs:attribute name="doctype-system" use="optional" type="xs:anyURI"/>
261
      <xs:attribute name="encoding" use="optional" type="xs:string"/>
262
      <xs:attribute name="escape-uri-attributes" use="optional" type="c:yesOrNoType"/>
263
      <xs:attribute name="html-version" use="optional" type="xs:decimal"/>
264
      <xs:attribute name="include-content-type" use="optional" type="c:yesOrNoType"/>
265
      <xs:attribute name="indent" use="optional" type="c:yesOrNoType"/>
266
      <xs:attribute name="item-separator" use="optional" type="xs:string"/>
267
      <xs:attribute name="json-node-output-method" use="optional" type="xs:QName"/>
268
      <xs:attribute name="media-type" use="optional" type="xs:string"/>
269
      <xs:attribute name="method" use="optional" type="xs:QName"/>
270
      <xs:attribute name="normalization-form" use="optional" type="xs:string"/>
271
      <xs:attribute name="omit-xml-declaration" use="optional" type="c:yesOrNoType"/>
272
      <xs:attribute name="standalone" use="optional" type="c:yesOrNoOrOmitType"/>
273
      <xs:attribute name="suppress-indentation" use="optional" type="c:listOfQNameType"/>
274
      <xs:attribute name="undeclare-prefixes" use="optional" type="c:yesOrNoType"/>
275
      <xs:attribute name="use-character-maps" use="optional" type="c:listOfQNameType"/>
276
      <xs:attribute name="version" use="optional" type="xs:string"/>
277
      <xs:anyAttribute namespace="##other" processContents="lax"/>
278
    </xs:complexType>
279
  </xs:element>
280
  
281
  <xs:element name="resources">
282
    <xs:annotation>
283
      <xs:documentation> Defines additional classes available for integration purposes.
978
      </xs:annotation>
979
      <xs:complexType>
980
         <xs:attribute name="assertionsCanSeeComments" use="optional" type="xs:boolean">
981
            <xs:annotation>
982
               <xs:documentation>
983
                  <p>Determines whether comment and processing instructions in a document being validated
984
                are visible to assertions in an XSD 1.1 schema.</p>
985
               </xs:documentation>
986
            </xs:annotation>
987
         </xs:attribute>
988
         <xs:attribute name="implicitSchemaImports" use="optional" type="xs:boolean">
989
            <xs:annotation>
990
               <xs:documentation>
991
                  <p>If true, allows a schema document to reference components in a different target namespace without an explicit
992
                <code>xs:import</code> declaration, provided the referenced components are already known.</p>
993
               </xs:documentation>
994
            </xs:annotation>
995
         </xs:attribute>
996
         <xs:attribute name="multipleSchemaImports" use="optional" type="xs:boolean">
997
            <xs:annotation>
998
               <xs:documentation>
999
                  <p>If set to true, the schema processor attempts to fetch a schema document appearing in
1000
                an <code>xs:import</code> directive, whether or not a schema for that namespace has
1001
                already been loaded.</p>
1002
               </xs:documentation>
1003
            </xs:annotation>
1004
         </xs:attribute>
1005
         <xs:attribute name="occurrenceLimits"
1006
                       use="optional"
1007
                       type="c:occurrenceLimitsType">
1008
            <xs:annotation>
1009
               <xs:documentation>
1010
                  <p>Controls the limits applied to <code>minOccurs</code> and <code>maxOccurs</code>
1011
                values in XSD content models.</p>
1012
               </xs:documentation>
1013
            </xs:annotation>
1014
         </xs:attribute>
1015
         <xs:attribute name="schemaUriResolver" use="optional" type="c:javaClassNameType">
1016
            <xs:annotation>
1017
               <xs:documentation>
1018
                  <p>Controls the handling of URIs in <code>xs:include</code>, <code>xs:import</code> etc.
1019
                declarations, and also in <code>xsi:schemaLocation</code>. </p>
1020
               </xs:documentation>
1021
            </xs:annotation>
1022
         </xs:attribute>
1023
         <xs:attribute name="thresholdForCompilingTypes"
1024
                       use="optional"
1025
                       type="xs:nonNegativeInteger">
1026
            <xs:annotation>
1027
               <xs:documentation>
1028
                  <p>Indicates how often an XSD simple type definition must be used before Saxon generates
1029
                bytecode to implement validation of input data against that type.</p>
1030
               </xs:documentation>
1031
            </xs:annotation>
1032
         </xs:attribute>
1033
         <xs:attribute name="useXsiSchemaLocation" use="optional" type="xs:boolean">
1034
            <xs:annotation>
1035
               <xs:documentation>
1036
                  <p>Indicates whether the schema processor takes account of
1037
                    <code>xsi:schemaLocation</code> and <code>xsi:noNamespaceSchemaLocation</code>
1038
                attributes appearing in the instance document.</p>
1039
               </xs:documentation>
1040
            </xs:annotation>
1041
         </xs:attribute>
1042
         <xs:attribute name="version" use="optional" type="xs:decimal">
1043
            <xs:annotation>
1044
               <xs:documentation>
1045
                  <p>Indicates whether XSD 1.1 syntax is accepted.</p>
1046
               </xs:documentation>
1047
            </xs:annotation>
1048
         </xs:attribute>
1049
      </xs:complexType>
1050
   </xs:element>
1051

  
1052
   <xs:element name="serialization">
1053
      <xs:annotation>
1054
         <xs:documentation> Defines defaults for serialization properties. </xs:documentation>
1055
      </xs:annotation>
1056
      <xs:complexType>
1057
         <xs:attribute name="allow-duplicate-names" use="optional" type="c:yesOrNoType">
1058
            <xs:annotation>
1059
               <xs:documentation>
1060
                  <p>Used only for JSON output. Determines whether duplicate keys with the
1061
                same string value are allowed in a JSON map; if not an error is raised.</p>
1062
               </xs:documentation>
1063
            </xs:annotation>
1064
         </xs:attribute>
1065
         <xs:attribute name="byte-order-mark" use="optional" type="c:yesOrNoType">
1066
            <xs:annotation>
1067
               <xs:documentation>
1068
                  <p>Indicates whether serialized output should include a byte order mark.</p>
1069
               </xs:documentation>
1070
            </xs:annotation>
1071
         </xs:attribute>
1072
         <xs:attribute name="cdata-section-elements"
1073
                       use="optional"
1074
                       type="c:listOfQNameType">
1075
            <xs:annotation>
1076
               <xs:documentation>
1077
                  <p>A list of element names whose content is to be serialized using CDATA sections.</p>
1078
               </xs:documentation>
1079
            </xs:annotation>
1080
         </xs:attribute>
1081
         <xs:attribute name="doctype-public" use="optional" type="xs:string">
1082
            <xs:annotation>
1083
               <xs:documentation>
1084
                  <p>The public identifier to be used in the DOCTYPE declaration.</p>
1085
               </xs:documentation>
1086
            </xs:annotation>
1087
         </xs:attribute>
1088
         <xs:attribute name="doctype-system" use="optional" type="xs:anyURI">
1089
            <xs:annotation>
1090
               <xs:documentation>
1091
                  <p>The system identifier (URI) to be used in the DOCTYPE declaration.</p>
1092
               </xs:documentation>
1093
            </xs:annotation>
1094
         </xs:attribute>
1095
         <xs:attribute name="encoding" use="optional" type="xs:string">
1096
            <xs:annotation>
1097
               <xs:documentation>
1098
                  <p>The output encoding, for example utf-8 or us-ascii.</p>
1099
               </xs:documentation>
1100
            </xs:annotation>
1101
         </xs:attribute>
1102
         <xs:attribute name="escape-uri-attributes" use="optional" type="c:yesOrNoType">
1103
            <xs:annotation>
1104
               <xs:documentation>
1105
                  <p>Defines whether URI-valued attributes in HTML/XHTML (for example href)
1106
                are to be %HH-encoded.</p>
1107
               </xs:documentation>
1108
            </xs:annotation>
1109
         </xs:attribute>
1110
         <xs:attribute name="html-version" use="optional" type="xs:decimal">
1111
            <xs:annotation>
1112
               <xs:documentation>
1113
                  <p>When the output method is HTML or XHTML, then if this attribute takes 
1114
                decimal value 5.0, then the output produced is HTML 5.0 or XHTML 5.0 respectively.</p>
1115
               </xs:documentation>
1116
            </xs:annotation>
1117
         </xs:attribute>
1118
         <xs:attribute name="include-content-type" use="optional" type="c:yesOrNoType">
1119
            <xs:annotation>
1120
               <xs:documentation>
1121
                  <p>Defines whether a &lt;meta&gt; element should be added to the
1122
                HTML &lt;head&gt; element to identify the media type of the output.</p>
1123
               </xs:documentation>
1124
            </xs:annotation>
1125
         </xs:attribute>
1126
         <xs:attribute name="indent" use="optional" type="c:yesOrNoType">
1127
            <xs:annotation>
1128
               <xs:documentation>
1129
                  <p>Defines whether indentation is to be added to the output.</p>
1130
               </xs:documentation>
1131
            </xs:annotation>
1132
         </xs:attribute>
1133
         <xs:attribute name="item-separator" use="optional" type="xs:string">
1134
            <xs:annotation>
1135
               <xs:documentation>
1136
                  <p>Defines separator to be used between items in serialized output.</p>
1137
               </xs:documentation>
1138
            </xs:annotation>
1139
         </xs:attribute>
1140
         <xs:attribute name="json-node-output-method" use="optional" type="xs:QName">
1141
            <xs:annotation>
1142
               <xs:documentation>
1143
                  <p>Used only for JSON output. Defines the serialization method for nodes, 
1144
                for example 'xml' or 'html' or 'text'.</p>
1145
               </xs:documentation>
1146
            </xs:annotation>
1147
         </xs:attribute>
1148
         <xs:attribute name="media-type" use="optional" type="xs:string">
1149
            <xs:annotation>
1150
               <xs:documentation>
1151
                  <p>Defines the media type (MIME type) of the output.</p>
1152
               </xs:documentation>
1153
            </xs:annotation>
1154
         </xs:attribute>
1155
         <xs:attribute name="method" use="optional" type="xs:QName">
1156
            <xs:annotation>
1157
               <xs:documentation>
1158
                  <p>Defines the serialization method, for example 'xml' or 'html' or 'text'.</p>
1159
               </xs:documentation>
1160
            </xs:annotation>
1161
         </xs:attribute>
1162
         <xs:attribute name="normalization-form" use="optional" type="xs:string">
1163
            <xs:annotation>
1164
               <xs:documentation>
1165
                  <p>Defines whether Unicode normalization should be applied during serialization,
1166
                and if so, which Unicode normalization form should be used.</p>
1167
               </xs:documentation>
1168
            </xs:annotation>
1169
         </xs:attribute>
1170
         <xs:attribute name="omit-xml-declaration" use="optional" type="c:yesOrNoType">
1171
            <xs:annotation>
1172
               <xs:documentation>
1173
                  <p>Defines whether the XML declaration should be omitted from XML output.</p>
1174
               </xs:documentation>
1175
            </xs:annotation>
1176
         </xs:attribute>
1177
         <xs:attribute name="standalone" use="optional" type="c:yesOrNoOrOmitType">
1178
            <xs:annotation>
1179
               <xs:documentation>
1180
                  <p>Defines whether the XML declaration in XML output should have a 'standalone' attribute.</p>
1181
               </xs:documentation>
1182
            </xs:annotation>
1183
         </xs:attribute>
1184
         <xs:attribute name="suppress-indentation" use="optional" type="c:listOfQNameType">
1185
            <xs:annotation>
1186
               <xs:documentation>
1187
                  <p>Defines a list of element names whose content should not be indented
1188
                even when indent='yes' is specified.</p>
1189
               </xs:documentation>
1190
            </xs:annotation>
1191
         </xs:attribute>
1192
         <xs:attribute name="undeclare-prefixes" use="optional" type="c:yesOrNoType">
1193
            <xs:annotation>
1194
               <xs:documentation>
1195
                  <p>Defines whether namespaces present on a parent element but not on
1196
                its children should be undeclared using XML Namespaces 1.1 syntax.</p>
1197
               </xs:documentation>
1198
            </xs:annotation>
1199
         </xs:attribute>
1200
         <xs:attribute name="use-character-maps" use="optional" type="c:listOfQNameType">
1201
            <xs:annotation>
1202
               <xs:documentation>
1203
                  <p>Defines a list of the names of character maps which will be 
1204
                applied to transform individual characters during serialization.</p>
1205
               </xs:documentation>
1206
            </xs:annotation>
1207
         </xs:attribute>
1208
         <xs:attribute name="version" use="optional" type="xs:string">
1209
            <xs:annotation>
1210
               <xs:documentation>
1211
                  <p>Defines the version of XML or HTML to be used for the output.</p>
1212
               </xs:documentation>
1213
            </xs:annotation>
1214
         </xs:attribute>
1215
         <xs:anyAttribute namespace="##other" processContents="lax"/>
1216
      </xs:complexType>
1217
   </xs:element>
1218

  
1219
   <xs:element name="resources">
1220
      <xs:annotation>
1221
         <xs:documentation> Defines additional classes available for integration purposes.
284 1222
      </xs:documentation>
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff