<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="raws">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="c" type="t_container" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="t" type="t_token" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="f" type="t_flag" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:complexType name="t_container">
<xs:sequence>
<xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="a" type="t_attribute" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="c" type="t_container_inside" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="t" type="t_token_inside" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="f" type="t_flag_inside" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="t_container_inside">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="required" type="xs:string"/>
</xs:complexType>
<xs:complexType name="t_token">
<xs:sequence>
<xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="a" type="t_attribute" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="t_token_inside">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="required" type="xs:string"/>
</xs:complexType>
<xs:complexType name="t_flag">
<xs:sequence>
<xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="t_flag_inside">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="required" type="xs:string"/>
</xs:complexType>
<xs:complexType name="t_attribute">
<xs:sequence>
<xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="e" type="t_enum_item" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string"/>
<xs:attribute name="required" type="xs:string"/>
<xs:attribute name="min" type="xs:string"/>
<xs:attribute name="max" type="xs:string"/>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="string"/>
<xs:enumeration value="int"/>
<xs:enumeration value="range"/>
<xs:enumeration value="enum"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="t_enum_item">
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:schema>