Project

Profile

Help

How to connect?
Download (42.3 KB) Statistics
| Branch: | Tag: | Revision:

he / tags / 9.8.0.12 / samples / config / config.xsd @ c74fd4aa

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
28
            the base URI of the configuration file. When made absolute, it must use the "file" URI
29
            scheme. 
30
          </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
36
            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="optimizationLevel" use="optional" type="xs:integer"/>
80
      <xs:attribute name="parser" use="optional" type="c:javaClassNameType"/>
81
      <xs:attribute name="preEvaluateDoc" use="optional" type="xs:boolean"/>
82
      <xs:attribute name="preferJaxpParser" use="optional" type="xs:boolean"/>
83
      <xs:attribute name="recognizeUriQueryParameters" use="optional" type="xs:boolean"/>
84
      <xs:attribute name="schemaValidation" use="optional" type="c:schemaValidationType"/>
85
      <xs:attribute name="serializerFactory" use="optional" type="c:javaClassNameType"/>
86
      <xs:attribute name="sourceResolver" use="optional" type="c:javaClassNameType"/>
87
      <xs:attribute name="stableCollectionUri" use="optional" type="xs:boolean"/>
88
      <xs:attribute name="stableUnparsedText" use="optional" type="xs:boolean"/>
89
      <xs:attribute name="standardErrorOutputFile" use="optional" type="c:fileNameType"/>
90
      <xs:attribute name="streamability" use="optional" type="c:streamabilityType"/>
91
      <xs:attribute name="streamingFallback" use="optional" type="xs:boolean"/>
92
      <xs:attribute name="stripSpace" use="optional" type="c:stripSpaceType"/>
93
      <xs:attribute name="styleParser" use="optional" type="c:javaClassNameType"/>
94
      <xs:attribute name="suppressEvaluationExpiryWarning" use="optional" type="xs:boolean"/>
95
      <xs:attribute name="suppressXPathWarnings" use="optional" type="xs:boolean"/>
96
      <xs:attribute name="suppressXsltNamespaceCheck" use="optional" type="xs:boolean"/>
97
      <xs:attribute name="timing" use="optional" type="xs:boolean"/>
98
      <xs:attribute name="traceExternalFunctions" use="optional" type="xs:boolean"/>
99
      <xs:attribute name="traceListener" use="optional" type="c:javaClassNameType"/>
100
      <xs:attribute name="traceListenerOutputFile" use="optional" type="c:fileNameType"/>
101
      <xs:attribute name="traceOptimizerDecisions" use="optional" type="xs:boolean"/>
102
      <xs:attribute name="treeModel" use="optional" type="c:treeModelType"/>
103
      <xs:attribute name="unparsedTextURIResolver" use="optional" type="c:javaClassNameType"/>
104
      <xs:attribute name="uriResolver" use="optional" type="c:javaClassNameType"/>
105
      <xs:attribute name="usePiDisableOutputEscaping" use="optional" type="xs:boolean"/>
106
      <xs:attribute name="useTypedValueCache" use="optional" type="xs:boolean"/>
107
      <xs:attribute name="validationComments" use="optional" type="xs:boolean"/>
108
      <xs:attribute name="validationWarnings" use="optional" type="xs:boolean"/>
109
      <xs:attribute name="versionOfXml" use="optional" type="xs:decimal"/>
110
      <xs:attribute name="xInclude" use="optional" type="xs:boolean"/>
111
    </xs:complexType>
112
  </xs:element>
113

    
114
  <xs:element name="xslt">
115
    <xs:annotation>
116
      <xs:documentation> Defines configuration properties specific to XSLT processing.
117
      </xs:documentation>
118
    </xs:annotation>
119
    <xs:complexType>
120
      <xs:sequence>
121
        <xs:element ref="c:extensionElement" minOccurs="0" maxOccurs="unbounded"/>
122
      </xs:sequence>
123
      <xs:attribute name="disableXslEvaluate" use="optional" type="xs:boolean"/>
124
      <xs:attribute name="enableAssertions" use="optional" type="xs:boolean"/>
125
      <xs:attribute name="initialMode" use="optional" type="c:EQName"/>
126
      <xs:attribute name="initialTemplate" use="optional" type="c:EQName"/>
127
      <xs:attribute name="messageEmitter" use="optional" type="c:javaClassNameType"/>
128
      <xs:attribute name="outputUriResolver" use="optional" type="c:javaClassNameType"/>
129
      <xs:attribute name="recoveryPolicy" use="optional" type="c:recoveryPolicyType"/>
130
      <xs:attribute name="resultDocumentThreads" use="optional" type="xs:integer"/>
131
      <xs:attribute name="schemaAware" use="optional" type="xs:boolean"/>
132
      <xs:attribute name="staticErrorListener" use="optional" type="c:javaClassNameType"/>
133
      <xs:attribute name="staticUriResolver" use="optional" type="c:javaClassNameType"/>
134
      <xs:attribute name="strictStreamability" use="optional" type="xs:boolean"/>
135
      <xs:attribute name="styleParser" use="optional" type="c:javaClassNameType"/>
136
      <xs:attribute name="version" use="optional" type="xs:decimal"/>
137
      <xs:attribute name="versionWarning" use="optional" type="xs:boolean"/>
138
    </xs:complexType>
139
  </xs:element>
140

    
141
  <xs:element name="extensionElement">
