[tdwg-tapir] r808 - tapir/dev/schema
svn at rs.tdwg.org
svn at rs.tdwg.org
Tue Jan 23 16:20:22 CET 2007
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 at 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>
More information about the tdwg-tag
mailing list