ArcGIS REST API

Concurrencies

Description

License:

The ArcGIS Pipeline Referencing for Server extension is required to use this resource.

This operation calculates concurrencies and dominance for a set of routes and measure ranges. A concurrency is an overlapping section of two or more routes in the same LRS Network that share a common centerline.

This operation determines the dominant route for each concurrency section. Route dominance is based on a set of business rules that can be configured for an LRS network. If the route dominance for a group of concurrent routes cannot be successfully calculated, the response includes a dominanceError property describing the reason. The following table lists the possible dominance errors:

Note:

Concurrencies are supported for continuous (non-line) networks only.

Dominance errorDescription

Tie

Two or more routes have the same attribute value for a concurrent section.

NoAttributes

A route does not have an attribute value for a concurrent section, or the attribute value is null.

TooManyAttributes

A route has multiple values of an event attribute for the same location in a concurrent section.

NotCalibrated

A concurrent section of a route is not calibrated with measures, or centerline start and end points cannot be located along the route.

Request Parameters

ParameterDetails
f

Description: The response format. The default response format is html.

Values: html | json

locations

Required

Description: A list of routes and optional measure ranges where concurrencies can be found.

Syntax:

[
  { // find concurrencies along an entire route
    "routeId" : "<routeId>"
  },
  { // find concurrencies within a measure range
    "routeId" : "<routeId>",
    "fromMeasure" : <measure>,
    "toMeasure" : <measure>
  },
  ...
]
temporalViewDate

Description: The time instant to use as a temporal view date when locating route features.

The parameter value is a number that represents the number of milliseconds since epoch (January 1, 1970) in UTC.

Syntax: temporalViewDate=<timeInstant>

Example: temporalViewDate=1230768000000 (1 Jan 2009 00:00:00 GMT)

fromDate

Description: The start of a time range to use when locating route features. This parameter cannot be used with the temporalViewDate parameter.

The parameter value is a number that represents the number of milliseconds since epoch (January 1, 1970) in UTC.

Syntax: fromDate=<timeInstant>

Example: fromDate=1230768000000 (1 Jan 2009 00:00:00 GMT)

toDate

Description: The end of a time range to use when locating route features. This parameter cannot be used with the temporalViewDate parameter.

The parameter value is a number that represents the number of milliseconds since epoch (January 1, 1970) in UTC.

Syntax: toDate=<timeInstant>

Example: toDate=1230768000000 (1 Jan 2009 00:00:00 GMT)

gdbVersion

Description: The geodatabase version to use for the network feature class. This parameter applies only if the isDataVersioned property of the network layer is true.

If this parameter is not specified, the published map's version is used.

Syntax: gdbVersion=<version>

Example Usage

Example 1

URL for calculating concurrencies for the entire measure span of a route.

http://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90"}]

Example 2

URL for calculating concurrencies for a measure range on a route.

http://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90","fromMeasure":25.1,"toMeasure":26.8}]

Example 3

URL for calculating concurrencies for multiple routes.

http://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90","fromMeasure":25.1,"toMeasure":26.8},{"routeId":"US20"}]

Example 4

URL for calculating concurrencies for a time instant (view date).

http://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90"}]&temporalViewDate=1230768000000

Example 5

URL for calculating concurrencies for a time range.

http://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90"}]&fromDate=1230768000000&toDate=1388534400000

JSON Response Syntax

{
  "locations" : [
    {
      // source location properties
      "routeId" : "<routeId>",
      "fromMeasure" : <measure>,
      "toMeasure" : <measure>,

      "concurrencies" : [  // a list of all sections with concurrent routes
        {
          "routeId" : "<routeId>",
          "fromMeasure" : <measure>,
          "toMeasure" : <measure>,
          "fromDate" : <timestamp>,
          "toDate" : <timestamp>,
          "sectionId" : <integer>,  // correlates multiple concurrency records for a single section of shared centerline
          "isDominant" : <true | false>,
          "dominanceError" : "<Tie | NoAttributes | TooManyAttributes | NotCalibrated>"
        },
        ...
      ]
    },
    ...
  ]
}

JSON Response Example

{
  "locations" : [
    {
      "routeId" : "US101",
      "fromMeasure" : 0,
      "toMeasure" : 5.8,
      "concurrencies" : [
        {
          "routeId" : "US101",
          "fromMeasure" : 1.2,
          "toMeasure" : 1.65,
          "fromDate" : 1230768000000,
          "toDate" : null,
          "sectionId" : 1,
          "isDominant" : true
        },
        {
          "routeId" : "SR210",
          "fromMeasure" : 37.45,
          "toMeasure" : 37.9,
          "fromDate" : 1230768000000,
          "toDate" : null,
          "sectionId" : 1,
          "isDominant" : false
        },
        {
          "routeId" : "US101",
          "fromMeasure" : 5.0,
          "toMeasure" : 5.8,
          "fromDate" : 1230768000000,
          "toDate" : null,
          "sectionId" : 2,
          "isDominant" : false,
          "dominanceError" : "NoAttributes"
        },
        {
          "routeId" : "I5",
          "fromMeasure" : 81.54,
          "toMeasure" : 80.7,
          "fromDate" : 1230768000000,
          "toDate" : null,
          "sectionId" : 2,
          "isDominant" : true
        }
      ]
    }
  ]
}