DFDL スキーマの例

区切り文字で区切られているテキスト・データをモデル化する方法を示す DFDL スキーマのフラグメント。

次の区切り文字で区切られている ASCII テキスト・データを考えてみます。
int=5;float=-7.1E8
このデータは次のようになっています。
これは、DFDL スキーマ・ファイルで次のように表されます。
<xs:complexType name="myNumbers">
  <xs:sequence>

    <xs:annotation>
      <xs:appinfo source="http://www.ogf.org/dfdl/v1.0">
        <dfdl:sequence separator=";" encoding="ascii"/>
      </xs:appinfo>
    </xs:annotation>

    <xs:element name="myInt" type="xs:int">
      <xs:annotation>
        <xs:appinfo source="http://www.ogf.org/dfdl/v1.0">
          <dfdl:element representation="text"
                textNumberRep="standard" encoding="ascii"
                lengthKind="delimited" initiator="int=" …/>
        </xs:appinfo>
      </xs:annotation>
    </xs:element>

    <xs:element name="myFloat" type="xs:float">
      <xs:annotation>
        <xs:appinfo source="http://www.ogf.org/dfdl/v1.0">
          <dfdl:element representation="text"
                textNumberRep="standard" encoding="ascii"
                lengthKind="delimited" initiator="float=" …/>
        </xs:appinfo>
      </xs:annotation>
    </xs:element>

  </xs:sequence>
</xs:complexType>
ここで同じ情報が、短い形式で記述されます。
<xs:complexType name="myNumbers">
  <xs:sequence dfdl:separator=";" dfdl:encoding="ascii" >
    <xs:element name="myInt" type="xs:int"
          dfdl:representation="text"
          dfdl:textNumberRep="standard" dfdl:encoding="ascii"
          dfdl:lengthKind="delimited" dfdl:initiator="int=" … />
    <xs:element name="myFloat" type="xs:float"
          dfdl:representation="text"
          dfdl:textNumberRep="standard" dfdl:encoding="ascii"
          dfdl:lengthKind="delimited" dfdl:initiator="float=" … />
  </xs:sequence>
</xs:complexType>
Copyright IBM Corporation 2011Copyright IBM Corporation 2011.

概念トピック概念トピック | バージョン 1.0 | df20080_