142
    <xs:annotation>
143
      <xs:documentation> Describes a user-supplied library of XSLT extension instructions.
144
      </xs:documentation>
145
    </xs:annotation>
146
    <xs:complexType>
147
      <xs:attribute name="factory" use="optional" type="c:javaClassNameType">
148
        <xs:annotation>
149
          <xs:documentation> The Java class that implements the extension instructions.
150
          </xs:documentation>
151
        </xs:annotation>
152
      </xs:attribute>
153
      <xs:attribute name="namespace" use="optional" type="xs:anyURI">
154
        <xs:annotation>
155
          <xs:documentation> The namespace URI of the extension instructions implemented by this
156
            extension library. </xs:documentation>
157
        </xs:annotation>
158
      </xs:attribute>
159
    </xs:complexType>
160
  </xs:element>
161
  
162
  <xs:element name="xsltPackages">
163
    <xs:annotation>
164
      <xs:documentation> Defines configuration properties specific to XSLT processing with packages.
165
      </xs:documentation>
166
    </xs:annotation>
167
    <xs:complexType>
168
      <xs:sequence>
169
        <xs:element ref="c:package" minOccurs="0" maxOccurs="unbounded"/>
170
      </xs:sequence>
171
    </xs:complexType>
172
  </xs:element>
173
  
174
  <xs:element name="package">
175
    <xs:annotation>
176
      <xs:documentation> Defines an XSLT 3.0 package, or version of a package.
177
      </xs:documentation>
178
    </xs:annotation>
179
    <xs:complexType>
180
      <xs:sequence>
181
        <xs:element ref="c:withParam" minOccurs="0" maxOccurs="unbounded"/>
182
      </xs:sequence>
183
      <xs:attribute name="name" use="required" type="xs:anyURI"/>
184
      <xs:attribute name="version" use="required" type="xs:string"/>
185
      <xs:attribute name="base" use="optional" type="xs:anyURI"/>
186
      <xs:attribute name="exportLocation" use="optional" type="xs:anyURI"/>
187
      <xs:attribute name="priority" use="optional" type="xs:integer"/>
188
      <xs:attribute name="shortName" use="optional" type="xs:string"/>
189
      <xs:attribute name="sourceLocation" use="optional" type="xs:anyURI"/>
190
    </xs:complexType>
191
  </xs:element>
192
  
193
  <xs:element name="withParam">
194
    <xs:annotation>
195
      <xs:documentation> Supplies values of static stylesheet parameters used during package
196
        compilation.
197
      </xs:documentation>
198
    </xs:annotation>
199
    <xs:complexType>
200
      <xs:attribute name="name" use="required" type="c:EQName"/>
201
      <xs:attribute name="select" use="required" type="c:exprType"/>
202
    </xs:complexType>
203
  </xs:element>
204

    
205
  <xs:element name="xquery">
206
    <xs:annotation>
207
      <xs:documentation> Defines configuration properties specific to XQuery processing.
208
      </xs:documentation>
209
    </xs:annotation>
210
    <xs:complexType>
211
      <xs:attribute name="allowUpdate" use="optional" type="xs:boolean"/>
212
      <xs:attribute name="constructionMode" use="optional" type="c:constructionModeType"/>
213
      <xs:attribute name="defaultElementNamespace" use="optional" type="xs:anyURI"/>
214
      <xs:attribute name="defaultFunctionNamespace" use="optional" type="xs:anyURI"/>
215
      <xs:attribute name="emptyLeast" use="optional" type="xs:boolean"/>
216
      <xs:attribute name="inheritNamespaces" use="optional" type="xs:boolean"/>
217
      <xs:attribute name="moduleUriResolver" use="optional" type="c:javaClassNameType"/>
218
      <xs:attribute name="multipleModuleImports" use="optional" type="xs:boolean"/>
219
      <xs:attribute name="preserveBoundarySpace" use="optional" type="xs:boolean"/>
220
      <xs:attribute name="preserveNamespaces" use="optional" type="xs:boolean"/>
221
      <xs:attribute name="requiredContextItemType" use="optional" type="c:itemTypeType"/>
222
      <xs:attribute name="schemaAware" use="optional" type="xs:boolean"/>
223
      <xs:attribute name="staticErrorListener" use="optional" type="c:javaClassNameType"/>
224
      <xs:attribute name="version" use="optional" type="xs:decimal"/>
225
    </xs:complexType>
226
  </xs:element>
227

    
228
  <xs:element name="xsd">
229
    <xs:annotation>
230
      <xs:documentation> Defines configuration properties specific to XML Schema processing.
231
      </xs:documentation>
232
    </xs:annotation>
233
    <xs:complexType>
234
      <xs:attribute name="assertionsCanSeeComments" use="optional" type="xs:boolean"/>
235
      <xs:attribute name="implicitSchemaImports" use="optional" type="xs:boolean"/>
236
      <xs:attribute name="multipleSchemaImports" use="optional" type="xs:boolean"/>
237
      <xs:attribute name="occurrenceLimits" use="optional" type="c:occurrenceLimitsType"/>
238
      <xs:attribute name="schemaUriResolver" use="optional" type="c:javaClassNameType"/>
239
      <xs:attribute name="thresholdForCompilingTypes" use="optional" type="xs:nonNegativeInteger"/>   
240
      <xs:attribute name="useXsiSchemaLocation" use="optional" type="xs:boolean"/>
