[tdwg-tapir] r808 - tapir/dev/schema

Author: RenatoDeGiovanni Date: 2007-01-23 16:20:07 +0100 (Tue, 23 Jan 2007) New Revision: 808 Modified: tapir/dev/schema/tapir.xsd Log: * Removed maxOccurs="unbounded" from indexingElement. * Changed documentation for <basicSchemaLanguage/> removing simpleContent and complexContent. * Included optional attribute "tagName" in inventory <concept> elements. * Changed subelements of inventory concepts to xsd:any. * Added optional "alias" attribute to capabilities/concepts/schema. * Removed default="1" for the "limit" attribute. * Element <variable> is not abstract anymore. Its previous concrete representations are now pre-defined attribute values from an extensible controlled vocabulary of a new "name" attribute. * Changed subelements of capabilities/variables/environment to xsd:any and removed <custom> subelement. * Changed use of header/source@accesspoint to optional. Modified: tapir/dev/schema/tapir.xsd =================================================================== --- tapir/dev/schema/tapir.xsd 2007-01-23 12:24:06 UTC (rev 807) +++ tapir/dev/schema/tapir.xsd 2007-01-23 15:20:07 UTC (rev 808) @@ -1,4 +1,4 @@ -<?xml version="1.0"?> +<?xml version="1.0"?> <!-- $Id$ --> <xsd:schema targetNamespace="http://rs.tdwg.org/tapir/1.0" xmlns="http://rs.tdwg.org/tapir/1.0" @@ -151,7 +151,7 @@ </xsd:complexType> </xsd:element> </xsd:sequence> - <xsd:attribute name="accesspoint" type="xsd:anyURI" use="required"/> + <xsd:attribute name="accesspoint" type="xsd:anyURI" use="optional"/> <xsd:attribute name="sendtime" type="xsd:dateTime" use="required"/> </xsd:complexType> </xsd:element> @@ -255,7 +255,7 @@ </xsd:choice> </xsd:complexType> </xsd:element> - <xsd:element name="indexingElement" maxOccurs="unbounded"> + <xsd:element name="indexingElement"> <xsd:annotation> <xsd:documentation>A simple XPath pointing to a response structure node that should be used as a reference for counting.</xsd:documentation> @@ -345,9 +345,9 @@ <xsd:sequence> <xsd:element name="concept" maxOccurs="unbounded"> <xsd:annotation> - <xsd:documentation>Repeatable element. One or more concepts to be used for ordering the + <xsd:documentation>One or more concepts to be used for ordering the model. If the attribute "descend" is set to true, a descending - ordering will be used instead of the default ascending one.</xsd:documentation> + order will be used instead of the default ascending one.</xsd:documentation> </xsd:annotation> <xsd:complexType> <xsd:complexContent> @@ -389,11 +389,20 @@ </xsd:annotation> <xsd:complexType> <xsd:sequence> - <xsd:element name="concept" type="qualifiedConceptReferenceType" minOccurs="1" maxOccurs="unbounded"> - <xsd:annotation> - <xsd:documentation>A single qualified concept</xsd:documentation> - </xsd:annotation> - </xsd:element> + <xsd:element name="concept" maxOccurs="unbounded"> + <xsd:annotation> + <xsd:documentation>A single qualified concept. The attribute + tagName can be used to specify the name of the element + that will enclose the respective values in the response.</xsd:documentation> + </xsd:annotation> + <xsd:complexType> + <xsd:complexContent> + <xsd:extension base="qualifiedConceptReferenceType"> + <xsd:attribute name="tagName" type="xsd:string" use="optional" default="value"/> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element> @@ -664,48 +673,47 @@ </xsd:annotation> </xsd:element> <!-- ===== ENVIRONMENT VARIABLE EXPRESSIONS ===== --> - <xsd:element name="variable" abstract="true" substitutionGroup="expression"> + <xsd:element name="variable" substitutionGroup="expression"> <xsd:annotation> - <xsd:documentation>An abstract element to represent datasource specific values taken - from the datasource environment by the wrapper.</xsd:documentation> + <xsd:documentation>An element to represent specific values + from the service local environment.</xsd:documentation> </xsd:annotation> + <xsd:complexType> + <xsd:attribute name="name" type="variableNameType" use="required"/> + </xsd:complexType> </xsd:element> - <xsd:element name="date" substitutionGroup="variable"> - <xsd:annotation> - <xsd:documentation>An element to represent ISO date like 2005-07-21. Substitutes an - abstract environment variable element.</xsd:documentation> - </xsd:annotation> - <xsd:complexType/> - </xsd:element> - <xsd:element name="timestamp" substitutionGroup="variable"> - <xsd:annotation> - <xsd:documentation>An element to represent an ISO timestamp like 2005-07-20 17:01:38. - Substitutes an abstract environment variable element.</xsd:documentation> - </xsd:annotation> - <xsd:complexType/> - </xsd:element> - <xsd:element name="datasourceName" substitutionGroup="variable"> - <xsd:annotation> - <xsd:documentation>An element to represent the name of the datasource. Substitutes an - abstract environment variable element.</xsd:documentation> - </xsd:annotation> - <xsd:complexType/> - </xsd:element> - <xsd:element name="accessPoint" substitutionGroup="variable"> - <xsd:annotation> - <xsd:documentation>An element to represent the access point of the datasource. - Substitutes an abstract environment variable element.</xsd:documentation> - </xsd:annotation> - <xsd:complexType/> - </xsd:element> - <xsd:element name="lastUpdate" substitutionGroup="variable"> - <xsd:annotation> - <xsd:documentation>An element to represent the timestamp of the last update of the - datasource. Substitutes an abstract variable expression - element.</xsd:documentation> - </xsd:annotation> - <xsd:complexType/> - </xsd:element> + <xsd:simpleType name="predefinedVariableNamesType"> + <xsd:restriction base="xsd:string"> + <xsd:enumeration value="date"> + <xsd:annotation> + <xsd:documentation>Current date in ISO format like 2005-07-21.</xsd:documentation> + </xsd:annotation> + </xsd:enumeration> + <xsd:enumeration value="timestamp"> + <xsd:annotation> + <xsd:documentation>Current timestamp in ISO format like 2005-07-20 17:01:38</xsd:documentation> + </xsd:annotation> + </xsd:enumeration> + <xsd:enumeration value="datasourceName"> + <xsd:annotation> + <xsd:documentation>The name of the datasource (service title).</xsd:documentation> + </xsd:annotation> + </xsd:enumeration> + <xsd:enumeration value="accessPoint"> + <xsd:annotation> + <xsd:documentation>Service access point.</xsd:documentation> + </xsd:annotation> + </xsd:enumeration> + <xsd:enumeration value="lastUpdate"> + <xsd:annotation> + <xsd:documentation>Timestamp of the last update of the datasource.</xsd:documentation> + </xsd:annotation> + </xsd:enumeration> + </xsd:restriction> + </xsd:simpleType> + <xsd:simpleType name="variableNameType"> + <xsd:union memberTypes="predefinedVariableNamesType xsd:string"/> + </xsd:simpleType> <!-- ============================================= --> <!--REQUEST TYPE DEFINITIONS--> <!-- ============================================= --> @@ -770,7 +778,7 @@ <xsd:attributeGroup name="pagingParametersGroup"> <xsd:attribute name="count" type="xsd:boolean" use="optional" default="false"/> <xsd:attribute name="start" type="xsd:nonNegativeInteger" use="optional" default="0"/> - <xsd:attribute name="limit" type="xsd:nonNegativeInteger" use="optional" default="1"/> + <xsd:attribute name="limit" type="xsd:nonNegativeInteger" use="optional"/> </xsd:attributeGroup> <!-- ============================================= --> <!--RESPONSE TYPE DEFINITIONS--> @@ -976,6 +984,7 @@ </xsd:sequence> <xsd:attribute name="namespace" type="xsd:anyURI" use="required"/> <xsd:attribute name="location" type="xsd:anyURI" use="required"/> + <xsd:attribute name="alias" type="xsd:string" use="optional"/> </xsd:complexType> </xsd:element> </xsd:sequence> @@ -987,12 +996,7 @@ <xsd:element name="environment" minOccurs="0"> <xsd:complexType> <xsd:sequence> - <xsd:element ref="variable" minOccurs="0" maxOccurs="unbounded"/> - <xsd:element ref="custom" minOccurs="0"> - <xsd:annotation> - <xsd:documentation>Extension slot for other variables.</xsd:documentation> - </xsd:annotation> - </xsd:element> + <xsd:any maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> @@ -1044,7 +1048,6 @@ <xsd:element ref="custom" minOccurs="0"/> </xsd:sequence> </xsd:complexType> - <xsd:complexType name="templatesCapabilitiesType"> <xsd:sequence> <xsd:element name="template" maxOccurs="unbounded"> @@ -1069,10 +1072,8 @@ <xsd:element name="basicSchemaLanguage"> <xsd:annotation> <xsd:documentation>This includes the following xml schema tags: schema incl - target namespace, element incl min/maxOccurs, attribute incl minOccurs, - sequence, all If defined locally it should also include complexType + - simpleType definitions incl complexContent + - simpleContent</xsd:documentation> + target namespace, element incl min/maxOccurs, attribute incl use, + sequence, all and local definitions of complexType and simpleType.</xsd:documentation> </xsd:annotation> <xsd:complexType/> </xsd:element> @@ -1697,18 +1698,13 @@ </xsd:annotation> <xsd:complexType> <xsd:sequence> - <xsd:element name="value" maxOccurs="unbounded"> + <xsd:any maxOccurs="unbounded"> <xsd:annotation> - <xsd:documentation>A single value for a single concept. The sequence + <xsd:documentation>Single values for each concept. The sequence of the values should correspond to the sequence used in the request.</xsd:documentation> </xsd:annotation> - <xsd:complexType> - <xsd:simpleContent> - <xsd:extension base="xsd:string"/> - </xsd:simpleContent> - </xsd:complexType> - </xsd:element> + </xsd:any> </xsd:sequence> <xsd:attribute name="count" type="xsd:positiveInteger" use="optional"/> </xsd:complexType>
participants (1)
-
svn@rs.tdwg.org