構造体は、メッセージと同様にパラメータを格納でき、他のメッセージの内部データ型として使用される。 メッセージではないので、メッセージID は不要である。 また、他の構造体を継承することもできる。
構造体の定義にはstruct要素を使用する。 必須のname属性で名前を指定する。 オプションのbase属性に親の構造体を指定することで、継承を実現することができる パラメータの追加はメッセージと同様にfieldタグで指定する。
<struct name="Foo"> <field name="value" type="int"/> </struct> <struct name="Bar" base="Foo"> <field name="value2" type="float"/> </struct>