241
      <xs:attribute name="version" use="optional" type="xs:decimal"/>
242
    </xs:complexType>
243
  </xs:element>
244
  
245
  <xs:element name="serialization">
246
    <xs:annotation>
247
      <xs:documentation> Defines defaults for serialization properties. </xs:documentation>
248
    </xs:annotation>
249
    <xs:complexType>
250
      <xs:attribute name="allow-duplicate-names" use="optional" type="c:yesOrNoType"/>
251
      <xs:attribute name="byte-order-mark" use="optional" type="c:yesOrNoType"/>
252
      <xs:attribute name="cdata-section-elements" use="optional" type="c:listOfQNameType"/>
253
      <xs:attribute name="doctype-public" use="optional" type="xs:string"/>
254
      <xs:attribute name="doctype-system" use="optional" type="xs:anyURI"/>
255
      <xs:attribute name="encoding" use="optional" type="xs:string"/>
256
      <xs:attribute name="escape-uri-attributes" use="optional" type="c:yesOrNoType"/>
257
      <xs:attribute name="html-version" use="optional" type="xs:decimal"/>
258
      <xs:attribute name="include-content-type" use="optional" type="c:yesOrNoType"/>
259
      <xs:attribute name="indent" use="optional" type="c:yesOrNoType"/>
260
      <xs:attribute name="item-separator" use="optional" type="xs:string"/>
261
      <xs:attribute name="json-node-output-method" use="optional" type="xs:QName"/>
262
      <xs:attribute name="media-type" use="optional" type="xs:string"/>
263
      <xs:attribute name="method" use="optional" type="xs:QName"/>
264
      <xs:attribute name="normalization-form" use="optional" type="xs:string"/>
265
      <xs:attribute name="omit-xml-declaration" use="optional" type="c:yesOrNoType"/>
266
      <xs:attribute name="standalone" use="optional" type="c:yesOrNoOrOmitType"/>
267
      <xs:attribute name="suppress-indentation" use="optional" type="c:listOfQNameType"/>
268
      <xs:attribute name="undeclare-prefixes" use="optional" type="c:yesOrNoType"/>
269
      <xs:attribute name="use-character-maps" use="optional" type="c:listOfQNameType"/>
270
      <xs:attribute name="version" use="optional" type="xs:string"/>
271
      <xs:anyAttribute namespace="##other" processContents="lax"/>
272
    </xs:complexType>
273
  </xs:element>
274
  
275
  <xs:element name="resources">
276
    <xs:annotation>
277
      <xs:documentation> Defines additional classes available for integration purposes.
278
      </xs:documentation>
279
    </xs:annotation>
280
    <xs:complexType>
281
      <xs:choice minOccurs="0" maxOccurs="unbounded">
282
        <xs:element ref="c:externalObjectModel"/>
283
        <xs:element ref="c:extensionFunction"/>
284
        <xs:element ref="c:fileExtension"/>
285
        <xs:element ref="c:schemaDocument"/>
286
        <xs:element ref="c:schemaComponentModel"/>
287
      </xs:choice>
288
    </xs:complexType>
289
  </xs:element>
290
  
291
  <xs:element name="externalObjectModel" type="c:javaClassNameType">
292
    <xs:annotation>
293
      <xs:documentation> Defines an external object model (tree representation). The content is the
294
        name of a Java class that implements <code>net.sf.saxon.lib.ExternalObjectModel</code>.
295
      </xs:documentation>
296
    </xs:annotation>
297
  </xs:element>
298
  
299
  <xs:element name="extensionFunction" type="c:javaClassNameType">
300
    <xs:annotation>
301
      <xs:documentation> Defines an external function, implemented in Java, that can be called from
302
        within an XPath expression. The content is the name of a Java class that implements
303
        <code>net.sf.saxon.lib.ExtensionFunctionDefinition</code>. </xs:documentation>
304
    </xs:annotation>
305
  </xs:element>
306
  
307
  <xs:element name="fileExtension">
308
    <xs:annotation>
309
      <xs:documentation> Defines a mapping from file extensions to media types. </xs:documentation>
310
    </xs:annotation>
311
    <xs:complexType>
312
      <xs:attribute name="extension" use="required" type="xs:string">
313
        <xs:annotation>
314
          <xs:documentation> A file extension, for example "xq". </xs:documentation>
315
        </xs:annotation>
316
      </xs:attribute>
317
      <xs:attribute name="mediaType" use="required" type="xs:string">
318
        <xs:annotation>
319
          <xs:documentation> A media type corresponding to the file extension, for example
320
            "text/plain". The media types that are recognised by default are: application/xml,
321
            text/xml, application/html, text/html, application/atom, application/xml+xslt, and
322
            application/xml+xsd (which return an XML node); text/plain, and application/java (which
323
            return a string); application/binary (returns base64Binary); and application/json
324
            (returns the result of parsing the JSON, typically a map or array).</xs:documentation>
325
        </xs:annotation>
326
      </xs:attribute>
327
    </xs:complexType>
328
  </xs:element>
329
  
330
  <xs:element name="schemaDocument" type="xs:anyURI">
331
    <xs:annotation>
332
      <xs:documentation> Provides the location of a schema document that will be preloaded into the
333
        configuration and made available to all queries and stylesheets. </xs:documentation>
334
    </xs:annotation>
