Project

Profile

Help

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

he / src / samples / config / config-raw.xsd @ be17ef52

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:attribute name="targetEdition" type="xs:string">
40
        <xs:annotation>
41
          <xs:documentation>The target edition if export SEF files are to be used, for example
42
            targetEdition="JS". Specifically, this affects the recognition of extension namespaces
43
            (such as the IXSL namespace) when packages in the packageLibrary are compiled.</xs:documentation>
44
        </xs:annotation>
45
      </xs:attribute>
46
    </xs:complexType>
47
  </xs:element>
48
  
49
  <xs:element name="global">
50
    <xs:annotation>
51
      <xs:documentation> Defines properties of the global configuration. </xs:documentation>
52
    </xs:annotation>
53
    <xs:complexType>
54
      <xs:attribute name="allowedProtocols" use="optional" type="xs:string"/>  
55
      <xs:attribute name="allowExternalFunctions" use="optional" type="xs:boolean"/>
56
      <xs:attribute name="allowMultiThreading" use="optional" type="xs:boolean"/>
57
      <xs:attribute name="allowOldJavaUriFormat" use="optional" type="xs:boolean"/>
58
      <xs:attribute name="allowStreamabilityExtensions" use="optional" type="xs:boolean">
59
        <xs:annotation>
60
          <xs:documentation> Saxon 9.5 only. </xs:documentation>
61
        </xs:annotation>
62
      </xs:attribute>
63
      <xs:attribute name="allowSyntaxExtensions" use="optional" type="xs:boolean"/>    
64
      <xs:attribute name="collationUriResolver" use="optional" type="c:javaClassNameType"/>
65
      <xs:attribute name="collectionFinder" use="optional" type="c:javaClassNameType"/>
66
      <xs:attribute name="compileWithTracing" use="optional" type="xs:boolean"/>
67
      <xs:attribute name="debugByteCode" use="optional" type="xs:boolean"/>
68
      <xs:attribute name="debugByteCodeDirectory" use="optional" type="c:fileNameType"/>
69
      <xs:attribute name="defaultCollation" use="optional" type="xs:anyURI"/>
70
      <xs:attribute name="defaultCollection" use="optional" type="xs:anyURI"/>
71
      <xs:attribute name="defaultRegexEngine" use="optional" type="c:regexEngineType"/>
72
      <xs:attribute name="displayByteCode" use="optional" type="xs:boolean"/>
73
      <xs:attribute name="dtdValidation" use="optional" type="xs:boolean"/>
74
      <xs:attribute name="dtdValidationRecoverable" use="optional" type="xs:boolean"/>
75
      <xs:attribute name="eagerEvaluation" use="optional" type="xs:boolean"/>
76
      <xs:attribute name="entityResolver" use="optional" type="c:javaClassNameType"/>
77
      <xs:attribute name="environmentVariableResolver" use="optional" type="c:javaClassNameType"/>
78
      <xs:attribute name="errorListener" use="optional" type="c:javaClassNameType"/>
79
      <xs:attribute name="expandAttributeDefaults" use="optional" type="xs:boolean"/>
80
      <xs:attribute name="generateByteCode" use="optional" type="xs:boolean"/>
81
      <xs:attribute name="ignoreSAXSourceParser" use="optional" type="xs:boolean"/>
82
      <xs:attribute name="lazyConstructionMode" use="optional" type="xs:boolean"/>
83
      <xs:attribute name="lineNumbering" use="optional" type="xs:boolean"/>
84
      <xs:attribute name="markDefaultedAttributes" use="optional" type="xs:boolean"/>
85
      <xs:attribute name="maxCompiledClasses" use="optional" type="xs:nonNegativeInteger"/>
86
      <xs:attribute name="monitorHotSpotByteCode" use="optional" type="xs:boolean"/>
87
      <xs:attribute name="optimizationLevel" use="optional" type="xs:integer"/>
