123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291 |
- <?xml version="1.0" encoding="ISO-8859-1" ?>
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
- <xs:element name="include" type="xs:anyURI"/>
- <xs:element name="version" type="xs:unsignedByte"/>
- <xs:element name="dialect" type="xs:unsignedByte"/>
- <xs:element name="description" type="xs:string"/>
- <xs:attribute name="name">
- </xs:attribute>
- <xs:attribute name="id" type="xs:unsignedShort"/>
- <xs:attribute name="print_format" type="xs:string"/>
- <xs:attribute name="enum" type="xs:string"/>
- <xs:attribute name="display" type="xs:string"/>
- <xs:attribute name="units" type="SI_Unit"/>
- <xs:attribute name="value">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="\d{1,10}"/>
- <xs:pattern value="0[xX][0-9a-fA-F]{1,8}"/>
- <xs:pattern value="0[bB][0-1]{1,32}"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="default">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="\d{1,10}"/>
- <xs:pattern value="0[xX][0-9a-fA-F]{1,8}"/>
- <xs:pattern value="0[bB][0-1]{1,32}"/>
- <xs:pattern value="NaN"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="type">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="float(\[([0-9])+\])?"/>
- <xs:pattern value="double(\[([0-9])+\])?"/>
- <xs:pattern value="char(\[([0-9])+\])?"/>
- <xs:pattern value="int8_t(\[([0-9])+\])?"/>
- <xs:pattern value="uint8_t(\[([0-9])+\])?"/>
- <xs:pattern value="uint8_t_mavlink_version"/>
- <xs:pattern value="int16_t(\[([0-9])+\])?"/>
- <xs:pattern value="uint16_t(\[([0-9])+\])?"/>
- <xs:pattern value="int32_t(\[([0-9])+\])?"/>
- <xs:pattern value="uint32_t(\[([0-9])+\])?"/>
- <xs:pattern value="int64_t(\[([0-9])+\])?"/>
- <xs:pattern value="uint64_t(\[([0-9])+\])?"/>
- <xs:pattern value="array\[[0-9]+\]"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="since">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="(20)\d{2}-(0[1-9]|1[012])"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="replaced_by" type="xs:string"/>
- <xs:simpleType name="SI_Unit">
- <xs:restriction base="xs:string">
-
- <xs:enumeration value="s"/>
- <xs:enumeration value="ds"/>
- <xs:enumeration value="cs"/>
- <xs:enumeration value="ms"/>
- <xs:enumeration value="us"/>
- <xs:enumeration value="Hz"/>
- <xs:enumeration value="MHz"/>
-
- <xs:enumeration value="km"/>
- <xs:enumeration value="dam"/>
- <xs:enumeration value="m"/>
- <xs:enumeration value="m/s"/>
- <xs:enumeration value="m/s/s"/>
- <xs:enumeration value="m/s*5"/>
- <xs:enumeration value="dm"/>
- <xs:enumeration value="dm/s"/>
- <xs:enumeration value="cm"/>
- <xs:enumeration value="cm^2"/>
- <xs:enumeration value="cm/s"/>
- <xs:enumeration value="mm"/>
- <xs:enumeration value="mm/s"/>
- <xs:enumeration value="mm/h"/>
-
- <xs:enumeration value="K"/>
- <xs:enumeration value="degC"/>
- <xs:enumeration value="cdegC"/>
-
- <xs:enumeration value="rad"/>
- <xs:enumeration value="rad/s"/>
- <xs:enumeration value="mrad/s"/>
- <xs:enumeration value="deg"/>
- <xs:enumeration value="deg/2"/>
- <xs:enumeration value="deg/s"/>
- <xs:enumeration value="cdeg"/>
- <xs:enumeration value="degE5"/>
- <xs:enumeration value="degE7"/>
- <xs:enumeration value="rpm"/>
-
- <xs:enumeration value="V"/>
- <xs:enumeration value="cV"/>
- <xs:enumeration value="mV"/>
- <xs:enumeration value="A"/>
- <xs:enumeration value="cA"/>
- <xs:enumeration value="mA"/>
- <xs:enumeration value="mAh"/>
-
- <xs:enumeration value="mT"/>
- <xs:enumeration value="gauss"/>
- <xs:enumeration value="mgauss"/>
-
- <xs:enumeration value="hJ"/>
-
- <xs:enumeration value="mG"/>
-
- <xs:enumeration value="g"/>
-
- <xs:enumeration value="Pa"/>
- <xs:enumeration value="hPa"/>
- <xs:enumeration value="mbar"/>
-
- <xs:enumeration value="%"/>
- <xs:enumeration value="d%"/>
- <xs:enumeration value="c%"/>
- <xs:enumeration value="dB"/>
- <xs:enumeration value="dBm"/>
-
- <xs:enumeration value="KiB"/>
- <xs:enumeration value="KiB/s"/>
- <xs:enumeration value="MiB"/>
- <xs:enumeration value="MiB/s"/>
- <xs:enumeration value="bytes"/>
- <xs:enumeration value="bytes/s"/>
- <xs:enumeration value="bits/s"/>
- <xs:enumeration value="pix"/>
- <xs:enumeration value="dpix"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:attribute name="index" type="xs:unsignedByte"/>
- <xs:attribute name="label" type="xs:string"/>
- <xs:attribute name="decimalPlaces" type="xs:unsignedByte"/>
- <xs:attribute name="increment" type="xs:float"/>
- <xs:attribute name="minValue" type="xs:float"/>
- <xs:attribute name="maxValue" type="xs:float"/>
- <xs:attribute name="reserved" type="xs:boolean" default="false"/>
- <xs:attribute name="hasLocation" type="xs:boolean" default="true"/>
- <xs:attribute name="isDestination" type="xs:boolean" default="true"/>
- <xs:element name="param">
- <xs:complexType mixed="true">
- <xs:attribute ref="index" use="required"/>
- <xs:attribute ref="label"/>
- <xs:attribute ref="units"/>
- <xs:attribute ref="enum" />
- <xs:attribute ref="decimalPlaces"/>
- <xs:attribute ref="increment"/>
- <xs:attribute ref="minValue"/>
- <xs:attribute ref="maxValue"/>
- <xs:attribute ref="reserved"/>
- <xs:attribute ref="default"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="deprecated">
- <xs:complexType mixed="true">
- <xs:sequence>
- <xs:element ref="description" minOccurs="0"/>
- </xs:sequence>
- <xs:attribute ref="since" use="required"/>
- <xs:attribute ref="replaced_by" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="wip">
- <xs:complexType mixed="true">
- <xs:sequence>
- <xs:element ref="description" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="field">
- <xs:complexType mixed="true">
- <xs:sequence>
- <xs:element ref="description" minOccurs="0"/>
- </xs:sequence>
- <xs:attribute ref="type" use="required"/>
- <xs:attribute ref="name" use="required"/>
- <xs:attribute ref="print_format" />
- <xs:attribute ref="enum" />
- <xs:attribute ref="display" />
- <xs:attribute ref="units" />
- <xs:attribute ref="default" />
- </xs:complexType>
- </xs:element>
- <xs:element name="extensions">
- </xs:element>
- <xs:element name="entry">
- <xs:complexType>
- <xs:sequence>
- <xs:choice minOccurs="0" maxOccurs="1">
- <xs:element ref="deprecated"/>
- <xs:element ref="wip"/>
- </xs:choice>
- <xs:element ref="description" minOccurs="0"/>
- <xs:element ref="param" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- <xs:attribute ref="value" />
- <xs:attribute ref="name" use="required"/>
- <xs:attribute ref="hasLocation"/>
- <xs:attribute ref="isDestination"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="enum">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="deprecated" minOccurs="0" maxOccurs="1"/>
- <xs:element ref="description" minOccurs="0"/>
- <xs:element ref="entry" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute ref="name" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="message">
- <xs:complexType>
- <xs:sequence>
- <xs:sequence minOccurs="1" maxOccurs="1">
- <xs:choice minOccurs="0" maxOccurs="1">
- <xs:element ref="deprecated"/>
- <xs:element ref="wip"/>
- </xs:choice>
- <xs:element ref="description" minOccurs="1" maxOccurs="1"/>
- <xs:element ref="field" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
-
- <xs:sequence minOccurs="0" maxOccurs="1">
- <xs:element ref="extensions" minOccurs="1" maxOccurs="1"/>
- <xs:element ref="field" minOccurs="1" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:sequence>
- <xs:attribute ref="id" use="required"/>
- <xs:attribute ref="name" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:element name="enums">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="enum" maxOccurs="unbounded" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="messages">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="message" maxOccurs="unbounded" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="mavlink">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="include" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element ref="version" minOccurs="0"/>
- <xs:element ref="dialect" minOccurs="0"/>
- <xs:element ref="enums" minOccurs="0"/>
- <xs:element ref="messages"/>
- </xs:sequence>
- <xs:attribute name="file" type="xs:anyURI"/>
- </xs:complexType>
- </xs:element>
- </xs:schema>
|