335
  </xs:element>
336
  
337
  <xs:element name="schemaComponentModel" type="xs:anyURI">
338
    <xs:annotation>
339
      <xs:documentation> Provides the location of a schema in Saxon's SCM format that will be
340
        preloaded into the configuration and made available to all queries and stylesheets.
341
      </xs:documentation>
342
    </xs:annotation>
343
  </xs:element>
344
  
345
  <xs:element name="collations">
346
    <xs:annotation>
347
      <xs:documentation> Defines collation URIs for use in queries and stylesheets.
348
      </xs:documentation>
349
    </xs:annotation>
350
    <xs:complexType>
351
      <xs:sequence>
352
        <xs:element maxOccurs="unbounded" ref="c:collation"/>
353
      </xs:sequence>
354
    </xs:complexType>
355
  </xs:element>
356
  
357
  <xs:element name="collation">
358
    <xs:annotation>
359
      <xs:documentation> Defines a collation URI for use in queries and stylesheets.
360
      </xs:documentation>
361
    </xs:annotation>
362
    <xs:complexType>
363
      <xs:attribute name="uri" use="required" type="xs:anyURI">
364
        <xs:annotation>
365
          <xs:documentation> The collation URI as used in queries and stylesheets.
366
          </xs:documentation>
367
        </xs:annotation>
368
      </xs:attribute>
369
      <xs:attribute name="alphanumeric" use="optional" type="c:yesOrNoOrCodepointType">
370
        <xs:annotation>
371
          <xs:documentation> Indicates whether a sequence of digits within a string is to be treated
372
            as a number, so that AB100 sorts after AB99. </xs:documentation>
373
        </xs:annotation>
374
      </xs:attribute>
375
      <xs:attribute name="case-order" use="optional" type="c:caseOrderType">
376
        <xs:annotation>
377
          <xs:documentation> Indicates whether lower-case letters sort before or after upper-case.
378
          </xs:documentation>
379
        </xs:annotation>
380
      </xs:attribute>
381
      <xs:attribute name="class" use="optional" type="c:javaClassNameType">
382
        <xs:annotation>
383
          <xs:documentation> The name of a Java class that performs the string comparison.
384
          </xs:documentation>
385
        </xs:annotation>
386
      </xs:attribute>
387
      <xs:attribute name="decomposition" use="optional" type="c:decompositionType">
388
        <xs:annotation>
389
          <xs:documentation> Indicates whether composite (accented) Unicode characters should be
390
            decomposed before sorting. </xs:documentation>
391
        </xs:annotation>
392
      </xs:attribute>
393
      <xs:attribute name="ignore-case" use="optional" type="c:yesOrNoType">
394
        <xs:annotation>
395
          <xs:documentation> Indicates whether differences of case are to be ignored during
396
            comparisons. </xs:documentation>
397
        </xs:annotation>
398
      </xs:attribute>
399
      <xs:attribute name="ignore-modifiers" use="optional" type="c:yesOrNoType">
400
        <xs:annotation>
401
          <xs:documentation> Indicates whether modifiers (such as accents and diacritical marks) are
402
            to be ignored during comparisons. </xs:documentation>
403
        </xs:annotation>
404
      </xs:attribute>
405
      <xs:attribute name="ignore-symbols" use="optional" type="c:yesOrNoType">
406
        <xs:annotation>
407
          <xs:documentation> Indicates whether punctuation symbols are to be ignored during
408
            comparisons (.NET only). </xs:documentation>
409
        </xs:annotation>
410
      </xs:attribute>
411
      <xs:attribute name="ignore-width" use="optional" type="c:yesOrNoType">
412
        <xs:annotation>
413
          <xs:documentation> Indicates whether width differences between characters are to be
414
            ignored during comparisons. </xs:documentation>
415
        </xs:annotation>
416
      </xs:attribute>
417
      <xs:attribute name="lang" use="optional" type="xs:language">
418
        <xs:annotation>
419
          <xs:documentation> Indicates the natural language of the text, for example 'en' for
420
            English or 'de' for German. </xs:documentation>
421
        </xs:annotation>
422
      </xs:attribute>
423
      <xs:attribute name="rules" use="optional" type="xs:string">
424
        <xs:annotation>
425
          <xs:documentation> Provides detailed sorting rules in the format of the Java
426
            RuleBasedCollator class. </xs:documentation>
427
        </xs:annotation>
428
      </xs:attribute>
429
      <xs:attribute name="strength" use="optional" type="c:strengthType">
430
        <xs:annotation>
431
          <xs:documentation> The strength of the collation: primary, secondary, or tertiary. These
432
            terms are described in the Unicode Collation Algorithm. </xs:documentation>
433
        </xs:annotation>
434
      </xs:attribute>
435
    </xs:complexType>
436
  </xs:element>
437
  
438
  <xs:element name="localizations">
439
    <xs:annotation>
440
      <xs:documentation> Defines localization of the output of format-date(), format-number(), and
441
        xsl:number. Note this relates to Saxon's native localization and has no effect when ICU
442
        localization is used. </xs:documentation>
443
    </xs:annotation>
444
    <xs:complexType>
445
      <xs:sequence>
446
        <xs:element maxOccurs="unbounded" ref="c:localization"/>
447
      </xs:sequence>
448
      <xs:attribute name="defaultCountry" use="optional" type="xs:NCName">
449
        <xs:annotation>
