| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <xs:schema |
| targetNamespace="urn:ogf:dfdl:2013:imp:daffodil.apache.org:2018:ext" |
| xmlns:tns="urn:ogf:dfdl:2013:imp:daffodil.apache.org:2018:ext" |
| xmlns:xs="http://www.w3.org/2001/XMLSchema" |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xmlns:daf="urn:ogf:dfdl:2013:imp:daffodil.apache.org:2018:ext" |
| xmlns:dafint="urn:ogf:dfdl:2013:imp:daffodil.apache.org:2018:int" |
| xmlns:dfdlx="http://www.ogf.org/dfdl/dfdl-1.0/extensions" |
| attributeFormDefault="unqualified" |
| elementFormDefault="qualified"> |
| |
| <xs:import namespace="http://www.ogf.org/dfdl/dfdl-1.0/extensions"/> |
| <xs:import namespace="urn:ogf:dfdl:2013:imp:daffodil.apache.org:2018:int"/> |
| |
| <!-- needed for backwards compatability with daf:parseUnparsePolicy --> |
| <xs:attribute name="parseUnparsePolicy" type="dfdlx:ParseUnparsePolicyEnum"/> |
| |
| <xs:element name="property" type="daf:PropertyType" /> |
| |
| <xs:complexType name="PropertyType"> |
| <xs:simpleContent> |
| <xs:extension base="xs:string"> |
| <xs:attribute name="name" type="daf:PropertyNameType" use='required'/> |
| <xs:attributeGroup ref="dafint:daffodilAG"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <xs:simpleType name="PropertyNameType"> |
| <xs:restriction base="xs:token"> |
| <xs:enumeration value="parseUnparsePolicy"/> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| |
| <!-- properties related to daffodil configuration --> |
| |
| <xs:element name="externalVariableBindings" type="daf:externalVarType" /> |
| |
| <xs:complexType name="externalVarType"> |
| <xs:sequence> |
| <xs:element ref="daf:bind" minOccurs="0" maxOccurs="unbounded" /> |
| </xs:sequence> |
| </xs:complexType> |
| |
| <xs:element name="bind" type="daf:bindType" /> |
| |
| <xs:simpleType name="bindNameType"> |
| <xs:restriction base="xs:string" /> |
| </xs:simpleType> |
| |
| <xs:complexType name="bindType"> |
| <xs:simpleContent> |
| <xs:extension base="daf:bindNameType"> |
| <xs:attribute name="name" use="required"> |
| <xs:simpleType> |
| <xs:restriction base="xs:string" /> |
| </xs:simpleType> |
| </xs:attribute> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| |
| <!-- |
| This file is used by TunableGenerator.scala to generate code that parses and |
| validates tunable values. The following schema elements define these tunables |
| to be generated. Although this schema is verbose and repetitive, it makes it |
| relatively straightforward to parse and ensure we generate correct code. As |
| such, one must follow a strict pattern to ensure correct code is generated. |
| |
| Each element representing a tunable must have an schema primitive as its type, |
| as determined by the tunables allowed value space. Each tunable must also have |
| a default value that is valid for the type. If an element needs additional |
| limitations beyond the value space of the type, then an xs:simpleType with |
| xs:restriction must be used. The base attribute of the restriction must be a |
| schema primitive type. Only the following restrictions are currently supported: |
| |
| - minInclusive |
| - maxInclusive |
| - minExclusive |
| - maxExclusive |
| --> |
| <xs:element name="tunables"> |
| <xs:complexType> |
| <xs:all> |
| <xs:element name="allowExpressionResultCoercion" type="xs:boolean" default="true" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Defines how Daffodil coerces expressions where the result type differs |
| from the expected type. As an example, assume the expected type of an |
| expression is an xs:string, but the expression is { 3 }. In this case, the |
| expression result is an xs:int, which should not be automatically coerced |
| to an xs:string. Instead, the expression should be { xs:string(3) } or { "3" } |
| If the value of this tunable is false, these types of expressions will |
| result in a schema definition error. If the value is true, Daffodil will |
| provide a warning and attempt to coerce the result type to the expected |
| type. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="allowExternalPathExpressions" type="xs:boolean" default="false" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| By default, path expressions in Daffodil will only work correctly if path |
| steps are used in an expression defined in the schema when compiled. To |
| enable the use of other expressions (e.g. during debugging, where not all |
| expressions are known at schema compile time), set this tunable to true. |
| This may cause a degredation of performance in path expression evaluation, |
| so this should be avoided when in production. This flag is automatically |
| enabled when debugging is enabled. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="blobChunkSizeInBytes" default="4096" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| When reading/writing blob data, the maximum number of bytes to read/write |
| at a time. This is also used when parsing xs:hexBinary data. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| <xs:maxInclusive value="268435455" /> <!-- Limit to (MaxInt / 8) because some places convert this tunable to bits --> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="defaultEmptyElementParsePolicy" type="daf:TunableEmptyElementParsePolicy" default="treatAsEmpty" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Defines the default empty element parse policy to use if it is not defined |
| in a schema. This is only used if requireEmptyElementParsePolicyProperty is |
| false. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="defaultInitialRegexMatchLimitInChars" default="32" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Deprecated. This tunable no longer has any affect and is only kept for |
| backwards compatability. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="errorOnUnsupportedJavaVersion" type="xs:boolean" default="true" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Deprecated. This tunable no longer has any affect and is only kept for |
| backwards compatability. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="generatedNamespacePrefixStem" type="xs:string" default="tns" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Stem to use when generating a namespace prefix when one is not defined for |
| the target naespace. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="initialElementOccurrencesHint" default="10" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Initial array buffer size allocated for recurring elements/arrays. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="initialRegexMatchLimitInCharacters" default="64" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Initial number of characters to match when performing regular expression |
| matches on input data. When a regex fails to match, more data may be |
| consumed up to the maximumRegexMatchLengthInCharacters tunable. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="inputFileMemoryMapLowThreshold" type="xs:int" default="33554432" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Deprecated. This tunable no longer has any affect and is only kept for |
| backwards compatability. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="maxBinaryDecimalVirtualPoint" default="200" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| The largest allowed value of the dfdl:binaryDecimalVirtualPoint property. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxByteArrayOutputStreamBufferSizeInBytes" default="2097152000" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| When unparsing, this is the maximum size of the buffer that the |
| ByteArrayOutputStream can grow to before switching to a file based |
| output stream. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="0" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxDataDumpSizeInBytes" default="256" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| The maximum size of data to retrive when when getting data to display |
| for debugging. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxFieldContentLengthInBytes" type="xs:int" default="1048576" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Deprecated. This tunable no longer has any affect and is only kept for |
| backwards compatability. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="maxHexBinaryLengthInBytes" default="2147483647" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| The maximum size allowed for an xs:hexBinary element. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxLengthForVariableLengthDelimiterDisplay" default="10" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| When unexpected text is found where a delimiter is expected, this is the maximum |
| number of bytes (characters) to display when the expected delimiter is a variable |
| length delimiter. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxLookaheadFunctionBits" default="512" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Max distance that the DPath lookahead function is permitted to look. |
| Distance is defined by the distance to the last bit accessed, and |
| so it is offset+bitsize. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:long"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxOccursBounds" default="2147483647" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Maximum number of occurances of an array element. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:long"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxSkipLengthInBytes" default="1024" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Maximum number of bytes allowed to skip in a skip region. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maxValidYear" default="9999" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Due to differences in the DFDL spec and ICU4J SimpleDateFormat, we must |
| have SimpleDateFormat parse in lenient mode, which allows the year value |
| to overflow with very large years into possibly negative years. This |
| tunable tunable sets an upper limit for values to prevent overflow. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maximumRegexMatchLengthInCharacters" default="1048576" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Maximum number of characters to match when performing regular expression |
| matches on input data. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="maximumSimpleElementSizeInCharacters" default="1048576" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Maximum number of characters to parse when parsing string data. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="minBinaryDecimalVirtualPoint" default="-200" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| The smallest allowed value of the dfdl:binaryDecimalVirtualPoint property. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:maxInclusive value="-1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="minValidYear" type="xs:int" default="0" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Due to differences in the DFDL spec and ICU4J SimpleDateFormat, we must |
| have SimpleDateFormat parse in lenient mode, which allows the year value |
| to overflow with very large years into possibly negative years. This |
| tunable tunable sets an upper limit for values to prevent underflow. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="outputStreamChunkSizeInBytes" default="65536" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| When writing file data to the output stream during unparse, this |
| is the maximum number of bytes to write at a time. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="parseUnparsePolicy" type="daf:TunableParseUnparsePolicyTunable" default="fromRoot" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Whether to compile a schema to support only parsing, only unparsing, both, or to |
| use the daf:parseUnparsePolicy from the root node. All child elements of the root |
| must have a compatable daf:parseUnaprsePolicy property. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="readerByteBufferSize" type="xs:int" default="8192" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Deprecated. This tunable no longer has any affect and is only kept for |
| backwards compatability. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="releaseUnneededInfoset" type="xs:boolean" default="true" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Daffodil will periodically release internal infoset elements that it determines |
| are no longer needed, thus freeing memory. Setting this value to false will |
| prevent this from taking place. This should usually only be used while debugging |
| or with very specific tests. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="requireBitOrderProperty" type="xs:boolean" default="false" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| If true, require that the dfdl:bitOrder property is specified. If false, use a |
| default value if the property is not defined in the schema. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="requireEmptyElementParsePolicyProperty" type="xs:boolean" default="false" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| If true, require that the dfdl:emptyElementParsePolicy property is specified in |
| the schema. If false, and not defined in the schema, uses the |
| defaultEmptyElementParsePolicy as the value of emptyElementParsePolicy. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="requireEncodingErrorPolicyProperty" type="xs:boolean" default="false" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| If true, require that the dfdl:encodingErrorPolicy property is specified. If |
| false, use a default value if the property is not defined in the schema. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="requireFloatingProperty" type="xs:boolean" default="false" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| If true, require that the dfdl:floating property is specified. If |
| false, use a default value if the property is not defined in the schema. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="requireTextBidiProperty" type="xs:boolean" default="false" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| If true, require that the dfdl:testBidi property is specified. If |
| false, use a default value if the property is not defined in the schema. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="requireTextStandardBaseProperty" type="xs:boolean" default="false" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| If true, require that the dfdl:textStandardBase property is specified. If false |
| and the property is missing, behave as if the property is set to 10. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="saxUnparseEventBatchSize" default="100" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Daffodil's SAX Unparse API allows events to be batched in memory to minimize the |
| frequency of context switching between the SAXInfosetInputter thread that processes |
| the events, and the DaffodilUnparseContentHandler thread that generates the events. |
| Setting this value to a low number will increase the frequency of context switching, |
| but will reduce the memory footprint. Swtting it to a high number will decrease the |
| frequency of context switching, but increase the memory footprint. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="suppressSchemaDefinitionWarnings" type="daf:TunableSuppressSchemaDefinitionWarnings" default="emptyElementParsePolicyError" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Space-separated list of schema definition warnings that should be ignored, |
| or "all" to ignore all warnings. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="tempFilePath" type="xs:string" default="This string is ignored. Default value is taken from java.io.tmpdir property" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| When unparsing, use this path to store temporary files that may be genrated. |
| The default value (empty string) will result in the use of the java.io.tmpdir |
| property being used as the path. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="unqualifiedPathStepPolicy" type="daf:TunableUnqualifiedPathStepPolicy" default="noNamespace" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| Defines how to lookup DFDL expression path steps that to not include a |
| namespace prefix. Values are: |
| - noNamespace: only match elements that do not have a namespace |
| - defaultNamespace: only match elements defined in the default namespace |
| - preferDefaultNamespace: match elements defined in the default namespace; |
| if non are found, match elemnts that do not have a namespace |
| </xs:documentation> |
| </xs:annotation> |
| </xs:element> |
| <xs:element name="unparseSuspensionWaitOld" default="100" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| While unparsing, some unparse actions require "suspending" which |
| requires buffering unparse output until the suspension can be |
| evaluated. Daffodil periodically attempts to reevaluate these |
| suspensions so that these buffers can be released. We attempt to |
| evaluate young suspensions shortly after creation with the hope |
| that it will succeed and we can release associated buffers. But if |
| a young suspension fails it is moved to the old suspension list. |
| Old suspensions are evaluated less frequently since they are less |
| likely to succeeded. This minimizes the overhead related to |
| evaluating suspensions that are likely to fail. The |
| unparseSuspensionWaitYoung and unparseSuspensionWaitOld |
| values determine how many elements are unparsed before evaluating |
| young and old suspensions, respectively. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| <xs:element name="unparseSuspensionWaitYoung" default="5" minOccurs="0"> |
| <xs:annotation> |
| <xs:documentation> |
| See unparseSuspensionWaitOld |
| </xs:documentation> |
| </xs:annotation> |
| <xs:simpleType> |
| <xs:restriction base="xs:int"> |
| <xs:minInclusive value="1" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:element> |
| </xs:all> |
| </xs:complexType> |
| </xs:element> |
| |
| <xs:simpleType name="TunableEmptyElementParsePolicy"> |
| <xs:restriction base="dfdlx:EmptyElementParsePolicyEnum" /> |
| </xs:simpleType> |
| |
| <!-- |
| The two 'Tunables' in the name are intentional. The first is the standard for |
| Tunable enums used by the generator. The second is to differentiate between |
| the dfdl property enum and the tunable enum, since they have different allowed |
| values. |
| --> |
| <xs:simpleType name="TunableParseUnparsePolicyTunable"> |
| <xs:union> |
| <xs:simpleType> |
| <xs:restriction base="dfdlx:ParseUnparsePolicyEnum" /> |
| </xs:simpleType> |
| <xs:simpleType> |
| <xs:restriction base="xs:token"> |
| <xs:enumeration value="fromRoot" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:union> |
| </xs:simpleType> |
| |
| <!-- |
| TDML implementation to use when running TDML tests. Currently daffodil and ibm use the |
| same classname, so you still need different classpaths to call ibm as a cross tester. |
| --> |
| <xs:simpleType name="TunableTDMLImplementation"> |
| <xs:restriction base="xs:token"> |
| <xs:enumeration value="daffodil" /> |
| <xs:enumeration value="daffodilC" /> |
| <xs:enumeration value="ibm" /> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| <xs:simpleType name="TunableUnqualifiedPathStepPolicy"> |
| <xs:restriction base="xs:token"> |
| <xs:enumeration value="defaultNamespace" /> |
| <xs:enumeration value="noNamespace" /> |
| <xs:enumeration value="preferDefaultNamespace" /> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| <xs:simpleType name="TunableSuppressSchemaDefinitionWarnings"> |
| <xs:list> |
| <xs:simpleType> |
| <xs:restriction base="xs:token"> |
| <xs:enumeration value="all" /> |
| <xs:enumeration value="alignmentNotSame" /> |
| <xs:enumeration value="alignmentAndInitiatorTextAlignmentNotCompatible" /> |
| <xs:enumeration value="appinfoDFDLSourceWrong" /> |
| <xs:enumeration value="appinfoNoSource" /> |
| <xs:enumeration value="choiceInsideHiddenGroup" /> |
| <xs:enumeration value="deprecatedBuiltInFormats" /> |
| <xs:enumeration value="deprecatedEncodingNameUSASCII7BitPacked" /> |
| <xs:enumeration value="deprecatedExpressionResultCoercion" /> |
| <xs:enumeration value="deprecatedFunctionDAFError" /> |
| <xs:enumeration value="deprecatedPropertyDAFError" /> |
| <xs:enumeration value="deprecatedPropertyDFDLXError" /> |
| <xs:enumeration value="deprecatedPropertyDFDLError" /> |
| <xs:enumeration value="deprecatedPropertySeparatorPolicy" /> |
| <xs:enumeration value="discouragedDiscriminatorPlacement" /> |
| <xs:enumeration value="discouragedAssertPlacement" /> |
| <xs:enumeration value="emptyElementParsePolicyError" /> |
| <xs:enumeration value="encodingErrorPolicyError" /> |
| <xs:enumeration value="escapeSchemeRefUndefined" /> |
| <xs:enumeration value="expressionCompilationSkipped" /> |
| <xs:enumeration value="facetExplicitLengthOutOfRange" /> |
| <xs:enumeration value="floatingError" /> |
| <xs:enumeration value="ignoreImport" /> |
| <xs:enumeration value="ignoreDFDLProperty" /> |
| <xs:enumeration value="inconsistentLengthKind" /> |
| <xs:enumeration value="invalidAnnotationPoint" /> |
| <xs:enumeration value="layerCompileWarning" /> |
| <xs:enumeration value="multipleChoiceBranches" /> |
| <xs:enumeration value="namespaceDifferencesOnly" /> |
| <xs:enumeration value="noEmptyDefault" /> |
| <xs:enumeration value="nonExpressionPropertyValueLooksLikeExpression" /> |
| <xs:enumeration value="pathNotToArray" /> |
| <xs:enumeration value="patternEncodingSlashW" /> |
| <xs:enumeration value="queryStylePathExpression" /> |
| <xs:enumeration value="regexPatternZeroLength" /> |
| <xs:enumeration value="textBidiError" /> |
| <xs:enumeration value="textOutputMinLengthOutOfRange" /> |
| <xs:enumeration value="textStandardBaseUndefined" /> |
| <xs:enumeration value="unsupportedAttributeBlockDefault" /> |
| <xs:enumeration value="unsupportedAttributeFinalDefault" /> |
| <xs:enumeration value="unsupportedAttributeFormDefault" /> |
| <xs:enumeration value="unsupportedAttributeSchemaLocation" /> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:list> |
| </xs:simpleType> |
| |
| <xs:element name="dfdlConfig"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element ref="tns:externalVariableBindings" minOccurs="0" /> |
| <xs:element ref="tns:tunables" minOccurs="0" /> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| |
| </xs:schema> |