88
      <xs:attribute name="parser" use="optional" type="c:javaClassNameType"/>
89
      <xs:attribute name="preEvaluateDoc" use="optional" type="xs:boolean"/>
90
      <xs:attribute name="preferJaxpParser" use="optional" type="xs:boolean"/>
91
      <xs:attribute name="recognizeUriQueryParameters" use="optional" type="xs:boolean"/>
92
      <xs:attribute name="regexBacktrackingLimit" use="optional" type="xs:integer"/>
93
      <xs:attribute name="retainNodeForDiagnostics" use="optional" type="xs:boolean"/>
94
      <xs:attribute name="schemaValidation" use="optional" type="c:schemaValidationType"/>
95
      <xs:attribute name="serializerFactory" use="optional" type="c:javaClassNameType"/>
96
      <xs:attribute name="sourceResolver" use="optional" type="c:javaClassNameType"/>
97
      <xs:attribute name="stableCollectionUri" use="optional" type="xs:boolean"/>
98
      <xs:attribute name="stableUnparsedText" use="optional" type="xs:boolean"/>
99
      <xs:attribute name="standardErrorOutputFile" use="optional" type="c:fileNameType"/>
100
      <xs:attribute name="streamability" use="optional" type="c:streamabilityType"/>
101
      <xs:attribute name="streamingFallback" use="optional" type="xs:boolean"/>
102
      <xs:attribute name="stripSpace" use="optional" type="c:stripSpaceType"/>
103
      <xs:attribute name="styleParser" use="optional" type="c:javaClassNameType"/>
104
      <xs:attribute name="suppressEvaluationExpiryWarning" use="optional" type="xs:boolean"/>
105
      <xs:attribute name="suppressXPathWarnings" use="optional" type="xs:boolean"/>
106
      <xs:attribute name="suppressXsltNamespaceCheck" use="optional" type="xs:boolean"/>
107
      <xs:attribute name="thresholdForFunctionInlining" use="optional" type="xs:integer"/>
108
      <xs:attribute name="thresholdForHotspotByteCode" use="optional" type="xs:integer"/>
109
      <xs:attribute name="timing" use="optional" type="xs:boolean"/>
110
      <xs:attribute name="traceExternalFunctions" use="optional" type="xs:boolean"/>
111
      <xs:attribute name="traceListener" use="optional" type="c:javaClassNameType"/>
112
      <xs:attribute name="traceListenerOutputFile" use="optional" type="c:fileNameType"/>
113
      <xs:attribute name="traceOptimizerDecisions" use="optional" type="xs:boolean"/>
114
      <xs:attribute name="treeModel" use="optional" type="c:treeModelType"/>
115
      <xs:attribute name="unparsedTextURIResolver" use="optional" type="c:javaClassNameType"/>
116
      <xs:attribute name="uriResolver" use="optional" type="c:javaClassNameType"/>
117
      <xs:attribute name="usePiDisableOutputEscaping" use="optional" type="xs:boolean"/>
118
      <xs:attribute name="useTypedValueCache" use="optional" type="xs:boolean"/>
119
      <xs:attribute name="validationComments" use="optional" type="xs:boolean"/>
120
      <xs:attribute name="validationWarnings" use="optional" type="xs:boolean"/>
121
      <xs:attribute name="versionOfXml" use="optional" type="xs:decimal"/>
122
      <xs:attribute name="xInclude" use="optional" type="xs:boolean"/>
123
      <xs:attribute name="xpathVersionForXsd" use="optional" type="xs:integer"/>
124
      <xs:attribute name="xpathVersionForXslt" use="optional" type="xs:integer"/>
125
    </xs:complexType>
126
  </xs:element>
127

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

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

    
219
  <xs:element name="xquery">
220
    <xs:annotation>
221
      <xs:documentation> Defines configuration properties specific to XQuery processing.
222
      </xs:documentation>
223
    </xs:annotation>
224
    <xs:complexType>