450
          <xs:documentation> The default country code for format-date() and similar functions. For
451
            example 'FR' for France. </xs:documentation>
452
        </xs:annotation>
453
      </xs:attribute>
454
      <xs:attribute name="defaultLanguage" use="optional" type="xs:NCName">
455
        <xs:annotation>
456
          <xs:documentation> The default language code for format-date() and similar functions. For
457
            example 'en-GB' for British English. </xs:documentation>
458
        </xs:annotation>
459
      </xs:attribute>
460
    </xs:complexType>
461
  </xs:element>
462
  
463
  <xs:element name="localization">
464
    <xs:annotation>
465
      <xs:documentation> Defines localization of the output of format-date(), format-number(), and
466
        xsl:number for a specific language. </xs:documentation>
467
    </xs:annotation>
468
    <xs:complexType>
469
      <xs:attribute name="lang" use="required" type="xs:language">
470
        <xs:annotation>
471
          <xs:documentation> The language to which this localization applies, for example 'fr-CA'
472
            for Canadian French. </xs:documentation>
473
        </xs:annotation>
474
      </xs:attribute>
475
      <xs:attribute name="class" use="optional" type="c:javaClassNameType">
476
        <xs:annotation>
477
          <xs:documentation> The Java class used to perform the localization. </xs:documentation>
478
        </xs:annotation>
479
      </xs:attribute>
480
      <xs:anyAttribute namespace="##other" processContents="lax">
481
        <xs:annotation>
482
          <xs:documentation> Additional attributes are passed to the user-defined LocalizerFactory
483
            in a Properties object, the propety names are the local names of the attributes, and the
484
            namespace is ignored. </xs:documentation>
485
        </xs:annotation>
486
      </xs:anyAttribute>
487
    </xs:complexType>
488
  </xs:element>
489
  
490

    
491
  <xs:simpleType name="constructionModeType">
492
    <xs:annotation>
493
      <xs:documentation>
494
        <p>Defines how an XQuery processor will handle whitespace in element constructors. One
495
          of: strip (whitespace in the query is ignored), preserve (whitespace in the query is
496
          copied to the result tree).</p>
497
      </xs:documentation>
498
    </xs:annotation>
499
    <xs:restriction base="xs:string">
500
      <xs:enumeration value="strip">
501
        <xs:annotation>
502
          <xs:documentation> Whitespace in element constructors is ignored </xs:documentation>
503
        </xs:annotation>
504
      </xs:enumeration>
505
      <xs:enumeration value="preserve">
506
        <xs:annotation>
507
          <xs:documentation> Whitespace in element constructors is copied to the result tree
508
          </xs:documentation>
509
        </xs:annotation>
510
      </xs:enumeration>
511
    </xs:restriction>
512
  </xs:simpleType>
513

    
514
  <xs:simpleType name="caseOrderType">
515
    <xs:annotation>
516
      <xs:documentation> Used for the case-order property of a collation: defines whether lower-case
517
        collates before or after upper-case, other things being equal. One of: upper-first,
518
        lower-first, #default. </xs:documentation>
519
    </xs:annotation>
520
    <xs:restriction base="xs:string">
521
      <xs:enumeration value="upper-first">
522
        <xs:annotation>
523
          <xs:documentation> Upper-case precedes lower-case in sort order </xs:documentation>
524
        </xs:annotation>
525
      </xs:enumeration>
526
      <xs:enumeration value="lower-first">
527
        <xs:annotation>
528
          <xs:documentation> Lower-case precedes upper-case in sort order </xs:documentation>
529
        </xs:annotation>
530
      </xs:enumeration>
531
      <xs:enumeration value="#default">
532
        <xs:annotation>
533
          <xs:documentation> This value imposes no constraints </xs:documentation>
534
        </xs:annotation>
535
      </xs:enumeration>
536
    </xs:restriction>
537
  </xs:simpleType>
538

    
539
  <xs:simpleType name="decompositionType">
540
    <xs:annotation>
541
      <xs:documentation> Used for the decomposition property of a collation: defines whether a
542
        string is converted to decomposed normal form before comparisons are made, and if so, which
543
        form is to be used. One of: none, standard, full. </xs:documentation>
544
    </xs:annotation>
545
    <xs:restriction base="xs:string">
546
      <xs:enumeration value="none">
547
        <xs:annotation>
548
          <xs:documentation> No decomposition of Unicode combining characters is performed before
549
            sorting </xs:documentation>
550
        </xs:annotation>
551
      </xs:enumeration>
552
      <xs:enumeration value="standard">
553
        <xs:annotation>
554
          <xs:documentation> Standard decomposition of Unicode combining characters is performed
555
            before sorting </xs:documentation>
556
        </xs:annotation>
557
      </xs:enumeration>
558
      <xs:enumeration value="full">
559
        <xs:annotation>
560
          <xs:documentation> Full decomposition of Unicode combining characters is performed before
561
            sorting </xs:documentation>
562
        </xs:annotation>
563
      </xs:enumeration>
564
    </xs:restriction>
565
  </xs:simpleType>
566

    
567
  <xs:simpleType name="editionType">
568
    <xs:annotation>
569
      <xs:documentation> Code describing a Saxon product edition. One of: HE (Home Edition), PE
570
        (Professional Edition), EE (Enterprise Edition). </xs:documentation>
571
    </xs:annotation>
