Subversion Repositories SRW 1.0 Schema

[/] [srw-types.xsd] - Rev 1

Compare with Previous | Blame | View Log

<?xml version="1.0" encoding="UTF-8"?>
<!-- ZiNG SRU/SRW WSDL Specification                   -->
<!-- Version 1.0                                       -->
<!--                                                   -->
<!-- Editors:                                          -->
<!--   Matthew J. Dovey, Oxford University             -->
<!--   Poul Henrik Jorgensen, Portia                   -->
<!--   Rob Sanderson, Liverpool University             -->
<!--                                                   -->
<!-- Contributors:                                     -->
<!--  Ray Denenberg, Library of Congress               -->
<!--  Adam Dickmeiss, IndexData                        -->
<!--  Larry Dixon, Library of Congress                 -->
<!--  Janifer Gatenby, PICA                            -->
<!--  Sebastian Hammer, IndexData                      -->
<!--  Ian Ibbotson, Knowledge Integration              -->
<!--  Alan Kent, InQuirion Pty Ltd                     -->
<!--  Ralph Le Van, OCLC                               -->
<!--  Pat Stevens, OCLC                                -->
<!--  Mike Taylor, Independent Consultant              -->
<!--  Ashley Sanders, Manchester University            -->
<!--  Ben Soares, Edina                                -->
<!--  Theo van Veen, Koninlijke Bibliotheek            -->
<!--                                                   -->
<!--                                                   -->
<!--  History:                                         -->
<!--    2002-07-14  Initial Draft                      -->
<!--    2002-07-24  Service description modifications  -->
<!--    2002-09-12  Removed Authentication parameter   -->
<!--    2002-10-31  Incorporated corrections from PHJ  -->
<!--    2002-11-15  Release candidate                  -->
<!--    2002-11-22  recordNumber to recordPosition     -->
<!--    2002-11-22  unknownParameter added             -->
<!--    2002-12-02  Corrected types                    -->
<!--    2002-12-04  Removed redundant types            -->
<!--                                                   -->
<!--                                                   -->

<xs:schema targetNamespace="http://www.loc.gov/zing/srw/v1.0/"
          xmlns:diag="http://www.loc.gov/zing/srw/v1.0/diagnostic/"
          xmlns:xsortkeys="http://www.loc.gov/zing/srw/v1.0/xsortkeys/"
          xmlns:xcql="http://www.loc.gov/zing/cql/v1.0/xcql/"
          xmlns="http://www.loc.gov/zing/srw/v1.0/"
          xmlns:xs="http://www.w3.org/2001/XMLSchema"
          elementFormDefault="qualified" attributeFormDefault="unqualified">
        <xs:import namespace="http://www.loc.gov/zing/cql/v1.0/xcql/" schemaLocation="http://www.loc.gov/z3950/agency/zing/cql/xcql.xsd"/>
        <xs:import namespace="http://www.loc.gov/zing/srw/v1.0/xsortkeys/" schemaLocation="http://www.loc.gov/z3950/agency/zing/srw/xsort.xsd"/>
        <xs:import namespace="http://www.loc.gov/zing/srw/v1.0/diagnostic/" schemaLocation="http://www.loc.gov/z3950/agency/zing/srw/diagnostic.xsd"/>
        <xs:complexType name="recordType">
                <xs:sequence>
                        <xs:element name="recordSchema" type="xs:string"/>
                        <xs:element name="recordData" type="xs:string"/>
                        <xs:element name="recordPosition" minOccurs="0">
                                <xs:simpleType>
                                        <xs:restriction base="xs:integer">
                                                <xs:minExclusive value="0"/>
                                        </xs:restriction>
                                </xs:simpleType>
                        </xs:element>
                </xs:sequence>
        </xs:complexType>
        <xs:complexType name="searchRetrieveRequestType">
                <xs:sequence>
                        <xs:choice>
                                <xs:element name="query" type="xs:string"/>
                                <xs:element name="xQuery" type="xcql:operandType"/>
                        </xs:choice>
                        <xs:choice minOccurs="0">
                                <xs:element name="sortKeys" type="xs:string"/>
                                <xs:element name="xSortKeys" type="xsortkeys:xSortKeysType"/>
                        </xs:choice>
                        <xs:element name="startRecord" minOccurs="0">
                                <xs:simpleType>
                                        <xs:restriction base="xs:integer">
                                                <xs:minExclusive value="0"/>
                                        </xs:restriction>
                                </xs:simpleType>
                        </xs:element>
                        <xs:element name="maximumRecords" minOccurs="0">
                                <xs:simpleType>
                                        <xs:restriction base="xs:integer">
                                                <xs:minInclusive value="0"/>
                                        </xs:restriction>
                                </xs:simpleType>
                        </xs:element>
                        <xs:element name="recordSchema" type="xs:string" minOccurs="0"/>
                </xs:sequence>
        </xs:complexType>
        <xs:complexType name="searchRetrieveResponseType">
                <xs:sequence>
                        <xs:element name="numberOfRecords">
                                <xs:simpleType>
                                        <xs:restriction base="xs:integer">
                                                <xs:minInclusive value="0"/>
                                        </xs:restriction>
                                </xs:simpleType>
                        </xs:element>
                        <xs:element name="resultSetId" type="xs:string" minOccurs="0"/>
                        <xs:element name="resultSetIdleTime" minOccurs="0">
                                <xs:simpleType>
                                        <xs:restriction base="xs:integer">
                                                <xs:minInclusive value="0"/>
                                        </xs:restriction>
                                </xs:simpleType>
                        </xs:element>
                        <xs:element name="records" minOccurs="0">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element name="record" type="recordType" maxOccurs="unbounded"/>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="diagnostics" minOccurs="0">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element ref="diag:diagnostic" maxOccurs="unbounded"/>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="nextRecordPosition" minOccurs="0">
                                <xs:simpleType>
                                        <xs:restriction base="xs:integer">
                                                <xs:minInclusive value="0"/>
                                        </xs:restriction>
                                </xs:simpleType>
                        </xs:element>
                        <xs:element name="echoedRequest" type="echoedRequestType" minOccurs="0"/>
                </xs:sequence>
        </xs:complexType>
        <xs:element name="searchRetrieveRequest" type="searchRetrieveRequestType"/>
        <xs:element name="searchRetrieveResponse" type="searchRetrieveResponseType"/>
        <xs:element name="explainRequest" type="explainRequestType"/>
        <xs:element name="explainResponse" type="explainResponseType"/>
        <xs:complexType name="explainRequestType"/>
        <xs:complexType name="explainResponseType">
                <xs:sequence>
                        <xs:element name="Explain" type="zeerexRecord"/>
                </xs:sequence>
        </xs:complexType>
        <xs:simpleType name="zeerexRecord">
                <xs:restriction base="xs:string"/>
        </xs:simpleType>
        <xs:complexType name="echoedRequestType" mixed="false">
                <xs:complexContent mixed="false">
                        <xs:extension base="searchRetrieveRequestType">
                                <xs:sequence>
                                        <xs:element name="unknownParameter" minOccurs="0" maxOccurs="unbounded">
                                                <xs:complexType>
                                                        <xs:sequence>
                                                                <xs:element name="parameterName" type="xs:string"/>
                                                                <xs:element name="parameterValue" type="xs:string"/>
                                                        </xs:sequence>
                                                </xs:complexType>
                                        </xs:element>
                                </xs:sequence>
                        </xs:extension>
                </xs:complexContent>
        </xs:complexType>
</xs:schema>
 

Compare with Previous | Blame | View Log