225
      <xs:attribute name="allowUpdate" use="optional" type="xs:boolean"/>
226
      <xs:attribute name="constructionMode" use="optional" type="c:constructionModeType"/>
227
      <xs:attribute name="defaultElementNamespace" use="optional" type="xs:anyURI"/>
228
      <xs:attribute name="defaultFunctionNamespace" use="optional" type="xs:anyURI"/>
229
      <xs:attribute name="emptyLeast" use="optional" type="xs:boolean"/>
230
      <xs:attribute name="inheritNamespaces" use="optional" type="xs:boolean"/>
231
      <xs:attribute name="moduleUriResolver" use="optional" type="c:javaClassNameType"/>
232
      <xs:attribute name="multipleModuleImports" use="optional" type="xs:boolean"/>
233
      <xs:attribute name="preserveBoundarySpace" use="optional" type="xs:boolean"/>
234
      <xs:attribute name="preserveNamespaces" use="optional" type="xs:boolean"/>
235
      <xs:attribute name="requiredContextItemType" use="optional" type="c:itemTypeType"/>
236
      <xs:attribute name="schemaAware" use="optional" type="xs:boolean"/>
237
      <xs:attribute name="staticErrorListener" use="optional" type="c:javaClassNameType"/>
238
      <xs:attribute name="version" use="optional" type="xs:decimal"/>
239
    </xs:complexType>
240
  </xs:element>
241

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

    
505

    
506
  <xs:simpleType name="constructionModeType">
507
    <xs:annotation>
508
      <xs:documentation>
509
        <p>Defines how an XQuery processor will handle whitespace in element constructors. One
510
          of: strip (whitespace in the query is ignored), preserve (whitespace in the query is
511
          copied to the result tree).</p>
512
      </xs:documentation>
513
    </xs:annotation>
514
    <xs:restriction base="xs:string">
515
      <xs:enumeration value="strip">
516
        <xs:annotation>
517
          <xs:documentation> Whitespace in element constructors is ignored </xs:documentation>
518
        </xs:annotation>
519
      </xs:enumeration>
520
      <xs:enumeration value="preserve">
521
        <xs:annotation>
522
          <xs:documentation> Whitespace in element constructors is copied to the result tree
523
          </xs:documentation>
524
        </xs:annotation>
525
      </xs:enumeration>
526
    </xs:restriction>
527
  </xs:simpleType>
528

    
529
  <xs:simpleType name="caseOrderType">
530
    <xs:annotation>
531
      <xs:documentation> Used for the case-order property of a collation: defines whether lower-case
532
        collates before or after upper-case, other things being equal. One of: upper-first,
533
        lower-first, #default. </xs:documentation>
534
    </xs:annotation>
535
    <xs:restriction base="xs:string">
536
      <xs:enumeration value="upper-first">
537
        <xs:annotation>
538
          <xs:documentation> Upper-case precedes lower-case in sort order </xs:documentation>
539
        </xs:annotation>
540
      </xs:enumeration>
541
      <xs:enumeration value="lower-first">
542
        <xs:annotation>
543
          <xs:documentation> Lower-case precedes upper-case in sort order </xs:documentation>
544
        </xs:annotation>
545
      </xs:enumeration>
546
      <xs:enumeration value="#default">
547
        <xs:annotation>
548
          <xs:documentation> This value imposes no constraints </xs:documentation>
549
        </xs:annotation>
550
      </xs:enumeration>
551
    </xs:restriction>
552
  </xs:simpleType>
553

    
554
  <xs:simpleType name="decompositionType">
555
    <xs:annotation>
556
      <xs:documentation> Used for the decomposition property of a collation: defines whether a
557
        string is converted to decomposed normal form before comparisons are made, and if so, which
558
        form is to be used. One of: none, standard, full. </xs:documentation>
559
    </xs:annotation>
560
    <xs:restriction base="xs:string">
561
      <xs:enumeration value="none">
562
        <xs:annotation>