572
    <xs:restriction base="xs:string">
573
      <xs:enumeration value="HE">
574
        <xs:annotation>
575
          <xs:documentation> Saxon Home Edition </xs:documentation>
576
        </xs:annotation>
577
      </xs:enumeration>
578
      <xs:enumeration value="PE">
579
        <xs:annotation>
580
          <xs:documentation> Saxon Professional Edition </xs:documentation>
581
        </xs:annotation>
582
      </xs:enumeration>
583
      <xs:enumeration value="EE">
584
        <xs:annotation>
585
          <xs:documentation> Saxon Enterprise Edition </xs:documentation>
586
        </xs:annotation>
587
      </xs:enumeration>
588
    </xs:restriction>
589
  </xs:simpleType>
590
  
591
  <xs:simpleType name="EQName">
592
    <xs:annotation>
593
      <xs:documentation> 
594
        <p>An extended QName. This may be either a local name, or a prefixed QName, or a name
595
          written using Clark notation (allowing either {uri}local or the extended QName notation
596
          Q{uri}local).</p>
597
      </xs:documentation>
598
    </xs:annotation>
599
    <xs:union memberTypes="xs:NCName xs:QName">
600
      <xs:simpleType>
601
        <xs:restriction base="xs:token">
602
          <xs:pattern value="Q?\{.*\}\i\c*"/>
603
        </xs:restriction>
604
      </xs:simpleType>
605
    </xs:union>
606
  </xs:simpleType>
607

    
608
  <xs:simpleType name="fileNameType">
609
    <xs:annotation>
610
      <xs:documentation> A file name, usually for output. Currently implemented simply as a string.
611
      </xs:documentation>
612
    </xs:annotation>
613
    <xs:restriction base="xs:string"/>
614
  </xs:simpleType>
615

    
616
  <xs:simpleType name="itemTypeType">
617
    <xs:annotation>
618
      <xs:documentation> An XPath item type, such as "item()", "node()", "element(*, xs:anyType)",
619
        or "xs:string". Currently implemented simply as a string. </xs:documentation>
620
    </xs:annotation>
621
    <xs:restriction base="xs:string">
622
      <xs:minLength value="1"/>
623
    </xs:restriction>
624
  </xs:simpleType>
625

    
626
  <xs:simpleType name="javaClassNameType">
627
    <xs:annotation>
628
      <xs:documentation> A fully-qualified Java class name: a sequence of identifiers separated by
629
        periods, where each identifier starts with a letter (or dollar or underscore), and continues
630
        with letters or digits (or dollar or underscore). The definition of "letter" used in this
631
        regular expression does not exactly match the Java definition, but the differences are
632
        unlikely to matter. May also be a zero-length string to indicate the default value.
633
      </xs:documentation>
634
    </xs:annotation>
635
    <xs:restriction base="xs:string">
636
      <xs:pattern value="(([\p{L}$_][\p{L}$_0-9]*)(\.[\p{L}$_][\p{L}$_0-9]*)*)?"/>
637
    </xs:restriction>
638
  </xs:simpleType>
639

    
640
  <xs:simpleType name="listOfQNameType">
641
    <xs:annotation>
642
      <xs:documentation> A space-separated list of QNames. Used in serialization parameters such as
643
        cdata-section-elements. </xs:documentation>
644
    </xs:annotation>
645
    <xs:list itemType="xs:QName"/>
646
  </xs:simpleType>
647

    
648
  <xs:simpleType name="occurrenceLimitsType">
649
    <xs:annotation>
650
      <xs:documentation> Highest values of minOccurs/maxOccurs for which accurate finite state
651
        automata should be generated during schema compilation. High limits can cause a large amount
652
        of memory to be used. Occurrence limits greater than these values may be non-strictly
653
        enforced. Format is a pair of integers, comma-separated. </xs:documentation>
654
    </xs:annotation>
655
    <xs:restriction base="xs:string">
656
      <xs:pattern value="[0-9]+,\s*[0-9]+"/>
657
    </xs:restriction>
658
  </xs:simpleType>
659

    
660
  <xs:simpleType name="recoveryPolicyType">
661
    <xs:annotation>
662
      <xs:documentation> Defines how an XSLT processor will handle recoverable errors. One of:
663
        recoverSilently (take the recovery action and continue silently), recoverWithWarnings
664
        (take the recovery action and continue with a warning), doNotRecover (terminate with a fatal
665
        error). </xs:documentation>
666
    </xs:annotation>
667
    <xs:restriction base="xs:string">
668
      <xs:enumeration value="recoverSilently">
669
        <xs:annotation>
670
          <xs:documentation> For XSLT recoverable dynamic errors, Saxon recovers silently
671
          </xs:documentation>
672
        </xs:annotation>
673
      </xs:enumeration>
674
      <xs:enumeration value="recoverWithWarnings">
675
        <xs:annotation>
676
          <xs:documentation> For XSLT recoverable dynamic errors, Saxon recovers but outputs a
677
            warning </xs:documentation>
678
        </xs:annotation>
679
      </xs:enumeration>
680
      <xs:enumeration value="doNotRecover">
681
        <xs:annotation>
682
          <xs:documentation> For XSLT recoverable dynamic errors, Saxon reports an error and does
683
            not recover </xs:documentation>
684
        </xs:annotation>
685
      </xs:enumeration>
686
    </xs:restriction>
