Copyright © 2010 Open Geospatial Consortium Inc.
65
10.2.5 GetResourceRepresentation exception
If the response of a GetResourceRepresentation request for a tile is unsuccessful, the server SHALL return an HTTP error code that SHOULD be accompanied by an XML
ExceptionReport document as defined in subclause 8.5 of OWS Common [OGC 06- 121r3] and subclause 7.2.2.2 of this document. Determination of what error conditions
map to which HTTP error codes is up to the discretion of the server. If the error condition is due to a malformed request or the resource does not exist for instance in a request
URL with illegal path values, the HTTP error code returned SHOULD be HTTP Error 404 File Not Found.
NOTE For a server where the tile resource files actually exists and there is no specific application
capable of generating specific responses on the fly, HTTP error code SHALL be expected but an XML ExceptionReport document cannot be expected.
10.3 FeatureInfo resource optional in resource oriented architectural style
10.3.1 GetResourceRepresentation request
The ServiceMetadata document in the resource oriented architectural style may contain a list of Layer elements and each layer that is available to be retrieved in this architectural
style and is queryable SHALL have one or more ResourceURL elements with the resourceType attribute set to FeatureInfo and a template attribute. In this RESTful
approach the template attribute contains a URL template that can be converted to a URL by using a template processor and then get the expected FeatureInfo in the format
specified by the attribute format by requesting the resource with a standard HTTP GET.
Figure 14 — URLTemplate for the FeatureInfo UML class diagram
Table 33 — Parts of the URLTemplate data structure for FeatureInfo
Names Definition
Data type and values Multiplicity and use
format
format
Format of the resource representation that can be retrieved or resolved
from the URL template ows:MimeType
One mandatory resource
Type
resource Type
Resource type to be retrieved Character String type,
not empty SHALL contain
FeatureInfo One mandatory
template
template
URL template
a
. URI
One mandatory
a A template processor will apply the rules in Table 34 to get a URL to a resource.
DataType URLTemplate
+ format : MimeType + resourceType: CharacterString = FeatureInfo {frozen}
+ template: URI
66
Copyright © 2010 Open Geospatial Consortium Inc.
A template processor is a program or library that runs on the client side and converts a URL template into a URL. It will have to process the URL template that contains variable
names marked off in matching braces {, } and substitute them with the corresponding valid value. The template processor SHALL support the following variable names:
Style, TileMatrixSet, TileMatrix, TileRow, TileCol, J, I, and any dimension identifier that has been defined for this layer in the element
.Dimensionows:Identifier. The template processor SHALL substitute the variable names by the values shown in Table 34.
Possible values and ranges of the variables in the URL template can be extracted from the SeviceMetadata document parameters. The following table lists all the possible variable
names, their description, possible values and multiplicity. Assuming a ServiceMetadata in XML format the possible values are also given using XPath expressions that point to
the ServiceMetadata document. When a relative XPath is used, it is relative to its layer element of the ServiceMetadata document.
When a variable has only one possible value for this layer, the use of the direct value instead of the variable is recommended on the URL template.
Table 34 — URL template variables and possible values for FeatureInfo
URL template variable
Meaning Possible values
Multiplicity
style
Style identifier
identifier in Table 7
.styleows:Identifier
One mandatory
a
.Dimension ows:Identifie
r
Dimension value
identifier in Table 9
.Dimension[ows:Identifier={.Dimension ows:Identifier}]Value
One for each dimension
available mandatory if
there are dimensions
defined
TileMatrix Set
tile matrix set
identifier identifier in Table 6
. TileMatrixSetLinkTileMatrixSet
One mandatory
a
TileMatrix
tile matrix identifier
identifier in Table 14
CapabilitiesContentsTileMatrixSet[ ows:Identifier={TileMatrixSet}]TileMatrix
ows:Identifier
One mandatory
a