1*c33452fbSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?> 2*c33452fbSAndroid Build Coastguard Worker<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> 3*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup name="Nameable"> 4*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/> 5*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Description" type="xs:string" use="optional"/> 6*c33452fbSAndroid Build Coastguard Worker </xs:attributeGroup> 7*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup name="TypedNameable"> 8*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="Nameable"/> 9*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Type" type="xs:NMTOKEN" use="required"/> 10*c33452fbSAndroid Build Coastguard Worker </xs:attributeGroup> 11*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="ComponentInstance"> 12*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="TypedNameable"/> 13*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="ArrayLengthAttribute"/> 14*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Mapping" use="optional"/> 15*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 16*c33452fbSAndroid Build Coastguard Worker <xs:simpleType name="SizeType"> 17*c33452fbSAndroid Build Coastguard Worker <xs:restriction base="xs:positiveInteger"> 18*c33452fbSAndroid Build Coastguard Worker <xs:pattern value="8|16|32"/> 19*c33452fbSAndroid Build Coastguard Worker </xs:restriction> 20*c33452fbSAndroid Build Coastguard Worker </xs:simpleType> 21*c33452fbSAndroid Build Coastguard Worker <xs:simpleType name="SizeType64"> 22*c33452fbSAndroid Build Coastguard Worker <xs:restriction base="xs:positiveInteger"> 23*c33452fbSAndroid Build Coastguard Worker <xs:pattern value="8|16|32|64"/> 24*c33452fbSAndroid Build Coastguard Worker </xs:restriction> 25*c33452fbSAndroid Build Coastguard Worker </xs:simpleType> 26*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup name="IntegerParameterAttributes"> 27*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Size" type="SizeType" use="required"/> 28*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Min" type="xs:integer" use="optional"/> 29*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Max" type="xs:integer" use="optional"/> 30*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Signed" type="xs:boolean" use="optional" default="false"/> 31*c33452fbSAndroid Build Coastguard Worker </xs:attributeGroup> 32*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup name="ArrayLengthAttribute"> 33*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="ArrayLength" type="xs:nonNegativeInteger" use="optional" default="0"/> 34*c33452fbSAndroid Build Coastguard Worker </xs:attributeGroup> 35*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="Adaptation"> 36*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Offset" type="xs:integer" default="0"/> 37*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 38*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="LinearAdaptationType"> 39*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 40*c33452fbSAndroid Build Coastguard Worker <xs:extension base="Adaptation"> 41*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="SlopeNumerator" type="xs:double" default="1"/> 42*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="SlopeDenominator" type="xs:double" default="1"/> 43*c33452fbSAndroid Build Coastguard Worker </xs:extension> 44*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 45*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 46*c33452fbSAndroid Build Coastguard Worker <xs:element name="LinearAdaptation" type="LinearAdaptationType"/> 47*c33452fbSAndroid Build Coastguard Worker <xs:element name="LogarithmicAdaptation"> 48*c33452fbSAndroid Build Coastguard Worker <xs:complexType> 49*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 50*c33452fbSAndroid Build Coastguard Worker <xs:extension base="LinearAdaptationType"> 51*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="LogarithmBase" type="xs:double" default="10"/> 52*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="FloorValue" type="xs:double" default="-INF"/> 53*c33452fbSAndroid Build Coastguard Worker </xs:extension> 54*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 55*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 56*c33452fbSAndroid Build Coastguard Worker </xs:element> 57*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="Parameter" abstract="true"> 58*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="Nameable"/> 59*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Mapping" type="xs:string" use="optional"/> 60*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="ArrayLengthAttribute"/> 61*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 62*c33452fbSAndroid Build Coastguard Worker <xs:element name="BooleanParameter"> 63*c33452fbSAndroid Build Coastguard Worker <xs:complexType> 64*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 65*c33452fbSAndroid Build Coastguard Worker <xs:extension base="Parameter"> 66*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Size" fixed="8"/> 67*c33452fbSAndroid Build Coastguard Worker </xs:extension> 68*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 69*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 70*c33452fbSAndroid Build Coastguard Worker </xs:element> 71*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="IntegerParameterType"> 72*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 73*c33452fbSAndroid Build Coastguard Worker <xs:extension base="Parameter"> 74*c33452fbSAndroid Build Coastguard Worker <xs:choice minOccurs="0"> 75*c33452fbSAndroid Build Coastguard Worker <xs:element ref="LinearAdaptation"/> 76*c33452fbSAndroid Build Coastguard Worker <xs:element ref="LogarithmicAdaptation"/> 77*c33452fbSAndroid Build Coastguard Worker </xs:choice> 78*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="IntegerParameterAttributes"/> 79*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Unit" type="xs:token" use="optional"/> 80*c33452fbSAndroid Build Coastguard Worker </xs:extension> 81*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 82*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 83*c33452fbSAndroid Build Coastguard Worker <xs:element name="IntegerParameter" type="IntegerParameterType"/> 84*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="EnumParameterType"> 85*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 86*c33452fbSAndroid Build Coastguard Worker <xs:extension base="Parameter"> 87*c33452fbSAndroid Build Coastguard Worker <xs:sequence> 88*c33452fbSAndroid Build Coastguard Worker <xs:element name="ValuePair" maxOccurs="unbounded"> 89*c33452fbSAndroid Build Coastguard Worker <xs:complexType> 90*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Literal" type="xs:string" use="required"/> 91*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Numerical" use="required"> 92*c33452fbSAndroid Build Coastguard Worker <xs:simpleType> 93*c33452fbSAndroid Build Coastguard Worker <xs:restriction base="xs:string"> 94*c33452fbSAndroid Build Coastguard Worker <xs:pattern value="0|[+-]?[1-9][0-9]*"/> 95*c33452fbSAndroid Build Coastguard Worker <xs:pattern value="0x[0-9a-fA-F]+"/> 96*c33452fbSAndroid Build Coastguard Worker </xs:restriction> 97*c33452fbSAndroid Build Coastguard Worker </xs:simpleType> 98*c33452fbSAndroid Build Coastguard Worker </xs:attribute> 99*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 100*c33452fbSAndroid Build Coastguard Worker </xs:element> 101*c33452fbSAndroid Build Coastguard Worker </xs:sequence> 102*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Size" type="SizeType" use="required"/> 103*c33452fbSAndroid Build Coastguard Worker </xs:extension> 104*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 105*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 106*c33452fbSAndroid Build Coastguard Worker <xs:element name="EnumParameter" type="EnumParameterType"> 107*c33452fbSAndroid Build Coastguard Worker <xs:unique name="LiteralUniqueness"> 108*c33452fbSAndroid Build Coastguard Worker <xs:selector xpath="ValuePair"/> 109*c33452fbSAndroid Build Coastguard Worker <xs:field xpath="@Literal"/> 110*c33452fbSAndroid Build Coastguard Worker </xs:unique> 111*c33452fbSAndroid Build Coastguard Worker <xs:unique name="NumericalUniqueness"> 112*c33452fbSAndroid Build Coastguard Worker <xs:selector xpath="ValuePair"/> 113*c33452fbSAndroid Build Coastguard Worker <xs:field xpath="@Numerical"/> 114*c33452fbSAndroid Build Coastguard Worker </xs:unique> 115*c33452fbSAndroid Build Coastguard Worker </xs:element> 116*c33452fbSAndroid Build Coastguard Worker <xs:simpleType name="PointBound"> 117*c33452fbSAndroid Build Coastguard Worker <xs:restriction base="xs:string"> 118*c33452fbSAndroid Build Coastguard Worker <xs:pattern value="(0|[+-]?0\.[0-9]+|(([+-]?[1-9][0-9]*)(\.[0-9]+)?))([Ee][+-]?[0-9]+)?"/> 119*c33452fbSAndroid Build Coastguard Worker </xs:restriction> 120*c33452fbSAndroid Build Coastguard Worker </xs:simpleType> 121*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="PointParameterType"> 122*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 123*c33452fbSAndroid Build Coastguard Worker <xs:extension base="Parameter"> 124*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Unit" type="xs:token" use="optional"/> 125*c33452fbSAndroid Build Coastguard Worker </xs:extension> 126*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 127*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 128*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="FixedPointParameterType"> 129*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 130*c33452fbSAndroid Build Coastguard Worker <xs:extension base="PointParameterType"> 131*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Size" type="SizeType" use="required"/> 132*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Integral" type="xs:nonNegativeInteger" use="required"/> 133*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Fractional" type="xs:nonNegativeInteger" use="required"/> 134*c33452fbSAndroid Build Coastguard Worker </xs:extension> 135*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 136*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 137*c33452fbSAndroid Build Coastguard Worker <xs:element name="FixedPointParameter" type="FixedPointParameterType"/> 138*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="FloatingPointParameterType"> 139*c33452fbSAndroid Build Coastguard Worker <xs:complexContent> 140*c33452fbSAndroid Build Coastguard Worker <xs:extension base="PointParameterType"> 141*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Size" fixed="32"/> 142*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Min" type="PointBound" use="optional"/> 143*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Max" type="PointBound" use="optional"/> 144*c33452fbSAndroid Build Coastguard Worker </xs:extension> 145*c33452fbSAndroid Build Coastguard Worker </xs:complexContent> 146*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 147*c33452fbSAndroid Build Coastguard Worker <xs:element name="FloatingPointParameter" type="FloatingPointParameterType"/> 148*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="BitParameterType"> 149*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="Nameable"/> 150*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Size" use="required"> 151*c33452fbSAndroid Build Coastguard Worker <xs:simpleType> 152*c33452fbSAndroid Build Coastguard Worker <xs:restriction base="xs:positiveInteger"> 153*c33452fbSAndroid Build Coastguard Worker <xs:maxInclusive value="64"/> 154*c33452fbSAndroid Build Coastguard Worker </xs:restriction> 155*c33452fbSAndroid Build Coastguard Worker </xs:simpleType> 156*c33452fbSAndroid Build Coastguard Worker </xs:attribute> 157*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Pos" use="required"> 158*c33452fbSAndroid Build Coastguard Worker <xs:simpleType> 159*c33452fbSAndroid Build Coastguard Worker <xs:restriction base="xs:nonNegativeInteger"> 160*c33452fbSAndroid Build Coastguard Worker <xs:maxInclusive value="63"/> 161*c33452fbSAndroid Build Coastguard Worker </xs:restriction> 162*c33452fbSAndroid Build Coastguard Worker </xs:simpleType> 163*c33452fbSAndroid Build Coastguard Worker </xs:attribute> 164*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Max" type="xs:integer" use="optional"/> 165*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 166*c33452fbSAndroid Build Coastguard Worker <xs:element name="BitParameterBlock"> 167*c33452fbSAndroid Build Coastguard Worker <xs:complexType> 168*c33452fbSAndroid Build Coastguard Worker <xs:sequence> 169*c33452fbSAndroid Build Coastguard Worker <xs:element name="BitParameter" type="BitParameterType" maxOccurs="unbounded"/> 170*c33452fbSAndroid Build Coastguard Worker </xs:sequence> 171*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="Nameable"/> 172*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Size" type="SizeType64" use="required"/> 173*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Mapping" type="xs:string" use="optional"/> 174*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 175*c33452fbSAndroid Build Coastguard Worker <xs:unique name="BitParameterBlockSubElementsUniqueness"> 176*c33452fbSAndroid Build Coastguard Worker <xs:selector xpath="*"/> 177*c33452fbSAndroid Build Coastguard Worker <xs:field xpath="@Name"/> 178*c33452fbSAndroid Build Coastguard Worker </xs:unique> 179*c33452fbSAndroid Build Coastguard Worker </xs:element> 180*c33452fbSAndroid Build Coastguard Worker <xs:element name="StringParameter"> 181*c33452fbSAndroid Build Coastguard Worker <xs:complexType> 182*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="Nameable"/> 183*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Mapping" type="xs:string" use="optional"/> 184*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="MaxLength" type="xs:nonNegativeInteger" use="required"/> 185*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 186*c33452fbSAndroid Build Coastguard Worker </xs:element> 187*c33452fbSAndroid Build Coastguard Worker <xs:group name="ParameterBlockGroup"> 188*c33452fbSAndroid Build Coastguard Worker <xs:choice> 189*c33452fbSAndroid Build Coastguard Worker <xs:element ref="BooleanParameter"/> 190*c33452fbSAndroid Build Coastguard Worker <xs:element ref="IntegerParameter"/> 191*c33452fbSAndroid Build Coastguard Worker <xs:element ref="EnumParameter"/> 192*c33452fbSAndroid Build Coastguard Worker <xs:element ref="FixedPointParameter"/> 193*c33452fbSAndroid Build Coastguard Worker <xs:element ref="FloatingPointParameter"/> 194*c33452fbSAndroid Build Coastguard Worker <xs:element ref="BitParameterBlock"/> 195*c33452fbSAndroid Build Coastguard Worker <xs:element ref="StringParameter"/> 196*c33452fbSAndroid Build Coastguard Worker <xs:element name="Component" type="ComponentInstance"/> 197*c33452fbSAndroid Build Coastguard Worker <xs:element name="ParameterBlock" type="ParameterBlockType"> 198*c33452fbSAndroid Build Coastguard Worker <xs:unique name="ParameterBlockSubElementsUniqueness"> 199*c33452fbSAndroid Build Coastguard Worker <xs:selector xpath="*"/> 200*c33452fbSAndroid Build Coastguard Worker <xs:field xpath="@Name"/> 201*c33452fbSAndroid Build Coastguard Worker </xs:unique> 202*c33452fbSAndroid Build Coastguard Worker </xs:element> 203*c33452fbSAndroid Build Coastguard Worker </xs:choice> 204*c33452fbSAndroid Build Coastguard Worker </xs:group> 205*c33452fbSAndroid Build Coastguard Worker <xs:complexType name="ParameterBlockType"> 206*c33452fbSAndroid Build Coastguard Worker <xs:sequence> 207*c33452fbSAndroid Build Coastguard Worker <xs:group ref="ParameterBlockGroup" maxOccurs="unbounded"/> 208*c33452fbSAndroid Build Coastguard Worker </xs:sequence> 209*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="Nameable"/> 210*c33452fbSAndroid Build Coastguard Worker <xs:attributeGroup ref="ArrayLengthAttribute"/> 211*c33452fbSAndroid Build Coastguard Worker <xs:attribute name="Mapping" type="xs:string" use="optional"/> 212*c33452fbSAndroid Build Coastguard Worker </xs:complexType> 213*c33452fbSAndroid Build Coastguard Worker</xs:schema> 214