summaryrefslogtreecommitdiffstats
path: root/Schemas/Parameter.xsd
diff options
context:
space:
mode:
Diffstat (limited to 'Schemas/Parameter.xsd')
-rw-r--r--Schemas/Parameter.xsd380
1 files changed, 190 insertions, 190 deletions
diff --git a/Schemas/Parameter.xsd b/Schemas/Parameter.xsd
index f174b6e..14f7629 100644
--- a/Schemas/Parameter.xsd
+++ b/Schemas/Parameter.xsd
@@ -1,190 +1,190 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
- <xs:attributeGroup name="Nameable">
- <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
- <xs:attribute name="Description" type="xs:string" use="optional"/>
- </xs:attributeGroup>
- <xs:attributeGroup name="TypedNameable">
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Type" type="xs:NMTOKEN" use="required"/>
- </xs:attributeGroup>
- <xs:complexType name="ComponentInstance">
- <xs:attributeGroup ref="TypedNameable"/>
- <xs:attribute name="Mapping" use="optional"/>
- </xs:complexType>
- <xs:simpleType name="SizeType">
- <xs:restriction base="xs:positiveInteger">
- <xs:pattern value="8|16|32"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="SizeType64">
- <xs:restriction base="xs:positiveInteger">
- <xs:pattern value="8|16|32|64"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:attributeGroup name="IntegerParameterAttributes">
- <xs:attribute name="Size" type="SizeType" use="required"/>
- <xs:attribute name="Min" type="xs:integer" use="optional"/>
- <xs:attribute name="Max" type="xs:integer" use="optional"/>
- <xs:attribute name="Signed" type="xs:boolean" use="optional" default="false"/>
- </xs:attributeGroup>
- <xs:attributeGroup name="ArrayLengthAttribute">
- <xs:attribute name="ArrayLength" type="xs:nonNegativeInteger" use="optional" default="0"/>
- </xs:attributeGroup>
- <xs:complexType name="Adaptation">
- <xs:attribute name="Offset" type="xs:integer" default="0"/>
- </xs:complexType>
- <xs:complexType name="LinearAdaptationType">
- <xs:complexContent>
- <xs:extension base="Adaptation">
- <xs:attribute name="SlopeNumerator" type="xs:double" default="1"/>
- <xs:attribute name="SlopeDenominator" type="xs:double" default="1"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="LinearAdaptation" type="LinearAdaptationType"/>
- <xs:element name="LogarithmicAdaptation">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="LinearAdaptationType">
- <xs:attribute name="LogarithmBase" type="xs:double" default="10"/>
- <xs:attribute name="FloorValue" type="xs:double" default="-INF"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="Parameter" abstract="true">
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- <xs:attributeGroup ref="ArrayLengthAttribute"/>
- </xs:complexType>
- <xs:element name="BooleanParameter">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:attribute name="Size" fixed="8"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="IntegerParameterType">
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:choice minOccurs="0">
- <xs:element ref="LinearAdaptation"/>
- <xs:element ref="LogarithmicAdaptation"/>
- </xs:choice>
- <xs:attributeGroup ref="IntegerParameterAttributes"/>
- <xs:attribute name="Unit" type="xs:token" use="optional"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="IntegerParameter" type="IntegerParameterType"/>
- <xs:complexType name="EnumParameterType">
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:sequence>
- <xs:element name="ValuePair" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="Literal" type="xs:string" use="required"/>
- <xs:attribute name="Numerical" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="0|[+-]?[1-9][0-9]*"/>
- <xs:pattern value="0x[0-9a-fA-F]+"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="Size" type="SizeType" use="required"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="EnumParameter" type="EnumParameterType">
- <xs:unique name="LiteralUniqueness">
- <xs:selector xpath="ValuePair"/>
- <xs:field xpath="@Literal"/>
- </xs:unique>
- <xs:unique name="NumericalUniqueness">
- <xs:selector xpath="ValuePair"/>
- <xs:field xpath="@Numerical"/>
- </xs:unique>
- </xs:element>
- <xs:complexType name="FixedPointParameterType">
- <xs:complexContent>
- <xs:extension base="Parameter">
- <xs:attribute name="Size" type="SizeType" use="required"/>
- <xs:attribute name="Integral" type="xs:nonNegativeInteger" use="required"/>
- <xs:attribute name="Fractional" type="xs:nonNegativeInteger" use="required"/>
- <xs:attribute name="Unit" type="xs:token" use="optional"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="FixedPointParameter" type="FixedPointParameterType"/>
- <xs:complexType name="BitParameterType">
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Size" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:positiveInteger">
- <xs:maxInclusive value="64"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="Pos" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:nonNegativeInteger">
- <xs:maxInclusive value="63"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="Max" type="xs:integer" use="optional"/>
- </xs:complexType>
- <xs:element name="BitParameterBlock">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="BitParameter" type="BitParameterType" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Size" type="SizeType64" use="required"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- </xs:complexType>
- <xs:unique name="BitParameterBlockSubElementsUniqueness">
- <xs:selector xpath="*"/>
- <xs:field xpath="@Name"/>
- </xs:unique>
- </xs:element>
- <xs:element name="StringParameter">
- <xs:complexType>
- <xs:attributeGroup ref="Nameable"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- <xs:attribute name="MaxLength" type="xs:nonNegativeInteger" use="required"/>
- </xs:complexType>
- </xs:element>
- <xs:group name="ParameterBlockGroup">
- <xs:choice>
- <xs:element ref="BooleanParameter"/>
- <xs:element ref="IntegerParameter"/>
- <xs:element ref="EnumParameter"/>
- <xs:element ref="FixedPointParameter"/>
- <xs:element ref="BitParameterBlock"/>
- <xs:element ref="StringParameter"/>
- <xs:element name="Component" type="ComponentInstance"/>
- <xs:element name="ParameterBlock" type="ParameterBlockType">
- <xs:unique name="ParameterBlockSubElementsUniqueness">
- <xs:selector xpath="*"/>
- <xs:field xpath="@Name"/>
- </xs:unique>
- </xs:element>
- </xs:choice>
- </xs:group>
- <xs:complexType name="ParameterBlockType">
- <xs:sequence>
- <xs:group ref="ParameterBlockGroup" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attributeGroup ref="Nameable"/>
- <xs:attributeGroup ref="ArrayLengthAttribute"/>
- <xs:attribute name="Mapping" type="xs:string" use="optional"/>
- </xs:complexType>
-</xs:schema>
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:attributeGroup name="Nameable">
+ <xs:attribute name="Name" type="xs:NMTOKEN" use="required"/>
+ <xs:attribute name="Description" type="xs:string" use="optional"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="TypedNameable">
+ <xs:attributeGroup ref="Nameable"/>
+ <xs:attribute name="Type" type="xs:NMTOKEN" use="required"/>
+ </xs:attributeGroup>
+ <xs:complexType name="ComponentInstance">
+ <xs:attributeGroup ref="TypedNameable"/>
+ <xs:attribute name="Mapping" use="optional"/>
+ </xs:complexType>
+ <xs:simpleType name="SizeType">
+ <xs:restriction base="xs:positiveInteger">
+ <xs:pattern value="8|16|32"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="SizeType64">
+ <xs:restriction base="xs:positiveInteger">
+ <xs:pattern value="8|16|32|64"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="IntegerParameterAttributes">
+ <xs:attribute name="Size" type="SizeType" use="required"/>
+ <xs:attribute name="Min" type="xs:integer" use="optional"/>
+ <xs:attribute name="Max" type="xs:integer" use="optional"/>
+ <xs:attribute name="Signed" type="xs:boolean" use="optional" default="false"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="ArrayLengthAttribute">
+ <xs:attribute name="ArrayLength" type="xs:nonNegativeInteger" use="optional" default="0"/>
+ </xs:attributeGroup>
+ <xs:complexType name="Adaptation">
+ <xs:attribute name="Offset" type="xs:integer" default="0"/>
+ </xs:complexType>
+ <xs:complexType name="LinearAdaptationType">
+ <xs:complexContent>
+ <xs:extension base="Adaptation">
+ <xs:attribute name="SlopeNumerator" type="xs:double" default="1"/>
+ <xs:attribute name="SlopeDenominator" type="xs:double" default="1"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="LinearAdaptation" type="LinearAdaptationType"/>
+ <xs:element name="LogarithmicAdaptation">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="LinearAdaptationType">
+ <xs:attribute name="LogarithmBase" type="xs:double" default="10"/>
+ <xs:attribute name="FloorValue" type="xs:double" default="-INF"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="Parameter" abstract="true">
+ <xs:attributeGroup ref="Nameable"/>
+ <xs:attribute name="Mapping" type="xs:string" use="optional"/>
+ <xs:attributeGroup ref="ArrayLengthAttribute"/>
+ </xs:complexType>
+ <xs:element name="BooleanParameter">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="Parameter">
+ <xs:attribute name="Size" fixed="8"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="IntegerParameterType">
+ <xs:complexContent>
+ <xs:extension base="Parameter">
+ <xs:choice minOccurs="0">
+ <xs:element ref="LinearAdaptation"/>
+ <xs:element ref="LogarithmicAdaptation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="IntegerParameterAttributes"/>
+ <xs:attribute name="Unit" type="xs:token" use="optional"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="IntegerParameter" type="IntegerParameterType"/>
+ <xs:complexType name="EnumParameterType">
+ <xs:complexContent>
+ <xs:extension base="Parameter">
+ <xs:sequence>
+ <xs:element name="ValuePair" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:attribute name="Literal" type="xs:string" use="required"/>
+ <xs:attribute name="Numerical" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="0|[+-]?[1-9][0-9]*"/>
+ <xs:pattern value="0x[0-9a-fA-F]+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="Size" type="SizeType" use="required"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="EnumParameter" type="EnumParameterType">
+ <xs:unique name="LiteralUniqueness">
+ <xs:selector xpath="ValuePair"/>
+ <xs:field xpath="@Literal"/>
+ </xs:unique>
+ <xs:unique name="NumericalUniqueness">
+ <xs:selector xpath="ValuePair"/>
+ <xs:field xpath="@Numerical"/>
+ </xs:unique>
+ </xs:element>
+ <xs:complexType name="FixedPointParameterType">
+ <xs:complexContent>
+ <xs:extension base="Parameter">
+ <xs:attribute name="Size" type="SizeType" use="required"/>
+ <xs:attribute name="Integral" type="xs:nonNegativeInteger" use="required"/>
+ <xs:attribute name="Fractional" type="xs:nonNegativeInteger" use="required"/>
+ <xs:attribute name="Unit" type="xs:token" use="optional"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="FixedPointParameter" type="FixedPointParameterType"/>
+ <xs:complexType name="BitParameterType">
+ <xs:attributeGroup ref="Nameable"/>
+ <xs:attribute name="Size" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:positiveInteger">
+ <xs:maxInclusive value="64"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="Pos" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:nonNegativeInteger">
+ <xs:maxInclusive value="63"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="Max" type="xs:integer" use="optional"/>
+ </xs:complexType>
+ <xs:element name="BitParameterBlock">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="BitParameter" type="BitParameterType" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="Nameable"/>
+ <xs:attribute name="Size" type="SizeType64" use="required"/>
+ <xs:attribute name="Mapping" type="xs:string" use="optional"/>
+ </xs:complexType>
+ <xs:unique name="BitParameterBlockSubElementsUniqueness">
+ <xs:selector xpath="*"/>
+ <xs:field xpath="@Name"/>
+ </xs:unique>
+ </xs:element>
+ <xs:element name="StringParameter">
+ <xs:complexType>
+ <xs:attributeGroup ref="Nameable"/>
+ <xs:attribute name="Mapping" type="xs:string" use="optional"/>
+ <xs:attribute name="MaxLength" type="xs:nonNegativeInteger" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="ParameterBlockGroup">
+ <xs:choice>
+ <xs:element ref="BooleanParameter"/>
+ <xs:element ref="IntegerParameter"/>
+ <xs:element ref="EnumParameter"/>
+ <xs:element ref="FixedPointParameter"/>
+ <xs:element ref="BitParameterBlock"/>
+ <xs:element ref="StringParameter"/>
+ <xs:element name="Component" type="ComponentInstance"/>
+ <xs:element name="ParameterBlock" type="ParameterBlockType">
+ <xs:unique name="ParameterBlockSubElementsUniqueness">
+ <xs:selector xpath="*"/>
+ <xs:field xpath="@Name"/>
+ </xs:unique>
+ </xs:element>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="ParameterBlockType">
+ <xs:sequence>
+ <xs:group ref="ParameterBlockGroup" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="Nameable"/>
+ <xs:attributeGroup ref="ArrayLengthAttribute"/>
+ <xs:attribute name="Mapping" type="xs:string" use="optional"/>
+ </xs:complexType>
+</xs:schema>