687
  </xs:simpleType>
688
  
689
  <xs:simpleType name="regexEngineType">
690
    <xs:annotation>
691
      <xs:documentation>Identifies a regular expression engine</xs:documentation>
692
    </xs:annotation>
693
    <xs:restriction base="xs:string">
694
      <xs:enumeration value="S">
695
        <xs:annotation>
696
          <xs:documentation> 
697
            The Saxon regular expression engine
698
          </xs:documentation>
699
        </xs:annotation>
700
      </xs:enumeration>
701
      <xs:enumeration value="J">
702
        <xs:annotation>
703
          <xs:documentation> 
704
            The Java JDK regular expression engine
705
          </xs:documentation>
706
        </xs:annotation>
707
      </xs:enumeration>
708
      <xs:enumeration value="N">
709
        <xs:annotation>
710
          <xs:documentation> 
711
            The regular expression engine in Microsoft .NET
712
          </xs:documentation>
713
        </xs:annotation>
714
      </xs:enumeration>
715
    </xs:restriction>
716
  </xs:simpleType>
717

    
718
  <xs:simpleType name="schemaValidationType">
719
    <xs:annotation>
720
      <xs:documentation> A request for schema validation (or non-validation). One of: strict
721
        (validation must be performed), lax (validation performed if an element declaration is
722
        available), preserve (existing type annotations are retained), strip (no validation performed,
723
        existing type annotations are dropped). </xs:documentation>
724
    </xs:annotation>
725
    <xs:restriction base="xs:string">
726
      <xs:enumeration value="strict">
727
        <xs:annotation>
728
          <xs:documentation> Strict validation: an element declaration must be present and the
729
            instance must be valid </xs:documentation>
730
        </xs:annotation>
731
      </xs:enumeration>
732
      <xs:enumeration value="lax">
733
        <xs:annotation>
734
          <xs:documentation> Lax validation: if an element declaration is present then the instance
735
            must be valid </xs:documentation>
736
        </xs:annotation>
737
      </xs:enumeration>
738
      <xs:enumeration value="preserve">
739
        <xs:annotation>
740
          <xs:documentation> Existing type annotations are preserved when copying, no validation
741
            takes place </xs:documentation>
742
        </xs:annotation>
743
      </xs:enumeration>
744
      <xs:enumeration value="strip">
745
        <xs:annotation>
746
          <xs:documentation> Existing type annotations are discarded when copying, no validation
747
            takes place </xs:documentation>
748
        </xs:annotation>
749
      </xs:enumeration>
750
    </xs:restriction>
751
  </xs:simpleType>
752

    
753
  <xs:simpleType name="strengthType">
754
    <xs:annotation>
755
      <xs:documentation> Defines the values of the strength property of a collation. Defines which
756
        properties of a string are considered significant. One of: primary, secondary, tertiary, or
757
        identical. </xs:documentation>
758
    </xs:annotation>
759
    <xs:restriction base="xs:string">
760
      <xs:enumeration value="primary"/>
761
      <xs:enumeration value="secondary"/>
762
      <xs:enumeration value="tertiary"/>
763
      <xs:enumeration value="identical"/>
764
    </xs:restriction>
765
  </xs:simpleType>
766

    
767
  <xs:simpleType name="streamabilityType">
768
    <xs:annotation>
769
      <xs:documentation> Determines the test that Saxon applies to determine whether a construct is
770
        streamable, in cases where streaming is requested. One of: off, standard, extended.
771
      </xs:documentation>
772
    </xs:annotation>
773
    <xs:restriction base="xs:string">
774
      <xs:enumeration value="off">
775
        <xs:annotation>
776
          <xs:documentation> All constructs are treated as non-streamable. This is the only option
777
            available when using a Saxon version or license that does not enable streaming.
778
          </xs:documentation>
779
        </xs:annotation>
780
      </xs:enumeration>
781
      <xs:enumeration value="standard">
782
        <xs:annotation>
783
          <xs:documentation> Saxon applies the rules in the W3C XSLT 3.0 specification as closely as
784
            possible. (Exact compliance is not always possible.) </xs:documentation>
785
        </xs:annotation>
786
      </xs:enumeration>
787
      <xs:enumeration value="extended">
788
        <xs:annotation>
789
          <xs:documentation> Use of Saxon streaming extensions is permitted. This is the default
790
            when using Saxon-EE with a suitable license. </xs:documentation>
791
        </xs:annotation>
792
      </xs:enumeration>
793
    </xs:restriction>
794
  </xs:simpleType>
795

    
796
  <xs:simpleType name="stripSpaceType">
797
    <xs:annotation>
798
      <xs:documentation> Option for stripping whitespace in source documents. One of: all (all
799
        whitespace text nodes are removed, unless xml:space="preserve" is present), none (no
800
        whitespace text nodes are removed), ignorable (whitespace text nodes in element-only
801
        content (identified by schema or DTD) are stripped) </xs:documentation>
802
    </xs:annotation>
803
    <xs:restriction base="xs:string">
804
      <xs:enumeration value="all">
805
        <xs:annotation>
806
          <xs:documentation> All whitespace-only text nodes are removed from the source document
807
          </xs:documentation>
808
        </xs:annotation>
809
      </xs:enumeration>
810
      <xs:enumeration value="none">
811
        <xs:annotation>
812
          <xs:documentation> No whitespace-only text nodes are removed from the source document