563
          <xs:documentation> No decomposition of Unicode combining characters is performed before
564
            sorting </xs:documentation>
565
        </xs:annotation>
566
      </xs:enumeration>
567
      <xs:enumeration value="standard">
568
        <xs:annotation>
569
          <xs:documentation> Standard decomposition of Unicode combining characters is performed
570
            before sorting </xs:documentation>
571
        </xs:annotation>
572
      </xs:enumeration>
573
      <xs:enumeration value="full">
574
        <xs:annotation>
575
          <xs:documentation> Full decomposition of Unicode combining characters is performed before
576
            sorting </xs:documentation>
577
        </xs:annotation>
578
      </xs:enumeration>
579
    </xs:restriction>
580
  </xs:simpleType>
581

    
582
  <xs:simpleType name="editionType">
583
    <xs:annotation>
584
      <xs:documentation> Code describing a Saxon product edition. One of: HE (Home Edition), PE
585
        (Professional Edition), EE (Enterprise Edition). </xs:documentation>
586
    </xs:annotation>
587
    <xs:restriction base="xs:string">
588
      <xs:enumeration value="HE">
589
        <xs:annotation>
590
          <xs:documentation> Saxon Home Edition </xs:documentation>
591
        </xs:annotation>
592
      </xs:enumeration>
593
      <xs:enumeration value="PE">
594
        <xs:annotation>
595
          <xs:documentation> Saxon Professional Edition </xs:documentation>
596
        </xs:annotation>
597
      </xs:enumeration>
598
      <xs:enumeration value="EE">
599
        <xs:annotation>
600
          <xs:documentation> Saxon Enterprise Edition </xs:documentation>
601
        </xs:annotation>
602
      </xs:enumeration>
603
    </xs:restriction>
604
  </xs:simpleType>
605
  
606
  <xs:simpleType name="EQName">
607
    <xs:annotation>
608
      <xs:documentation> 
609
        <p>An extended QName. This may be either a local name, or a prefixed QName, or a name
610
          written using Clark notation (allowing either {uri}local or the extended QName notation
611
          Q{uri}local).</p>
612
      </xs:documentation>
613
    </xs:annotation>
614
    <xs:union memberTypes="xs:NCName xs:QName">
615
      <xs:simpleType>
616
        <xs:restriction base="xs:token">
617
          <xs:pattern value="Q?\{.*\}\i\c*"/>
618
        </xs:restriction>
619
      </xs:simpleType>
620
    </xs:union>
621
  </xs:simpleType>
622

    
623
  <xs:simpleType name="fileNameType">
624
    <xs:annotation>
625
      <xs:documentation> A file name, usually for output. Currently implemented simply as a string.
626
      </xs:documentation>
627
    </xs:annotation>
628
    <xs:restriction base="xs:string"/>
629
  </xs:simpleType>
630

    
631
  <xs:simpleType name="itemTypeType">
632
    <xs:annotation>
633
      <xs:documentation> An XPath item type, such as "item()", "node()", "element(*, xs:anyType)",
634
        or "xs:string". Currently implemented simply as a string. </xs:documentation>
635
    </xs:annotation>
636
    <xs:restriction base="xs:string">
637
      <xs:minLength value="1"/>
638
    </xs:restriction>
639
  </xs:simpleType>
640

    
641
  <xs:simpleType name="javaClassNameType">
642
    <xs:annotation>
643
      <xs:documentation> A fully-qualified Java class name: a sequence of identifiers separated by
644
        periods, where each identifier starts with a letter (or dollar or underscore), and continues
645
        with letters or digits (or dollar or underscore). The definition of "letter" used in this
646
        regular expression does not exactly match the Java definition, but the differences are
647
        unlikely to matter. May also be a zero-length string to indicate the default value.
648
      </xs:documentation>
649
    </xs:annotation>
650
    <xs:restriction base="xs:string">
