Author: markus Date: 2006-01-06 10:52:14 +0100 (Fri, 06 Jan 2006) New Revision: 402
Modified: trunk/protocol/tapir.xsd Log: - subdivide abstract expression element into simple&complex expression, with literals,concepts¶meters being simple, arithmetic OPs complex expressions. - allow IN operator to have only simple expressions as arguments
Modified: trunk/protocol/tapir.xsd =================================================================== --- trunk/protocol/tapir.xsd 2006-01-06 09:48:43 UTC (rev 401) +++ trunk/protocol/tapir.xsd 2006-01-06 09:52:14 UTC (rev 402) @@ -252,8 +252,7 @@ <xsd:element name="documentation" type="xsd:string" minOccurs="0"/> </xsd:sequence> </xsd:complexType> - <xsd:element name="searchTemplate" substitutionGroup="queryTemplate" type="searchTemplateType"> - </xsd:element> + <xsd:element name="searchTemplate" substitutionGroup="queryTemplate" type="searchTemplateType"/> <xsd:complexType name="searchTemplateType"> xsd:complexContent <xsd:extension base="extResourceDocumentationType"> @@ -338,7 +337,9 @@ or concept).</xsd:documentation> </xsd:annotation> </xsd:element> - <xsd:element name="literal" substitutionGroup="expression"> + <!-- ===== SIMPLE EXPRESSIONS ===== --> + <xsd:element name="simpleExpression" abstract="true" substitutionGroup="expression"/> + <xsd:element name="literal" substitutionGroup="simpleExpression"> xsd:annotation xsd:documentationAn element to represent literals / values. Substitutes an abstract expression element.</xsd:documentation> @@ -347,7 +348,7 @@ <xsd:attribute name="value" type="xsd:string" use="required"/> </xsd:complexType> </xsd:element> - <xsd:element name="parameter" substitutionGroup="expression"> + <xsd:element name="parameter" substitutionGroup="simpleExpression"> xsd:annotation xsd:documentationAn element to represent external parameters e.g. via CGI. Substitutes an abstract expression element.</xsd:documentation> @@ -356,7 +357,7 @@ <xsd:attribute name="name" type="xsd:string" use="required"/> </xsd:complexType> </xsd:element> - <xsd:element name="concept" type="conceptType" substitutionGroup="expression"> + <xsd:element name="concept" type="conceptType" substitutionGroup="simpleExpression"> xsd:annotation xsd:documentationAn element to represent a concept of one specific conceptual schema. Substitutes an abstract expression element.</xsd:documentation> @@ -367,8 +368,10 @@ <xsd:extension base="qualifiedConceptReference"/> </xsd:complexContent> </xsd:complexType> + <!-- ===== COMPLEX EXPRESSIONS ===== --> + <xsd:element name="complexExpression" abstract="true" substitutionGroup="expression"/> <!-- === ARITHMETIC EXPRESSION OPERATORS ===--> - <xsd:element name="AOP" abstract="true" substitutionGroup="expression"> + <xsd:element name="AOP" abstract="true" substitutionGroup="complexExpression"> xsd:annotation xsd:documentationAn abstract element representing any Arithmetic operator.</xsd:documentation> @@ -503,7 +506,7 @@ <xsd:element name="values"> xsd:complexType xsd:sequence - <xsd:element ref="expression" maxOccurs="unbounded"/> + <xsd:element ref="simpleExpression" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element>