813
          </xs:documentation>
814
        </xs:annotation>
815
      </xs:enumeration>
816
      <xs:enumeration value="ignorable">
817
        <xs:annotation>
818
          <xs:documentation> Whitespace-only text nodes are removed from the source document if the
819
            containing element is described in a DTD or schema as having element-only content
820
          </xs:documentation>
821
        </xs:annotation>
822
      </xs:enumeration>
823
    </xs:restriction>
824
  </xs:simpleType>
825

    
826
  <xs:simpleType name="treeModelType">
827
    <xs:annotation>
828
      <xs:documentation> Choice of XDM tree model implementation for representing source documents.
829
        One of: linkedTree (mutable tree using one Java object per node), tinyTree (compact
830
        immutable tree, the default), tinyTreeCondensed (tinyTree with extra compression of text and
831
        attribute values) </xs:documentation>
832
    </xs:annotation>
833
    <xs:restriction base="xs:string">
834
      <xs:enumeration value="linkedTree">
835
        <xs:annotation>
836
          <xs:documentation> Saxon linked tree implementation (one object per node). Useful for
837
            XQuery update. </xs:documentation>
838
        </xs:annotation>
839
      </xs:enumeration>
840
      <xs:enumeration value="tinyTree">
841
        <xs:annotation>
842
          <xs:documentation> Saxon tiny tree implementation: the default choice. A compact tree
843
            offering fast navigation. </xs:documentation>
844
        </xs:annotation>
845
      </xs:enumeration>
846
      <xs:enumeration value="tinyTreeCondensed">
847
        <xs:annotation>
848
          <xs:documentation> Saxon condensed tiny tree implementation: reduces memory usage but
849
            takes longer to build; no performance penalty during tree navigation.
850
          </xs:documentation>
851
        </xs:annotation>
852
      </xs:enumeration>
853
    </xs:restriction>
854
  </xs:simpleType>
855

    
856
  <xs:simpleType name="yesOrNoType">
857
    <xs:annotation>
858
      <xs:documentation> Used for serialization parameters, and for collation parameters. One of:
859
        yes, no. </xs:documentation>
860
    </xs:annotation>
861
    <xs:restriction base="xs:string">
862
      <xs:enumeration value="yes">
863
        <xs:annotation>
864
          <xs:documentation> Sets the option on. </xs:documentation>
865
        </xs:annotation>
866
      </xs:enumeration>
867
      <xs:enumeration value="no">
868
        <xs:annotation>
869
          <xs:documentation> Sets the option off. </xs:documentation>
870
        </xs:annotation>
871
      </xs:enumeration>
872
    </xs:restriction>
873
  </xs:simpleType>
874

    
875
  <xs:simpleType name="yesOrNoOrOmitType">
876
    <xs:annotation>
877
      <xs:documentation> Used for "standalone" serialization parameter. One of: yes, no, omit.
878
      </xs:documentation>
879
    </xs:annotation>
880
    <xs:restriction base="xs:string">
881
      <xs:enumeration value="yes">
882
        <xs:annotation>
883
          <xs:documentation> Sets standalone="yes" in the XML declaration. </xs:documentation>
884
        </xs:annotation>
885
      </xs:enumeration>
886
      <xs:enumeration value="no">
887
        <xs:annotation>
888
          <xs:documentation> Sets standalone="no" in the XML declaration. </xs:documentation>
889
        </xs:annotation>
890
      </xs:enumeration>
891
      <xs:enumeration value="omit">
892
        <xs:annotation>
893
          <xs:documentation> There will be no 'standalone' attribute in the XML declaration.
894
          </xs:documentation>
895
        </xs:annotation>
896
      </xs:enumeration>
897
    </xs:restriction>
898
  </xs:simpleType>
899

    
900
  <xs:simpleType name="yesOrNoOrCodepointType">
901
    <xs:annotation>
902
      <xs:documentation> Used for "alphanumeric" property of a collation. One of: yes, no,
903
        codepoint. </xs:documentation>
904
    </xs:annotation>
905
    <xs:restriction base="xs:string">
906
      <xs:enumeration value="yes">
907
        <xs:annotation>
908
          <xs:documentation> Selects a collation in which a sequence of digits is treated as a
909
            number: AA100 sorts after AA99 </xs:documentation>
910
        </xs:annotation>
911
      </xs:enumeration>
912
      <xs:enumeration value="no">
913
        <xs:annotation>
914
          <xs:documentation> Selects a collation in which digits are sorted as individual
915
            characters: AA100 sorts before AA99 </xs:documentation>
916
        </xs:annotation>
917
      </xs:enumeration>
918
      <xs:enumeration value="codepoint">
919
        <xs:annotation>
920
          <xs:documentation> Selects a collation in which a sequence of digits is treated as a
921
            number (AA100 sorts after AA99), and other characters are sorted by Unicode codepoint
922
            value </xs:documentation>
923
        </xs:annotation>
924
      </xs:enumeration>
925
    </xs:restriction>
926
  </xs:simpleType>
927
  
928
  <xs:simpleType name="exprType">
929
    <xs:annotation>
930
      <xs:documentation>Type for XPath expressions</xs:documentation>
931
    </xs:annotation>
932
    <xs:restriction base="xs:string"/>
933
  </xs:simpleType>
934

    
935
</xs:schema>
(4-4/5)