651
      <xs:pattern value="(([\p{L}$_][\p{L}$_0-9]*)(\.[\p{L}$_][\p{L}$_0-9]*)*)?"/>
652
    </xs:restriction>
653
  </xs:simpleType>
654

    
655
  <xs:simpleType name="listOfQNameType">
656
    <xs:annotation>
657
      <xs:documentation> A space-separated list of QNames. Used in serialization parameters such as
658
        cdata-section-elements. The QNames may be written either in lexical form (prefix:uri) or in
659
        URI-qualified form (Q{uri}local)</xs:documentation>
660
    </xs:annotation>
661
    <xs:list itemType="c:EQName"/>
662
  </xs:simpleType>
663
  
664
  <xs:simpleType name="listOfQNameOrStarType">
665
    <xs:annotation>
666
      <xs:documentation> A space-separated list of QNames, also allowing (one) "*" token
667
        to separate the QNames at the start of the ordering from the QNames at the end. 
668
        Used in the serialization parameter saxon:attribute-order
669
        The QNames may be written either in lexical form (prefix:uri) or in
670
        URI-qualified form (Q{uri}local). No duplicate tokens are allowed (in particular,
671
        "*" must not be repeated).</xs:documentation>
672
    </xs:annotation>
673
    <xs:restriction>
674
      <xs:simpleType>
675
        <xs:list itemType="c:EQNameOrStar"/>
676
      </xs:simpleType>
677
      <xs:assertion test="count($value) eq count(distinct-values($value))"/>
678
    </xs:restriction>   
679
  </xs:simpleType>
680
  
681
  <xs:simpleType name="EQNameOrStar">
682
    <xs:union memberTypes="c:EQName">
683
      <xs:simpleType>
684
        <xs:restriction base="xs:string">
685
          <xs:enumeration value="*"/>
686
        </xs:restriction>
687
      </xs:simpleType>
688
    </xs:union>
689
  </xs:simpleType>
690
  
691
  <xs:simpleType name="uriQualifiedName">
692
    <xs:restriction base="xs:string">
693
      <xs:pattern value="Q\{[^\s\}]\}\i\c+"/>
694
    </xs:restriction>
695
  </xs:simpleType>
696
    
697
    <xs:simpleType name="listOfPropertyNameType">
698
      <xs:annotation>
699
        <xs:documentation> A space-separated list of (JSON) property names, used
700
          in the saxon:property-order serialization attribute
701
          The property name can be any string containing no whitespace; the token "*"
702
          is interpreted as a special marker (but is not treated differently in the schema). 
703
          No duplicate tokens are allowed (in particular,
704
          "*" must not be repeated).</xs:documentation>
705
      </xs:annotation>     
706
      <xs:restriction>
707
        <xs:simpleType>
708
          <xs:list itemType="xs:token"/>
709
        </xs:simpleType>
710
        <xs:assertion test="count($value) eq count(distinct-values($value))"/>
711
      </xs:restriction>
712
    </xs:simpleType>
713

    
714
  <xs:simpleType name="occurrenceLimitsType">
715
    <xs:annotation>
716
      <xs:documentation> Highest values of minOccurs/maxOccurs for which accurate finite state
717
        automata should be generated during schema compilation. High limits can cause a large amount
718
        of memory to be used. Occurrence limits greater than these values may be non-strictly
719
        enforced. Format is a pair of integers, comma-separated. </xs:documentation>
720
    </xs:annotation>
721
    <xs:restriction base="xs:string">
722
      <xs:pattern value="[0-9]+,\s*[0-9]+"/>
723
    </xs:restriction>
724
  </xs:simpleType>
725

    
726
  <xs:simpleType name="recoveryPolicyType">
727
    <xs:annotation>
728
      <xs:documentation> Defines how an XSLT processor will handle recoverable errors. One of:
729
        recoverSilently (take the recovery action and continue silently), recoverWithWarnings
730
        (take the recovery action and continue with a warning), doNotRecover (terminate with a fatal
731
        error). </xs:documentation>
