GetCapabilities

Description

Le service GetCapabilites permet à l’utilisateur d'obtenir des métadonnées sur le moteur de routage déployé. Ces métadonnées permettent aux utilisateurs d'explorer un service et ses fonctionnalités, optimisant ainsi leur expérience lors de l'utilisation des services de routage.

Ce service est disponible sous forme de service REST uniquement.

URL de requête
http://<server>:<port>/rest/Spatial/erm/v1/capabilities.json
Paramètres de requête
Paramètre Obligatoire Description
acceptVersions Facultatif Paramètre fictif (non fonctionnel)
sections Facultatif

Si cette option est omise, renvoie des informations sur toutes les sections.

Liste non ordonnée de zéro ou plus de noms de sections du document de métadonnées du service, séparés par des virgules, à renvoyer dans le document de métadonnées du service. Les valeurs de section ne sont pas sensibles à la casse. Les valeurs de section acceptées sont ServiceIdentification, ServiceProvider, operationsMetadata et databases.

Réponse

La réponse est alignée sur OGC GetCapabilities. Elle se présente au format JSON et comporte les sections suivantes :

  • serviceIdentification
  • serviceProvider
  • operationsMetadata
  • databases

serviceIdentification

Cette section contient les métadonnées de base sur ce serveur spécifique. Son contenu se présente comme suit :

  "serviceIdentification":
      {
          "title": "PBS Routing Service",
          "abstract": "Routing service maintained by PBS",
          "keywords":
          {
              "keyword":
              [
              ]
          },
          "serviceType": "Routing",
          "serviceTypeVersion": "v1",
          "fees": "none",
          "accessConstraints": "none"
      }

Ces informations sont identiques aux informations disponibles dans le fichier de configuration getCapabilities.json.

Ce fichier se trouve sous : <SpectrumFolder>\server\modules\routing. Le serveur doit être redémarré pour que toute modification apportée au fichier soit appliquée. L’administrateur détermine les informations que l’utilisateur doit obtenir et s'il peut modifier ou supprimer des entrées correspondantes dans le fichier JSON. Tous les champs du fichier JSON sont facultatifs.

serviceProvider

Cette section contient des métadonnées sur l’organisation qui utilise ce serveur. Son contenu se présente comme suit :

"serviceProvider":
      {
          "providerName": "Routing Service Provider",
          "providerSite":
          {
              "href": "http://www.yourcompany.com/",
              "type": "simple"
          },
          "serviceContact":
          {
              "contactInfo":
              {
                  "address":
                  {
                      "administrativeArea": "Province",
                      "city": "City",
                      "country": "Country",
                      "deliveryPoint": "Mail Delivery Location",
                "electronicMailaddress":"mailto://support@yourcompany.com",
                      "postalCode": "PostCode"
                  },
                  "contactInstructions": "Contact Instructions",
                  "hoursOfservice": "24 Hours",
                  "phone":
                  {
                      "facsimile": "1.800.000.0000",
                      "voice": "1.800.000.0000"
                  }
              },
              "individualName": "Contact Person",
              "positionName": "Contact Person's Title",
              "role": "Contact Person's Role"
          }
      }

Il est également configuré à l’aide du fichier de configuration getCapabilities.json, comme décrit ci-dessus.

operationsMetadata

Cette section contient des métadonnées sur les opérations effectuées par ce serveur, y compris les URL des requêtes des opérations. Ces opérations ou services fixes sont répertoriés dans cette section :

  • GetRoute : service point à point
  • GetRouteCostMatrix : service de traitement de matrices de points
  • DescribeDatasets : fournit des informations sur les jeux de données configurés
  • DescribeDatabases : fournit des informations sur toutes les bases de données configurées

Son contenu se présente comme suit :

{"operationsMetadata": [{
		"name": "GetRoute",
		"DCP": {
"HTTP": {
				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=route",
				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=route"
			}
		},
		"parameter": {
			"name": "OutputFormat",
			"value": "text/json"
		}
	}, {
		"name": "GetRouteCostMatrix",
		"DCP": {
			"HTTP": {
				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=routeCostMatrix",
				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>json?q=routeCostMatrix"
			}
		},"parameter": {
			"name": "OutputFormat",
			"value": "text/json"}},{"name": "GetTravelBoundary","DCP": {
"HTTP": {
				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>json?q=travelBoundary",
				"POST": "<schema>://<server>:<port>/rest/Spatial/erm/databases/<DB_NAME>.json?q=travelBoundary"
			}
		},
		"parameter": {
			"name": "OutputFormat",
			"value": "text/json"
		}
	}, {
		"name": "DescribeDatasets",
		"DCP": {
			"HTTP": {
				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/v1/datasets.json"
			}
		},
		"parameter": {
			"name": "OutputFormat",
			"value": "text/json"
		}
	}, {
		"name": "DescribeDatabases",
		"DCP": {
			"HTTP": {
				"GET": "<schema>://<server>:<port>/rest/Spatial/erm/v1/databases.json"
			}
},
		"parameter": {
			"name": "OutputFormat",
			"value": "text/json"
		}
	}]
}

databases

Cette section contient la liste des noms des bases de données qui sont configurées sur le serveur.

Par exemple :

{
	"databases":
	[
	"US_NE",
	"US"
	]}

Si aucune base de données n’est configurée sur le serveur, la valeur suivante est renvoyée :

{
	"databases":[
]
}