KVP encoding example XML Encoding schema Example GetCollections Capabilities Fragment Response

Copyright © 2012 Open Geospatial Consortium 63

20.4.3 KVP encoding example

All collection tree nodes, no metadata: http:example.compath?SERVICE=CSREQUEST=GetCollectionsVERSION=1.0.2FORMAT=applicationxm lDEPTH=All http:example.compath?SERVICE=CSREQUEST=GetCollectionsVERSION=1.0.2METADATA=FORMAT=appl icationxmlDEPTH=All All collection tree nodes, all metadata: http:example.compath?SERVICE=CSREQUEST=GetCollectionsMETADATA=All VERSION=1.0.2FORMAT=applicationxmlDEPTH=All All collection tree nodes, some metadata elements as made available by server: http:example.compath?SERVICE=CSREQUEST=GetCollectionsMETADATA=Platform,Geospatial”VERSI ON=1.0.2FORMAT=applicationxmlDEPTH=All Only the root node, no metadata: http:example.compath?SERVICE=CSREQUEST=GetCollectionsVERSION=1.0.2FORMAT=applicationxm lDEPTH=0 Only a specific node and all its metadata: http:example.compath?SERVICE=CSREQUEST=GetCollectionsVERSION=1.0.2FORMAT=applicationxm lDEPTH=0NID=UniqueID-1234METADATA=All Only a specific node and all its immediate children and no metadata: http:example.compath?SERVICE=CSREQUEST=GetCollectionsVERSION=1.0.2FORMAT=applicationxm lDEPTH=1 METADATA=NID=UniqueID-1234

20.4.4 XML Encoding schema

See [WAMI XSD] element “CS_GetCollectionsRequest”

20.4.5 Request Parameter Details

All parameters except AcceptLanguages shall be implemented by both client and server.

20.4.5.1 Service

The value for this parameter shall be CS.

20.4.5.2 Request

The value for this parameter shall be GetCollectionCount.

20.4.5.3 Version

Please refer to [WAMI OVERVIEW].

20.4.5.4 Format

Please refer to [WAMI OVERVIEW].

20.4.5.5 AcceptLanguages

Please refer to [WAMI OVERVIEW]. Copyright © 2012 Open Geospatial Consortium 64

20.4.5.6 NID

The value of this optional parameter is an identifier string. If not specified in the request or set to empty …NID=..., it implies the root node ID. This parameter is otherwise used to identify a specific node in a tree of nodes being served by a Collection Service. Each node has an ID that identifies that node and is unique to the tree of collections being served.

20.4.5.7 Depth

This optional parameter shall have one of three possible values. They are 0, 1 or All. If this parameter is not specified in the request or set to empty …Depth=, it implies Depth=0. When requesting for information in a specific node, the client may choose to retrieve information about a specific node and: 1. Just the node only, and nothing else. In this case, Depth=0. 2. All its immediate children only. In this case, Depth=1. 3. All nodes under it. In this case Depth=All

20.4.5.7.1 Warning

When Depth=1 or Depth=All and the number of collections returned could be large, it is highly recommended that the response be requested in a compressed format.

20.4.5.8 Metadata

When a client requests for information on a node, the client may choose to optionally ask for metadata associated with the node. Contents of metadata are up to the vendor implementation. The vendor may choose to have zero metadata elements. In that case, if the client requests for metadata, the metadata element in the response shall be empty. The value to this parameter shall be a comma-separated ordered list of zero or more names of sections of metadata to be returned. If not set or empty …Metadata=..., it means do not send metadata associated with the node. If set to All, it means send all metadata associated with the node. At least the value of All shall be implemented. A complete list shall be provided as part of the Capabilities response to the GetCollections request. Besides All, implementing additional parameters is completely up to the server implementation. This parameter shall be implemented by both client and server. If a collection has a lot of metadata per node, the vendor can choose to let the client select one or more sections of the metadata. For example, a leaf node may have metadata on the sensor, the platform holding the sensor, methods used to normalize the data, raw camera model, geospatial information such as the bounding box, spatial reference system, classification, and more. If the server has organized this metadata into sections, each section may be requested independently or in any combination. The GetCollections capabilities response provides an example.

20.4.5.8.1 A list of schema defined metadata sections for CS Metadata

Collection – Aggregate info about the collection GeoBox – A 2D bounding representation of the collection imagery File – Information about the collection as if it were a file last-modified, etc. Copyright © 2012 Open Geospatial Consortium 65 Vendor Defined – Each vendor may specify a list of valid Metadata section names which may be represented as one of the following two XML Element types: o Group – Arbitrary grouped namevalue pairs useful when a simple string is sufficient o ExtendedMetadataSection – Named OWS extensible Metadata elements for use with GML, SensorML, etc.

20.4.5.9 CRS

Same as GetCollectionCount .

20.4.5.10 BBox

Same as GetCollectionCount .

20.4.5.11 Time

Same as GetCollectionCount .

20.4.6 Example GetCollections Capabilities Fragment Response

Operation name=GetCollections DCP HTTP Get xlink:href=http:example.comCS? HTTP DCP Parameter name=Service AllowedValues ValueCSValue AllowedValues Parameter Parameter name=Request AllowedValues ValueGetCollectionsValue AllowedValues Parameter Parameter name=Version AllowedValues Value1.0.2Value AllowedValues Parameter Parameter name=Format AllowedValues ValueapplicationxmlValue Valueapplicationx-jsonValue AllowedValues DefaultValueapplicationxmlDefaultValue Parameter Parameter name=AcceptLanguages AllowedValues Valueen-USValue ValueenValue AllowedValues DefaultValueen-USDefaultValue Parameter Parameter name=NID AnyValue MeaningClient sets one Node ID. The service returns collection count information starting from this node. If not set or empty, implies root node. Shall be implemented by both client and server. Copyright © 2012 Open Geospatial Consortium 66 Meaning Parameter Parameter name=Metadata AnyValue Meaning A comma-separated ordered list of zero or more names of sections of metadata to be returned. If not set or empty, it means do not send metadata with node information. If set to All, it means send all metadata with node information. At least the value of All shall be implemented. A complete list shall be provided as part of the Capabilities response to the GetCollections request. Shall be implemented by both client and server. Meaning Parameter Parameter name=Depth AllowedValues Value0Value Value1Value ValueAllValue AllowedValues DefaultValue0DefaultValue MeaningSpecifies how deep the collection counter shall go down the tree. It has three possible values: 0, 1 or All. If not set or empty, implies Depth=0. Shall be implemented by both client and server. 0: only send information about this node. 1: Client received number of child nodes under root or specified node. All: Client receives all the node counts below specified node. Meaning Parameter Parameter name=Bbox AnyValue MeaningBounding box to filter collections wholly outside the box.Meaning Parameter Parameter name=CRS AllowedValues ValueEPSG:4326Value ValueEPSG:4269Value ValueEPSG:32645Value AllowedValues MeaningCoordinate reference system for BBoxMeaning Parameter Parameter name=Time AnyValue MeaningISO 8601 time intervalMeaning Parameter Operation

20.4.7 Response