diff --git a/CDT-commonTypes-v0_8_0.xsd b/CDT-commonTypes-v0_8_0.xsd index 2383dc50baf4bc01c7d3d985fbdbfe5cdb67bc3c..ce2d6ac690bd5102e26076f5f6efad779e06d6a1 100644 --- a/CDT-commonTypes-v0_8_0.xsd +++ b/CDT-commonTypes-v0_8_0.xsd @@ -94,12 +94,12 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:extension base="xs:anyURI"> </xs:extension> </xs:simpleContent> - </xs:complexType> - - <!-- TODO: decide which of these two we prefer and use it consistently --> - <xs:simpleType name="listOfURIs"> - <list itemType="xs:anyURI" /> - </xs:simpleType> + </xs:complexType> + + <!-- TODO: decide which of these two we prefer and use it consistently --> + <xs:simpleType name="listOfURIs"> + <list itemType="xs:anyURI" /> + </xs:simpleType> <xs:complexType name="AnyURIList"> <xs:sequence> @@ -427,4 +427,51 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="description" type="m2m:eventCatType" /> </xs:sequence> </xs:complexType> + + <!-- TODO: check if m2m:ID is the correct data type for the following list elements or if xs:anyURI should be used (as used in access control rules) --> + <!-- "listOfM2MID" is a space separated list of CSE-IDs and/or AE-IDs (i.e. elements of data type m2m:ID" --> + <xs:simpleType name="listOfM2MID"> + <xs:list itemType="m2m:ID" /> + </xs:simpleType> + + <!-- TODO: check if the definition of "listOfMinMax" can be simplified, i.e. avoiding use of explicit type definitions for "longMin-1" and "listOflongMin-1" --> + <!-- "listOfMinMax" represents a list of min and max numbers used in attributes of the [cmdhLimits] resource + based on data type longMin-1. Unit is milliseconds --> + <xs:simpleType name="longMin-1"> + <xs:restriction base="xs:long"> + <xs:minInclusive value="-1" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="listOflongMin-1"> + <xs:list itemType="m2m:longMin-1" /> + </xs:simpleType> + + <xs:simpleType name="listOfMinMax"> + <xs:restriction base="m2m:listOflongMin-1" > + <xs:minLength value="2" /> + <xs:maxLength value="2" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: check if the definition of "backOffParameters" can be simplified, i.e. avoiding use of explicit type definition for "listOfNonNegInt" --> + <!-- "backOffParameters" is an ordered list of 3 nonNegativeInteger numbers:backoffTime, backoffTimeIncrement, maximumBackoffTime (in that order!), + all units in milliseconds --> + <xs:simpleType name="listOfNonNegInt"> + <xs:list itemType="xs:nonNegativeInteger" /> + </xs:simpleType> + + <xs:simpleType name="backOffParameters"> + <xs:restriction base="m2m:listOfNonNegInt" > + <xs:minLength value="3" /> + <xs:maxLength value="3" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: check if "eventCatType" is the correct base type for the list elements or if data type "eventCat" should be used here --> + <!-- "listOfEventCat" is a space separated list of eventCatType's --> + <xs:simpleType name="listOfEventCat"> + <xs:list itemType="m2m:eventCatType" /> + </xs:simpleType> + </xs:schema> diff --git a/CDT-commonTypes-v0_8_0.xsd~ b/CDT-commonTypes-v0_8_0.xsd~ new file mode 100644 index 0000000000000000000000000000000000000000..b4ac05d098da09b530be3724da73b58d41d190a7 --- /dev/null +++ b/CDT-commonTypes-v0_8_0.xsd~ @@ -0,0 +1,472 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright Notification + +The oneM2M Partners authorize you to copy this document, provided that you retain all copyright and other proprietary notices +contained in the original materials on any copies of the materials and that you comply strictly with these terms. +This copyright permission does not constitute an endorsement of the products or services, nor does it encompass the granting of +any patent rights. The oneM2M Partners assume no responsibility for errors or omissions in this document. +© 2014, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TTA, TTC). All rights reserved. + +Notice of Disclaimer & Limitation of Liability + +The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand +and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. +No recommendation as to products or vendors is made or should be implied. + +NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, +GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY +PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. +NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO +ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. +oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER. + +--> +<xs:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.onem2m.org/xml/protocols" + xmlns:m2m="http://www.onem2m.org/xml/protocols" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + elementFormDefault="unqualified" > + + <xs:include schemaLocation="CDT-enumerationTypes-v0_8_0.xsd" /> + + <xs:simpleType name="timestamp"> + <xs:restriction base="xs:dateTime" /> + </xs:simpleType> + + + <xs:simpleType name="extendedCrontab"> + <xs:restriction base="xs:string"> + <xs:pattern + value="([*\d/,-]+\s+){3}[*\d/#L,-]+\s+(JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC|[*\d/,-])+\s+(SUN|MON|TUE|WED|THU|FRI|SAT|[*\dL#/,-])+\s+[*\d/,-]+" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="eCrontabList"> + <xs:list itemType="m2m:extendedCrontab" /> + </xs:simpleType> + +<!-- TODO: sort out id vs ID, and choose appropriate definitions for the id types (xs:token is placeholder for now) --> + <xs:simpleType name="ID"> + <xs:restriction base="xs:token"> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="nodeID"> + <xs:restriction base="xs:token"> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="requestID"> + <xs:restriction base="xs:token"> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="nhURI"> + <xs:restriction base="xs:anyURI" /> + </xs:simpleType> + + <xs:complexType name="acpType"> + <xs:sequence> + <xs:element ref="m2m:accessControlPolicyID" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="accessControlPolicyID" type="xs:anyURI" /> + + <xs:simpleType name="labels"> + <xs:list itemType="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="stringList"> + <xs:list itemType="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="pOAList"> + <xs:list itemType="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="triggerRecipientId"> + <xs:restriction base="xs:unsignedInt" /> + </xs:simpleType> + + <xs:complexType name="externalId"> + <xs:simpleContent> + <xs:extension base="xs:anyURI"> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + + <xs:complexType name="AnyURIList"> + <xs:sequence> + <xs:element name="reference" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <!-- <xs:simpleType name="attribute"> --> + <!-- <xs:restriction base="xs:string" /> --> + <!-- </xs:simpleType> --> + + <!-- Resource type definitions. These types include the "common attributes" that are used by oneM2M Resources Each oneM2M + Resource has a resource type that is defined in a separate schema, but each resource type extends one of the types that is + defined below --> + + <xs:complexType name="resource"> + <xs:sequence> + <xs:element name="resourceType" type="m2m:resourceType" /> + <xs:element name="resourceID" type="m2m:ID" /> + <xs:element name="parentID" type="m2m:nhURI" /> + <xs:element name="creationTime" type="xs:dateTime" /> + <xs:element name="lastModifiedTime" type="xs:dateTime" /> + <xs:element name="labels" type="m2m:labels" minOccurs="0" /> + </xs:sequence> + <xs:attribute name="name" type="xs:token" use="required" /> + </xs:complexType> + + <xs:complexType name="regularResource"> + <xs:complexContent> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="accessControlPolicyIDs" type="m2m:acpType" minOccurs="0" /> + <xs:element name="expirationTime" type="xs:dateTime" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announceableResource"> + <xs:complexContent> + <xs:extension base="m2m:regularResource"> + <xs:sequence> + <xs:element name="announceTo" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="announcedAttribute" minOccurs="0"> + <xs:simpleType> + <xs:list itemType="xs:token" /> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announcedResource"> + <xs:complexContent> + <!-- AccessControlPolicyIDs is mandatory for announced resources but not for the original ones --> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="accessControlPolicyIDs" type="m2m:acpType" /> + <xs:element name="expirationTime" type="xs:dateTime" /> + <xs:element name="link" type="xs:anyURI" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announceableSubordinateResource"> + <xs:complexContent> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="expirationTime" type="xs:dateTime" minOccurs="0" /> + <xs:element name="announceTo" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="announcedAttribute" minOccurs="0"> + <xs:simpleType> + <xs:list itemType="xs:token" /> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announcedSubordinateResource"> + <xs:complexContent> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="expirationTime" type="xs:dateTime" minOccurs="0" /> + <xs:element name="link" type="xs:anyURI" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="mgmtResource"> + <xs:complexContent> + <xs:extension base="m2m:announceableResource"> + <xs:sequence> + <xs:element name="mgmtDefinition" type="m2m:mgmtDefinition" /> + <xs:element name="objectIDs" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="objectPaths" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="description" type="xs:string" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announcedMgmtResource"> + <xs:complexContent> + <xs:extension base="m2m:announcedResource"> + <xs:sequence> + <xs:element name="mgmtDefinition" type="m2m:mgmtDefinition" /> + <xs:element name="objectIDs" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="objectPaths" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="description" type="xs:string" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="childResourceRef"> + <xs:simpleContent> + <xs:extension base="xs:anyURI"> + <xs:attribute name="name" type="xs:string" use="required" /> + <xs:attribute name="type" type="m2m:resourceType" use="required" /> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + + <xs:complexType name="mgmtLinkRef"> + <xs:simpleContent> + <xs:extension base="xs:anyURI"> + <xs:attribute name="name" type="xs:string" use="required" /> + <xs:attribute name="type" type="m2m:mgmtDefinition" use="required" /> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + + + <xs:complexType name="anyArgType"> + <xs:sequence> + <xs:element name="name" type="xs:string" /> + <xs:element name="type" type="xs:string" /> + <xs:element name="value" type="xs:anyType" /> + </xs:sequence> + </xs:complexType> + + + <xs:complexType name="downloadArgsType"> + <xs:sequence> + <xs:element name="FileType" type="xs:string" /> + <xs:element name="URL" type="xs:anyURI" /> + <xs:element name="Username" type="xs:string" /> + <xs:element name="Password" type="xs:string" /> + <xs:element name="Filesize" type="xs:string" /> + <xs:element name="TargetFile" type="xs:string" /> + <xs:element name="DelaySeconds" type="xs:int" /> + <xs:element name="SuccessURL" type="xs:anyURI" /> + <xs:element name="StartTime" type="xs:dateTime" /> + <xs:element name="StartTime" type="xs:dateTime" /> + <xs:element name="AnyArg" type="m2m:anyArgsListType" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="uploadArgsType"> + <xs:sequence> + <xs:element name="FileType" type="xs:string" /> + <xs:element name="URL" type="xs:anyURI" /> + <xs:element name="Username" type="xs:string" /> + <xs:element name="Password" type="xs:string" /> + <xs:element name="AnyArg" type="m2m:anyArgsListType" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="rebootArgsType"> + <xs:sequence> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="resetArgsType"> + <xs:sequence> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="anyArgsListType"> + <xs:sequence> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="execReqArgsType"> + <xs:choice> + <xs:element name="Download" type="m2m:downloadArgsType" /> + <xs:element name="Upload" type="m2m:uploadArgsType" /> + <xs:element name="Reboot" type="m2m:rebootArgsType" /> + <xs:element name="Reset" type="m2m:resetArgsType" /> + <xs:element name="AnyArg" type="m2m:anyArgsListType" minOccurs="0" /> + </xs:choice> + </xs:complexType> + + <xs:complexType name="execReqArgsListType"> + <xs:sequence> + <xs:element name="execReqArg" type="m2m:execReqArgsType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="deliveryMetaData"> + <xs:sequence> + + </xs:sequence> + </xs:complexType> + + <xs:complexType name="content" > + <xs:sequence> + <xs:any namespace="http://www.onem2m.org/xml/protocols" + processContents="lax" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + +<!-- TODO: reconcile this with PRO-2014-0562-Implementation_of_Filter_Criteria_as_concept --> + <xs:complexType name="filterCriteria"> + <xs:sequence> + <xs:element name="createdBefore" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="createdAfter" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="modifiedSince" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="unmodifiedSince" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="stateTagSmaller" type="xs:positiveInteger" minOccurs="0" /> + <xs:element name="stateTagBigger" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="expireBefore" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="expireAfter" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="labels" type="m2m:labels" minOccurs="0" /> + <xs:element name="resourceType" type="m2m:resourceType" minOccurs="0" /> + <xs:element name="sizeAbove" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="sizeBelow" type="xs:positiveInteger" minOccurs="0" /> + <xs:element name="contentType" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="limit" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="attribute" minOccurs="0" maxOccurs="unbounded"> + <xs:complexType> + <xs:sequence> + <xs:element name="name" type="xs:NCName" /> + <xs:element name="value" type="xs:anyType" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="filterUsage" type="m2m:filterUsage" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + +<!-- TODO: consider moving this to the Enumerations file --> + <xs:simpleType name="filterUsage"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Discovery Criteria --> + <xs:enumeration value="1" /> + <!-- Event Notification Criteria --> + <xs:enumeration value="2" /> + </xs:restriction> + </xs:simpleType> + + <xs:complexType name="metaInformation"> + <xs:sequence> + <xs:element name="resourceType" type="m2m:resourceType" minOccurs="0" /> + <xs:element name="name" type="xs:string" minOccurs="0" /> + <xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="requestMessageExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="operationalExecutionTime" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="responseMessageType" type="m2m:responseType" minOccurs="0" /> + <xs:element name="responsePersistence" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="resultContent" type="m2m:resultContent" minOccurs="0" /> + <xs:element name="eventCategory" minOccurs="0"> + <xs:complexType> + <xs:sequence> + <xs:element name="eventCatType" type="m2m:eventCatType" /> + <xs:element name="eventCatNo" type="xs:nonNegativeInteger" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="deliveryAggregation" type="xs:boolean" minOccurs="0" /> + <xs:element name="groupRequestIdentifier" type="xs:string" minOccurs="0" /> + <xs:element name="filterCriteria" type="m2m:filterCriteria" minOccurs="0" /> + <xs:element name="discoveryResultType" type="m2m:discResType" minOccurs="0" /> + <xs:element name="role" type="xs:string" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="aggregatedRequest"> + <xs:sequence> + <xs:element name="request" maxOccurs="unbounded"> + <xs:complexType> + <xs:sequence> + <xs:element name="operation" type="m2m:operation" /> + <xs:element name="to" type="xs:anyURI" /> + <xs:element name="from" type="m2m:ID" /> + <xs:element name="requestIdentifier" type="m2m:requestID" /> + <xs:element name="content" type="m2m:content" minOccurs="0" /> + <xs:element name="metaInformation" type="m2m:metaInformation" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:complexType> + + <!-- TODO: is this a sensible order? --> + <xs:complexType name="operationResult"> + <xs:sequence> + <xs:element name="content" type="m2m:content" minOccurs="0" /> + <xs:element name="eventCategory" type="m2m:eventCatType" minOccurs="0" /> + <xs:element name="from" type="m2m:ID" minOccurs="0"/> + <xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0"/> + <xs:element name="requestIdentifier" type="m2m:requestID" /> + <xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="to" type="xs:anyURI" minOccurs="0" /> + <xs:element name="responseStatusCode" type="m2m:responseStatus" /> + </xs:sequence> + </xs:complexType> + + <!-- TODO: cardinality of description --> + <xs:complexType name="responseStatus"> + <xs:sequence> + <xs:element name="code" type="m2m:statusCode" /> + <xs:element name="description" type="m2m:eventCatType" /> + </xs:sequence> + </xs:complexType> + + <!-- TODO: check if m2m:ID is the correct data type for the following list elements or if xs:anyURI should be used (as used in access control rules) --> + <!-- "listOfM2MID" is a space separated list of CSE-IDs and/or AE-IDs (i.e. elements of data type m2m:ID" --> + <xs:simpleType name="listOfM2MID"> + <xs:list itemType="m2m:ID" /> + </xs:simpleType> + + <!-- TODO: check if the definition of "listOfMinMax" can be simplified, i.e. avoiding use of explicit type definitions for "longMin-1" and "listOflongMin-1" --> + <!-- "listOfMinMax" represents a list of min and max numbers used in attributes of the [cmdhLimits] resource + based on data type longMin-1. Unit is milliseconds --> + <xs:simpleType name="longMin-1"> + <xs:restriction base="xs:long"> + <xs:minInclusive value="-1" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="listOflongMin-1"> + <xs:list itemType="m2m:longMin-1" /> + </xs:simpleType> + + <xs:simpleType name="listOfMinMax"> + <xs:restriction base="m2m:listOflongMin-1" > + <xs:minLength value="2" /> + <xs:maxLength value="2" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: check if the definition of "backOffParameters" can be simplified, i.e. avoiding use of explicit type definition for "listOfNonNegInt" --> + <!-- "backOffParameters" is an ordered list of 3 nonNegativeInteger numbers:backoffTime, backoffTimeIncrement, maximumBackoffTime (in that order!), + all units in milliseconds --> + <xs:simpleType name="listOfNonNegInt"> + <xs:list itemType="xs:nonNegativeInteger" /> + </xs:simpleType> + + <xs:simpleType name="backOffParameters"> + <xs:restriction base="m2m:listOfNonNegInt" > + <xs:minLength value="3" /> + <xs:maxLength value="3" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: check if "eventCatType" is the correct base type for the list elements or if data type "eventCat" should be used here --> + <!-- "listOfEventCat" is a space separated list of eventCatType's --> + <xs:simpleType name="listOfEventCat"> + <xs:list itemType="m2m:eventCatType" /> + </xs:simpleType> + +</xs:schema>