Flexible Identifier


Introduction

The flexible identifier extension offers the possibility to return human readable names as identifiers instead of the sometimes cryptic identifiers. Of course, it is also possible to use the human readable identifiers in the requests. The elements that this extension concerns are offering, procedure, observableProperty and featureOfInterest.

In the requirements section you can find more information about the requirements to support flexible identifier.

In the global settings and requesting sections you can find information how to enable/disable the felxible identifier globally or for each request.

Requirements

As previously mentioned, the elements that this extension concerns are offering, procedure, observableProperty and featureOfInterest.

To provide flexible identifiers it is necessary that the name column in each related table contains a human readable name which is than used as identifier.

To avoid problems it is recommended that the values in the name columns of each element are unique.

If the name column is empty, the identifier is used.

Global settings

The usage of human readable names can be set globally in the settings of the SOS. Next to the enabling/disabling of the generally usage you can define whether this should be applied to each element.

FelxibleIdentifierSetting.PNG

The element specific human readable name dis-/enabling can only be defined globally.

Requesting

It is also possible to add a flag to the SOS request to return human readable names as identifier or not. This flag overruled the global setting so that you can get human readable names as identifier if the global setting is false and the requested flag is true.

This flag in requests is supported for all SOS 2.0 reqests and for SOS 1.0.0 KVP requests. SOS 1.0.0 XML requests are not supported because of the missing extension element.

The element specific human readable name dis-/enabling si not supported in the requests.

KVP requests

  • key = returnHumanReadableIdentifier
  • value = true or false

For example: &returnHumanReadableIdentifier=true or &returnHumanReadableIdentifier=false

XML requests

In SOS 2.0 XML encoded requests the human readable name flag should be encoded as a swe:Boolean element with the key returnHumanReadableIdentifier as value of gml:identifier or=definition= attribute. The swe:Boolean element should be contained in a sos:extension (GetCapabilities) or swes:extension (other requests).

The XML code examples contains the gml:identifier element and the definition attribute but only one of the two is required.

GetCapabilities

After all other elements.

    1	<sos:extension>
    2	    <swe:Boolean definition="returnHumanReadableIdentifier">
    3	        <swe:identifier>returnHumanReadableIdentifier</swe:identifier>
    4	        <swe:value>true</swe:value>
    5	    </swe:Boolean>
    6	</sos:extension>

other requests

As first element.

    1	<swes:extension>
    2	    <swe:Boolean definition="returnHumanReadableIdentifier">
    3	        <swe:identifier>returnHumanReadableIdentifier</swe:identifier>
    4	        <swe:value>true</swe:value>
    5	    </swe:Boolean>
    6	</swes:extension>
Topic revision: r5 - 24 Jan 2020, EikeJuerrens
Legal Notice | Privacy Statement


This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Wiki? Send feedback