|
|
Device Kit |
|
Device Kit Attributes Elements XML Reference |
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2002, 2008 IBM. -->
<!-- All rights reserved. This program and the accompanying materials -->
<!-- are made available under the terms of the Eclipse Public License v1.0 -->
<!-- which accompanies this distribution, and is available at -->
<!-- http://www.eclipse.org/legal/epl-v10.html -->
<!-- -->
<!-- Contributors: -->
<!-- IBM - initial API and implementation -->
<!-- WARNING: -->
<!-- Consult the hardware manufacturer's technical specifications and User -->
<!-- Guide for proper usage of the hardware before you use the Device Kit. -->
<!-- Improper usage may result in damage to the hardware. -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="dkml" type="dkmlType">
<xs:annotation>
<xs:documentation><![CDATA[Specifies the root element of a Device Kit
<b>D</b>evice <b>K</b>it <b>L</b>anguage (dkml) document.]]>
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the AttributeFormatType -->
<xs:simpleType name="AttributeFormatType">
<xs:restriction base="xs:string">
<xs:enumeration value="binary">
<xs:annotation>
<xs:documentation>Specifies that the format is
binary (0-1). Each binary digit defines a single
bit of data.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="decimal">
<xs:annotation>
<xs:documentation>Specifies that the format is
decimal (0-9).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="hex">
<xs:annotation>
<xs:documentation>Specifies that the format is hex
(0-9, A-F). Each hex digit defines 4 bits of data.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="octal">
<xs:annotation>
<xs:documentation>Specifies that the format is
octal (0-7). Each octal digit defines 3 bits of data.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<!-- Define the UserMessageBaseGroup -->
<xs:attributeGroup name="UserMessageBaseGroup">
<xs:attribute name="usermessagebase" type="xs:integer">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the start of the user messages.
Default is 1000.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<xs:attributeGroup name="AttributeTargetGroup">
<xs:attribute name="target" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the target.
Default is 1000.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the Execution Environments Attribute -->
<xs:attributeGroup name="ExecutionEnvironments">
<xs:attribute name="executionenvironments" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the Execution Environments for the bundle Manifest.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeCustomType -->
<xs:simpleType name="AttributeCustomType">
<xs:restriction base="xs:string">
<xs:enumeration value="boolean">
<xs:annotation>
<xs:documentation>Specifies that the custom type as boolean.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="int">
<xs:annotation>
<xs:documentation>Specifies that the custom type as int.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="long">
<xs:annotation>
<xs:documentation>Specifies that the custom type as long.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="String">
<xs:annotation>
<xs:documentation>Specifies that the custom type as String.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<!-- Define the AttributeIdCustomGroup -->
<xs:attributeGroup name="AttributeIdCustomGroup">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attribute name="name" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Required. The name/key of the custom variable.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="type" type="AttributeCustomType" use="required">
<xs:annotation>
<xs:documentation>Required. The type of the custom variable.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="defaultvalue" type="xs:string">
<xs:annotation>
<xs:documentation>Required. The default value to assign
the variable.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="required" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies if required by the configuration.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="false" name="access" type="xs:boolean">
<xs:annotation>
<xs:documentation>If true, a class field, get method,
and set method will be generated for the variable.
Default is false.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeNameGroup -->
<xs:attributeGroup name="AttributeIdGroup">
<xs:attribute name="id" type="xs:ID" use="optional">
<xs:annotation>
<xs:documentation>Specifies an unique identifier for
this element. After defining an element with the id
attribute, other elements can reference this
element by using the <a
href=""idrefAttribute.html"">idref</a>
attribute. Since the id attribute value is used by
the code generator to generate field and method
names, no spaces, periods or commas should be used.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdrefGroup -->
<!-- Define the AttributeNameGroup -->
<xs:attributeGroup name="AttributeNameGroup">
<xs:attribute name="name" type="xs:Name" use="optional">
<xs:annotation>
<xs:documentation>Specifies a name for
this element. Normally, if the name attribute is not specified, then the
id attribute is used for the name of the element.
Since the name attribute value is used by
the code generator to generate field and method
names, no spaces, periods or commas should be used.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdrefGroup -->
<xs:attributeGroup name="AttributeIdrefGroup">
<xs:attribute name="idref" type="xs:IDREF" use="optional">
<xs:annotation>
<xs:documentation>Specifies a reference to the element
with the matching <a
href=""idAttribute.html"">id</a> attribute.
The matching <a
href=""idAttribute.html"">id</a> attribute
must be specified before the idref attribute can be used.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdrefGlobalGroup -->
<xs:attributeGroup name="AttributeIdrefGlobalGroup">
<xs:attribute name="idref" type="xs:anyURI" use="optional">
<xs:annotation>
<xs:documentation>Specifies a reference to the element
with the matching <a
href=""idAttribute.html"">id</a> attribute.
The matching <a
href=""idAttribute.html"">id</a> attribute
must be specified before the idref attribute can be used.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdFormatGroup -->
<xs:attributeGroup name="AttributeIdFormatGroup">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attribute name="format" type="AttributeFormatType">
<xs:annotation>
<xs:documentation>Specifies the numeric format base of
data. For instance, if the protocol''s
specification are in hexadecimal format, this
attribute should be set to ""hex"".</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the PackageBaseGroup -->
<xs:attributeGroup name="PackageBaseGroup">
<xs:attribute name="packagebase" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the start of the generated
code''s package. That is, any code that Device
Kit generates will be in a package starting with
this value. A common value is ""com.<i>company-name</i>"".</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdFormatImplementationGroup -->
<xs:attributeGroup name="AttributeIdFormatImplementationGroup">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attribute name="implementation" type="xs:Name">
<xs:annotation>
<xs:documentation>Specifies the implementation class name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationGroup -->
<xs:attributeGroup name="AttributeIdImplementationGroup">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attribute name="implementation" type="xs:Name">
<xs:annotation>
<xs:documentation>Specifies the implementation class name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationSuperclassGroup -->
<xs:attributeGroup name="AttributeIdImplementationSuperclassGroup">
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attribute name="superclass" type="xs:Name">
<xs:annotation>
<xs:documentation>Specifies the implementation super
class name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationServiceGroup -->
<xs:attributeGroup name="AttributeIdImplementationServiceGroup">
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attribute name="service" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Open Services Gateway
Initiative (OSGi) service interface name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationServiceBundleGroup -->
<xs:attributeGroup name="AttributeIdImplementationServiceBundleGroup">
<xs:attributeGroup ref="AttributeIdImplementationServiceGroup"/>
<xs:attribute name="bundle" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Open Services Gateway
Initiative (OSGi) bundle name.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="bundleid" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Open Services Gateway
Initiative (OSGi) bundle symbolic id.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationServiceBundleLazyGroup -->
<xs:attributeGroup name="AttributeIdImplementationServiceBundleLazyGroup">
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attribute default="false" name="lazy" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies if the generated code should
be lazy. The default is false.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationServiceBundleLazyAbstractGroup -->
<xs:attributeGroup name="AttributeIdImplementationServiceBundleLazyAbstractGroup">
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleLazyGroup"/>
<xs:attribute default="false" name="abstract" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies an abstract implementation
class. The default is false.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="createmethod" type="xs:boolean" default="false">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies create method(s). The default is false.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="superclass" type="xs:Name">
<xs:annotation>
<xs:documentation>Specifies the implementation
superclass name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationServiceBundleSuperclassGroup -->
<xs:attributeGroup name="AttributeIdImplementationServiceBundleSuperclassGroup">
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attribute name="superclass" type="xs:Name">
<xs:annotation>
<xs:documentation>Specifies the implementation
superclass name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeIdImplementationServiceBundleSuperclassAbstractGroup -->
<xs:attributeGroup name="AttributeIdImplementationServiceBundleSuperclassAbstractGroup">
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleSuperclassGroup"/>
<xs:attribute default="false" name="abstract" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies an abstract implementation
class. The default is false.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeMonitortimeGroup -->
<xs:attributeGroup name="AttributeMonitortimeGroup">
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attribute name="monitortime" type="xs:unsignedLong">
<xs:annotation>
<xs:documentation>Specifies the monitor time in milliseconds.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeCodenameGroup -->
<xs:attributeGroup name="AttributeCodenameGroup">
<xs:attribute name="codename" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the name in the code should be used instead of the Device Kit generated name.
</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeOldGroup -->
<xs:attributeGroup name="AttributeOldGroup">
<xs:attribute name="old" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies if old code should be generated.
The default value is defined in the Device Kit preference settings.
</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeSimpleParameterType -->
<xs:simpleType name="AttributeSimpleParameterType">
<xs:restriction base="xs:string">
<xs:enumeration value="ascii">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is American National Standard Code for
Information Interchange (ASCII).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="asciiz">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a zero terminated American National Standard
Code for Information Interchange (ASCII).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="bit">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a single bit.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="boolean">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a boolean.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="boolean[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a boolean array.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="byte">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed byte (8 bits). A signed byte ranges
in value between -128 and 127.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="byte[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a signed byte (8 bits) array. A signed byte ranges
in value between -128 and 127.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="bytes">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an array of bytes.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="double">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a double.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="double[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a double array.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="float">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a float.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="float[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a float array.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="hexascii">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a HEX (base 16) number in American National
Standard Code for Information Interchange (ASCII).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="hexstring">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a HEX (base 16) number String.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="int">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed integer (32 bits). A signed integer
ranges in value between -2147483648 and 2147483647.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="int[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a signed integer (32 bits) array. A signed integer
ranges in value between -2147483648 and 2147483647.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="long">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed long (64 bits). A signed long ranges
in value between -9223372036854775808 and 9223372036854775807.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="long[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a signed long (64 bits) array. A signed long ranges
in value between -9223372036854775808 and 9223372036854775807.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="nascii">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an American National Standard Code for
Information Interchange (ASCII) number.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="nstring">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a numeric string.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="numericstring">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is numeric string.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="short">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed short (16 bits). A signed short
ranges in value between -32768 and 32767.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="string">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a string .</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ubyte">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned byte (8 bits). An unsigned byte
ranges in value between 0 and 255. </xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ubytes">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned bytes (8 bits).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="uint">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned integer (32 bits).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ulong">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned long (64 bits).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ushort">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned short (16 bits). An unsigned
value ranges from 0 to 65535.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<!-- Define the AttributeParametersType -->
<xs:simpleType name="AttributeParametersType">
<xs:restriction base="xs:string">
<xs:enumeration value="Array">
<xs:annotation>
<xs:documentation>Specifies that the parameter will
be an array of Objects (Object[]).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="List">
<xs:annotation>
<xs:documentation>Specifies that the parameter will
be an instance of the List interface.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Map">
<xs:annotation>
<xs:documentation>Specifies that the parameter will
be an instance of the Map interface.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AttributeDataType">
<xs:restriction base="xs:string">
<xs:enumeration value="bit">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a single bit.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="boolean">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a boolean.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="boolean[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a boolean array.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="byte">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed byte (8 bits). A signed byte ranges
in value between -128 and 127.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="byte[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a signed byte (8 bits) array. A signed byte ranges
in value between -128 and 127.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="bytes">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an array of bytes.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="double">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a double.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="double[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a double array.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="float">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a float.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="float[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a float array.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="int">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed integer (32 bits). A signed integer
ranges in value between -2147483648 and 2147483647.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="int[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a signed integer (32 bits) array. A signed integer
ranges in value between -2147483648 and 2147483647.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="long">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed long (64 bits). A signed long ranges
in value between -9223372036854775808 and 9223372036854775807.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="long[]">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the parameter data
is a signed long (64 bits) array. A signed long ranges
in value between -9223372036854775808 and 9223372036854775807.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="short">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a signed short (16 bits). A signed short
ranges in value between -32768 and 32767.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="string">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is a string .</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ubyte">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned byte (8 bits). An unsigned byte
ranges in value between 0 and 255. </xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ubytes">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned bytes (8 bits).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="uint">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned integer (32 bits).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ulong">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned long (64 bits).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ushort">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is an unsigned short (16 bits). An unsigned
value ranges from 0 to 65535.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Array">
<xs:annotation>
<xs:documentation>Specifies that the parameter will
be an array of Objects (Object[]).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="List">
<xs:annotation>
<xs:documentation>Specifies that the parameter will
be an instance of the List interface.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Map">
<xs:annotation>
<xs:documentation>Specifies that the parameter will
be an instance of the Map interface.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<!-- Define the AttributeSimpleCardinalityType -->
<xs:simpleType name="AttributeSimpleCardinalityType">
<xs:restriction base="xs:string">
<xs:enumeration value="Scalar">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the cardinality
value is scalar.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Array">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the cardinality
value is array.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Vector">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the cardinality
value is vector.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<!-- Define the AttributeSimpleConfigurationType -->
<xs:simpleType name="AttributeSimpleConfigurationType">
<xs:restriction base="xs:string">
<xs:enumeration value="Byte">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the configuration
value is an instance of the Byte class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Boolean">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the configuration
value is an instance of the Boolean class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Double">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the configuration
value is an instance of the Double class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Float">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the configuration
value is an instance of the Float class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Integer">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the configuration
value is an instance of the Integer class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Long">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the configuration
value is an instance of the Long class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Short">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> Specifies that the configuration
value is an instance of the Short class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="String">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the configuration
value is a string.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<!-- Define the AttributeConfigurationGroup -->
<xs:attributeGroup name="AttributeConfigurationGroup">
<xs:attribute name="cardinality" type="AttributeSimpleCardinalityType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the cardinality type.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="size" type="xs:integer">
<xs:annotation>
<xs:documentation>Specifies the cardinality size.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="type" type="AttributeSimpleConfigurationType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the configuration type.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="defaultvalue" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the configuration default value.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="required" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies if configuration value if required.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:attributeGroup>
<!-- Define the AttributeSimpleMeasurementType -->
<xs:simpleType name="AttributeSimpleMeasurementType">
<xs:restriction base="xs:string">
<xs:enumeration value="Boolean">
<xs:annotation>
<xs:documentation>Specifies that the measurement
value is an instance of the Boolean class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Integer">
<xs:annotation>
<xs:documentation>Specifies that the measurement
value is an instance of the Integer class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="List">
<xs:annotation>
<xs:documentation>Specifies that the measurement
value is an instance of List.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Long">
<xs:annotation>
<xs:documentation>Specifies that the measurement
value is an instance of the Long class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Map">
<xs:annotation>
<xs:documentation>Specifies that the measurement
value is an instance of Map.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Number">
<xs:annotation>
<xs:documentation> Specifies that the measurement
value is an instance of the Number class.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Object">
<xs:annotation>
<xs:documentation>Specifies that the measurement
value is an Object.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="String">
<xs:annotation>
<xs:documentation>Specifies that the measurement
value is a string.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<!-- Define the adapterType used by the adapter element -->
<xs:complexType name="adapterType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a adapter.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="customparameter"
type="customparameterType">
<xs:annotation>
<xs:documentation>Specifies a custom parameter for this adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway Initiative (OSGi) adapter
service to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of the
package to be imported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="profileref" type="profilerefType">
<xs:annotation>
<xs:documentation>Specifies the name of the profile to be supported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="command" type="commandType">
<xs:annotation>
<xs:documentation>Defines a command supported by
this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="commands" type="commandsType">
<xs:annotation>
<xs:documentation>Specifies a command group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="group" type="groupType">
<xs:annotation>
<xs:documentation>Defines a group
supported by this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="measurement" type="measurementType">
<xs:annotation>
<xs:documentation>Defines a measurement
supported by this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Defines a signal supported by
this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:annotation>
<xs:documentation>Specifies the device(s) or
adapter to be used by the adapter.
</xs:documentation>
</xs:annotation>
<xs:element maxOccurs="1" minOccurs="0" name="device" type="deviceType">
<xs:annotation>
<xs:documentation>Specifies the device used
by the adapter.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleSuperclassAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
<xs:attribute default="false" name="get" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies to generate get methods.
The default is false unless abstract or lazy.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the adaptertestType used by the adaptertest element -->
<xs:complexType name="adaptertestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an adapter test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the adapter test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="send" type="sendType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the message(s) to send
during the test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="adapter" type="adapterType">
<xs:annotation>
<xs:documentation>Specifies the adapter to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface adapter test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the agentType used by the agent element -->
<xs:complexType name="agentType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a agent.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="customparameter"
type="customparameterType">
<xs:annotation>
<xs:documentation>Specifies a custom parameter for this agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="agentparent" type="agentparentType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Agent parent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="agentuses" type="agentusesType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Agent uses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway Initiative (OSGi) agent
service to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of the
package to be imported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:annotation>
<xs:documentation>Specifies the device(s) or
agent to be used by the agent.
</xs:documentation>
</xs:annotation>
<xs:element maxOccurs="1" minOccurs="0" name="agentmodel" type="agentmodelType">
<xs:annotation>
<xs:documentation>Specifies the agent model used
by the agent.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:annotation>
<xs:documentation>Specifies the device(s) or
agent to be used by the agent.
</xs:documentation>
</xs:annotation>
<xs:element maxOccurs="1" minOccurs="0" name="device" type="deviceType">
<xs:annotation>
<xs:documentation>Specifies the device used
by the agent.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="command" type="commandType">
<xs:annotation>
<xs:documentation>Specifies a command that is
supported by this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="commands" type="commandsType">
<xs:annotation>
<xs:documentation>Specifies a command group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="group" type="groupType">
<xs:annotation>
<xs:documentation>Defines a group
supported by this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurement"
type="measurementType">
<xs:annotation>
<xs:documentation>Specifies a measurement
supported by this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Specifies a signal supported
by this device.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleSuperclassAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the agentmodelType used by the agent element -->
<xs:complexType name="agentmodelType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an agent model.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the agent model.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this agent model.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="customparameter"
type="customparameterType">
<xs:annotation>
<xs:documentation>Specifies a custom parameter for this agent model.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway Initiative (OSGi) agent
service to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of the
package to be imported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:annotation>
<xs:documentation>Specifies the device(s) or
agent to be used by the agent.
</xs:documentation>
</xs:annotation>
<xs:element maxOccurs="1" minOccurs="0" name="device" type="deviceType">
<xs:annotation>
<xs:documentation>Specifies the device used
by the agent model.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleSuperclassAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the agentserviceType used by the agentservice element -->
<xs:complexType name="agentserviceType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) agent service name.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the Open Services
Gateway Initiative (OSGi) agent service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the agenttestType used by the agenttest element -->
<xs:complexType name="agenttestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an agent test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the agent test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="send" type="sendType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the message(s) to send
during the test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="agent" type="agentType">
<xs:annotation>
<xs:documentation>Specifies the agent to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="agentmodeltest" type="agentmodeltestType">
<xs:annotation>
<xs:documentation>Specifies the agent model test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface agent test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the agentmodeltestType used by the agenttest element -->
<xs:complexType name="agentmodeltestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an agent model test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the agent model test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="agentmodel" type="agentmodelType">
<xs:annotation>
<xs:documentation>Specifies the agent model to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface agnet model test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the asciiType used by the ascii element -->
<xs:complexType name="asciiType">
<xs:annotation>
<xs:documentation> The ascii tag specifies the ASCII data
for a message or filter. Each character defines 8 bits
of data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the utf8Type used by the utf8 element -->
<xs:complexType name="utf8Type">
<xs:annotation>
<xs:documentation> The utf8 tag specifies the UTF-8 data
for a message.
</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the bundleType used by the bundle element -->
<xs:complexType name="bundleType">
<xs:annotation>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle with a simple bundle activator
should be created.</xs:documentation>
</xs:annotation>
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the binaryType used by the binary element -->
<xs:complexType name="binaryType">
<xs:annotation>
<xs:documentation>Specifies binary data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the booleanType used by the boolean element -->
<xs:complexType name="booleanType">
<xs:annotation>
<xs:documentation>Specifies a boolean value.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the byteType used by the byte element -->
<xs:complexType name="byteType">
<xs:annotation>
<xs:documentation>Specifies a byte of data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!--
<xs:simpleType name="bytesListType">
<xs:list itemType="xs:string"/>
</xs:simpleType>
-->
<!-- Define the bytesSimpleType used by the bytes element -->
<xs:simpleType name="bytesSimpleType">
<xs:annotation>
<xs:documentation> The bytes tag specifies the data for a
message or filter. Each byte defines 8 bits of data.
You can specify the numeric format base of the data with
the format attribute.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="(\s*(\-?\d{1,3}(,\s*(\-?\d{1,3}))*))|(\s*((([a-f]|[A-F]|[0-9]|){1,2})((\,\s*)([0-9]|[a-f]|[A-F]){1,2})*)\s*)"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="bytesType">
<xs:annotation>
<xs:documentation> The bytes tag specifies the data for a
message or filter. Each byte defines 8 bits of data.
You can specify the numeric format base of the data with
the format attribute.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="bytesSimpleType">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the characterType used by the character element -->
<xs:complexType name=" characterType">
<xs:annotation>
<xs:documentation>Specifies a character of data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the dkmlType used by the dkml element -->
<xs:complexType name="dkmlType">
<xs:annotation>
<xs:documentation>Specifies the root element of a Device
Kit Markup Language (dkml) document.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of a Device Kit Markup
Language (dkml) element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="pids" type="pidsType">
<xs:annotation>
<xs:documentation>Specifies the defined pids.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="1">
<xs:element maxOccurs="1" minOccurs="1" name="adapter" type="adapterType">
<xs:annotation>
<xs:documentation>Specifies an adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="adaptertest" type="adaptertestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an adapter test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="agent" type="agentType">
<xs:annotation>
<xs:documentation>Specifies an agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="agentmodel" type="agentmodelType">
<xs:annotation>
<xs:documentation>Specifies the agent model used
by the agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="agenttest" type="agenttestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an agent test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="agentmodeltest" type="agentmodeltestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an agent model test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="concrete" type="concreteType">
<xs:annotation>
<xs:documentation>Specifies a concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="concretetest" type="concretetestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a concrete test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="connection" type="connectionType">
<xs:annotation>
<xs:documentation>Specifies an connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="connectiontest" type="connectiontestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an connection test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="device" type="deviceType">
<xs:annotation>
<xs:documentation>Specifies a device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="devicetest" type="devicetestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a device test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="profile" type="profileType">
<xs:annotation>
<xs:documentation>Specifies a profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="profiletest" type="profiletestType">
<xs:annotation>
<xs:documentation>Specifies a profile test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="testagent" type="testagentType">
<xs:annotation>
<xs:documentation>Specifies a test agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" ref="receiver">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a receiver transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="receivertest" type="receivertestType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a receiver transport test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="transport" type="transportType">
<xs:annotation>
<xs:documentation>Specifies a transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="transporttest" type="transporttestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a transport test.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attribute name="packagebase" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the start of the generated
code''s package. That is, any code that Device
Kit generates will be in a package starting with
this value. A common value is ""com.<i>company-name</i>"".</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the commandType used by the command element -->
<xs:complexType name="commandType">
<xs:annotation>
<xs:documentation> The command tag denotes an action that
can be performed by the hardware device. Usually, a
message must be sent to the hardware device to cause the
action to be performed. When an application requests a
command to be executed, the software device requests the
transport to send the command message to the hardware
device. For example, you might use the command tag to
send a message to a radio to ""turn volume up""
or ""turn on power"". The commands that the
device should define are hardware specific. As such, the
command set for a radio differs from the command set for
a car bus. Also, the command set might vary based on the
company that built the device. To send effective
commands to hardware, be sure to use the hardware
specifications from the manufacturer.
Some commands can be executed with a parameter that will be
encoded into the message before it is sent to the hardware device.
The message that
represent the command are defined in a message tag.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the command description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="optional" type="optionalType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines if this command is optional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the command data units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this command.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies a unique command key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="configuration" type="configurationType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Defines this command as a configuration command.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="commandreceived"
type="commandreceivedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies if a command message can be received from the device.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="rate" type="xs:unsignedLong">
<xs:annotation>
<xs:documentation>Specifies the polling rate in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="message" type="messageType">
<xs:annotation>
<xs:documentation>Specifies the message to execute
the command.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="method" type="methodType">
<xs:annotation>
<xs:documentation>Specifies the method to execute
the command.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="data" type="dataType">
<xs:annotation>
<xs:documentation>Specifies the data to execute
the command.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="measurement"
type="measurementReferenceType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the measurement to get the value for the command.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeSimpleMeasurementType">
<xs:annotation>
<xs:documentation>Specifies the command data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the commandrefType used by the commandref element -->
<xs:complexType name="commandrefType">
<xs:annotation>
<xs:documentation>Specifies a command reference.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the command reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the commandsType used by the commands element -->
<xs:complexType name="commandsType">
<xs:annotation>
<xs:documentation> The commands tag enables you to couple
commands together. You can use the commands tag to
execute a series of commands in sequence. This tag can
have multiple command children. Use the idref attribute
to reference the actual commands under the commands tag.
The value of ""idref"" corresponds to the id of
a previously defined command. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the commands description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the commands units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
group of commands.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies a unique commands key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="configuration" type="configurationType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Defines this command as a configuration command.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="commandreceived"
type="commandreceivedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies if a command message can be received from the device.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="1">
<xs:element maxOccurs="unbounded" minOccurs="1" name="command" type="commandType">
<xs:annotation>
<xs:documentation>Specifies the command within
the group of commands.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="sleep" type="sleepType">
<xs:annotation>
<xs:documentation>Specifies a sleep command.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the commandreceivedType used by the commandreceived element -->
<xs:complexType name="commandreceivedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> If content value is true, then the command received message can occur.
0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the concreteType used by the concrete element -->
<xs:complexType name="concreteType">
<xs:annotation>
<xs:documentation> The concrete tag defines the interface to
a software device. The command tags define the actions
that are supported by this software device. The signals
tags define the events that are supported by this
software device. The measurement tags define the
properties supported by this software device. Use the
transportservice tag to specify the
device’s transport. You can specify
the Open Services Gateway Initiative (OSGi) service and
transport class implementation with the transportservice
tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex concrete.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="commandreceived"
type="commandreceivedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies if a command message can be received from the concrete device.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="initializemeasurements"
type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies that the concrete device should
initialize the measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies an optional key value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="pids" type="pidsType">
<xs:annotation>
<xs:documentation>Specifies the defined pids.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="protocol">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the concrete device protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="command" type="commandType">
<xs:annotation>
<xs:documentation>Defines a command supported by
this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="commands" type="commandsType">
<xs:annotation>
<xs:documentation>Specifies a command group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="group" type="groupType">
<xs:annotation>
<xs:documentation>Defines a group
supported by this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurement"
type="measurementType">
<xs:annotation>
<xs:documentation>Defines a measurement
supported by this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Defines a signal supported by
this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway initiative (OSGi) service
to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of a
package to be imported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="1" ref="receiver">
<xs:annotation>
<xs:documentation>Specifies the receiver transport used
by the concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="transport" type="transportType">
<xs:annotation>
<xs:documentation>Specifies the transport used
by the concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="transportservice"
type="transportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway Initiative (OSGi) transport
service to be used by the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="udp" type="udptransportType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram
Protocol (UDP) transport. Please, use the udptransport element instead of the udp element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="udptransport" type="udptransportType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram
Protocol (UDP) transport.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="managedbundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle"
type="managedfactorybundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleLazyAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the concretetestType used by the concretetest element -->
<xs:complexType name="concretetestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a concrete test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the concrete test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this concrete device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="concrete" type="concreteType">
<xs:annotation>
<xs:documentation>Specifies the concrete device to
be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testexecute" type="testexecuteType">
<xs:annotation>
<xs:documentation>Specifies if all commands should
be executed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testexecuteread"
type="testexecutereadType">
<xs:annotation>
<xs:documentation>Specifies if the executeRead
method should be invoked on all measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testexecutewrite"
type="testexecutewriteType">
<xs:annotation>
<xs:documentation>Specifies if the executeWrite
method should be invoked on all measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testread" type="testreadType">
<xs:annotation>
<xs:documentation>Specifies if the read method
should be invoked on all measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testtrigger" type="testtriggerType">
<xs:annotation>
<xs:documentation>Specifies if all signals should be triggered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface concrete test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the configurationType used by the configuration element -->
<xs:complexType name="configurationType" mixed="true">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> If content value is true, then this is a configuration control.
0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Description of the configuration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the configuration units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this configuration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="enum" type="enumType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a enumeration option configuration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="minimum" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the minimum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="maximum" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the maximum value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeConfigurationGroup"/>
</xs:complexType>
<!-- Define the connectionType used by the connection element -->
<xs:complexType name="connectionType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a connection.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="customparameter"
type="customparameterType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a custom parameter for this connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="managedbundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle"
type="managedfactorybundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationSuperclassGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the connectionserviceType used by the connectionservice element -->
<xs:complexType name="connectionserviceType">
<xs:annotation>
<xs:documentation>Specifies a connection service to be used by the transport.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the connection service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this connection service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the connectiontestType used by the connectiontest element -->
<xs:complexType name="connectiontestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an connection test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the connection test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="send" type="sendType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the message(s) to send
during the test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="connection" type="connectionType">
<xs:annotation>
<xs:documentation>Specifies the connection to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface connection test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the customparameterType used by the customparameter element -->
<xs:complexType name="customparameterType">
<xs:annotation>
<xs:documentation>Specifies a custom parameter.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the custom parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the custom parameter units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this custom parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="enum" type="enumType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a enumeration option configuration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="minimum" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the minimum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="maximum" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the maximum value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdCustomGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the dataType used by the data element -->
<xs:complexType name="dataType">
<xs:annotation>
<xs:documentation> The data tag specifies a data
within a message. By using the data tag, the value
of the data can be extracted from the message
received from the hardware device. The data tag is
also used to define how to stored a data into a
message to be sent to the hardware device. This value in
the message can be translated into/from the application
value by using the translate tags. Valid subtags of
data include those that specify where to place the
data within the message and a series of transforms
that manipulate the data''s data. You can set
the units of the data with the units tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="optional" type="optionalType">
<xs:annotation>
<xs:documentation>Defines if this data item is optional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the data units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the data key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="length" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the data
length in <b>bits</b>. See the
<a
href=""sizeElement.html"">size</a>
element to specify the data length in
bytes. </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="size" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the data size
in <b>bytes</b>. See the <a
href=""lengthElement.html"">length</a>
element to specify the data length in
bits. </xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element name="minimum" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the minimum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maximum" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the maximum value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="unbounded" minOccurs="0" name="data" type="dataType">
<xs:annotation>
<xs:documentation>Specifies the data to execute
the command.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the optional data units.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeDataType">
<xs:annotation>
<xs:documentation>Specifies the data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attributeGroup ref="AttributeNameGroup"/>
</xs:complexType>
<!-- Define the databitsType used by the databits element -->
<xs:simpleType name="databitsType">
<xs:annotation>
<xs:documentation>Specifies the data bits for a serial port.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:unsignedInt">
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
</xs:restriction>
</xs:simpleType>
<!-- Define the descriptionType used by the description element -->
<xs:complexType name="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the description of the parent
element. The description element documents the Device
Kit XML file and the generated code.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the deprecatedType used by the deprecated element -->
<xs:complexType name="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that parent Specifies that the contents of this element should be marked as deprecated.
</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the deviceType used by the device element -->
<xs:complexType name="deviceType">
<xs:annotation>
<xs:documentation> The device tag is used to denote the
interface to a hardware device. The command tags denote
the actions that are supported by the hardware device.
The signals tags denote the events that are supported by
the hardware device. The measurement tags denote the
properties supported by the hardware device. Use the
transportservice tag to specify the
device’s transport. You can specify
the Open Services Gateway Initiative (OSGi) service and
transport class implementation with the transportservice
tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deviceparent" type="deviceparentType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the Device parent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="commandreceived"
type="commandreceivedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies if a command message can be received from the device.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="initializemeasurements"
type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies that the device should
initialize the measurements when the device is started.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies an optional key value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="pids" type="pidsType">
<xs:annotation>
<xs:documentation>Specifies the defined pids.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="priority" type="priorityType">
<xs:annotation>
<xs:documentation>Specifies the device execution priority.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="protocol">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the device protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="command" type="commandType">
<xs:annotation>
<xs:documentation>Specifies a command that is
supported by this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="commands" type="commandsType">
<xs:annotation>
<xs:documentation>Specifies a command group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="group" type="groupType">
<xs:annotation>
<xs:documentation>Defines a group
supported by this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurement"
type="measurementType">
<xs:annotation>
<xs:documentation>Specifies a measurement
supported by this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Specifies a signal supported
by this device.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="commandref" type="commandrefType">
<xs:annotation>
<xs:documentation>Specifies a command reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurementref"
type="measurementrefType">
<xs:annotation>
<xs:documentation>Specifies a measurement reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signalref" type="signalrefType">
<xs:annotation>
<xs:documentation>Specifies a signal reference.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway initiative (OSGi) service
to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of the
package of be imported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="transport" type="transportType">
<xs:annotation>
<xs:documentation>Specifies the transport used
by the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="transportservice"
type="transportserviceType">
<xs:annotation>
<xs:documentation>Specifies the Open Services
Gateway Initiative (OSGi) transport service name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="udp" type="udptransportType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram
Protocol (UDP) transport. Please, use the udptransport element instead of the udp element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="udptransport" type="udptransportType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram
Protocol (UDP) transport.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="managedbundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle"
type="managedfactorybundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleLazyAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
<xs:attribute default="false" name="get" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies to generate get methods.
The default is false unless abstract or lazy.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the deviceIDREFType -->
<xs:complexType name="deviceIDREFType">
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the devicerefType -->
<xs:complexType name="devicerefType">
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the deviceparentType used by the deviceparent element -->
<xs:complexType name="deviceparentType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a device parent.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the device parent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deviceref" type="devicerefType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies device parent reference.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the devicetestType used by the devicetest element -->
<xs:complexType name="devicetestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a device test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the device test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="device" type="deviceType">
<xs:annotation>
<xs:documentation>Specifies the device to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testexecute" type="testexecuteType">
<xs:annotation>
<xs:documentation>Specifies if all commands should
be executed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testexecuteread"
type="testexecutereadType">
<xs:annotation>
<xs:documentation>Specifies if the executeRead
method should be invoked on all measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testexecutewrite"
type="testexecutewriteType">
<xs:annotation>
<xs:documentation>Specifies if the executeWrite
method should be invoked on all measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testread" type="testreadType">
<xs:annotation>
<xs:documentation>Specifies if the read method
should be invoked on all measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testtrigger" type="testtriggerType">
<xs:annotation>
<xs:documentation>Specifies if all signals should be triggered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface device test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the doubleType used by the double element -->
<xs:complexType name="doubleType">
<xs:annotation>
<xs:documentation>Specifies double data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the echoType used by the echo element -->
<xs:complexType name="echoType">
<xs:annotation>
<xs:documentation>Specifies an echo connection.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the enumType used by the enum element -->
<xs:complexType mixed="true" name="enumType">
<xs:annotation>
<xs:documentation> Use the enum tag to specify a enumeration.
</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the enumeration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the enum units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specification reference for this enumeration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a enumeration key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="label" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a enumeration label.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="value" type="valueType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the enumeration value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="AttributeNameGroup"/>
</xs:complexType>
<!-- Define the exportserviceType used by the exportservice element -->
<xs:complexType name="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open Services
Gateway initiative (OSGi) service to be exported.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the managedfactorybundleType used by the managedfactorybundle element -->
<xs:complexType name="managedfactorybundleType">
<xs:annotation>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle with a factory bundle activator
should be created.</xs:documentation>
</xs:annotation>
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the factory bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the fileType used by the file element -->
<xs:complexType name="fileType">
<xs:annotation>
<xs:documentation>Specifies a file connection.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the file connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specreference" type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
file connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex file connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="inputpath" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the file input path name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="inputname" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the input file name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="outputpath" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the file output path name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="outputname" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the output file name.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the filterType used by the filter element -->
<xs:complexType name="filterType">
<xs:annotation>
<xs:documentation> Use the filter tag to specify a filter
mask for a message. The bytes tag defines the relevant
filter bytes. All of the bits in the filter bytes that
are turned on will be compared and all bits that are
turned off will be ignored. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the filter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this filter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="bytes" type="bytesType">
<xs:annotation>
<xs:documentation>Specifies the message filter (Bit
off - ignore, Bit on - compare).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the filtersType used by the filters element -->
<xs:complexType name="filtersType">
<xs:annotation>
<xs:documentation>Specifies a group of filters.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the filters description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
group of filters.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies a unique filter key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="filter" type="filterType">
<xs:annotation>
<xs:documentation>Specifies the filter.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<xs:element name="filter" type="filterType"/>
<!-- Define the floatType used by the float element -->
<xs:complexType name="floatType">
<xs:annotation>
<xs:documentation>Specifies float data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:float">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the gpioType used by the gpio element -->
<xs:complexType name="gpioType">
<xs:annotation>
<xs:documentation>Specifies a General Purpose Input Output
(GPIO) connection.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the i2cType used by the i2c element -->
<xs:complexType name="i2cType">
<xs:annotation>
<xs:documentation>Specifies an Inter-IC (i2c) connection.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the groupType used by the group element -->
<xs:complexType name="groupType">
<xs:annotation>
<xs:documentation> The group tag is used to denote the
interface to a hardware group. The command tags denote
the actions that are supported by the hardware group.
The signals tags denote the events that are supported by
the hardware group. The measurement tags denote the
properties supported by the hardware group. Use the
transportgroup tag to specify the
group’s transport. You can specify
the Open Services Gateway Initiative (OSGi) service and
transport class implementation with the transportservice
tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="commandreceived"
type="commandreceivedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies if a command message can be received from the group.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies an optional key value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="command" type="commandType">
<xs:annotation>
<xs:documentation>Specifies a command that is
supported by this group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="commands" type="commandsType">
<xs:annotation>
<xs:documentation>Specifies a command group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="group" type="groupType">
<xs:annotation>
<xs:documentation>Specifies a group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurement"
type="measurementType">
<xs:annotation>
<xs:documentation>Specifies a measurement
supported by this group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Specifies a signal supported
by this group.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway initiative (OSGi) group
to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of the
package of be imported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleLazyAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the importType used by the import element -->
<xs:complexType name="importType">
<xs:annotation>
<xs:documentation>Specifies an import package.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the incubationType used by the incubation element -->
<xs:complexType name="incubationType">
<xs:annotation>
<xs:documentation> If content value is true, then it is an incubation project. 0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the intType used by the int element -->
<xs:complexType name="intType">
<xs:annotation>
<xs:documentation>Specifies integer data (32 bits).</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the junitType used by the junit element -->
<xs:complexType name="junitType">
<xs:annotation>
<xs:documentation>Specifies junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the mapType used by the map element -->
<xs:complexType name="mapType">
<xs:annotation>
<xs:documentation>Specifies map data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the listType used by the list element -->
<xs:complexType name="listType">
<xs:annotation>
<xs:documentation>Specifies list data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the longType used by the long element -->
<xs:complexType name="longType">
<xs:annotation>
<xs:documentation>Specifies long data (64 bits).</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the managedbundleType used by the managedbundle element -->
<xs:complexType name="managedbundleType">
<xs:annotation>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle with a managed bundle activator
should be created.</xs:documentation>
</xs:annotation>
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the managed bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the maximumType used by the maximum element -->
<xs:complexType name="maximumType">
<xs:annotation>
<xs:documentation>Specifies the maximum value for the data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the measurementType used by the measurement element -->
<xs:complexType name="measurementType">
<xs:annotation>
<xs:documentation> The measurement tag denotes a logical
property of the hardware device. This logical property
is usually stored in the hardware device and requires
that commands to be sent to the device to read
(readcommand tag) or write (writecommand tag) the value
of the measurement. The signal tag is used to define the
signal that will be triggered when the value of the
measurement is sent by the hardware device. Hardware
devices vary on how the measurements are implemented.
Some hardware devices only support the reading of
measurement values and do not support writing new values
via messages. Other hardware devices support both
reading and writing of the measurement. Some hardware
devices support notification of the signal message when
the value changes while other hardware device require
that a read message be sent to get the measurement
value. See the hardware device specifications to
determine the correct tags that must be defined by this device.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the measurement description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="optional" type="optionalType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines if this measurement is optional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this measurement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies a unique measurement key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="configuration" type="configurationType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Defines this measurement as a configuration measurement.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="rate" type="xs:unsignedLong">
<xs:annotation>
<xs:documentation>Specifies the measurement polling
rate in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="message" type="messageType">
<xs:annotation>
<xs:documentation>Specifies the measurement message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="data" type="dataType">
<xs:annotation>
<xs:documentation>Specifies the measurement data.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="readcommand" type="commandType">
<xs:annotation>
<xs:documentation>Specifies the command to request a read of the current value of
the measurement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="writecommand" type="commandType">
<xs:annotation>
<xs:documentation>Specifies the command to request a change of
the measurement value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="method" type="methodType">
<xs:annotation>
<xs:documentation>Specifies the method.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Specifies the signal containing
the measurement value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurement"
type="measurementReferenceType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Defines the parent measurement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="1" name="field" type="xs:string">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the field name to use on the receiving measurement.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="parameter">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a parameter used to extract/insert the information within
the parent data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="parameters" type="parametersType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a group of parameters.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the measurement units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="value" type="valueType">
<xs:annotation>
<xs:documentation>Specifies the optional initial
measurement value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element name="maximum" type="maximumType">
<xs:annotation>
<xs:documentation>Specifies the maximum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="minimum" type="minimumType">
<xs:annotation>
<xs:documentation>Specifies the minimum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="negative" type="negativeType">
<xs:annotation>
<xs:documentation>Negate the value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="not" type="notType">
<xs:annotation>
<xs:documentation>Logical not of a boolean value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scale" type="scaleType">
<xs:annotation>
<xs:documentation>Specifies a numeric scale value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shift" type="shiftType">
<xs:annotation>
<xs:documentation>Specifies an integer shift value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="translate" type="translateType">
<xs:annotation>
<xs:documentation>Specifies a numeric translate
(add) value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeSimpleMeasurementType">
<xs:annotation>
<xs:documentation>Specifies the measurement data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="false" name="listen" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the containing object to listen to this measurement.
The default is false.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="true" name="triggeronsetvalue" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies to trigger the signal on set
value. The default is true.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="true" name="triggeronreadcommand" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies to trigger the signal on
read command. The default is true.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="true" name="executeread" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the measurement supports executeRead.
The default is true.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="true" name="executewrite" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the measurement supports executeWrite.
If both the setvalue and setwrite attributes are false, then
the measurement is a read only measurement.
The default is true.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="true" name="setvalue" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the measurement supports setValue.
If both the setvalue and setwrite attributes are false, then
the measurement is a read only measurement.
The default is true.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="true" name="error" type="xs:boolean">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the measurement can report an error.
The default is true.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the measurementrefType used by the measurementref element -->
<xs:complexType name="measurementrefType">
<xs:annotation>
<xs:documentation>Specifies a measurement reference.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the measurement reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the measurementReferenceType used by the measurement element -->
<xs:complexType name="measurementReferenceType">
<xs:annotation>
<xs:documentation> The measurement tag denotes a logical
property of the hardware device. This logical property
is usually stored in the hardware device and requires
that commands to be sent to the device to read
(readcommand tag) or write (writecommand tag) the value
of the measurement. The signal tag is used to define the
signal that will be triggered when the value of the
measurement is sent by the hardware device. Hardware
devices vary on how the measurements are implemented.
Some hardware devices only support the reading of
measurement values and do not support writing new values
via messages. Other hardware devices support both
reading and writing of the measurement. Some hardware
devices support notification of the signal message when
the value changes while other hardware device require
that a read message be sent to get the measurement
value. See the hardware device specifications to
determine the correct tags that must be defined by this device.</xs:documentation>
</xs:annotation>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the messageType used by the message element -->
<xs:complexType name="messageType" mixed="true">
<xs:annotation>
<xs:documentation> The message tag specifies the actual
message or set of bytes that the are sent or received
from the hardware device. The ascii, bytes, nibbles,
tokens, parameter, parameters, and filter subtags define
the content of a message. The specific tags to use
within the message tag depend on a combination of the
hardware specification and the controls that the
application needs. For example, if the hardware
communicates with bytes or eight bits use the bytes tag.
If the hardware understands four-bit increments,
use a series of nibbles to define the message. You can
also set a filter mask for a message. The contents of
the filter determine which bits are relevant. The
content of a binary message is often defined by using
the bytes subtag to specify a special byte or set of
bytes. The content of a American National Standard Code
for Information Interchange (ASCII) message is normally
defined by using the ascii subtag. You can set the
delimiter with the tokens tag. Messages can also have
parameters that hold important value information.
Specify message parameters with the parameter and
parameters tags. Defining the messages correctly is very
important activity. WARNING: Defining the messages
incorrectly and sending the wrong messages to a hardware
device can be dangerous.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="1" name="ascii" type="asciiType">
<xs:annotation>
<xs:documentation>Specifies a set of ASCII
characters (8 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="bytes" type="bytesType">
<xs:annotation>
<xs:documentation>Specifies a set of bytes.
Each byte is 8 bits.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="nibbles" type="nibblesType">
<xs:annotation>
<xs:documentation>Specifies a set of nibbles.
Each nibble is 4 bits.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="utf8" type="utf8Type">
<xs:annotation>
<xs:documentation>Specifies a set of UTF-8
characters.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="tokens" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the message tokens.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" ref="block">
<xs:annotation>
<xs:documentation>Specifies a block within
the message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="parameter">
<xs:annotation>
<xs:documentation>Specifies a parameter within
the message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="parameters" type="parametersType">
<xs:annotation>
<xs:documentation>Specifies a group of parameters.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="segment">
<xs:annotation>
<xs:documentation>Specifies a segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="choicesegment">
<xs:annotation>
<xs:documentation>Specifies a choice segment.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="filter" type="filterType">
<xs:annotation>
<xs:documentation>Specifies the message filter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="sentmessage" type="messageReferenceType">
<xs:annotation>
<xs:documentation>Specifies the message that was
sent that caused this message.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<xs:element name="message" type="messageType"/>
<!-- Define the messageReferenceType -->
<xs:complexType name="messageReferenceType">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the messagesType used by the messages element -->
<xs:complexType name="messagesType">
<xs:annotation>
<xs:documentation>Specifies a group of messages.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the messages description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
group of messages.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies the unique messages key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="message" type="messageType">
<xs:annotation>
<xs:documentation>Specifies the message.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the methodType used by the method element -->
<xs:complexType name="methodType">
<xs:annotation>
<xs:documentation>Specifies method data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the minimumType used by the minimum element -->
<xs:complexType name="minimumType">
<xs:annotation>
<xs:documentation>Specifies the minimum value for the data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the monitorType used by the monitor element -->
<xs:complexType name="monitorType">
<xs:annotation>
<xs:documentation>Specifies monitor test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the monitor test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeMonitortimeGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the mostType used by the most element -->
<xs:complexType name="mostType">
<xs:annotation>
<xs:documentation>Specifies a Media Oriented Systems
Transport (MOST) connection.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the multicastType used by the multicast element -->
<xs:complexType name="multicastType">
<xs:annotation>
<xs:documentation>Specifies a multicast transport.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the multicast transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
multicast transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remotehost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the multicast remote
host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remoteport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the multicast remote port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localhost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the multicast local host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the multicast local port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="packetsize" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the multicast packet
size in bytes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the multiplexType used by the multiplex element -->
<xs:complexType name="multiplexType" mixed="true">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation> If content value is true, then this is a multiplex object.
0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Description of the multiplex object.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this multiplex.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeConfigurationGroup"/>
</xs:complexType>
<!-- Define the negativeType used by the negative element -->
<xs:complexType name="negativeType">
<xs:annotation>
<xs:documentation>Specifies the negative transform.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the nibblesType used by the nibbles element -->
<xs:complexType name="nibblesType">
<xs:annotation>
<xs:documentation> The nibbles tag specifies data for a
message. Each nibble defines 4 bits of data. You can
specify the numeric format base of data with the format
attribute. Normally, the hex format should be used to
define the data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the notType used by the not element -->
<xs:complexType name="notType">
<xs:annotation>
<xs:documentation>Specifies the not transform.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the noactivitytimeoutType used by the noactivitytimeout element -->
<xs:complexType name="noactivitytimeoutType">
<xs:annotation>
<xs:documentation>Specifies the timeout value in
milliseconds to wait for no activity. If no activity has
occurred after this time, the transport may attempt to
determine if the device is OK by sending a message to
the device.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedLong"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the parameterType used by the parameter element -->
<xs:complexType name="parameterType">
<xs:annotation>
<xs:documentation> The parameter tag specifies a parameter
within a message. By using the parameter tag, the value
of the parameter can be extracted from the message
received from the hardware device. The parameter tag is
also used to define how to stored a parameter into a
message to be sent to the hardware device. This value in
the message can be translated into/from the application
value by using the translate tags. Valid subtags of
parameter include those that specify where to place the
parameter within the message and a series of transforms
that manipulate the parameter''s data. You can set
the units of the parameter with the units tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the parameter units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the parameter key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bigendian" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is in big endian order. This is the default order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="field" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the field parameter name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="insert" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies that the parameter
should be inserted into the message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="littleendian" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies that the parameter data
is in little endian order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="offset" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the starting
<b>bit</b> offset of the
parameter within the message. Offset 0 is
the first bit in the message. See the <a
href=""indexElement.html"">index</a>
element to specify the parameter position in
bytes. </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="index" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the starting
<b>byte</b> index of the
parameter within the message. Index 0 is the
first byte of the message. See the <a
href=""offsetElement.html"">offset</a>
element to specify the parameter offset in
bits. </xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="length" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the parameter
length in <b>bits</b>. See the
<a
href=""sizeElement.html"">size</a>
element to specify the parameter length in
bytes. </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lengthtoend" type="xs:unsignedInt">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the parameter continues until the end of the message or segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="size" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the parameter size
in <b>bytes</b> (1 byte is 8 bits). See the <a
href=""lengthElement.html"">length</a>
element to specify the parameter length in
bits. </xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element name="enum" type="enumType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a enumeration for this parameter.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element name="minimum" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the minimum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maximum" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the maximum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="negative" type="xs:string">
<xs:annotation>
<xs:documentation>Negate the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="not" type="xs:string">
<xs:annotation>
<xs:documentation>Logical not of a boolean value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scale" type="scaleType">
<xs:annotation>
<xs:documentation>Specifies the value to scale
the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shift" type="shiftType">
<xs:annotation>
<xs:documentation>Specifies the value to shift
the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="translate" type="translateType">
<xs:annotation>
<xs:documentation>Specifies the value to add
(translate) to the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the optional parameter units.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeSimpleParameterType">
<xs:annotation>
<xs:documentation>Specifies the data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:element name="parameter" type="parameterType"/>
<xs:complexType name="blockType">
<xs:complexContent>
<xs:extension base="parameterType">
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element ref="value"/>
</xs:sequence>
<xs:attributeGroup ref="AttributeTargetGroup"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- Define the block element -->
<xs:element name="block" substitutionGroup="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a block.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="blockType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!-- Define the constantblock element -->
<xs:element name="constantblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a constant block.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the reserveblock element -->
<xs:element name="reserveblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a reserve block.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the versionblock element -->
<xs:element name="versionblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a version block.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the idblock element -->
<xs:element name="idblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a id block.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifierblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a identifierblock block.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the typeblock element -->
<xs:element name="typeblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a type block.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the countblock element -->
<xs:element name="countblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a count block.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the lengthblock element -->
<xs:element name="lengthblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a length in bits block.
The contents of the block is the length in bits.
</xs:documentation>
</xs:annotation>
<!--
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType">
<xs:attributeGroup ref="AttributeTargetGroup"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
-->
</xs:element><!-- Define the sizeblock element -->
<xs:element name="sizeblock" substitutionGroup="lengthblock">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a length in bytes block.
The contents of the block is the length in bytes(each byte is 8 bits).
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the segmentlengthblock element -->
<xs:element name="segmentlengthblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a segment length in bits block.
The contents of the block is the length in bits.
</xs:documentation>
</xs:annotation>
<!--
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType">
<xs:attributeGroup ref="AttributeTargetGroup"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
-->
</xs:element><!-- Define the segmentsizeblock element -->
<xs:element name="segmentsizeblock" substitutionGroup="segmentlengthblock">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a segment length in bytes block.
The contents of the block is the length in bytes(each byte is 8 bits).
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the messagelengthblock element -->
<xs:element name="messagelengthblock" substitutionGroup="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a message length in bits block.
The contents of the block is the length in bits.
</xs:documentation>
</xs:annotation>
<!--
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType">
<xs:attributeGroup ref="AttributeTargetGroup"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
-->
</xs:element><!-- Define the messagesizeblock element -->
<xs:element name="messagesizeblock" substitutionGroup="messagelengthblock">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a message length in bytes block.
The contents of the block is the length in bytes(each byte is 8 bits).
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the bytesparameter element -->
<xs:element name="bytesparameter" substitutionGroup="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a bytes parameter.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the bitsparameter element -->
<xs:element name="bitsparameter" substitutionGroup="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a bits parameter.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the multiparameter element -->
<xs:element name="multiparameter" substitutionGroup="parameter" abstract="true">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a multi parameter.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType">
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element ref="countblock"/>
<xs:element ref="lengthblock"/>
</xs:choice>
<xs:element ref="parameter" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!-- Define the variablelengthparameter element -->
<xs:element name="variablelengthparameter" substitutionGroup="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a variable length parameter.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType">
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element ref="lengthblock"/>
<xs:element ref="parameter"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!-- Define the listparameter element -->
<xs:element name="listparameter" substitutionGroup="multiparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a list parameter.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the mapparameter element -->
<xs:element name="mapparameter" substitutionGroup="multiparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a map parameter.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the arrayparameter element -->
<xs:element name="arrayparameter" substitutionGroup="multiparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a array parameter.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the utf8stringparameter element -->
<xs:element name="utf8stringparameter" substitutionGroup="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a UTF-8 string parameter.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!-- Define the stringparameter element -->
<xs:element name="stringparameter" substitutionGroup="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a string parameter.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType">
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="encoding" type="xs:string"/>
</xs:choice>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="numberparameterType">
<xs:complexContent>
<xs:extension base="parameterType"/>
</xs:complexContent>
</xs:complexType>
<!-- Define the booleanparameter element -->
<xs:element name="booleanparameter" substitutionGroup="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary boolean parameter.
Normally, a boolean parameter length should not be longer than 1 bit.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="parameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!-- Define the numberparameter element -->
<xs:element name="numberparameter" substitutionGroup="parameter" abstract="true"/>
<!-- Define the integerparameter element -->
<xs:element name="integerparameter" substitutionGroup="numberparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary integer parameter.
An integer parameter length should not be longer than 32 bits (4 bytes).
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="numberparameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="unsignedintegerparameter"
substitutionGroup="integerparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary unsigned integer parameter.
An unsigned integer parameter length should not be longer than 32 bits (4 bytes).
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the longparameter element -->
<xs:element name="longparameter" substitutionGroup="numberparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary long parameter.
An long parameter length should not be longer than 64 bits (8 bytes).
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="numberparameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="unsignedlongparameter" substitutionGroup="longparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary unsigned long parameter.
An unsigned long parameter length should not be longer than 64 bits (8 bytes).
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the shortparameter element -->
<xs:element name="shortparameter" substitutionGroup="numberparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary short parameter.
An short parameter length should not be longer than 16 bits (2 bytes).
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="numberparameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="unsignedshortparameter" substitutionGroup="shortparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary unsigned short parameter.
An unsigned short parameter length should not be longer than 16 bits (2 bytes).
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="byteparameter" substitutionGroup="numberparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary byte parameter.
An byte parameter length should not be longer than 8 bits (1 byte).
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="numberparameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="unsignedbyteparameter" substitutionGroup="byteparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary unsigned byte parameter.
An unsigned byte parameter length should not be longer than 8 bits (1 byte).
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="floatparameter" substitutionGroup="numberparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary IEEE 754 floating-point single 32 bit parameter.
The float parameter length should be 32 bits (4 bytes).
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="numberparameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="doubleparameter" substitutionGroup="numberparameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a binary IEEE 754 floating-point double 64 bit parameter.
The double parameter length should be 64 bits (8 bytes).
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="numberparameterType"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!-- Define the parametersType used by the parameters element -->
<xs:complexType name="parametersType">
<xs:annotation>
<xs:documentation> Message can contain multiple parameters.
The parameters tag enables you to set multiple
parameters for a message. This tag can have multiple
parameter children. The idref attribute references the
parameters in the parameters tag. The value of
""idref"" corresponds to the id of a previously
defined parameter. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the parameters description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the parameters units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
group of parameters.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies the unique parameters key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="1">
<xs:element maxOccurs="unbounded" minOccurs="0" ref="parameter">
<xs:annotation>
<xs:documentation>Specifies the parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="parameters" type="parametersType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the parameters.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeParametersType">
<xs:annotation>
<xs:documentation>Specifies the data type of parameters.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the parityType used by the parity element -->
<xs:simpleType name="parityType">
<xs:annotation>
<xs:documentation>Specifies the parity of the serial port.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="none"/>
<xs:enumeration value="even"/>
<xs:enumeration value="odd"/>
<xs:enumeration value="mark"/>
<xs:enumeration value="space"/>
</xs:restriction>
</xs:simpleType>
<!-- Define the pidType used by the pid element -->
<xs:complexType name="pidType">
<xs:annotation>
<xs:documentation> The pid tag specifies a parameter
identifier (PID). By using the pid tag, the value of the
pid can be extracted from the message received from the
hardware device. The pid tag is also used to define how
to stored a parameter into a message to be sent to the
hardware device. This value in the message can be
translated into/from the application value by using the
translate tags. Valid subtags of parameter include
those that specify where to place the parameter within
the message and a series of transforms that manipulate
the parameter''s data. You can set the units of the
parameter with the units tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the parameter
identifier (PID).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the parameter identifier (PID) units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
parameter identifier (PID).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies the parameter identifier
(pid) key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="identifier" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the parameter identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="length" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the parameter (pid)
data length in <b>bits</b>.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="size" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the parameter
identifier (pid) size in
<b>bytes</b>. See the <a
href=""lengthElement.html"">length</a>
element to specify the parameter (pid) data
length in bits. </xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element name="minimum" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the minimum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maximum" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the maximum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="negative" type="xs:string">
<xs:annotation>
<xs:documentation>Negate the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="not" type="xs:string">
<xs:annotation>
<xs:documentation>Logical not of a boolean value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scale" type="scaleType">
<xs:annotation>
<xs:documentation>Specifies the value to scale
the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shift" type="shiftType">
<xs:annotation>
<xs:documentation>Specifies the value to shift
the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="translate" type="translateType">
<xs:annotation>
<xs:documentation>Specifies the value to add
(translate) to the parameter value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the optional parameter
identifier (pid) units.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeSimpleParameterType">
<xs:annotation>
<xs:documentation>Specifies the data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the pidsType used by the pids element -->
<xs:complexType name="pidsType">
<xs:annotation>
<xs:documentation> The pids tag enables you to define the
set of pid supported. The idref attribute references
the pids in the pids tag. The value of ""idref""
corresponds to the id of a previously defined pids. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the pids description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the pids units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for pids.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies the unique pids key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="pid" type="pidType">
<xs:annotation>
<xs:documentation>Specifies the pid.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the playbackType used by the playback element -->
<xs:complexType name="playbackType">
<xs:annotation>
<xs:documentation>Specifies playback test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the playback test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the priorityType used by the priority element -->
<xs:complexType name="priorityType">
<xs:annotation>
<xs:documentation>Specifies the execution priority.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedInt"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the randomaccessfileType used by the randomaccessfile element -->
<xs:complexType name="randomaccessfileType">
<xs:annotation>
<xs:documentation>Specifies a random access file connection.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the random access
file connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specreference" type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
random access file connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex random access file.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="name" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the file name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="mode" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the file mode.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="path" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the file path name.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the responsetimeoutType used by the responsetimeout element -->
<xs:complexType name="responsetimeoutType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to wait on a
response transport.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedLong"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the readsizeType used by the readsize element -->
<xs:complexType name="readsizeType">
<xs:annotation>
<xs:documentation>Specifies the size in bytes of the read buffer.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedInt"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the writesizeType used by the writesize element -->
<xs:complexType name="writesizeType">
<xs:annotation>
<xs:documentation>Specifies the size in bytes of the write buffer.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedInt"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the transmitretriesType used by the transmitretries element -->
<xs:complexType name="transmitretriesType">
<xs:annotation>
<xs:documentation>Specifies the transmit retried on a transport.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedLong"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the retrytimeType used by the retrytime element -->
<xs:complexType name="retrytimeType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to wait before
attempting to retry the connection.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedLong"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the scaleType used by the scale element -->
<xs:complexType mixed="true" name="scaleType">
<xs:annotation>
<xs:documentation>Specifies a scale transform.</xs:documentation>
</xs:annotation>
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the scale.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this scale.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the segmentType used by the segment element -->
<xs:complexType name="segmentType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation> The segment tag specifies a segment
within a message. By using the segment tag, the value
of the segment can be extracted from the message
received from the hardware device. The segment tag is
also used to define how to stored a segment into a
message to be sent to the hardware device. This value in
the message can be translated into/from the application
value by using the translate tags. Valid subtags of
segment include those that specify where to place the
segment within the message and a series of transforms
that manipulate the segment''s data. You can set
the units of the segment with the units tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the segment key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="field" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the field segment name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="1" name="ascii" type="asciiType">
<xs:annotation>
<xs:documentation>Specifies a set of ASCII
characters (8 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="bytes" type="bytesType">
<xs:annotation>
<xs:documentation>Specifies a set of bytes.
Each byte is 8 bits.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="1" name="nibbles" type="nibblesType">
<xs:annotation>
<xs:documentation>Specifies a set of nibbles.
Each nibble is 4 bits.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" ref="parameter">
<xs:annotation>
<xs:documentation>Specifies a parameter within
the message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="parameters" type="parametersType">
<xs:annotation>
<xs:documentation>Specifies a group of parameters.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="segment">
<xs:annotation>
<xs:documentation>Specifies a segment within
the segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="choicesegment">
<xs:annotation>
<xs:documentation>Specifies a choice segment.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="filter" type="filterType">
<xs:annotation>
<xs:documentation>Specifies the message filter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="offset" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the starting
<b>bit</b> offset of the
segment within the message. Offset 0 is
the first bit in the message. See the <a
href=""indexElement.html"">index</a>
element to specify the segment position in
bytes. </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="index" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the starting
<b>byte</b> index of the
segment within the message. Index 0 is the
first byte of the message. See the <a
href=""offsetElement.html"">offset</a>
element to specify the segment offset in
bits. </xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="length" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the segment
length in <b>bits</b>. See the
<a
href=""sizeElement.html"">size</a>
element to specify the segment length in
bytes. </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="size" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the segment size
in <b>bytes</b>. See the <a
href=""lengthElement.html"">length</a>
element to specify the segment length in
bits. </xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element name="occursminimum" type="occursminimumType" maxOccurs="1" minOccurs="0">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the minimum number of times the seqment can occur.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="occursmaximum" type="occursmaximumType" maxOccurs="1" minOccurs="0">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the maximum number of times the seqment can occur.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeSimpleParameterType">
<xs:annotation>
<xs:documentation>Specifies the data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:element name="segment" type="segmentType"/>
<xs:element name="parametersegment" substitutionGroup="segment"/>
<xs:element name="singleparametersegment" substitutionGroup="segment"/>
<!-- Define the choicesegmentType used by the choicesegment element -->
<xs:complexType name="choicesegmentType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation> The segment tag specifies a segment
within a message. By using the segment tag, the value
of the segment can be extracted from the message
received from the hardware device. The segment tag is
also used to define how to stored a segment into a
message to be sent to the hardware device. This value in
the message can be translated into/from the application
value by using the translate tags. Valid subtags of
segment include those that specify where to place the
segment within the message and a series of transforms
that manipulate the segment''s data. You can set
the units of the segment with the units tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the segment key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="field" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the field segment name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="segment">
<xs:annotation>
<xs:documentation>Specifies a parameter within
the message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="choicesegment">
<xs:annotation>
<xs:documentation>Specifies a choice segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="occursminimum" type="occursminimumType" maxOccurs="1" minOccurs="0">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the minimum number of times the seqment can occur.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="occursmaximum" type="occursmaximumType" maxOccurs="1" minOccurs="0">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the maximum number of times the seqment can occur.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeSimpleParameterType">
<xs:annotation>
<xs:documentation>Specifies the data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:element name="choicesegment" type="choicesegmentType"/>
<!-- Define the sendType used by the send element -->
<xs:complexType name="sendType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>The send tag specifies the message(s) to send.
</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the send description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this send.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="1">
<xs:element maxOccurs="unbounded" minOccurs="1" name="message" type="messageType">
<xs:annotation>
<xs:documentation>Specifies the message to send.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="sleep" type="sleepType">
<xs:annotation>
<xs:documentation>Specifies a sleep time.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the serialType used by the serial element -->
<xs:complexType name="serialType">
<xs:annotation>
<xs:documentation>Specifies a serial port (RS232) connection.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the serial connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
serial connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex serial connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="baudrate" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the serial port baud
rate. Common baud rates for a serial port:
<ul>
<li>110</li>
<li>300</li>
<li>1200</li>
<li>2400</li>
<li>4800</li>
<li>9600</li>
<li>19200</li>
<li>38400</li>
<li>57600</li>
<li>115200</li>
<li>230400</li>
<li>460800</li>
<li>921600</li>
</ul></xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="comport" type="xs:positiveInteger">
<xs:annotation>
<xs:documentation>Specifies the serial port communication
port. This value starts at 1.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="databits" type="databitsType">
<xs:annotation>
<xs:documentation>Specifies the serial port data bits.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="hardwareflowcontrol" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the serial port hardware
flow control value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="parity" type="parityType">
<xs:annotation>
<xs:documentation>Specifies the serial port parity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="readintervaltimeout"
type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the number of
milliseconds that the serial port read between bytes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="readtotaltimeout" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the maximum amount of
time in milliseconds that the serial port will
wait for a read.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="softwareflowcontrol" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the serial port software
flow control value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="stopbits" type="stopbitsType">
<xs:annotation>
<xs:documentation>Specifies the serial port stop bits.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="writetotaltimeout" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the serial port write
timeout value in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the stringType used by the string element -->
<xs:complexType name="stringType">
<xs:annotation>
<xs:documentation>Specifies string data.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the occursminimumType used by the occursminimum element -->
<xs:simpleType name="occursminimumType">
<xs:annotation>
<xs:documentation>Specifies the minimum number of times the seqment can occur.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="([0-9])+|(n)"/>
</xs:restriction>
</xs:simpleType>
<!-- Define the occursmaximumType used by the occursmaximum element -->
<xs:simpleType name="occursmaximumType">
<xs:annotation>
<xs:documentation>Specifies the maximum number of times the seqment can occur..</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="([0-9])+|(n)"/>
</xs:restriction>
</xs:simpleType>
<!-- Define the optionalType used by the optional element -->
<xs:complexType name="optionalType" mixed="true">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation> If content value is true, then this is a optional item.
0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Description of the optional item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this optional item.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the profile used by the profile element -->
<xs:complexType name="profileType">
<xs:annotation>
<xs:documentation> The profile tag is used to denote the
interface to a hardware profile. The command tags denote
the actions that are supported by the hardware profile.
The signals tags denote the events that are supported by
the hardware profile. The measurement tags denote the
properties supported by the hardware profile. Use the
transportprofile tag to specify the
profile’s transport. You can specify
the Open Services Gateway Initiative (OSGi) profile and
transport class implementation with the transportprofile
tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="customparameter"
type="customparameterType">
<xs:annotation>
<xs:documentation>Specifies a custom parameter for this adapter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="profileparent" type="profileparentType">
<xs:annotation>
<xs:documentation>Profile parent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="profileuses" type="profileusesType">
<xs:annotation>
<xs:documentation>Profile uses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="commandreceived"
type="commandreceivedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies if a command message can be received from the profile.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies an optional key value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="command" type="commandType">
<xs:annotation>
<xs:documentation>Specifies a command that is
supported by this profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="commands" type="commandsType">
<xs:annotation>
<xs:documentation>Specifies a command group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="group" type="groupType">
<xs:annotation>
<xs:documentation>Defines a group
supported by this profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurement"
type="measurementType">
<xs:annotation>
<xs:documentation>Specifies a measurement
supported by this profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Specifies a signal supported
by this profile.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway initiative (OSGi) service
to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of the
package of be imported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="adapter" type="adapterType">
<xs:annotation>
<xs:documentation>Specifies the adapter used
by the profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="device" type="deviceType">
<xs:annotation>
<xs:documentation>Specifies the device used
by the profile.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="managedbundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle"
type="managedfactorybundleType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleLazyAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
<xs:attribute default="false" name="get" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies to generate get methods.
The default is false unless abstract or lazy.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the profilerefType used by the profileref element -->
<xs:complexType name="profilerefType">
<xs:annotation>
<xs:documentation>Specifies a profile reference.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the profile reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="commandref" type="commandrefType">
<xs:annotation>
<xs:documentation>Specifies a command reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurementref"
type="measurementrefType">
<xs:annotation>
<xs:documentation>Specifies a measurement reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signalref" type="signalrefType">
<xs:annotation>
<xs:documentation>Specifies a signal reference.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the profileparentType used by the profileparent element -->
<xs:complexType name="profileparentType">
<xs:annotation>
<xs:documentation>Specifies a profile reference.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the profile reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="profileref" type="profilerefType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies profile parent.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the profileusesType used by the profileuses element -->
<xs:complexType name="profileusesType">
<xs:annotation>
<xs:documentation>Specifies a profile reference.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the profile reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="profileref" type="profilerefType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies profile uses.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the agentrefType used by the agentref element -->
<xs:complexType name="agentrefType">
<xs:annotation>
<xs:documentation>Specifies a agent reference.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the agent reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="commandref" type="commandrefType">
<xs:annotation>
<xs:documentation>Specifies a command reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="measurementref"
type="measurementrefType">
<xs:annotation>
<xs:documentation>Specifies a measurement reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="signalref" type="signalrefType">
<xs:annotation>
<xs:documentation>Specifies a signal reference.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the agentparentType used by the agentparent element -->
<xs:complexType name="agentparentType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a agent parent.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the agent parent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="agentref" type="agentrefType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies agent parent.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the agentusesType used by the agentuses element -->
<xs:complexType name="agentusesType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a agent uses.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the agent uses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="agentref" type="agentrefType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies agent uses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="profileref" type="profilerefType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies profile uses.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the profiletestType used by the profiletest element -->
<xs:complexType name="profiletestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an profile test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the profile test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="send" type="sendType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the message(s) to send
during the test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="profile" type="profileType">
<xs:annotation>
<xs:documentation>Specifies the profile to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface profile test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the protocol used by the protocol element -->
<xs:complexType name="protocolType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation> The protocol tag is used to denote the
interface to a hardware protocol. The command tags denote
the actions that are supported by the hardware protocol.
The signals tags denote the events that are supported by
the hardware protocol. The measurement tags denote the
properties supported by the hardware protocol. Use the
transportprotocol tag to specify the
protocol’s transport. You can specify
the Open Services Gateway Initiative (OSGi) protocol and
transport class implementation with the transportprotocol
tag. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" ref="block">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a block used
by the protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" ref="segment">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a segement used
by the protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="choicesegment">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a segment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" ref="filter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a filter used
by the protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" ref="message">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a message used
by the protocol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" ref="parameter">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a parameter used
by the protocol.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:element name="protocol" type="protocolType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
</xs:annotation>
</xs:element>
<!-- Define the shiftType used by the shift element -->
<xs:complexType mixed="true" name="shiftType">
<xs:annotation>
<xs:documentation>Specifies a shift transform.</xs:documentation>
</xs:annotation>
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the shift.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this shift.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the shiftTypeContent -->
<xs:complexType name="shiftTypeContent">
<xs:simpleContent>
<xs:extension base="xs:integer"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the shortType used by the short element -->
<xs:complexType name="shortType">
<xs:annotation>
<xs:documentation>Specifies short data (16 bits).</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdFormatGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the signalType used by the signal element -->
<xs:complexType name="signalType">
<xs:annotation>
<xs:documentation> The signal tag denotes a logical event
that can be triggered by the hardware device. Usually, a
signal defines a message that can be received from the
hardware device when an important event occurs. A
message tag defines the hardware-specific bytes that
represent the signal. See the hardware device
specifications more information about the specific bytes
that define the signal message. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Specifies the signal description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="optional" type="optionalType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines if this signal is optional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="units" type="unitsType">
<xs:annotation>
<xs:documentation>Specifies the signal units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this signal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="key" type="xs:ID">
<xs:annotation>
<xs:documentation>Specifies the unique signal key.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="configuration" type="configurationType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Defines this signal as a configuration signal.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="rate" type="xs:unsignedLong">
<xs:annotation>
<xs:documentation>Specifies the rate that the signal
is received in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="message" type="messageType">
<xs:annotation>
<xs:documentation>Specifies the message to
trigger the signal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="method" type="methodType">
<xs:annotation>
<xs:documentation>Specifies the method to handle
the signal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="data" type="dataType">
<xs:annotation>
<xs:documentation>Specifies the data when
the signal triggers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="1" name="signal" type="signalType">
<xs:annotation>
<xs:documentation>Specifies the signal to listen.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="field" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the field name to use on the receiving signal.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="messages" type="messagesType">
<xs:annotation>
<xs:documentation>Specifies the messages to
trigger the signal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="pid" type="pidType">
<xs:annotation>
<xs:documentation>Specifies the pid for this signal.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="parameter">
<xs:annotation>
<xs:documentation>Specifies a message parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="parameters" type="parametersType">
<xs:annotation>
<xs:documentation>Specifies a parameter group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element name="maximum" type="maximumType">
<xs:annotation>
<xs:documentation>Specifies the maximum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="minimum" type="minimumType">
<xs:annotation>
<xs:documentation>Specifies the minimum value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="negative" type="negativeType">
<xs:annotation>
<xs:documentation>Negate the value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="not" type="notType">
<xs:annotation>
<xs:documentation>Logical not of a boolean value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scale" type="scaleType">
<xs:annotation>
<xs:documentation>Scale the value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shift" type="shiftType">
<xs:annotation>
<xs:documentation>Shift the value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="translate" type="translateType">
<xs:annotation>
<xs:documentation>Translate (add) to the value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attribute name="type" type="AttributeSimpleMeasurementType">
<xs:annotation>
<xs:documentation>Specifies the signal data type.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute default="true" name="trigger" type="xs:boolean">
<xs:annotation>
<xs:documentation>Specifies the signal supports trigger.
The default is true.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<!-- Define the signalrefType used by the signalref element -->
<xs:complexType name="signalrefType">
<xs:annotation>
<xs:documentation>Specifies a signal reference.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the signal reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
</xs:complexType>
<!-- Define the sleepType used by the sleep element -->
<xs:complexType name="sleepType">
<xs:annotation>
<xs:documentation>Specifies a sleep command with the
content value in milliseconds.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedLong">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the specType used by the spec element -->
<xs:complexType name="specType">
<xs:annotation>
<xs:documentation>Specifies the hardware specification documentation.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the specification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="speccomment" type="speccommentType">
<xs:annotation>
<xs:documentation>Comment about the protocol
specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specdate" type="specdateType">
<xs:annotation>
<xs:documentation>Date of the protocol specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="spectitle" type="spectitleType">
<xs:annotation>
<xs:documentation>Title of the protoocol
specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specurl" type="specurlType">
<xs:annotation>
<xs:documentation>Url of the protocol
specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specvendor" type="specvendorType">
<xs:annotation>
<xs:documentation>Vendor of the protocol specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specversion" type="specversionType">
<xs:annotation>
<xs:documentation>Version of the protocol
specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the speccommentType used by the speccomment element -->
<xs:complexType name="speccommentType">
<xs:annotation>
<xs:documentation>Specifies a comment about the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the specdateType used by the specdate element -->
<xs:complexType name="specdateType">
<xs:annotation>
<xs:documentation>Specifies the date of the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the specsectionType used by the specsection element -->
<xs:complexType name="specsectionType">
<xs:annotation>
<xs:documentation>Specifies the section in the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the specreferenceType used by the specreference element -->
<xs:complexType name="specreferenceType">
<xs:annotation>
<xs:documentation>Specifies a reference to the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the specification reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>The protocol specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specsection" type="specsectionType">
<xs:annotation>
<xs:documentation>The reference to section in the
protocol specification documentation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the spectitleType used by the spectitle element -->
<xs:complexType name="spectitleType">
<xs:annotation>
<xs:documentation>Specifies the title of the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the specurlType used by the specurl element -->
<xs:complexType name="specurlType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the url of the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the specvendorType used by the specvendor element -->
<xs:complexType name="specvendorType">
<xs:annotation>
<xs:documentation>Specifies the vendor of the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the specversionType used by the specversion element -->
<xs:complexType name="specversionType">
<xs:annotation>
<xs:documentation>Specifies the version of the protocol
specification documentation.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Define the stopbitsType used by the stopbits element -->
<xs:simpleType name="stopbitsType">
<xs:annotation>
<xs:documentation>Specifies the stop bits of a serial port
connection. This value can be changed at runtime by
specifing the following in the property file: <p>
<var>lowercase transport
name</var>.<b>stopbits</b>=<var>value</var>
<xmp> gpsnmeatransport.stopbits=1 </xmp></p></xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="1"/>
<xs:enumeration value="1.5"/>
<xs:enumeration value="2"/>
</xs:restriction>
</xs:simpleType>
<!-- Define the tcpipType used by the tcpip element -->
<xs:complexType name="tcpipType">
<xs:annotation>
<xs:documentation>Specifies a Transmission Control
Protocol/Internet Protocol (TCP/IP) connection.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the Transmission
Control Protocol/Internet Protocol (TCP/IP) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specreference" type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
Transmission Control Protocol/Internet Protocol
(TCP/IP) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="host" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control Protocol/Internet Protocol (TCP/IP) remote host name.
The "host" element has been replaced with the "remotehost" to be more consistent with the "udp" element.
In future versions the "host" element may not be supported so developers should use the "remotehost" element.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remotehost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) remote host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remoteport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) remote port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localhost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) local host.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) local port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="linger" type="xs:integer">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) linger
value. A value of -1 specifies to use the
default values. A value of zero specifies no
linger. A value greater than zero is the
milliseconds linger value. See the Socket class
for more details.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="readtimeout" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) read timeout
in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the sslType used by the tcpip element -->
<xs:complexType name="sslType">
<xs:annotation>
<xs:documentation>Specifies a Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL connection.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the Transmission
Control Protocol/Internet Protocol (TCP/IP) SSL connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specreference" type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
Transmission Control Protocol/Internet Protocol
(TCP/IP) SSL connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="host" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remoteport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL remote port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL local port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="linger" type="xs:integer">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL linger
value. A value of -1 specifies to use the
default values. A value of zero speciifes no
linger. A value greater than zero is the
milliseconds linger value. See the Socket class
for more details.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="readtimeout" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL read timeout
in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the tcpipserverType used by the tcpipserver element -->
<xs:complexType name="tcpipserverType">
<xs:annotation>
<xs:documentation>Specifies a Transmission Control
Protocol/Internet Protocol (TCP/IP) server connection.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the Transmission
Control Protocol/Internet Protocol (TCP/IP)
server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specreference" type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
Transmission Control Protocol/Internet Protocol
(TCP/IP) server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex TCP/IP server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localhost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) server local host.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) server local port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="port" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) server port.
The "port" element has been replaced with the "localport" element to be more constant with "udpserver".
Future versions may remove the "port" element so developers should use the "localport" element.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the sslserverType used by the tcpipserver element -->
<xs:complexType name="sslserverType">
<xs:annotation>
<xs:documentation>Specifies a Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL server connection.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the Transmission
Control Protocol/Internet Protocol (TCP/IP) SSL
server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="specreference" type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
Transmission Control Protocol/Internet Protocol
(TCP/IP) SSL server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex SSL TCP/IP server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="port" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the Transmission Control
Protocol/Internet Protocol (TCP/IP) SSL port.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the testagentType used by the testagent element -->
<xs:complexType name="testagentType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an test agent.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the test agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="profileref" type="profilerefType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies the profile to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="profile" type="profileType">
<xs:annotation>
<xs:documentation>Specifies the profile to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="unbounded" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="UserMessageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the swtType used by the swt element -->
<xs:complexType name="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Description of the Standard Widget Toolkit (SWT) test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="testmethod" type="testmethodType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Description of the Standard Widget Toolkit (SWT) test.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationSuperclassGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the testcaseType used by the testcase element -->
<xs:complexType name="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Description of the test case.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="testmethod" type="testmethodType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Description of the test case.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationSuperclassGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the testmethodType used by the testmethod element -->
<xs:complexType name="testmethodType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the test method.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeNameGroup"/>
</xs:complexType>
<!-- Define the testcountType used by the testcount element -->
<xs:complexType name="testcountType">
<xs:annotation>
<xs:documentation>Specifies the number of times to execute
the test cases.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedInt"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the testdelayType used by the testdelay element -->
<xs:complexType name="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds time between
each test.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:unsignedLong"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the testexecuteType used by the testexecute element -->
<xs:complexType name="testexecuteType">
<xs:annotation>
<xs:documentation> If content value is true, then the test
class will execute each command. 0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the testexecutereadType used by the testexecuteread element -->
<xs:complexType name="testexecutereadType">
<xs:annotation>
<xs:documentation> If content value is true, then the
executeRead method should be invoked on all
measurements. 0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the testexecutewriteType used by the testexecutewrite element -->
<xs:complexType name="testexecutewriteType">
<xs:annotation>
<xs:documentation> If content value is true, then the test
class will executeWrite each measurement. 0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the testreadType used by the testread element -->
<xs:complexType name="testreadType">
<xs:annotation>
<xs:documentation> If content value is true, then the test
class will read each measurement. 0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the testtriggerType used by the testtrigger element -->
<xs:complexType name="testtriggerType">
<xs:annotation>
<xs:documentation> If content value is true, then the test
class will trigger each signal. 0 or 1 are valid.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:boolean"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the translateType used by the translate element -->
<xs:complexType mixed="true" name="translateType">
<xs:annotation>
<xs:documentation>Specifies the translate (add) value.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the translate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this translate.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdFormatImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the transportType used by the transport element -->
<xs:complexType name="transportType">
<xs:annotation>
<xs:documentation>Specifies a transport.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="customparameter"
type="customparameterType">
<xs:annotation>
<xs:documentation>Specifies a custom parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="noactivitytimeout"
type="noactivitytimeoutType">
<xs:annotation>
<xs:documentation>No activity timeout value in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="responsetimeout"
type="responsetimeoutType">
<xs:annotation>
<xs:documentation>Response timeout out value in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="retrytime" type="retrytimeType">
<xs:annotation>
<xs:documentation>Retry time value in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="transmitretries"
type="transmitretriesType">
<xs:annotation>
<xs:documentation>Transmit retries value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="message" type="messageType">
<xs:annotation>
<xs:documentation>Specifies a transport message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:element maxOccurs="unbounded" minOccurs="0" name="exportservice"
type="exportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway Initiative (OSGi) transport
service to be exported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="importType">
<xs:annotation>
<xs:documentation>Specifies the name of the
package to be imported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice maxOccurs="unbounded" minOccurs="0">
<xs:annotation>
<xs:documentation>Specifies the connection(s) or
transport to be used by the transport. If
multiple connections are specified, the first
connection is the default connection.</xs:documentation>
</xs:annotation>
<xs:element maxOccurs="1" minOccurs="1" name="connection" type="connectionType">
<xs:annotation>
<xs:documentation>Specifies an connection to be used by the transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="connectionservice"
type="connectionserviceType">
<xs:annotation>
<xs:documentation>Specifies the connection to be used
by the transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="echo" type="echoType">
<xs:annotation>
<xs:documentation>Specifies an echo connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="file" type="fileType">
<xs:annotation>
<xs:documentation>Specifies a file connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="gpio" type="gpioType">
<xs:annotation>
<xs:documentation>Specifies a General Purpose
Input Output (GPIO) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="i2c" type="i2cType">
<xs:annotation>
<xs:documentation>Specifies an Inter-IC (I2C) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="most" type="mostType">
<xs:annotation>
<xs:documentation>Specifies a Media Oriented
Systems Transport (MOST) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="randomaccessfile"
type="randomaccessfileType">
<xs:annotation>
<xs:documentation>Specifies a random access file connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="serial" type="serialType">
<xs:annotation>
<xs:documentation>Specifies a serial port connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="tcpip" type="tcpipType">
<xs:annotation>
<xs:documentation>Specifies a Transmission
Control Protocol/Internet Protocol (TCP/IP) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="tcpipserver" type="tcpipserverType">
<xs:annotation>
<xs:documentation>Specifies a Transmission
Control Protocol/Internet Protocol (TCP/IP)
server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="ssl" type="sslType">
<xs:annotation>
<xs:documentation>Specifies a Transmission
Control Protocol/Internet Protocol (TCP/IP) SSL connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="sslserver" type="sslserverType">
<xs:annotation>
<xs:documentation>Specifies a Transmission
Control Protocol/Internet Protocol (TCP/IP) SSL
server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="udp" type="udpType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram Protocol (UDP) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="udpserver" type="udpserverType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram Protocol (UDP) server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="urlconnection" type="urlconnectionType">
<xs:annotation>
<xs:documentation>Specifies a Uniform Resource
Locator (URL) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="usb" type="usbType">
<xs:annotation>
<xs:documentation>Specifies a USB connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="transportservice"
type="transportserviceType">
<xs:annotation>
<xs:documentation>Specifies the name of the Open
Services Gateway Initiative (OSGi) transport
service to be used by the transport.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleSuperclassAbstractGroup"/>
<xs:attributeGroup ref="AttributeIdrefGlobalGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<xs:element name="transport" type="transportType"/>
<!-- Define the transportserviceType used by the transportservice element -->
<xs:complexType name="transportserviceType">
<xs:annotation>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) transport service name.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the Open Services
Gateway Initiative (OSGi) transport service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the transporttestType used by the transporttest element -->
<xs:complexType name="transporttestType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a transport test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of transport test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="send" type="sendType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the message(s) to send
during the test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="transport" type="transportType">
<xs:annotation>
<xs:documentation>Specifies the transport to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="swt" type="swtType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a Standard Widget Toolkit (SWT) user interface transport test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<xs:element name="transporttest" type="transporttestType"/>
<xs:element name="receiver" substitutionGroup="transport">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Defines a receiver transport.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- Define the receivertestType used by the receivertest element -->
<xs:complexType name="receivertestType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies a receiver transport test.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of receiver transport test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="provider" type="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="version" type="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The
format of the version number should be n.n.n
where n is a number. For example, 1.0.0 is a
valid version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="vendor" type="vendorType">
<xs:annotation>
<xs:documentation>Specifies an implementing vendor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="incubation" type="incubationType">
<xs:annotation>
<xs:documentation>If the contents of this element is true, then this is an incubation project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="spec" type="specType">
<xs:annotation>
<xs:documentation>Hardware specification
documentation for this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="send" type="sendType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies the message(s) to send
during the test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" ref="receiver">
<xs:annotation>
<xs:documentation>Specifies the receiver transport to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcount" type="testcountType">
<xs:annotation>
<xs:documentation>Unsigned integer that specifies
the number of times to execute tests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testdelay" type="testdelayType">
<xs:annotation>
<xs:documentation>Specifies the milliseconds to
sleep between each test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="junit" type="junitType">
<xs:annotation>
<xs:documentation>Specifies a junit test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="monitor" type="monitorType">
<xs:annotation>
<xs:documentation>Specifies a monitor test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="playback" type="playbackType">
<xs:annotation>
<xs:documentation>Specifies a playback test. Currently, not supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="testcase" type="testcaseType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies a junit testcase.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="bundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedbundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed bundle should be created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="managedfactorybundle" type="xs:string">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies an Open Services Gateway
Initiative (OSGi) managed factory bundle should
be created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationServiceBundleGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
<xs:attributeGroup ref="PackageBaseGroup"/>
<xs:attributeGroup ref="ExecutionEnvironments"/>
<xs:attributeGroup ref="AttributeOldGroup"/>
</xs:complexType>
<!-- Define the udpType used by the udp element -->
<xs:complexType name="udpType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram Protocol (UDP) connection.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the User Diagram
Protocol (UDP) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
User Diagram Protocol (UDP) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex UDP connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remotehost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) connection remote host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remoteport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) connection remote port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localhost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) connection local host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) connection local port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="packetsize" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) connection packet size in bytes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the udpserverType used by the udpserver element -->
<xs:complexType name="udpserverType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram Protocol (UDP) server connection.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the User Diagram
Protocol (UDP) server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
User Diagram Protocol (UDP) server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex UDP server connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remotehost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) server connection remote host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remoteport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) server connection remote port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localhost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) server connection local host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) server connection local port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="packetsize" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) server connection packet size in bytes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the udptransportType used by the udptransport element -->
<xs:complexType name="udptransportType">
<xs:annotation>
<xs:documentation>Specifies a User Diagram Protocol (UDP) transport.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the User Diagram
Protocol (UDP) transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
User Diagram Protocol (UDP) transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element default="1" maxOccurs="1" minOccurs="0" name="multiplex" type="multiplexType">
<xs:annotation>
<xs:appinfo>1.1.0</xs:appinfo>
<xs:documentation>Specifies that this is a multiplex UDP.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remotehost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) remote host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="remoteport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) remote port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localhost" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) local host name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="localport" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) local port.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="packetsize" type="xs:unsignedInt">
<xs:annotation>
<xs:documentation>Specifies the User Datagram
Protocol (UDP) packet size in bytes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the unitsType used by the units element -->
<xs:complexType mixed="true" name="unitsType">
<xs:annotation>
<xs:documentation>Specifies the units of a parameter or
measurement element.</xs:documentation>
</xs:annotation>
<xs:sequence maxOccurs="1" minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this units.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the urlconnectionType used by the urlconnection element -->
<xs:complexType name="urlconnectionType">
<xs:annotation>
<xs:documentation>Specifies a Uniform Resource Locator
(URL) connection.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the Uniform
Resource Locator (URL) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
Uniform Resource Locator (URL) connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="url" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the Uniform Resource
Locator (URL) name.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the usbType used by the usb element -->
<xs:complexType name="usbType">
<xs:annotation>
<xs:documentation>Specifies a USB connection.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the USB connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this
USB connection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="productid" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the USB product id.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="usage" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the USB usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="usagepage" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the USB usage page.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="1" name="vendorid" type="xs:string">
<xs:annotation>
<xs:documentation>Specifies the USB vendor id.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<!-- Define the valueType used by the value element -->
<xs:complexType mixed="true" name="valueType">
<xs:annotation>
<xs:documentation>Specifies a value.</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="1" minOccurs="0" name="description" type="descriptionType">
<xs:annotation>
<xs:documentation>Description of the value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="1" minOccurs="0" name="deprecated" type="deprecatedType">
<xs:annotation>
<xs:appinfo>1.0.0</xs:appinfo>
<xs:documentation>Specifies that the contents of this element should be marked as deprecated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="specreference"
type="specreferenceType">
<xs:annotation>
<xs:documentation>Specification reference for this value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice maxOccurs="1" minOccurs="0">
<xs:element name="boolean" type="booleanType">
<xs:annotation>
<xs:documentation>Specifies a Boolean value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="byte" type="byteType">
<xs:annotation>
<xs:documentation>Specifies a Byte value (8 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bytes" type="bytesType">
<xs:annotation>
<xs:documentation>Specifies bytes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="character" type="characterType">
<xs:annotation>
<xs:documentation>Specifies a character value (16 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="double" type="doubleType">
<xs:annotation>
<xs:documentation>Specifies a Double value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="float" type="floatType">
<xs:annotation>
<xs:documentation>Specifies a Float value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="int" type="intType">
<xs:annotation>
<xs:documentation>Specifies an Integer value (32 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="list" type="listType">
<xs:annotation>
<xs:documentation>Specifies list data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="long" type="longType">
<xs:annotation>
<xs:documentation>Specifies a Long value (64 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="long" type="longType">
<xs:annotation>
<xs:documentation>Specifies a Long value (64 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="map" type="mapType">
<xs:annotation>
<xs:documentation>Specifies a Map value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="short" type="shortType">
<xs:annotation>
<xs:documentation>Specifies a Short value (16 bits).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="string" type="stringType">
<xs:annotation>
<xs:documentation>Specifies a String value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="AttributeIdImplementationGroup"/>
<xs:attributeGroup ref="AttributeIdrefGroup"/>
</xs:complexType>
<xs:element name="value" type="valueType"/>
<!-- Define the providerType used by the provider element -->
<xs:complexType name="providerType">
<xs:annotation>
<xs:documentation>Specifies the provider name. Eclipse.org is an example of a provider.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the vendorType used by the vendor element -->
<xs:complexType name="vendorType">
<xs:annotation>
<xs:documentation>Specifies the vendor name. IBM is an example of a vendor.</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string"/>
</xs:simpleContent>
</xs:complexType>
<!-- Define the versionType used by the version element -->
<xs:simpleType name="versionType">
<xs:annotation>
<xs:documentation>Specifies the version level. The version
level should be one to three numbers separated by a
period. For example, 1.0.0 is a valid version number.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="([0-9])+(.([0-9])+)?(.([0-9])+)?"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
| Copyright (c) 2008 IBM. See license in Legal section. | 2008-07-29 | Device Kit XML Reference 1.1.0 |