Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Daffodil has the capability to read in various parameters via an external XML file. Below are the parameters that can be defined.

External Variables

External variables can be defined using the externalVariablesBindings tag. For example, the following configuration file defines to variables, var1 and var2, in the http://example.com namespace.

Code Block
languagexml
titleConfiguration File
<?xml version="1.0" encoding="UTF-8"?>
<dfdlConfig xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ex="http://example.com">
  <externalVariableBindings>
    <bind name="ex:var1">-9</bind>
    <bind name="ex:var2">Foo</bind>
  </externalVariableBindings>
</dfdlConfig>

These would allow the external variables to be set or overridden, if defined in a DFDL schema like so:

Code Block
languagexml
titleDFDL Schema
<dfdl:defineVariable name="var1" external="true" type="xsd:int">1</dfdl:defineVariable>
<dfdl:defineVariable name="var2" external="true" type="xsd:string">Bar</dfdl:defineVariable>

Tunable Parameters

Various tunable parameters can be modified to change various Daffodil schema compilation and data parsing properties. For example, the following sets the maxOccursBounds tunable to 1024:

Code Block
languagexml
titleConfiguration File
<?xml version="1.0" encoding="UTF-8"?>
<dfdlConfig xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ex="http://example.com">
  <tunables>
    <maxOccursBounds>1024</maxOccursBounds>
  </tunables>
</dfdlConfig>

Below is the list of tunable parameters and their default values:

tunabledefault
maxFieldContentLengthInBytes1024
maxOccursBounds1024
maxSkipLength1024
maxBinaryDecimalVirtualPoint200
minBinaryDecimalVirtualPoint-200
generatedNamespacePrefixStemtns
readerByteBufferSize8192
maxLengthForVariableLengthDelimiterDisplay

10

inputFileMemoryMapLowThreshold33554432
requireBitOrderPropertyfalse
requireEncodingErrorPolicyPropertyfalse

Configuration Schema

Below is the schema that defines this XML file:

...

languagexml
titleConfiguration Schema

...

this page has moved to https://daffodil.apache.org/configuration/