<?xml version="1.0" encoding="UTF-8"?> | |
<xsd:schema | |
xmlns:xsd="http://www.w3.org/2001/XMLSchema" | |
xmlns:xqtsr="http://www.w3.org/2005/02/query-test-XQTSResult" | |
targetNamespace="http://www.w3.org/2005/02/query-test-XQTSResult"> | |
<xsd:element | |
name="p" | |
type="xsd:string" /> | |
<xsd:complexType name="commentType"> | |
<xsd:sequence> | |
<xsd:element | |
ref="xqtsr:p" | |
minOccurs="1" | |
maxOccurs="unbounded" /> | |
</xsd:sequence> | |
</xsd:complexType> | |
<xsd:simpleType name="syntaxType"> | |
<xsd:restriction base="xsd:string"> | |
<xsd:enumeration value="XQuery" /> | |
<xsd:enumeration value="XQueryX" /> | |
</xsd:restriction> | |
</xsd:simpleType> | |
<xsd:element name="syntax" type="xqtsr:syntaxType" /> | |
<xsd:element name="test-suite-result"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element ref="xqtsr:implementation" /> | |
<xsd:element ref="xqtsr:syntax" /> | |
<xsd:element ref="xqtsr:test-run" /> | |
<xsd:element | |
maxOccurs="unbounded" | |
minOccurs="1" | |
ref="xqtsr:test-case" /> | |
</xsd:sequence> | |
<xsd:anyAttribute processContents="lax" namespace="##other"/> | |
</xsd:complexType> | |
<xsd:unique name="unique-test-cases"> | |
<xsd:selector xpath=".//xqtsr:test-case"/> | |
<xsd:field xpath="@name"/> | |
</xsd:unique> | |
</xsd:element> | |
<xsd:element name="implementation"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element ref="xqtsr:organization" /> | |
<xsd:element ref="xqtsr:submittor" /> | |
<xsd:element | |
ref="xqtsr:description" | |
minOccurs="0" | |
maxOccurs="1" /> | |
<xsd:element | |
ref="xqtsr:implementation-defined-items" | |
minOccurs="0" | |
maxOccurs="1" /> | |
<xsd:element | |
ref="xqtsr:features" | |
minOccurs="0" | |
maxOccurs="1" /> | |
<xsd:element | |
ref="xqtsr:context-properties" | |
minOccurs="0" | |
maxOccurs="1" /> | |
</xsd:sequence> | |
<xsd:attribute | |
name="name" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="version" | |
type="xsd:string" | |
use="optional" /> | |
<!-- anonymous-result-columm='true' will create a result column in reports | |
that are generated with "Anonymous" instead of the implementation name. | |
--> | |
<xsd:attribute | |
name="anonymous-result-column" | |
type="xsd:string" | |
use="optional" /> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="organization"> | |
<xsd:complexType> | |
<xsd:attribute | |
name="name" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="website" | |
type="xsd:string" | |
use="optional" /> | |
<!-- anonymous='true' will cause the organization and implementation | |
information not to be listed at the top of reports that are generated. | |
--> | |
<xsd:attribute | |
name="anonymous" | |
type="xsd:boolean" | |
use="optional" /> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="submittor"> | |
<xsd:complexType> | |
<xsd:attribute | |
name="name" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="title" | |
type="xsd:string" | |
use="optional" /> | |
<xsd:attribute | |
name="email" | |
type="xsd:string" | |
use="optional" /> | |
<xsd:attribute | |
name="phone" | |
use="optional"></xsd:attribute> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element | |
name="description" | |
type="xqtsr:commentType" /> | |
<xsd:element name="implementation-defined-items"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element | |
minOccurs="0" | |
maxOccurs="unbounded" | |
ref="xqtsr:implementation-defined-item" /> | |
</xsd:sequence> | |
</xsd:complexType> | |
<xsd:unique name="unique-implementation-defined-item"> | |
<xsd:selector xpath=".//xqtsr:implementation-defined-item"/> | |
<xsd:field xpath="@name"/> | |
</xsd:unique> | |
</xsd:element> | |
<!-- Report the behavior of an implementation for an implementation-defined | |
item. The implementation-defined-item name should be reported exactly | |
as provided in XQTSCatalog. | |
--> | |
<xsd:element name="implementation-defined-item"> | |
<xsd:complexType> | |
<xsd:attribute | |
name="name" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="value" | |
type="xsd:string" | |
use="required" /> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="features"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element | |
minOccurs="0" | |
maxOccurs="unbounded" | |
ref="xqtsr:feature"></xsd:element> | |
</xsd:sequence> | |
</xsd:complexType> | |
<xsd:unique name="unique-features"> | |
<xsd:selector xpath=".//xqtsr:feature"/> | |
<xsd:field xpath="@name"/> | |
</xsd:unique> | |
</xsd:element> | |
<!-- Report whether a conformance feature described in XQTSCatalog | |
is supported. The feature name should be reported exactly as | |
provided in XQTSCatalog. | |
--> | |
<xsd:element name="feature"> | |
<xsd:complexType> | |
<xsd:attribute | |
name="name" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="supported" | |
type="xsd:boolean" | |
use="required" /> | |
<xsd:attribute | |
name="comment" | |
type="xsd:string" /> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="context-properties"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element | |
maxOccurs="unbounded" | |
minOccurs="0" | |
ref="xqtsr:context-property" /> | |
</xsd:sequence> | |
</xsd:complexType> | |
<xsd:unique name="unique-context-properties"> | |
<xsd:selector xpath=".//xqtsr:context-property"/> | |
<xsd:field xpath="@name"/> | |
</xsd:unique> | |
</xsd:element> | |
<!-- Report whether a context item described in XQTSCatalog has been | |
overwritten or augmented. The context property name should be | |
reported exactly as provided in XQTSCatalog. | |
--> | |
<xsd:element name="context-property"> | |
<xsd:complexType> | |
<xsd:attribute | |
name="name" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="value" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="context-type" | |
use="required"> | |
<xsd:simpleType> | |
<xsd:restriction | |
base="xsd:string"> | |
<xsd:enumeration | |
value="static" /> | |
<xsd:enumeration | |
value="dynamic" /> | |
</xsd:restriction> | |
</xsd:simpleType> | |
</xsd:attribute> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element name="test-run"> | |
<xsd:complexType> | |
<xsd:sequence> | |
<xsd:element ref="xqtsr:test-suite" /> | |
<xsd:element | |
ref="xqtsr:transformation" | |
minOccurs="0" | |
maxOccurs="1" /> | |
<xsd:element | |
ref="xqtsr:comparison" | |
minOccurs="0" | |
maxOccurs="1" /> | |
<xsd:element | |
ref="xqtsr:otherComments" | |
minOccurs="0" | |
maxOccurs="1" /> | |
</xsd:sequence> | |
<xsd:attribute | |
name="dateRun" | |
type="xsd:date" | |
use="required" /> | |
</xsd:complexType> | |
</xsd:element> | |
<xsd:element | |
name="transformation" | |
type="xqtsr:commentType" /> | |
<xsd:element | |
name="comparison" | |
type="xqtsr:commentType" /> | |
<xsd:element | |
name="otherComments" | |
type="xqtsr:commentType" /> | |
<xsd:element name="test-suite"> | |
<xsd:complexType> | |
<xsd:attribute | |
name="version" | |
type="xsd:string" | |
use="required" /> | |
</xsd:complexType> | |
</xsd:element> | |
<!-- Report the result of running a test case described in XQTSCatalog. | |
The test case name should be reported exactly as provided in | |
XQTSCatalog. | |
--> | |
<xsd:element name="test-case" type="xqtsr:test-caseType" /> | |
<xsd:complexType name="test-caseType"> | |
<xsd:attribute | |
name="name" | |
type="xsd:string" | |
use="required" /> | |
<xsd:attribute | |
name="result" | |
type="xqtsr:resultStatusType" | |
use="required"> | |
</xsd:attribute> | |
<xsd:attribute | |
name="comment" | |
type="xsd:string" | |
use="optional" /> | |
<xsd:anyAttribute processContents="lax" namespace="##other"/> | |
</xsd:complexType> | |
<xsd:simpleType name="resultStatusType"> | |
<xsd:restriction | |
base="xsd:string"> | |
<xsd:enumeration | |
value="pass" /> | |
<xsd:enumeration | |
value="fail" /> | |
<xsd:enumeration | |
value="not applicable" /> | |
<xsd:enumeration | |
value="not tested" /> | |
<xsd:enumeration | |
value="cannot tell" /> | |
</xsd:restriction> | |
</xsd:simpleType> | |
</xsd:schema> |