Data Format Description Language (DFDL) v1.0 Specification
OGF Proposed Recommendation GFD-P-R.174, January 31, 2011
The DFDL properties from the following types of reference are combined using the rules below:
Rules
Create an empty working set of "explicit" properties. Create an empty working set of "default" properties.
Move to the innermost schema component in the chain of references.
Move to the schema component that references the current component, and repeat step 3. If there is no referencing component, move to step 5.
Combine the resultant sets of properties. The "explicit" properties take priority, "defaults" only used when no "explicit" is present. It is a schema definition error if a required property is in neither the "explicit" nor the "default" working sets.
<xs:simpleType name="newType">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:simpleType alignment="16"/>
</xs:appinfo>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:maxInclusive value="10"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="testElement1" type="newType">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:element representation="binary"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:simpleType name="otherNewType">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:simpleType alignment="64"/>
</xs:appinfo>
</xs:annotation>
<xs:restriction base="newType">
<xs:maxInclusive value="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="newType">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:simpleType representation='binary'/>
</xs:appinfo>
</xs:annotation>
<xs:restriction base="xs:int">
<xs:maxInclusive value="10"/>
</xs:restriction>
</xs:simpleType>
<xs:sequence>
<xs:element ref="testElement1">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:element
binaryNumberRep ="binary"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:element name="testElement1" type="newType">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:element representation="binary"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:simpleType name="newType">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:simpleType alignment="16"/>
</xs:appinfo>
</xs:annotation>
<xs:restriction base="xs:int">
<xs:maxInclusive value="10"/>
</xs:restriction>
</xs:simpleType>
<!-- SCHEMA1 -->
<xs:schema targetNamespace="" xmlns:tns1="http://tns1">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:format encoding="ASCII" byteOrder="littleEndian"
inputValueCalc="" outputValueCalc=""
initiator="" terminator=""
sequenceKind="ordered" />
</xs:appinfo>
</xs:annotation>
<xsd:import namespace="http://tns2" schemaLocation="SCHEMA2.xsd"/>
<xs:element name="book">
<xs:complexType>
<xs:group ref="tns2:ggrp1" dfdl:separator=",">
</xs:group>
</xs:complexType>
</xs:element>
</xs:schema>
<!-- SCHEMA2 -->
<xs:schema targetNamespace="" xmlns:tns2="http://tns2">
<xs:annotation>
<xs:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:format encoding="UTF-8" byteOrder="littleEndian"
inputValueCalc="" outputValueCalc=""
initiator=""
sequenceKind="ordered" />
</xs:appinfo>
</xs:annotation>
<xs:group name="ggrp1" >
<xs:sequence dfdl:separatorPosition="infix" >
<xs:element name="customer" type="xs:string"
dfdl:length="8" dfdl:lengthKind="explicit"
/>
</xs:sequence>
</xs:group>
</xs:schema>
The DFDL properties applied to the xs:sequence in xs:group "ggrp1" in SCHEMA2 when referenced from the group reference in SCHEMA1 are
Copyright (C) Open Grid Forum (2005-2010). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the OGF or other organizations, except as needed for the purpose of developing Grid Recommendations in which case the procedures for copyrights defined in the OGF Document process must be followed, or as required to translate it into languages other than English.