This topic contains the annotated text of the Microsoft.Search.Query.xsd schema file. For additional information about this schema, see Microsoft.Search.Query Schema Documentation.
<?xml version="1.0" encoding="utf-8" ?>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Schema: Query.xsd -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:Microsoft.Search.Query"
xmlns="urn:Microsoft.Search.Query" elementFormDefault="qualified"
xmlns:t="urn:Microsoft.Search.Types">
<xsd:annotation>
<xsd:documentation>
This document is provided for informational purposes
only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED,
AS TO THE INFORMATION IN THIS DOCUMENT. Complying with
all applicable copyright laws is the responsibility of
the user. Microsoft may have patents, patent
applications, trademarks, copyrights, or other
intellectual property rights covering subject matter in
this document. Except as expressly provided in any
written license agreement from Microsoft, the furnishing
of this document does not give you any license to these
patents, trademarks, copyrights, or other intellectual
property. (c) 2003 Microsoft Corporation. All rights
reserved.
</xsd:documentation>
<xsd:documentation>
Defines a Query Packet from the client to a service
provider, which can in turn contain several individual
queries corresponding to each of the provider's services.
</xsd:documentation>
</xsd:annotation>
<xsd:import schemaLocation="Microsoft.Search.Types.xsd"
namespace="urn:Microsoft.Search.Types" />
<xsd:import
schemaLocation="Microsoft.Search.Query.Office.Keywords.xsd"
namespace="urn:Microsoft.Search.Query.Office.Keywords" />
<xsd:import
schemaLocation="Microsoft.Search.Query.Office.Context.xsd"
namespace="urn:Microsoft.Search.Query.Office.Context" />
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Root Element: QueryPacket -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:element name="QueryPacket">
<xsd:annotation>
<xsd:documentation>
A Query Packet from the client to a service provider,
which can in turn contain several individual queries
corresponding to each of the provider's services.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Query" maxOccurs="unbounded"
type="QueryType">
<xsd:annotation>
<xsd:documentation>
An individual query
directed at a service.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:any namespace="##other" minOccurs="0"
maxOccurs="unbounded" processContents="skip">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace.
Can be used for extensibility
in the future.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
<xsd:attribute name="revision" type="xsd:unsignedInt"
use="optional">
<xsd:annotation>
<xsd:documentation>
Unsigned integer indicating the revision of
the schema used in the request.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="build" type="t:String255"
use="optional">
<xsd:annotation>
<xsd:documentation>
The build of the component used
to generate the request.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: QueryType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="QueryType">
<xsd:annotation>
<xsd:documentation>
Describes an individual query directed at a service.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="QueryId" type="t:String255"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Unique ID identifying the query. Can be used
for tracking purposes. Office always uses a
GUID.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="OriginatorId" type="t:String255"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
The service should be able to uniquely
identify the client through this id.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="SupportedFormats"
type="SupportedFormatsType">
<xsd:annotation>
<xsd:documentation>
Formats that the client understands
for the response.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Context" type="ContextType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Context information,
including the actual query.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Range" type="RangeType"
minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Range information, including the number of
results expected. Office will never request
more than one range.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:any namespace="##other"
minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace. Office
will emit elements in the OfficeContext and
Keywords namespaces here. This area can
also be used for extensibility.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
<xsd:attribute name="domain"
type="t:String255" use="optional">
<xsd:annotation>
<xsd:documentation>
A unique domain identifier for the service
handling the query. The Response from the s
ervice should have a matching domain attribute.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: SupportedFormatsType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="SupportedFormatsType">
<xsd:annotation>
<xsd:documentation>
Describes any number of formats that the client
understands for the response.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Format" type="FormatType"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Supported response elements (QNames).
All recognized namespaces should be
specified here.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:any namespace="##other" minOccurs="0"
maxOccurs="unbounded" processContents="skip">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace.
Can be used for extensibility in the future.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: FormatType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="FormatType">
<xsd:annotation>
<xsd:documentation>
Defines a supported format. Normally this should
be treated as a fully qualified name
(namespace:localname).
</xsd:documentation>
</xsd:annotation>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="revision" type="xsd:unsignedInt"
use="optional">
<xsd:annotation>
<xsd:documentation>
Unsigned integer indicating the
revision of the schema used.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="build" type="t:String255"
use="optional">
<xsd:annotation>
<xsd:documentation>
The build of the component used.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: ContextType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="ContextType">
<xsd:sequence>
<xsd:element name="QueryText" type="QueryTextType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Query to perform search on.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="LanguagePreference"
type="xsd:language" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Language preference for the response. This
applies mainly to user interface elements,
not to content.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Requery" type="RequeryType"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Requery data from the service being
round-tripped through the client.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="OriginatorContext"
type="OriginatorContextType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
This piece of context will get round-tripped
through the service and sent back. Office
currently does not emit this element.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:any namespace="##other" minOccurs="0"
maxOccurs="unbounded" processContents="skip">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace. Can be
used for extensibility in the future.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: QueryTextType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="QueryTextType">
<xsd:annotation>
<xsd:documentation>
Defines the query to perform search on.
</xsd:documentation>
</xsd:annotation>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="language"
type="xsd:language" use="optional">
<xsd:annotation>
<xsd:documentation>
The language of the query string. It is
Office's best attempt at deriving it.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="type" use="optional"
default="STRING">
<xsd:annotation>
<xsd:documentation>
The type of query. All queries generated
by Office are strings.
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="STRING">
<xsd:annotation>
<xsd:documentation>
A simple string. All queries
generated by Office are
strings.
</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="ID">
<xsd:annotation>
<xsd:documentation>
An ID.
</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="MSSQLFT">
<xsd:annotation>
<xsd:documentation>
A SQL search string.
</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="XPATH">
<xsd:annotation>
<xsd:documentation>
An XPath.
</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="BOOLEAN">
<xsd:annotation>
<xsd:documentation>
A boolean.
</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="">
<xsd:annotation>
<xsd:documentation>
An unspecified type.
</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: RequeryType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="RequeryType">
<xsd:annotation>
<xsd:documentation>
Defines requery data from the service being
round-tripped through the client.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="RequeryContext"
type="RequeryContextType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Server data being round-tripped
by the client.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:any namespace="##other" minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace. Office
will emit the ServiceParameters element here.
It contains all the forms data. This area
can also be used for extensibility.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: RequeryContextType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="RequeryContextType">
<xsd:annotation>
<xsd:documentation>
Defines the Requery Context that a service can have
the client pass back, during a requery only. It is
an arbitrary XML data island.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:any namespace="##other" maxOccurs="unbounded"
processContents="skip">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace. This is an
XML island the service is passing to the
client for round-tripping.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: OriginatorContextType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="OriginatorContextType">
<xsd:annotation>
<xsd:documentation>
Defines context data from the client to be
round-tripped through the service.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:any namespace="##other" maxOccurs="unbounded"
processContents="skip">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace. This is
an XML island the client passed to the
service for round-tripping.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
</xsd:complexType>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Type: RangeType -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xsd:complexType name="RangeType">
<xsd:annotation>
<xsd:documentation>
Defines the Range element containing information
about the results being requested.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="ResultType" type="t:String2048"
minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
Optional string describing the type of
result. Office will not emit this element.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="StartAt" type="t:StartAtType"
default="1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
The index of the initial result requested,
based on '1' as the lowest result index.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Count" type="xsd:unsignedInt"
minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Total results of this type to return. Note
less than this number may be returned if
there aren't enough and more than this number
may be returned due to policy restrictions.
If more are returned, the client should
display them all. Absence of count implies
provider discretion.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:any namespace="##other" minOccurs="0"
maxOccurs="unbounded" processContents="skip">
<xsd:annotation>
<xsd:documentation>
Any element in another namespace. Can be
used for extensibility in the future.
</xsd:documentation>
</xsd:annotation>
</xsd:any>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation>
A unique ID for the Range.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:schema>