732
    </xs:annotation>
733
    <xs:restriction base="xs:string">
734
      <xs:enumeration value="recoverSilently">
735
        <xs:annotation>
736
          <xs:documentation> For XSLT recoverable dynamic errors, Saxon recovers silently
737
          </xs:documentation>
738
        </xs:annotation>
739
      </xs:enumeration>
740
      <xs:enumeration value="recoverWithWarnings">
741
        <xs:annotation>
742
          <xs:documentation> For XSLT recoverable dynamic errors, Saxon recovers but outputs a
743
            warning </xs:documentation>
744
        </xs:annotation>
745
      </xs:enumeration>
746
      <xs:enumeration value="doNotRecover">
747
        <xs:annotation>
748
          <xs:documentation> For XSLT recoverable dynamic errors, Saxon reports an error and does
749
            not recover </xs:documentation>
750
        </xs:annotation>
751
      </xs:enumeration>
752
    </xs:restriction>
753
  </xs:simpleType>
754
  
755
  <xs:simpleType name="regexEngineType">
756
    <xs:annotation>
757
      <xs:documentation>Identifies a regular expression engine</xs:documentation>
758
    </xs:annotation>
759
    <xs:restriction base="xs:string">
760
      <xs:enumeration value="S">
761
        <xs:annotation>
762
          <xs:documentation> 
763
            The Saxon regular expression engine
764
          </xs:documentation>
765
        </xs:annotation>
766
      </xs:enumeration>
767
      <xs:enumeration value="J">
768
        <xs:annotation>
769
          <xs:documentation> 
770
            The Java JDK regular expression engine
771
          </xs:documentation>
772
        </xs:annotation>
773
      </xs:enumeration>
774
      <xs:enumeration value="N">
775
        <xs:annotation>
776
          <xs:documentation> 
777
            The regular expression engine in Microsoft .NET
778
          </xs:documentation>
779
        </xs:annotation>
780
      </xs:enumeration>
781
    </xs:restriction>
782
  </xs:simpleType>
783

    
784
  <xs:simpleType name="schemaValidationType">
785
    <xs:annotation>
786
      <xs:documentation> A request for schema validation (or non-validation). One of: strict
787
        (validation must be performed), lax (validation performed if an element declaration is
788
        available), preserve (existing type annotations are retained), strip (no validation performed,
789
        existing type annotations are dropped). </xs:documentation>
790
    </xs:annotation>
791
    <xs:restriction base="xs:string">
792
      <xs:enumeration value="strict">
793
        <xs:annotation>
794
          <xs:documentation> Strict validation: an element declaration must be present and the
795
            instance must be valid </xs:documentation>
796
        </xs:annotation>
797
      </xs:enumeration>
798
      <xs:enumeration value="lax">
799
        <xs:annotation>
800
          <xs:documentation> Lax validation: if an element declaration is present then the instance
801
            must be valid </xs:documentation>
802
        </xs:annotation>
803
      </xs:enumeration>
804
      <xs:enumeration value="preserve">
805
        <xs:annotation>
806
          <xs:documentation> Existing type annotations are preserved when copying, no validation
807
            takes place </xs:documentation>
808
        </xs:annotation>
809
      </xs:enumeration>
810
      <xs:enumeration value="strip">
811
        <xs:annotation>
812
          <xs:documentation> Existing type annotations are discarded when copying, no validation
813
            takes place </xs:documentation>
814
        </xs:annotation>
815
      </xs:enumeration>
816
    </xs:restriction>
817
  </xs:simpleType>
818

    
819
  <xs:simpleType name="strengthType">
820
    <xs:annotation>
821
      <xs:documentation> Defines the values of the strength property of a collation. Defines which
822
        properties of a string are considered significant. One of: primary, secondary, tertiary, or
823
        identical. </xs:documentation>
824
    </xs:annotation>
825
    <xs:restriction base="xs:string">
