<nodeBindings> Declaration

The customization values in the <nodeBindings> binding declaration have node scope. These refer to individual type or element definitions within a schema. It is also possible to reference local elements within complex types for customization.

Usage

   <nodeBindings name | node=”xs:string”>
          [<prefix>xs:token</prefix>]
          [<nameXmlTransform>. . .</nameXmlTransform>]
          [<array [maxSize=”xs:nonNegativeInteger”/>]]
          [<isBigInteger/>]
          [<isDynamic/>]
          [<ctype> string | numeric </ctype>]
          [<noPatternTest/>]
          [<numericFormat>. . .</numericFormat>]
          [<nodeBindings>. . .<nodeBindings>]
          ...
   </nodeBindings>

The following attributes are defined for <nodeBindings> node:

name: This attribute selects a node for configuration processing based on its QName.
node: An XPath 1.0 expression that identifies the schema node within the referenced schema with which to associate binding declarations

The following customization values are defined in node scope:

nameXmlTransform This is used to perform more accurate XML names transformation than prefix allows. See Section “Advanced XML Names Transformation” for further details.
prefix This is used to specify a prefix that is prepended to all XML names including type names and global element names to form C#/Java type and variables names. It should be a legal C#/Java identifier.
array This specifies that an array should be used instead of a linked list for repeated elements. The maxSize attribute specifies the maximum size of the array. The default value if not specified is 100.
isBigInteger By default, XBinder represents xsd:integer as an int. This option specifies that System.decimal or java.lang.BigInteger should be used instead. This qualifier can be applied to either an integer or complex type. In the latter case, all integer elements within the complex type are flagged as big integers.

cstype

javatype

This is used to control the C#/Java type generated by the XBinder compiler. These elements also occur in the context of a typemap and they are discussed in the section called “ <typemap> Declaration.
noPatternTest If type uses a pattern facet, this may be used to turn off the pattern match test.
numericFormat This specifies a node-level format for encoding of numeric values. Affects values of xsd:double, xsd:decimal, and xsd:float types. See the section called “XML Numeric Values Format Specification”.
nodeBindings Nested <nodeBindings> declarations to allow more accurate references to enclosed elements, such as local elements inside groups (sequence, all, choice, group, etc).