myGroup > myProject
 

bit 要素

ビットストリームを表すコンテナ

  • スキーマのルート要素にすることが出来ます。このスキーマを単独で用いる場合、文書インスタンス全体に対応します。

属性

length 属性

長さをビット数で指定できます。省略した場合任意の長さが許されます。

encode 属性

データのエンコードを指定します。

  • テキストエンコード txt, バイナリエンコード signed, unsigned, ieee754single,ieee754double などを指定できます。
  • 省略された場合は、直近の祖先の enocde 属性が用いられます。それで決まらない場合は txt が指定されたものとして扱われます。

子ノード

  • 子として、複数のコンテナ (byte要素, bit要素) もしくは一つのサブコンテナを持つことができます。
  • interleave要素, optional要素, zeroOrMore要素 などを子に持つことも可能です。
  • マッピング定義を行う場合は、value-of 要素を子孫に持ちます。

使用例

例 1: length 属性が指定された場合。

この例では、10 bit 分だけ処理が行われます。

<txt:bit length="10" encode="signed">
  <data type="int"/>
</txt:bit>
        

例 2: length 属性が指定され ていない場合。

この例では、type が int であるため、32 bit 分、処理が行われます。

<txt:bit encode="signed">
  <data type="int"/>
</txt:bit>
        

例 3: bit 要素の入れ子。

bit 要素が入れ子になっている場合、length 属性が指定されていなければ、 直近の祖先で指定された length 属性を元に、 処理を行う bit 数が決められます。 この例では、singned type のデータを 10 bit、unsigneInt type のデータを 6 bit 処理します。

<txt:bit length="16>
  <txt:bit length="10" encode="signed">
    <data type="int"/>
  </txt:bit>
  <txt:bit encode="unsigned">
    <data type="unsignedInt"/>
  </txt:bit>
</txt:byte>