826
      <xs:enumeration value="primary"/>
827
      <xs:enumeration value="secondary"/>
828
      <xs:enumeration value="tertiary"/>
829
      <xs:enumeration value="identical"/>
830
    </xs:restriction>
831
  </xs:simpleType>
832

    
833
  <xs:simpleType name="streamabilityType">
834
    <xs:annotation>
835
      <xs:documentation> Determines the test that Saxon applies to determine whether a construct is
836
        streamable, in cases where streaming is requested. One of: off, standard, extended.
837
      </xs:documentation>
838
    </xs:annotation>
839
    <xs:restriction base="xs:string">
840
      <xs:enumeration value="off">
841
        <xs:annotation>
842
          <xs:documentation> All constructs are treated as non-streamable. This is the only option
843
            available when using a Saxon version or license that does not enable streaming.
844
          </xs:documentation>
845
        </xs:annotation>
846
      </xs:enumeration>
847
      <xs:enumeration value="standard">
848
        <xs:annotation>
849
          <xs:documentation> Saxon applies the rules in the W3C XSLT 3.0 specification as closely as
850
            possible. (Exact compliance is not always possible.) </xs:documentation>
851
        </xs:annotation>
852
      </xs:enumeration>
853
      <xs:enumeration value="extended">
854
        <xs:annotation>
855
          <xs:documentation> Use of Saxon streaming extensions is permitted. This is the default
856
            when using Saxon-EE with a suitable license. </xs:documentation>
857
        </xs:annotation>
858
      </xs:enumeration>
859
    </xs:restriction>
860
  </xs:simpleType>
861

    
862
  <xs:simpleType name="stripSpaceType">
863
    <xs:annotation>
864
      <xs:documentation> Option for stripping whitespace in source documents. One of: all (all
865
        whitespace text nodes are removed, unless xml:space="preserve" is present), none (no
866
        whitespace text nodes are removed), ignorable (whitespace text nodes in element-only
867
        content (identified by schema or DTD) are stripped) </xs:documentation>
868
    </xs:annotation>
869
    <xs:restriction base="xs:string">
870
      <xs:enumeration value="all">
871
        <xs:annotation>
872
          <xs:documentation> All whitespace-only text nodes are removed from the source document
873
          </xs:documentation>
874
        </xs:annotation>
875
      </xs:enumeration>
876
      <xs:enumeration value="none">
877
        <xs:annotation>
878
          <xs:documentation> No whitespace-only text nodes are removed from the source document
879
          </xs:documentation>
880
        </xs:annotation>
881
      </xs:enumeration>
882
      <xs:enumeration value="ignorable">
883
        <xs:annotation>
884
          <xs:documentation> Whitespace-only text nodes are removed from the source document if the
885
            containing element is described in a DTD or schema as having element-only content
886
          </xs:documentation>
887
        </xs:annotation>
888
      </xs:enumeration>
889
    </xs:restriction>
890
  </xs:simpleType>
891

    
892
  <xs:simpleType name="treeModelType">
893
    <xs:annotation>
894
      <xs:documentation> Choice of XDM tree model implementation for representing source documents.
895
        One of: linkedTree (mutable tree using one Java object per node), tinyTree (compact
896
        immutable tree, the default), tinyTreeCondensed (tinyTree with extra compression of text and
897
        attribute values) </xs:documentation>
898
    </xs:annotation>
899
    <xs:restriction base="xs:string">
900
      <xs:enumeration value="linkedTree">
901
        <xs:annotation>
902
          <xs:documentation> Saxon linked tree implementation (one object per node). Useful for
903
            XQuery update. </xs:documentation>
904
        </xs:annotation>
905
      </xs:enumeration>
906
      <xs:enumeration value="tinyTree">
907
        <xs:annotation>
908
          <xs:documentation> Saxon tiny tree implementation: the default choice. A compact tree
909
            offering fast navigation. </xs:documentation>
910
        </xs:annotation>
911
      </xs:enumeration>
912
      <xs:enumeration value="tinyTreeCondensed">
913
        <xs:annotation>
914
          <xs:documentation> Saxon condensed tiny tree implementation: reduces memory usage but
915
            takes longer to build; no performance penalty during tree navigation.
916
          </xs:documentation>
917
        </xs:annotation>
918
      </xs:enumeration>
919
    </xs:restriction>
920
  </xs:simpleType>
921

    
922
  <xs:simpleType name="yesOrNoType">
923
    <xs:annotation>
924
      <xs:documentation> Used for serialization parameters, and for collation parameters. One of:
925
        yes, no. </xs:documentation>
926
    </xs:annotation>
927
    <xs:restriction base="xs:string">
928
      <xs:enumeration value="yes">
929
        <xs:annotation>
930
          <xs:documentation> Sets the option on. </xs:documentation>
931
        </xs:annotation>
932
      </xs:enumeration>
933
      <xs:enumeration value="no">
934
        <xs:annotation>
935
          <xs:documentation> Sets the option off. </xs:documentation>
936
        </xs:annotation>
937
      </xs:enumeration>
938
    </xs:restriction>
939
  </xs:simpleType>
940

    
941
  <xs:simpleType name="yesOrNoOrOmitType">
942
    <xs:annotation>
943
      <xs:documentation> Used for "standalone" serialization parameter. One of: yes, no, omit.
944
      </xs:documentation>
945
    </xs:annotation>
946
    <xs:restriction base="xs:string">
947
      <xs:enumeration value="yes">
948
        <xs:annotation>
949
          <xs:documentation> Sets standalone="yes" in the XML declaration. </xs:documentation>
950
        </xs:annotation>
951
      </xs:enumeration>
952
      <xs:enumeration value="no">
953
        <xs:annotation>
954
          <xs:documentation> Sets standalone="no" in the XML declaration. </xs:documentation>
955
        </xs:annotation>
956
      </xs:enumeration>
957
      <xs:enumeration value="omit">
958
        <xs:annotation>
959
          <xs:documentation> There will be no 'standalone' attribute in the XML declaration.
960
          </xs:documentation>
961
        </xs:annotation>
962
      </xs:enumeration>
963
    </xs:restriction>
964
  </xs:simpleType>
965

    
966
  <xs:simpleType name="yesOrNoOrCodepointType">
967
    <xs:annotation>
968
      <xs:documentation> Used for "alphanumeric" property of a collation. One of: yes, no,
969
        codepoint. </xs:documentation>
970
    </xs:annotation>
971
    <xs:restriction base="xs:string">
972
      <xs:enumeration value="yes">
973
        <xs:annotation>
974
          <xs:documentation> Selects a collation in which a sequence of digits is treated as a
975
            number: AA100 sorts after AA99 </xs:documentation>
976
        </xs:annotation>
977
      </xs:enumeration>
978
      <xs:enumeration value="no">
979
        <xs:annotation>
980
          <xs:documentation> Selects a collation in which digits are sorted as individual
981
            characters: AA100 sorts before AA99 </xs:documentation>
982
        </xs:annotation>
983
      </xs:enumeration>
984
      <xs:enumeration value="codepoint">
985
        <xs:annotation>
986
          <xs:documentation> Selects a collation in which a sequence of digits is treated as a
987
            number (AA100 sorts after AA99), and other characters are sorted by Unicode codepoint
988
            value </xs:documentation>
989
        </xs:annotation>
990
      </xs:enumeration>
991
    </xs:restriction>
992
  </xs:simpleType>
993
  
994
  <xs:simpleType name="exprType">
995
    <xs:annotation>
996
      <xs:documentation>Type for XPath expressions</xs:documentation>
997
    </xs:annotation>
998
    <xs:restriction base="xs:string"/>
999
  </xs:simpleType>
1000

    
1001
</xs:schema>
(2-2/4)