Developer's Guide > API Documentation > API Documentation PTV xRoute > XRoute

Component xroute

Diagrams

XRoute

Exceptions

Isochrones and ReachableObjects

Request Types

Response Types

Tour

Advanced Tour

Operations

calculateRouteInfo

Calculates travel time and distance information for the given route. Described by stations using the given routing parameters respecting the specified exceptionPaths.
When all stations are identical, just cost, distance and time will be set to "0".

Parameter Name Type Description
waypoints WaypointDesc[] The waypoints of the route. The first waypoint specifies the start, the last waypoint specifies the destination. The waypoints in between specify the via-stations.
options RoutingOption[] The routing option to respect when calculating this route.
exceptionPaths ExceptionPath[] The exception paths to respect when calculating this route (for example to calculate alternative routes).
Return Type Description
RouteInfo A summary of information for this route.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateRoute

Calculates the detailed route for the given stations. Uses the specified routing options, respecting the defined exceptionPaths.
When all stations are identical, just cost, distance and time will be set to "0".

Parameter Name Type Description
waypoints WaypointDesc[] The first waypoint specifies the start, the last waypoint specifies the destination. The waypoints in between specify the via-stations.
options RoutingOption[] The routing option to respect when calculating this route.
exceptionPaths ExceptionPath[] The exception paths to respect when calculating this route (for example to calculate alternative routes).
details ResultListOptions The detail of the requested route (not all combinations make sense, see ResultListOptions).
Return Type Description
Route Returns the detailed route description.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateExtendedRoute

Calculates the detailed route for the given stations. Uses the specified routing options, respecting the defined exceptionPaths.
When all stations are identical, just route.info.cost, route.info.distance and route.info.time will be set to "0".

Parameter Name Type Description
waypoints WaypointDesc[] The first waypoint specifies the start, the last waypoint specifies the destination. The waypoints in between specify the via-stations.
options RoutingOption[] The routing option to respect when calculating this route.
exceptionPaths ExceptionPath[] The exception paths to respect when calculating this route (for example to calculate alternative routes).
details ResultListOptions The detail of the requested route (not all combinations make sense, see ResultListOptions).
countryInfoOptions CountryInfoOptions The country info option to respect when calculating toll costs.
Return Type Description
ExtendedRoute Returns the detailed route description and the country info including toll informations.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateMatrixInfo

Calculates all times and distances from each start location to all destinations (NxM Routing) using the specified RoutingOptions and MatrixOptions options. Restrictions: This service method does not support WaypointDesc with routing or vehicle options and it does not support via types. This service method does support dynamic routing, exception paths and traffic information using the geodatasource layer. But as these features use time-dependent data, the results are all valid only for the given start time of the route and should not be used for tour planning.

The matrix should not be larger than 750x750 waypoints, otherwise PTV xRoute Server might run out of memory.

Consider restricting the search space for matrix calculation using the RoutingParameter ROUTING_RECTANGLE.

Parameter Name Type Description
startwaypoints WaypointDesc[] The start waypoints for all start locations of the matrix request.
destwaypoints WaypointDesc[] The destination waypoints for all destination locations of the matrix request.
options RoutingOption[] The routing option to respect when calculating this matrix.
matrixOptions MatrixOptions The matrix option to respect when calculating this matrix.
Return Type Description
MatrixInfo Returns the matrix of RouteInfo elements.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

startCalculateMatrixInfo

This is the asynchronous version of calculateMatrixInfo. Calling this method will not block until the result has been calculated. Instead of a result object a Job object is returned which identifies the started calculation. To get status updates on a running job use the method watchJob and check the attribute status of type JobStatus. If it turns to SUCCEEDED, the calculation was successful and the result can be obtained using fetchMatrixInfo. If the job ended with status FAILED, fetchMatrixInfo throws the exception that occured during calculation.
Parameter Name Type Description
startwaypoints WaypointDesc[] The start waypoints for all start locations of the matrix request.
destwaypoints WaypointDesc[] The destination waypoints for all destination locations of the matrix request.
options RoutingOption[] The routing option to respect when calculating this matrix.
matrixOptions MatrixOptions The matrix option to respect when calculating this matrix.
Return Type Description
Job The Job reference.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

fetchMatrixInfo

Fetches results of type MatrixInfo for the given job id. If the calculation ended with an exception fetchMatrixInfo will rethrow it. If the id of the job is unknown a SystemException with message 'unknown id' is thrown.
Parameter Name Type Description
id String The id of the job.
Return Type Description
MatrixInfo Returns the matrix of RouteInfo elements.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateReachableObjects

Calculates the reachability starting from either a certain sink or a route for a set of given locations. The functions return for each location if it can be reached in a certain time or distance domain respecting the given routing options. Restrictions: This service method does not support WaypointDesc with routing or vehicle options and it does not support via types.

Parameter Name Type Description
sink WaypointDesc The sink from which the reachability is calculated.
binaryPathDesc String The binary representation of the route from which reachability is calculated (see Route-Object).
locations WaypointDesc[] The locations which should be reached in a certain time or distance domain.
options RoutingOption[] The routing option to respect when calculating this matrix.
expansionDesc ExpansionDescription The description of the horizon and type of expansion. Restrictions: For the horizon only one description is allowed.
Return Type Description
Reach Returns the ReachInfo for each location which should be reached. The array index corresponds to the locations array index.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateIsochrones

Calculates one or more isochrones (time or distance domain) starting from a certain location called sink. The result is given either as surrounding polygons for the certain isochrone horizons respecting the given routing options or as a set of segments covered for each horizon (see figure). Restrictions: This service method does not support WaypointDesc with routing or vehicle options and it does not support via types.

Parameter Name Type Description
sink WaypointDesc The sink from which the reachability is calculated.
options RoutingOption[] The routing option to respect when calculating this matrix.
isoOptions IsochroneOptions The isochrone options to respect when calculating the isochrone.
Return Type Description
Isochrone Returns the IsochroneInfo for each horizon. The array index corresponds to the horizon index in the isoOptions object.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateTour

DEPRECATED: Please use calculateAdvancedTour instead. Calculates a tour considering break and rest rules (defined by the profile element BreakAndRestRules). All arrival times at stations and segments will be extended by break, rest, waiting times and so on. Restrictions: A tour point must not use fuzzy linking or combined transports. The routing option IS_DESTTIME must be false. Dynamic routing must also be disabled.

Parameter Name Type Description
waypoints WaypointDesc[] The first waypoint specifies the start, the last waypoint specifies the destination. The waypoints in between specify the via-stations. At least the first and the last station must be of type TourPointDesc. The order of all tour points will not be changed, use PTV xTour Server for optimization problems like this.
options RoutingOption[] The routing option to respect when calculating this route.
exceptionPaths ExceptionPath[] The exception paths to respect when calculating this route (for example to calculate alternative routes).
details ResultListOptions The detail of the requested route (not all combinations make sense, see ResultListOptions).
countryInfoOptions CountryInfoOptions The country info option to respect when calculating toll costs.
Return Type Description
Tour Returns the detailed route, tour descriptions and the country info including toll informations.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateAdvancedTour

Calculates a tour considering complex break and rest rules. In order to distinguish it from calculateTour(), it implements all current EU regulations and provides better results. The break and rest rules are defined in DriverRegulations, but not by the profile element BreakAndRestRules. Restrictions: A tour point must not use fuzzy linking or combined transports. The routing option IS_DESTTIME must be false. Dynamic routing must also be disabled.

Parameter Name Type Description
waypoints WaypointDesc[] The waypoints of the route. The first waypoint specifies the start, the last waypoint specifies the destination. The waypoints in between specify the via-stations. At least the first and the last station must be of type TourPointDesc. The order of all tour points will not be changed, use PTV xTour Server for optimization problems like this.
tourOptions TourOptions The time profile options to respect when calculating this tour.
routingOptions RoutingOption[] The routing option to respect when calculating this tour.
exceptionPaths ExceptionPath[] The exception paths to respect when calculating this route (for example to calculate alternative routes).
details ResultListOptions The detail of the requested route (not all combinations make sense, see ResultListOptions).
countryInfoOptions CountryInfoOptions The country info option to respect when calculating toll costs.
Return Type Description
AdvancedTour Returns the detailed route and tour descriptions and the country info including toll informations.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

searchForReachableObjects

Searches all objects which are reachable, starting from either a certain sink or along a route. Restrictions: This service method does not support WaypointDesc with routing or vehicle options and it does not support via types.

Parameter Name Type Description
sink WaypointDesc The sink from which the reachability is calculated.
binaryPathDesc String The binary representation of the route (see Route-Object) from which reachability is calculated.
options RoutingOption[] The routing option to respect when calculating the reachability.
reachableObjectOptions ReachableObjectsOptions The options for calculating the reachable objects.
exceptionPaths ExceptionPath[] Not used for now. The exception paths to respect when calculating the reachability.
Return Type Description
ReachableObjects Returns the reachability and more for each object which can be reached.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

calculateBulkRouteInfo

Calculates travel time and distance information for the given routes. The routes will all be calculated using the specified routing parameters respecting the defined exceptionPaths.

When all stations are identical, just cost, distance and time will be set to "0".

The number of routes should not be greater than 20000, otherwise PTV xRoute Server might run out of memory.

Parameter Name Type Description
waypoints WaypointDesc[][] An array of waypoint arrays, each of which representing a route.
options RoutingOption[] The routing option to respect when calculating these routes.
exceptionPaths ExceptionPath[] The exception paths to respect when calculating these routes (for example to calculate alternative routes).
Return Type Description
BulkRouteInfo The summary information for the given routes.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

startCalculateBulkRouteInfo

This is the asynchronous version of calculateBulkRouteInfo. Calling this method will not block until the result has been calculated. Instead of a result object a Job object is returned which identifies the started calculation. To get status updates on a running job use the method watchJob and check the attribute status of type JobStatus. If it turns to SUCCEEDED, the calculation was successful and the result can be obtained using fetchBulkRouteInfo. If the job ended with status FAILED, fetchBulkRouteInfo throws the exception that occured during calculation.
Parameter Name Type Description
waypoints WaypointDesc[][] An array of waypoint arrays, each of which representing a route.
options RoutingOption[] The routing option to respect when calculating these routes.
exceptionPaths ExceptionPath[] The exception paths to respect when calculating these routes (for example to calculate alternative routes).
Return Type Description
Job The Job reference.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

fetchBulkRouteInfo

Fetches results of type BulkRouteInfo for the given job id. If the calculation ended with an exception fetchBulkRouteInfo will rethrow it. If the id of the job is unknown a SystemException with message 'unknown id' is thrown.
Parameter Name Type Description
id String The id of the job.
Return Type Description
BulkRouteInfo The summary information for the given routes.
XRouteException Thrown if an xRoute server exception such as an invalid request parameter occurs.
XServiceException Thrown if a PTV xServer framework exception occurs.

watchJob

Returns status information on jobs.
Parameter Name Type Description
id String The id of the job.
watchOptions WatchOptions The options to control job status and progress updates.
Return Type Description
Job The job reference.
SystemException Thrown if job management is not available, for example if it is misconfigured.

stopJob

Attempts to stop a running job. If the status of the job turns to SUCCEEDED, preliminary results can be fetched, if available.
Parameter Name Type Description
id String The id of the job to be stopped.
Return Type Description
Job The job reference.
SystemException Thrown if a preliminary result cannot be provided or job management in general is not available, for example if it is misconfigured.

deleteJob

Attempts to delete a running job. If successful the returned job will have state DELETED.
Parameter Name Type Description
id String The id of the job to be deleteed.
Return Type Description
Job The job reference.
SystemException Thrown if job management is not available, for example if it is misconfigured.

Classes

AdvancedTour

Extends ExtendedRoute

Additional parameters returned by the calculateAdvancedTour service method. All times given in the response contain the linking time at the waypoints.
Attribute Name Type Description
tourPointResults TourPointResult[] An array of TourPointsResults that contains details about each tour point. The same index as in the request should be used.
tourEvents TourEvent[] The time profile in details as an array of events (can be empty with the tour still being valid).
isViolated boolean If true, a violation occurs. If false, the calculate time profile is valid.
startTime Calendar Specifies the beginning of the calculated tour.
tourPeriod int Overall duration of the time profile including all idle, driving and service events.
remainingPeriods String Updated remaining periods.
defermentPotential int Period of time the complete result can be deferred without changing the structure of the result.
genuineWaitingPeriod int Summary of all genuine waiting periods at the tour points in this tour.
recreationPeriods RecreationPeriods Summary of all recreation periods in this tour.

AustraliaNGA2011

Extends CENEmissions

The emissions according to CENVersion AUSTRALIA_NGA_2011.
Attribute Name Type Description
energyUseTank2Wheel double

The energy use tank-to-wheel in [MJ].

co2eWell2Tank Double

The CO2e well-to-tank in [kg]. This value is only present for conventional fuels with a bio fuel ratio of 0%.

co2eTank2Wheel double

The CO2e tank-to-wheel in [kg].

co2Tank2Wheel double

The CO2 tank-to-wheel in [kg].

ch4Tank2Wheel double

The CH4 (methane) tank-to-wheel in [g].

n2oTank2Wheel double

The N2O (Nitrous oxide) tank-to-wheel in [g].

fuelConsumption double

The fuel consumption in [kg]. This value is 0 for vehicle specific conversion factors.

AustraliaNGA2015

Extends CENEmissions

The emissions according to CENVersion AUSTRALIA_NGA_2015.
Attribute Name Type Description
energyUseTank2Wheel double

The energy use tank-to-wheel in [MJ].

co2eWell2Tank Double

The CO2e well-to-tank in [kg]. This value is only present for conventional fuels with a bio fuel ratio of 0%.

co2eTank2Wheel double

The CO2e tank-to-wheel in [kg].

co2Tank2Wheel double

The CO2 tank-to-wheel in [kg].

ch4Tank2Wheel double

The CH4 (methane) tank-to-wheel in [g].

n2oTank2Wheel double

The N2O (Nitrous oxide) tank-to-wheel in [g].

fuelConsumption double

The fuel consumption in [kg]. This value is 0 for vehicle specific conversion factors.

BoundingRectangle

A bounding rectangle specified by its right top and left bottom coordinates.

Attribute Name Type Description
leftBottom Point

The left bottom corner of the rectangle. The coordinates are given in the same format as specified in the request.

rightTop Point

The right top corner of the rectangle. The coordinates are given in the same format as specified in the request.

BreakIntervals

The intervals where breaks of a given duration have to be done. It must be ensured that in each interval the break is done. Each break can be made at any time within its interval. The break must not be split and must fully fit in its interval. Breaks take place at the same time as other breaks. For example it can be specified, that a break of thirty minutes has to be made between 08:00 and 10:00. Then possible breaks could be 8:00-8:30, or 9:30-10:00, or anything in between. If the tour ends in an interval, it is not necessary to do the break if the remaining break interval is long enough to encompass the break. Otherwise, the break has to be done. This also applies for the tour start. Break intervals outside the tour can be ignored.
Attribute Name Type Description
breakPeriod int Specifies the duration of the break.
intervals Interval[] Specifies intervals in which breaks are stipulated.

BreakRule

The periods for breaks that are required after a certain period of driving. After a driving period a driver shall take an uninterrupted break. This break can be replaced by two separate uninterrupted breaks. The rule assumes, that the period of the single breaks equals the summary of both split breaks.
Attribute Name Type Description
drivingPeriod int

Uninterrupted period of time a driver is allowed to drive without a break.

Remark: According to EU regulation : 4h 30min (16200s)

breakPeriod1 int

Minimum period of time required for the first break.

Remark: According to EU regulation : 15min (900s)

breakPeriod2 int

Minimum period of time required for the second break.

Remark: According to EU regulation : 30min (1800s)

BreakRuleAUS

After a driving period a driver shall take an uninterrupted break of at least the break period.

The Australian Heavy Vehicle Driver Fatigue Legislation sets out minimum rest and maximum work hours. In case of the BreakRuleAUS the maximum work hours are equal to the maximum observation period minus the break period.

Attribute Name Type Description
breakPeriod int

Minimum duration of a required rest break.

Remark: According to NTC_AUS regulation: 15m (900s)

observationPeriodForOneBreak int

The observation period in which at least one rest break must be done.

Remark: According to NTC_AUS regulation: 5,25h (18900s)

observationPeriodForTwoBreaks int

The observation period in which at least two rest breaks must be done.

Remark: According to NTC_AUS regulation: 7,5h (27000 s)

observationPeriodForFourBreaks int

The observation period in which at least four rest breaks must be done.

Remark: According to NTC_AUS regulation: 10h (36000 s)

BrunnelManoeuvre

An optional tunnel or bridge manoeuvre.

Attribute Name Type Description
brunnelIdx int

The array index of the description text or road name of the tunnel or bridge.

brunnelEndIdx int

The index of the manoeuvre where the bridge or tunnel ends.

brunnelDist int

The distance from the bridge or tunnel exit to the manoeuvre in [m].

BulkRouteInfo

The results of a bulk route info request.
Attribute Name Type Description
bulkRouteInfoResult BulkRouteInfoResult[]

For each input route this array contains an element at the same index containing the results of the route calculation.

BulkRouteInfoResult

The results of a single route within a bulk route info request.
Attribute Name Type Description
routeInfo RouteInfo

If the routing has been executed successfully, this element contains the resulting time and distance of the route. Otherwise this element is nil, and the error attributes contain information on why the routing failed.

errorCode ErrorCode

If the routing has been executed successfully, this is SUCCESS. Otherwise it contains the error code describing why the routing failed.

errorDescription String

If the routing has been executed successfully, this attribute is nil. Otherwise it contains the error message describing why the routing failed.

CENEmissionConfiguration

The attributes for calculating CEN or factor-based emissions. The response element CENEmissionScenarios contains only those scenarios for which the corresponding request parameter is set.
Attribute Name Type Description
fleetSpecificAverageFuelConsumption Double

The average fuel consumption for a fleet in [l/100km] for liquid fuel types or [kg/100km] for gaseous fuel types like COMPRESSED_NATURAL_GAS.

routeSpecificAverageFuelConsumption Double

The average fuel consumption for a specific type of route in [l/100km] for liquid fuel types or [kg/100km] for gaseous fuel types like COMPRESSED_NATURAL_GAS.

actualFuelConsumptionForThisRoute Double

The actual fuel consumption for this route in [l] for liquid fuel types or [kg] for gaseous fuel types like COMPRESSED_NATURAL_GAS.

cenVersion CENVersion

Specifies the CEN or other factor-based version for calculating the emissions.

CENEmissionConversionFactors

The energy and emission conversion factors for a given biofuel percentage.
CO2e values are given in [kgCO2e/l], energy use values in [MJ/l].

Attribute Name Type Description
biofuelPercent int

Percentage of biofuel in fuel blend. 0 means no biofuel, 100 means 100% biofuel.

conversionFactors CENEmissions

Holder for actual conversion factors.

CENEmissionScenarios

The emissions for different fuel consumption scenarios. Only those scenarios will be returned for which the corresponding request parameter is set. In order to disable the vehicle-specific emissions, set the average fuel consumption of the vehicle to 0. The linking distance will not be considered.
Attribute Name Type Description
vehicleSpecific CENEmissions

The emissions based on the vehicle specific fuel consumption. The fuel consumption of the vehicle is set by request or in the vehicle profile.

fleetSpecific CENEmissions

The emissions based on a fleet specific fuel consumption.

routeSpecific CENEmissions

The emissions based on a route specific fuel consumption.

actualFuelConsumption CENEmissions

The emissions based on the actual fuel consumption for this route.

basedOnHBEFA CENEmissions

The emissions based on the fuel consumption as it was calculated by HBEFA 3.1 or higher. The values based on HBEFA 2.1 will not be correct. If you do not want to calculate emissions based on HBEFA, use HBEFAVersion NO_HBEFA.

vehicleSpecificConversionFactors CENEmissionConversionFactors[]

The energy and emission conversion factors. If the fuel type supports blends with biofuel, three items are provided in this order (duplicates may occur if the actual fuel blend contains 0% or 100% biofuel):

  • the actual fuel blend (available for all fuel types)
  • 0% biofuel (EUROSUPER and DIESEL only, not for CO2_DECREE_FRANCE_2011)
  • 100% biofuel (EUROSUPER and DIESEL only, not for CO2_DECREE_FRANCE_2011)
For other fuel types, only one item for the actual used fuel type is provided.

Only filled if CENVersion does not equal CEN_2011.

CENEmissions

Abstract base class for emission values according to CEN.
No attributes defined.

CENEmissions2011

Extends CENEmissions

The emission values according to CENVersion CEN_2011.
Attribute Name Type Description
energyUseTank2Wheel double

The energy use tank-to-wheel in [MJ].

energyUseWell2Wheel double

The energy use well-to-wheel in [MJ].

co2Tank2Wheel double The CO2e tank-to-wheel. The CO2e value is the unit for comparing the radiative forcing of a greenhouse gas to carbon dioxide according to [ISO 14064-1:2006] in [kg].
co2Well2Wheel double

The CO2e well-to-wheel in [kg].

CENEmissions2012

Extends CENEmissions

The emission values according to CENVersion CEN_2012.
Attribute Name Type Description
energyUseTank2Wheel double

The energy use for tank-to-wheel calculation in [MJ].

energyUseWell2Wheel double

The energy use for well-to-wheel calculation in [MJ].

energyUseWell2Tank double

The energy use for well-to-tank calculation in [MJ].

co2eTank2Wheel double The CO2e tank-to-wheel calculation. The CO2e value is the unit for comparing the radiative forcing of a greenhouse gas to carbon dioxide according to [ISO 14064-1:2006] in [kg].
co2eWell2Wheel double

The CO2e well-to-wheel calculation in [kg].

co2eWell2Tank double

The CO2e well-to-tank calculation in [kg].

fuelConsumption double

The fuel consumption in [kg]. This value is 0 for vehicle specific conversion factors.

CO2DecreeFrance2011

Extends CENEmissions

The emissions according to CENVersion CO2_DECREE_FRANCE_2011. It contains co2, not co2e values!

The VehicleParameter AVERAGE_FUEL_CONSUMPTION has to be set to determine the correct vehicle class. For further information see the xRoute UseCase Emissions.

Attribute Name Type Description
co2Well2Wheel double

The CO2 well-to-wheel value in [kg].

co2Well2Tank double

The CO2 well-to-tank value in [kg].

CO2EDecreeFrance2017

Extends CENEmissions

The emissions according to CENVersion CO2E_DECREE_FRANCE_2017. It contains co2 equivalent values.

The VehicleParameter AVERAGE_FUEL_CONSUMPTION has to be set to determine the correct vehicle class. For further information see the xRoute UseCase Emissions.

Attribute Name Type Description
co2eWell2Wheel double

The CO2e well-to-wheel value in [kg].

co2eWell2Tank double

The CO2e well-to-tank value in [kg].

CommuterTravelTrend

The travel trend for commuters. A commuter likes to know the best departure time for the shortest travel time. This element holds one of the departure times and the corresponding travel time.
Attribute Name Type Description
departureTime Calendar

The departure time of the current time step, which is equal to route_start_time + dynamic_step_size * current_step_index.

This attribute may be omitted for matrix calculation (see MatrixOptions ).

travelTime int

The travel time for this departure time in [s]. If -1, the travel time could not be calculated due to a blocked road segment.

CountryInfo

Describes the country info based on the waypoint list.

Attribute Name Type Description
tollCostInfos TollCostInfo[]

An array of the detailed toll information per toll section. The array might be null if the corresponding option is not set.

iuCode int

The integration unit code.

partRouteInfo RouteInfo

Summary information about distance and time, based on the total route. Additionally the cost field of the RouteInfo Object holds the toll distance.

perNCRouteInfo RouteInfo[]

Information about distance and time per network class.

Additionally the cost field of the RouteInfo object holds the toll distance. Please note that these distances may differ in some countries (e.g. Germany) from perTypeTollDistance as they are based on the routing calculation and not on the official distance tables provided by the government, which are not available per network class.

perTypeTollDistance int[]

An array of toll distances based (in [m]) on the toll types in the same order of the attributes in the TollType Enumeration (for example city toll, charge for ferry).

These values are currently incomplete. In order to obtain the correct toll distance, sum up the values contained in perNCRouteInfo.

The first entry is associated with the common aggregation SPECIALCHARGE containing the summary of all kind of special charge toll types.

In some countries (for example Germany) these distances may differ from those stated in perNCRouteInfo as they are calculated from official distance tables provided by the governements.

perTypeTollPrice int[]

Array of toll prices based on the toll types in the same order of the attributes in the TollType Enumeration (for example city toll, charge for ferry).

The price is given in subunits of the currency. For example if currency is Euro, the price is given in Eurocents. If the currency consists of 1000 subunits, the price is given in 10 subunits.
The first entry is associated with the common aggregation SPECIALCHARGE containing the summary of all kind of special charge toll types.

currency Currency

The currency of the toll prices. Deprecated, use attribute currencyISOCode instead.

currencyName String

The currency name of the requested language in case there is toll data for this country available.

This is an optional attribute and is only set if 'currencyDescription' in CountryInfoOptions is true.

currencyISOCode String

The ISO 4217 code of the currency in case there is toll data for this country available.

This is an optional attribute and is only set if 'currencyDescription' in CountryInfoOptions is true.

countryCode String

The optional country code information. If the RoutingParameter COUNTRY_ENCODING is not set, this attribute does not exist.

additionalInfo String

An additional information string in the desired language. If this language does not exist, the info will be given in english.

scenarioId Integer

The unique key to identify the toll scenario that was used for this country. This attribute is optional. It is returned if tollDate or tollScenarios in CountryInfoOptions are set. In case of scenarioId 1001 there is no toll at all in this country.

tollName String

If these toll data are named, and CountryInfoOptions attribute named toll is 'true', this attribute contains the toll name.

tollTotals TollTotals

This attribute holds the toll totals for this country (distance and cost). By default this value is null. To enable it, CountryInfoOptions attribute tollTotals must be set to 'true'.

costsPercentageToPassOn Double

This attribute holds a percentage value for the namedToll for this country. By default this value is null. To enable it, CountryInfoOptions attribute costsPercentageToPassOn must be set to 'true'.

Presently this value is available for France only. It is part of the french ecotaxe regulations.

CountryInfoOptions

A set of parameters being relevant for calculating toll costs either in its currency or in euro if desired. All of the costs are calculated per cent.

Furthermore the generation of detailed toll costs can be activated

Attribute Name Type Description
reductionIDs int[]

The IDs of the different reductions.
Legal values are the values from the list of reductiontype found in the map-directory after first start of the PTV xRoute Server.

ReductionIDs are not supported yet.

detailedTollCosts boolean

If true, detailed toll costs (see TollCostInfo) per country are generated.

allEuro boolean

If true, all prices will be returned in Euro. Otherwise all prices will be returned in its currency. All of the costs are calculated in decimal amounts.

tollScenarios TollScenario[]

Sets toll scenarios for different countries. This setting overwrites values set by tollDate.

tollDate Calendar

The underlying map may contain different toll scenarios for each country. These scenarios are valid from a specified date. If toll date is set, xRoute will use the according scenario for each country, otherwise the start time of the routing will be used (see START_TIME of RoutingParameter). The toll date must be specified as a string using the xsd:datetime syntax as for example 2018-01-01T09:00:00-01:00. Individual scenarios can be overwritten with the attribute tollScenarios.

The scenarios can be found in the file TollScenarios.ini in your map path (if available). The first column specifies the scenario id. The second column represents the country ID and the 7th column 'VALIDFROM' defines the starting date for this scenario given in the form YYYYMMDD.

calculatePartTollCosts boolean

If true, the optional attribute 'partTollCosts' in ExtendedRoute will be returned.

namedToll Boolean

If true, more detailed toll calculation with named toll is activated. The CountryInfo Response Object will return the additional TollTypes NATIOALNAMEDTOLL, NATIONALSECTIONBASED and NATIONALDISTANCEBASED.

PartTollCost response objects do not contain the more detailed TollTypes.

tollTotals Boolean

If true, the calculation of toll totals is activated. For example the toll distance and toll costs per country. See CountryInfo element tollTotals.

currencyDescription Boolean

If true, the optional attributes 'currencyISOCode' and 'currencyName' in CountryInfo and TollCost will be returned.

waypointIndexInTollCostInfo Boolean

If true, the field waypointIndex in TollCostInfo is filled in the response.

costsPercentageToPassOn Boolean

If true, the calculation of the costsPercentageToPassOn is activated. See CountryInfo attribute costsPercentageToPassOn.

CountryInfoVehicleOptions

Extends CountryInfoOptions

The CountryInfoVehicleOptions object is derived from the CountryInfoOptions with an additional VehicleOption array in order to set vehicle options via request. These vehicle options are used for both, toll calculation and emission calculation.
Attribute Name Type Description
options VehicleOption[]

A single vehicle option.

DailyRestRule

Sets all periods and frequencies needed to obey the daily rest rules of the European Union.
Attribute Name Type Description
regularRestPeriod int

Regular daily rest period.

Remarks: According to EU regulation : 11h (39600s)
firstSplitRestPeriod int

First period of a split regular daily rest period.

Remarks: According to EU regulation : 3h (10800s)
secondSplitRestPeriod int

Second period of a split regular daily rest period.

Remarks: According to EU regulation : 9h (32400s)
reducedRestPeriod int

Reduced daily rest period.

Remarks: According to EU regulation : 9h (32400s)
numberOfReducedRestPeriods int

Number of allowed reduced rest periods between any two weekly rest periods.

Remarks: According to EU regulation : 3
regularDrivingPeriod int

Regular daily driving period.

Remarks: According to EU regulation : 9h (32400s)
extendedDrivingPeriod int

Extended daily driving period.

Remarks: According to EU regulation : 10h (36000s)
numberOfExtendedDrivingPeriods int

Maximum number of extended driving periods per week.

Remarks: According to EU regulation : 2

Note: The maximum allowed value is 2, larger values are not accepted.

maximumPeriodBetweenEndOfDailyRests int

Within each of this period after the end of the previous daily rest period a driver shall have taken a new daily rest period.

Remarks: According to EU regulation : 24h (86400s)

DailyRestRuleAUS

Stores all periods needed to obey the Australian daily rest rule.
Attribute Name Type Description
dailyRestPeriod int

Minimum duration of a required daily rest.

Remark: According to NTC_AUS regulation: 7h (25200 s)

maximumDailyWorkingPeriod int

Maximum working period which cannot be exceeded in one day (24h).

Remark: According to NTC_AUS regulation: 12h (43200 s)

DetailDescriptionOption

A special detail level in the start or destination region of a route.

Attribute Name Type Description
radius int

The radius around the starting or destination station in [m] where to generate the RouteDescription in the requested detail minDetail.

minLevel DetailLevel

The minLevel to generate in the start or destination area.

DriverRegulations

Extends RegulationsBase

Describes all driver regulations to respect when calculating a tour. This implementation is based on regulations according to the European Union and German working rules. The first three attributes breakRule, dailyRestRule and weeklyRestRule can be used to set up regulations in accordance with the European Union. These attributes should be used in conjunction. The attribute workingRule can be used to set rules according to the German working regulation and can be used in addition to the EU settings. If in doubt, set up the EU rules and leave out the working rule.
The last attribute is called breakIntervals and can be used as an additional constraint if a specific break should be taken in several intervals.
Attribute Name Type Description
breakRule BreakRule The periods for breaks that are required after a certain period of driving. After a driving period a driver shall take an uninterrupted break. This break can be replaced by two separate uninterrupted breaks (breakPeriod1 and breakPeriod2). The rule assumes that the period of the single breaks equals the summary of both split breaks.
dailyRestRule DailyRestRule Periods and frequencies needed to obey the daily rest rules of the EU. A driver has to take a regular rest after a regular driving period. Within a calendar week he may have 2 extended driving periods of 10h and a maximum of 3 reduced rest periods of 9h. Rests can be split into two separate parts.
weeklyRestRule WeeklyRestRule

Periods and frequencies needed to obey the weekly rest rules of the European Union.

workingRule WorkingRule

Parameters needed to obey the working rules of Germany.

breakIntervals BreakIntervals

Parameters needed for breaks and break intervals.

DriverRegulationsAUS

Extends RegulationsBase

Describes all driver regulations to respect when calculating a tour. This implementation is based on regulations according to the Australian National Transport Commission (NTC). The first three attributes breakRule, dailyRestRule and weeklyRestRule can be used to set up regulations in accordance with the Australian government. These attributes should be used in conjunction.
Attribute Name Type Description
breakRule BreakRuleAUS

After a driving period a driver shall take an uninterrupted break of at least the break period.

The Australian Heavy Vehicle Driver Fatigue Legislation sets out minimum rest and maximum work hours. In case of the BreakRuleAUS the maximum work hours are equal to the maximum observation period minus the break period.

dailyRestRule DailyRestRuleAUS

Stores all periods needed to obey the Australian daily rest rule.

weeklyRestRule WeeklyRestRuleAUS

Stores all periods needed to obey the Australian weekly rest rule.

DriverSettings

Sets the individual driver regulation settings for a specific driver.
If these elements are not present, the EU and Australian regulations are used implicitly. This is necessary in order to maintain the compatibitility to previous xRoute versions.

If this element is present and the attribute remainingPeriods is set, the regulations are taken from this attribute.

If this element is present and the attribute remainingPeriods is not set, the regulations to be used must be defined explicitly in the DriverRegulations element.
Attribute Name Type Description
remainingPeriods String

Encoded remaining periods of a driver's previoius tour. If this value is set, the regulations in TourOptions must be set to null, because remainingPeriods contain the DriverRegulations from a previous tour and can not be changed.

breakRuleDisabled Boolean

If true, the break rule (EU) is disabled.

dailyRestRuleDisabled Boolean

If true, the daily rest rule (EU) is disabled.

weeklyRestRuleDisabled Boolean

If true, the weekly rest rule (EU) is disabled.

workingRuleDisabled Boolean

If true, the rule for working hours (EU) is disabled.

breakRuleAUSDisabled Boolean

If true, the break rule based on NTC_AUS is disabled.

dailyRestRuleAUSDisabled Boolean

If true, the daily rest rule based on NTC_AUS is disabled.

weeklyRestRuleAUSDisabled Boolean

If true, the weekly rest rule based on NTC_AUS is disabled.

DynamicInfo

Additional information about travel time in case of dynamic routing.

Definitions:

Ts(Rs) = the static travel time on the static route (without considering any dynamic information).

Td(Rd) = the dynamic travel time on the dynamic route (considering dynamic information).

Td(Rs) = the dynamic travel time on the static route (for example the travel time including traffic jams). Might be invalid if a street segment is blocked.

Attribute Name Type Description
timeBenefit int

The time benefit in [s] you will haven when taking the dynamic route in contrast to the travel time on the static route including traffic jams.

timeBenefit = Td(Rs) - Td(Rd)

In case of a road blocking on the static route according to a dynamic traffic incident, Td(Rs) is not defined. In this case timeBenefit is set to -1.

timeLoss int

The time loss in [s], when taking the dynamic route in contrast to the static route. timeLoss = Td(Rd) - Ts(Rs).

timeLoss2 int

The time loss in [s], when taking the static route despite of traffic jams in contrast to the static route without traffic jams.

timeLoss2 = timeBenefit + timeLoss = Td(Rs) - Ts(Rs)

In case of a road blocking on the static route according to a dynamic traffic incident, Td(Rs) is not defined. In this case timeLoss2 is set to -1.

distanceDiff Integer

The distance difference between the dynamic and the static route in [m].

This is an optional attribute and is only set if the REQUEST_VERSION is set to 1.4.5 or higher.

EmissionType

Determines at which level the emissions of the route are calculated.
Attribute Name Type Description
emissionLevel EmissionLevel

Defines at which level to return the emissions of the route.

Emissions

The emission of various substances for the complete route or a single segment. The linking distance will not be considered.
Attribute Name Type Description
hydrocarbons double

hydrocarbons, total in [g].

methane double

methane in [g].

hydrocarbonsExMethane double

hydrocarbons except for methane in [g].

carbonMonoxide double

carbon monoxide in [g].

carbonDioxide double

carbon dioxide in [kg] (total value).

sulphurDioxide double

sulphur dioxide in [g].

nitrogenOxides double

nitrogen oxides in [g].

nitrousOxide double

nitrous oxide in [g].

ammonia double

ammonia in [g].

benzene double

benzene in [g].

toluene double

toluene in [g] (only HBEFA_2_1).

xylene double

xylene in [g] (only HBEFA_2_1).

lead double

lead in [g].

particles double

particular mass in [g].

fuel double

petrol/fuel in [kg].

EmissionsHBEFA31

Extends Emissions

This is an extended version of the Emissions class, which is used for HBEFA 3.1 requests. It holds 3 more attributes.
Attribute Name Type Description
nitrogenDioxide double

nitrogen dioxide in [g].

fossilCarbonDioxide double

carbon dioxide from fossil sources in [kg] (this value depends on the country-specific shares of biofuels).

particleNumber double

particle number.

EmissionsHBEFA32

Extends Emissions

This is an extended version of the EmissionsHBEF32 class, which is used for HBEFA 3.1 requests. Both classes contain the same attributes, they just represent different versions of the HBEFA emission calculation.
Attribute Name Type Description
nitrogenDioxide double

nitrogen dioxide in [g].

fossilCarbonDioxide double

carbon dioxide from fossil sources in [kg] (this value depends on the country-specific shares of biofuels).

particleNumber double

particle number.

ExceptionPath

A route path which has to be treated as ExceptionPath in the route calculation. For example this option is used to calculate alternative routes. Only the first non-empty attribute 'nodes', 'extSegments', 'street', 'binaryPathDesc', or 'polyline' will be considered. If a street segment occurs in more than one instance of ExceptionPath with a relative malus, the final relative malus for this street segment will be calculated as the average of the given maluses. There is one exception to this rule: If the street segment in question occurs in an ExceptionPath element with a malus of 2501 or -99, the final malus will also be 2501 or -99. This mechanism allows the client to calculate an alternative route by still forcing xRoute to use a special street segment (for example a ferry), on the other hand blocked roads will always be blocked. If a street segment occurs in more than one instance of ExceptionPath with an absolute malus, the final absolute malus for this street segment will be arbitrary. This behavior may be changed in the future. A street segment can obtain a relative and an absolute malus. The route list of the response does not contain any information about these exception paths. For example if it represents a traffic jam, it is not possible to find out whether or not the route leads through the traffic jam or not and how much time it takes.

Attribute Name Type Description
nodes UniqueGeoID[]

An array of nodes specifying a route path. All nodes have to be connected.

extSegments String

Alternative description representing a route path (optional).
This is an external representation consisting of a list of provider's segment ID's (for example HERE).

The syntax for this description is:
LINESTRINGSEG(<segID> <dir> <countryCode>[,<segID> <dir> <countryCode>]*)

<segID> = provider ID
<dir> = the digitalization direction
<countryCode> = the countryCode representing the country the segment belongs to

Example:
LINESTRINGSEG(78620413 0 49,540932189 1 49,540933595 1 49)

The SegmentIDs of certain countries will only be taken into account when the corresponding IDMapping layer could be initialized. See the list of countries in the logging, initialized when xRoute Server is started.

street String

Alternative description representing an optional list of segments which match certain street names resp. street numbers.

The list of segments includes all segments which match at least one of the street names resp. street numbers.

The syntax for this description is:

<streetname>[/<streetname>]*

absTimeMalus will be ignored if this attribute is non-empty, instead relMalus will be considered.

If more than one ExceptionPath elements contain a non-empty 'street' attribute, only the last occurrence will be considered.

calculateMatrixInfo() does not support this attribute.

binaryPathDesc String

Binary description representing a route path (optional) useful for alternative routing and traffic information. The binary path description string can be requested with each route.

This is an internal format returned by a route calculation which is dependent on the map currently used. Therefore, it will become invalid when a map update is performed.

Each binary path description will be checked against the map currently in use. An error will be thrown if the check fails. To increase performance the key router.exceptionPath.disableBinaryPathCheck can be modified, but make sure that all binary path descriptions are correct. Sending incorrect values will make PTV xRoute Server behave non-deterministically.

relMalus int

The malus or bonus value in percent which has to be added to the base cost value.

Legal values are -99 to 2501.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 is interpreted as road segments blocked)
absTimeMalus Integer

An absolute malus in [s]. If < 0: the absolute value will be added for each segment of the entire path (example: a value of -10 will add 10 seconds to each segment of the path). If > 0: the absolute value will be distributed equally for all segments of the entire path. For example: a value of 10 will add 10 seconds to the complete path. This is useful for adding time due to traffic jams.

Default: 0

If the absolute time malus is set and does not equal 0, relMalus will be ignored.

polyline LineString

An alternative representation of a route path (optional). The polyline will be linked to the road network internally.

Intelligent road matching will not be executed, therefore the result might not always meet the requirements of the user. To obtain best results, the polyline's points must be close to each other and they must match the coordinates of the road data of the configured map exactly. GPS traces are not a proper input. Ferries cannot be matched and will not be considered.

Only a relative malus of -99 is allowed. In order to calculate a route from A to B using a polyline exception path p1,...,pn, execute the following two requests. First, calculate a route from p1 to pn and set the polyline exception path with malus -99, and set the ResultListOption binaryPathDesc to true. Then calculate the route from A to B using the resulting binaryPathDesc representation from the previous request with the required malus.

For long routes the computation will take some time, therefore the length of the polyline is limited by default. Please refer to the parameter router.exceptionPath.polylineMaxLength in xroute.properties.

intersectingLine LineString

A representation of an exception path (optional). It contains all segments that intersect with the given line. The line must be specified by exactly two points. Note that the intersection of a segment with the given line is calculated based on the two end nodes of the segment, the additional intermediate points to represent curved segments are not considered here. 

ExpansionDescription

Describes the expansion description for reachable objects and isochrone calculation. A certain number of horizons and the type of the expansion can be defined.
Attribute Name Type Description
horizons int[]

Horizons to respect during the expansion when calculating reachable objects (only one allowed) or isochrones (one or more allowed). The horizons must be given in [s] or [m] according to the expansion type. If several horizons are given, the horizons have to be in increasing order.

expansionType ExpansionType

The type of the expansion for calculation of isochrones and reachable objects.

ExtWayPoint

Extends WayPoint

Specialized WayPoint Description including linking informations as well as manoeuvre descriptions. This specialized WayPoint will only be generated if the corresponding RoutingParameter (GENERATE_EXTWAYPOINTS) is set.
Attribute Name Type Description
linkingTime int

The linking time in [s] between matchCoord and locationCoord.

linkingDistance int

The linking distance in [m] between matchCoord and locationCoord.

exitAngle int

The angle of the outgoing road of the manoeuvre relative to the incoming road in [deg] (counterclockwise).

exitAngleNorth int

The angle of the outgoing road of the manoeuvre related to north in [deg] (clockwise).

turnWeight TurnWeight

The turn weight of the manoeuvre.

turnOrient TurnOrient

The turn orientation of the manoeuvre.

manoeuvreType ManoeuvreType

The manoeuvre type.

linkingRouteListSegmentIdx int

The index of the RouteListSegment to which the waypoint is linked.

manoeuvreDesc String

The manoeuvre description text in the requested route language (see RoutingOptions).

ExtendedRoute

Detailed route description with its different description elements according to the options set in the ResultListOptions element and the country info including toll informations.

Attribute Name Type Description
countryInfos CountryInfo[]

An array of country information based on the waypoint list.

partTollCosts PartTollCosts[]

This array holds an instance of PartTollCosts for each part of the route. A part is the route between two waypoints. This attribute is returned if 'calculatePartTollCosts' in CountryInfoOptions is set to 'true'. Otherwise it is null.

route Route

The detailed route description.

FeatureDescription

Describes a single feature which applies to this segment. Its contents is data dependent. Please refer to the examples about the feature layer in the use case documentation and to the documentation about the feature layer data.
Attribute Name Type Description
themeId String

The theme ID. Please refer to the documentation about the feature layer data.

timeDomain String

Time domain where the related feature is valid for. Please refer to the time domain documentation.

This attribute is empty if the related feature is unrestricted as far as the validity period is concerned.

description String

For further information refer to the documentation about the feature layer data.

HBEFAType

Determines which HBEFA version should be used for emission calculation. Default is HBEFA 2.1.

Beside HBEFA there can also be configured the emission calculation COPERT for Australia.

Attribute Name Type Description
version HBEFAVersion

Defines which HBEFA version should be used for emission calculation. Default is HBEFA 2.1.

Beside HBEFA there can also be configured the emission calculation COPERT for Australia.

Interval

A time interval.
Attribute Name Type Description
from Calendar

Interval start.It must be specified as a string using the xsd:datetime syntax as for example 2018-01-01T09:00:00-01:00.

till Calendar Interval end. It must be specified as a string using the xsd:datetime syntax as for example 2018-01-01T09:00:00-01:00.

Isochrone

The result object of an isochrone request.
Attribute Name Type Description
isochrones IsochroneInfo[]

The IsochroneInfo for each horizon given in the request. The array index of the IsochroneInfo-array corresponds to the array index of the horizon-array in the request.

additional String

An additional information. If no additional information is available, this attribute does not exist.

IsochroneInfo

Description of an isochrone for a certain horizon.
Attribute Name Type Description
polys LineString

The polygon specifying the isochrone for a certain expansion horizon.

isoSegments IsochroneSegment

The segments within a certain expansion horizon representing the isochrone. Each IsochroneSegment object belongs to exactly one certain horizon. This means if there are several horizons, the sets of IsochroneSegments for different horizons are always disjunct (see figure).

horizon int

The horizon to which this IsochroneObject corresponds to, in [s] or [m] according to the expansion type of the request.

IsochroneOptions

The options to respect when calculating an isochrone.
Attribute Name Type Description
expansionDesc ExpansionDescription

The expansion description for the isochrone calculation.

isoDetail IsochroneDetail

Describes the detail level of the calculated isochrone (surrounding polygon, corresponding segments, or both).

polygonCalculationMode PolygonCalculationMode

Describes the calculation mode for the surrounding polygon of the isochrone.

IsochroneSegment

The detailed isochrone segment description (see figure "IsochroneSegment").
Attribute Name Type Description
segmentID UniqueGeoID[]

The segmentID this IsochroneSegment corresponds to. The segment is always given in digitalization direction (segmentID[0] to segmentID[1]). The driving direction is given by the attribute direction in combination with the digitalization direction.

direction boolean

If true, the driving direction is equal to the digitalization direction. Otherwise the driving direction is against to the digitalization direction.

distOnSgm int

The distance driven on the segment up to the isochrone border for the given horizon in [m] relative to the start of the segment.

timeOnSgm int

The time needed on the segment up to the isochrone border for the given horizon in [s] relative to the start of the segment.

kumulDist int

The distance driven on the segment up to the isochrone border for the given horizon in [m] relative to the sink point.

kumulTime int

The time needed on the segment up to the isochrone border for the given horizon in [s] relative to the sink point.

ManoeuvreAttributes

Additional attributes of a single RouteManoeuvre.

Attribute Name Type Description
isBorder boolean

If true, the manoeuvre is located at a border.

tollRoadStart boolean

If true, a toll road starts at this manoeuvre.

tollRoadEnd boolean

If true, a toll road ends at this manoeuvre.

isBlockingStart boolean

If true, a temporarily blocked road starts at this manoeuvre.

isBlockingEnd boolean

If true, a temporarily blocked road ends at this manoeuvre.

isUrbanStart boolean

If true, the manoeuvre for entering an urban area.

isUrbanEnd boolean

If true, the manoeuvre for leaving an urban area.

isBrunnelStart boolean

If true, a tunnel or a bridge starts at this manoeuvre.

isBrunnelEnd boolean

If true, a tunnel or a bridge ends at this manoeuvre.

ManoeuvreGroup

The ManoeuvreGroup specifying a minimap grouping for several manoeuvres.
The first ManoeuvreGroup includes always the start, the last ManoeuvreGroup includes always the destination.
The index generally begins with 0 but there is one exception. If the first/last ManoeuvreGroup includes exclusively the Start/Destination, then both indices are set to -1.

Attribute Name Type Description
fromIdx int

The index of the first RouteManouevre belonging to this ManoeuvreGroup.

toIdx int

The index of the last RouteManouevre belonging to this ManoeuvreGroup.

type ManoeuvreGroupType

The type of this ManoeuvreGroup.

extend BoundingRectangle

A rectangle describing the spatial extension of this ManoeuvreGroup. The coordinates are given in the same format as specified in the request.

MatrixInfo

Summary information of the matrix calculation.

Attribute Name Type Description
matrixInfo RouteInfo[]

The array of RouteInfo elements. The array has the size of NxM elements where N is the number of startwaypoints and M the number of destWaypoints a certain RouteInfo relation element [x,y] can be accessed by matrixInfo[x*M+y]. Values of -1 in matrixInfo[n] mean that this route has not been calculated due to a user abort.

MatrixOptions

The waypoint has to be linked to the geographically nearest valid segment within the configured link distance. A segment is valid if it can be used by the configured vehicle type.

Attribute Name Type Description
ncFilter int[]

A filter to use in matrix calculation. The filter gives an array of 7 boolean values representing a switch for each possible network class. For example if in a certain calculation only the highway distances are requested, the filter has to be set to [1,0,0,0,0,0,0].

toll boolean

If true, only the parts of the route having a so called toll flag for the requested vehicle type will be summed up in the MatrixInfo.

exceptionPaths ExceptionPath[]

The exception paths to respect when calculating these routes. For example to calculate alternative routes or consider traffic information.

travelTrendDepartureTime boolean

If set to false, the Calendar object representing the departure time for each travelTrend step is excluded from the response.

The default value is true, but for larger matrixes we recommend setting this parameter to false.

NormSpeed

Describes the maximum speed on the route segment in [km/h].

For more information on speed values, please refer to the speeds documentation.

Attribute Name Type Description
normSpeed int

The speed in [km/h]. If normSpeedType = STATIC, this value is equal to vCalc. If normSpeed = FREE_FLOW, this value contains the maximum speed which would be possible driving if there was no traffic disturbance. If normSpeed = MAX_DYNAMIC, this value contains the maximum dynamic speed contained in the dynamic data. In the latter cases vCalc is likely to be less than normSpeed.

normSpeedType NormSpeedType

The speed type.

PartTollCosts

The toll costs for a part of the route. These costs are specified by a distance and an array of different TollCost objects.
Attribute Name Type Description
distance int

The toll distance for this part in [m].

costs TollCost[]

An array of different TollCost objects.

Reach

The result object of an request for calculating reachable objects.
Attribute Name Type Description
reachInfo ReachInfo[]

The reach info for each location given in the request. The array index of the reachInfo-array corresponds to the array index of the location-array in the request.

additional String

An additional information. If no additional information is available, this attribute does not exist

ReachInfo

Describes if a certain location is reachable within a certain time or distance horizon around a route or node. If the location is reachable, the branchNode in addition is returned.
Attribute Name Type Description
reachable boolean

If true, the location is reachable within a certain time or a certain distance horizon.

routeInfo RouteInfo

The time [s], distance [m] and costs (for internal purposes) needed to reach a certain location. If the location cannot be reached, distance, time and costs are set to -1.

branchNode UniqueGeoID

The unique key to identify the node from which the shortest path to a certain location starts. If the location is not reachable, the branchNode object is set to NULL.

ReachableObject

One single reachable object.
Attribute Name Type Description
routeInfo RouteInfo

The time and distance needed to reach the object.

branchNode UniqueGeoID

The unique key to identify the node from which the shortest path to a certain location starts.

object ReachableObjectDescr

The unique key to identify the object and coordinates.

ReachableObjectDescr

The basic data of the object.
Attribute Name Type Description
coord Point The coordinates of the object.
id String

The unique key to identify the object.

ReachableObjects

The result of the calculateReachableObjects method searching for objects in a geodatasource layer.
Attribute Name Type Description
reachableObject ReachableObject[]

The reachable objects.

ReachableObjectsOptions

Describes the options to respect to when calculating reachable objects.
Attribute Name Type Description
expansionDesc ExpansionDescription

the expansion description for the reachable objects calculation (only one horizon is allowed).

geodatasourceLayer String

The geodatasource which contains the objects to be searched for. See RoutingParameter GEODATASOURCE_LAYER for details. This option can be empty in order to search only within the additional objects.

linkType LinkType

The link type for the reachable objects. FUZZY_LINKING is not allowed here. If empty, NEXT_SEGMENT will be used.

routingDirection RoutingDirectionType

The routing direction. If FORWARD, all objects reachable from the sink or the route within the given horizon are calculated. If BACKWARD, all objects which can reach the sink or the route within the given horizon are calculated.

additionalObjects ReachableObjectDescr[]

Contains additional objects which will be considered when searching for reachable objects.

boundingBoxCount Integer

Maximum number of bounding boxes used for querying POIs from the database.

xRoute fetches a list of POIs from the database before each of these POIs is tested for reachability within the given distance (see expansionDesc). Therefore minimizing the number of POIs by using good bounding boxes increases the performance of the searchForReachabelObjects method. xRoute will determine the bounding boxes on the basis of a smart algorithm. The boundingBoxCount is just an upper bound for this algorithm and will in most cases not be reached.

If this attribute is not set, a default of 200 is assumed. Depending on the database and the spreading of the POIs, it might increase the performance of the request if this attribute is set to a higher value.

RecreationPeriods

Contains aggregated information about durations of break and rest periods.
Attribute Name Type Description
breakPeriod int Period of time used for breaks. Here all breaks are included, driving regulation breaks as well as working breaks.
dailyRestPeriod int Period of time used for daily rest periods. Here all daily rests are included, driving regulation daily rests as well as working rests.
weeklyRestPeriod int Period of time used for weekly rest periods.

RegulationsBase

This is the abstract base for regulations. Due to the dynamic nature of legal requirements, the driver regulations are wrapped.
No attributes defined.

ResultListOptions

Describes the options for generating the result list.

Attribute Name Type Description
manoeuvres boolean

If true, manoeuvres are generated.

texts boolean

If true, texts are generated.

nodes boolean

If true, node infos are generated.

The array of nodes specifying the route trajectory can be taken as an exeptionPath in the appropriate input parameter list. For example when calculating an alternative route.

binaryPathDesc boolean

If true, the binary path description is generated.

The binary path description specifies the route trajectory and can be taken as an exeptionPath in the appropriate input parameter list. For example when calculating an alternative route.

This is an internal format returned by a route calculation which is dependent on the map currently used. Therefore, it will become invalid when a map update is performed.

polygon boolean

If true, the polyline representing the route will be generated.

polygonElevations Boolean

If true, the polyline representing the route will contain the z-coordinate which contains the approximate elevation at that location. This features requires the file heights.bin to be available in the map root directory. This parameter is only interpreted if polygon is true.

detailLevel DetailLevel

Specifies which detaillevel is generated.

dynamicInfo boolean

If true, optional travel time information is generated (in case of dynamic routing).

This parameter is only interpreted if RoutingParameter ENABLE_DYNAMIC is true.

segments boolean

If true, segmentinfo is generated.

segmentAttributes boolean

If true, segment attributes are generated. This parameter is only interpreted if segments is true.

segmentAttributePiggyback Boolean

If true, segment attributes distinguish between ferry and piggyback. See SegmentAttributes for details. This parameter is only interpreted if segmentAttributes is true.

segmentAttributeNamedToll Boolean

If true, the segment attribute hasNamedToll will be returned in the response. See SegmentAttributes attribute hasNamedToll.

This parameter is only interpreted if segmentAttributes is true.

manoeuvreAttributes boolean

If true, manoeuvre attributes are generated.

This parameter is only interpreted if manoeuvres is true and brunnelManoeuvres or urbanManoeuvres is true.

brunnelManoeuvres boolean

If true, brunnel manoeuvres are generated.

This parameter is only interpreted if manoeuvres is true.

urbanManoeuvres boolean

If true, urban manoeuvres are generated.

This parameter is only interpreted if manoeuvres is true.

startDetail DetailDescriptionOption

A special detail level in a certain start region (additional).

destDetail DetailDescriptionOption

A special detail level in a certain destination region (additional).

manoeuvreGroups boolean

If true, minimaps are generated.

manoeuvreGroupRatio Double

Optional value representing the height/width ratio of the ManoeuvreGroup.extend representing the bounding rectangle.

If the ratio is 1, height and width are equal.

This parameter is only interpreted if manoeuvreGroups is true.

tollManoeuvres boolean

If true, toll manoeuvres are generated.

This parameter is deprecated from version 1.26.0 on. Toll manoeuvres are always generated.

boundingRectanglesC int

Defines if and how much bounding rectangles for the route are returned.

If the count is set to 0, no bounding rectangles are calculated.

Legal values are > 0 if the value is greater as the max number of polypoints for this route.

max number of polypoints -1 bounding rectangles are calculated

Default is 0

boundingRectanglesOffset int

Defines whether bounding rectangles should be expanded by a certain value in [m].

Legal values are > 0

Default is 100

This parameter is only interpreted if boundingRectanglesC > 0.

totalRectangle boolean

If true, the total bounding rectangle for this route is calculated.

extSegments Boolean

If true, the external segment ID representation of the route path is returned (see Route.extSegments).

The SegmentIDs of certain countries will only be taken into account, when the corresponding IDMapping layer could be initialized. (see logging of the list of countries initialized when xRoute Server is started).

emissions EmissionType

If true, the emissions of the route are returned. The emission calculation depends on the vehicle parameters used for the toll calculation. That is stated in this request or the profile used (see VehicleParameter). Make sure that the request and profile state all of the necessary vehicle parameters, otherwise the default values are used. For some vehicles emission data is not available. The segment information are only returned if the parameter segments is true. This parameter is not evaluated when calling calculateRoute as this method does not have any vehicle parameters.

hbefaType HBEFAType

Specifies which data is used for the emission calculation. If not specified, HBEFA 2.1 is used.

cenEmissionConfiguration CENEmissionConfiguration

This attribute must be set, to return factor-based emission values, for example based on the European norm EN16258 (CEN) or NGA in Australia.

speedLimits Boolean

If true, speed limits are returned. See SpeedLimit for details.

This parameter is only interpreted if segments is true.

featureDescriptions Boolean

If true, feature descriptions are returned. See FeatureDescription for details.

This parameter is only interpreted if segments is true.

utcOffsets Boolean

If true and the PTV_TimeZones FeatureLayer is present, UTC offsets (in minutes) are returned for segments and stations.

Route

Detailed route description with its different description elements
according to the options set in the ResultListOptions element.
The description elements are set to 'nil' when routing is based on identical stations. In this case the RouteInfo attributes (distance, time, cost) are set to 0.

To avoid redundancies in the data the single data array
elements are linked to each other as shown in the figure below. see picture

Attribute Name Type Description
info RouteInfo

The summary information about distance and time.

dynamicInfo DynamicInfo

The optional travel time information in case of dynamic routing.

stations WayPoint[]

The array of the start, destination and via station descriptions.

manoeuvres RouteManoeuvre[]

The array of manoeuvres to be performed. The array might be null if ResultListOptions for manoeuvres are set to false.

texts String[]

An array of strings representing the string pool needed for this route. The array might be null if ResultListOptions for Texts are set to false.

segments RouteListSegment[]

An array of RouteListSegments representing the segment information for this route. The array might be null if ResultListOptions for segments are set to false.

nodes UniqueGeoID[]

An array of UniqueGeoID's representing the nodes information for this route. The array might be null if ResultListOptions for nodes are set to false. The array of nodes describing the route trajectory can be taken as an exeptionPath in the appropriate input parameter list when calculating an alternative route for example.

polygon LineString

A LineString object representing the polygon for this route, the actual waypoint coordinates are not included, but the match coordinates instead. The LineString Object might be null if ResultListOptions for polygons are set to false.

binaryPathDesc String

Describes the route path in a binary internal format. This is only because of a compact route path description when calculating alternative routes (see ExceptionPath).

manoeuvreGroup ManoeuvreGroup[]

An array of ManoeuvreGroups representing the extent of a ManoeuvreGroup

the array might be null if ResultListOptions for ManoeuvreGroups are set to false

boundingRectangles BoundingRectangle[]

An array of BoundingRectangle representing the bounding rectangles around the calculated route. The array might be null if boundingRectanglesC in ResultListOptions are set to 0.

totalRectangle BoundingRectangle

Qn array of BoundingRectangle representing the bounding rectangles around the calculated route. The array might be null if boundingRectanglesC in ResultListOptions is set to 0.

extSegments String

Alternative description representing the route path (optional). This attribute is only set if the corresponding (optional) RouteListOption.extSegments is set to true AND at least one segment ID could be determined (see NOTE below).

This is an external representation consisting of a list of provider's segment IDs (for example HERE).

The syntax for this description is:

LINESTRINGSEG(<segID> <dir> <countryCode>[,<segID> <dir> <countryCode>]*)

<segID> = provider ID
<dir> = the digitalization direction
<countryCode> = the countryCode representing the country the segment belongs to

Example:
LINESTRINGSEG(78620413 0 49,540932189 1 49,540933595 1 49)

NOTE: The SegmentIDs of certain countries will only be taken into account when the corresponding IDMapping layer could be initialized. (see logging of list of countries initialized when xRoute Server is started)

emissions Emissions

The emission of various substances for the complete route. The linking distance will not be considered.

vehicleRelatedEmissions Emissions

The vehicle related average emissions per kilometer are independent of the route. They only depend on the vehicle properties such as type or weight; they do not depend on the speed or inclination. This element will be returned for HBEFA 3.1 calculations only!

cenEmissions CENEmissionScenarios

The CEN or other factor-based emissions for this route. The linking distance will not be considered.

RouteInfo

Summary information about a single route
Negative values in either the distance, time or costfield will cause error codes.

Example: If for example a 100 x 100 Matrix should be calculated and only one location cannot be linked to the roadnetwork due to linking restrictions, then only one single row and one single column cannot be calculated. In this case all these relations have negative values (error codes) in the distance and time fields.

Cost / distance / time will be set to "0" when all stations are identical in the request.

Attribute Name Type Description
distance int

Travel distance in [m] (includes link distance).

Negative values show error codes.

time int

Travel time in [s] (includes link time)

NOTE:

1) This time includes waiting times if the calculateTour method is used.

2) In case of a road blocking on the static route the dynamic time on static route resp. Td(Rs) is infinite.

If so parameter time is set to -1 provided that DYNAMIC_TIME_ON_STATICROUTE is set to 'true'.

3) Otherwise negative values show error codes. Most common error codes here are -3120: At least one of the stations in the linking request could not be linked to the road network (coordinates might be outside of the map, far away from streets or close to streets which cannot be used for routing such as pedestrian zones, wood-paths and so on). -3211: No valid route found, one of the stations is located in an isolated area, or there is no route for the given restrictions, check the routing restrictions. Furthermore, -3211 is issued when this relation has not been calculated due to request abort.

cost int

The cost of the calculated route according to the given objective function. Unless stated otherwise in the referencing element this value contains a mathematical value rather than a monetary value, negative values show error codes.

travelTrend CommuterTravelTrend[]

The travel trend for commuters. This element is only present if the travel trend for commuters was requested (for example DYNAMIC_TRAVEL_TIME_STEP_COUNT > 1).

hasViolations Boolean

If true, the route has violations. A route can only have violations if violations have been explicitly enabled. For details see RoutingParameter ALLOW_SEGMENT_VIOLATIONS.

RouteListSegment

Summary information about a route segment according to detailLevel STANDARD. See picture

Attribute Name Type Description
firstPolyIdx int

The index of the first point in the polygon array belonging to this segment. If no polygons have been returned, the index is -1.

polyC int

The number of polypoints belonging to this RouteListSegment starting with firstPolyIdx.

firstNodeIdx int

The index of the first node in the nodes array belonging to this segment. If no nodes have been returned, the index is -1.

nodeC int

The number of nodes belonging to this RouteListSegment starting with firstNodeIdx.

streetNoIdx int

The index of the Text representing the streetnumber in the texts array belonging to this segment. If no texts have been returned, the index is -1.

streetNameIdx int

The index of the text representing the StreetName in the texts array belonging to this segment. The index is -1 if no texts have been returned.

dirInfoIdx int

The index of the text representing the SignName in the texts array belonging to this segment. The index is -1 if no texts have been returned.

accTime int

The accumulated time in [s] up to the endpoint of the segment (might include waiting time at a station on this segment, except for the last station). When using the calculateTour service, the time comprises service, break, and rest at a station on the segment. The last segment ends at the last station and does not comprise a service period there.

accDist int

The accumulated distance in [m] up to the endpoint of the segment.

nC NetworkClass

The networkclass of this segment.

vNorm int

The normalized speed value in [km/h] classifying the segment as slow or fast segment. This is not the exact speed value taken in route calculation, but gives the relative speed of this segment in contrast to all other segments (DEPRECATED, always 0).

normSpeed NormSpeed

Describes the maximum speed on the route segment in [km/h]. Only if RoutingParameter SPEED_INFOS is true. Please note that this is not the speed limit.

vCalc Integer

The calculated speed on the route segment in [km/h]. Only if RoutingParameter SPEED_INFOS is true.

For more information on speed values, please refer to the speeds documentation.

iuCode int

the integration unit code of the country this segment belongs to

segmentAttr SegmentAttributes

This group of output attributes is only set if it is requested in the RouteListOptions.

countryCode String

The optional country code information. If the RoutingParameter COUNTRY_ENCODING is not set, this attribute does not exist.

emissions Emissions

The emission of various substances for the segment.

cenEmissions CENEmissionScenarios

The CEN emissions for this segment..

speedLimits SpeedLimits

The speed limits valid for this segment.

violations String[]

The blocking segment violations of the segment. The violations are returned in an array. Each violation is composed as follows:

<ScopeType>:<Text of specific violation>
That means for a map violation of blocked trucks the text would look like
NetData:Blocks Trucks
featureDescriptions FeatureDescription[]

A list of feature descriptions valid for this segment. To receive this attribute the featureDescriptions attribute of ResultListOptions has to be set to true.

Extra map data is needed to use this result attribute.

utcOffset Integer

The UTC offset (offset from Coordinated Universal Time +/-) is the difference in minutes from Coordinated Universal Time (UTC) at the endpoint of this segment. It includes the DST (Daylight saving time) if required for this segement. This attribute is optional and is only returned if 'utcOffsets' in ResultListOptions is set to true.

RouteManoeuvre

The performed manoeuvre. The manoeuvre is located at the endpoint of its corresponding RouteListSegment (see picture of RouteListSegment).

Attribute Name Type Description
exitAngle int

The angle of the outgoing road of the manoeuvre relative to the incoming road in [deg] (counterclockwise).

exitAngleNorth int

The angle of the outgoing road of the manoeuvre related to north in [deg] (clockwise).

turnWeight TurnWeight

The turn weight of the manoeuvre.

turnOrient TurnOrient

The turn orientation of the manoeuvre.

exitNr int

The exit number when the manoeuvre is located at a roundabout.

manoeuvreType ManoeuvreType

The manoeuvre type.

detailLevel DetailLevel

The detail level to which this manoeuvre belongs to.

dirInfoNodeType InfoNodeType

The type of the direction info at this manoeuvre.

dirInfoIdx int

An array-index of the direction info text.

locInfoNodeType InfoNodeType

The type of the location info at this manoeuvre.

locInfoIdx int

The array-index of the location info text.

routeListSegmentIdx int

The index of the corresponding RouteListSegment.

predSegmentIdx int

The array index of the preceding RouteListSegment RouteManoeuvre.

succSegmentIdx int

The array index of the succeeding RouteListSegment.

manoeuvreDesc String

The manoeuvre description text in the requested route language (see RoutingOptions).

manoeuvreAttr ManoeuvreAttributes

Optional manoeuvre attributes. This group of output attributes is only set if it is requested in the RouteListOptions and if at least one of the attributes is set.

urbanlManoeuvre UrbanManoeuvre

Optional manoeuvre description for manoeuvres generated when entering or leaving a city. This group of output attributes is only set if it is requested in the RouteListOptions and if at least one of the attributes is set.

brunnelManoeuvre BrunnelManoeuvre

Optional manoeuvre description for manoeuvres generated when entering or leaving a tunnel or a bridge (brunnel). In this case a manoeuvre after a tunnel can refer to a tunnel or a bridge just passed, for example: bear right 100 meters after the bridge. This group of output attributes is only set if it is requested in the RouteListOptions and if at least one of the attributes is set.

manoeuvreGroupIdx int

An array-index of the corresponding ManoeuvreGroup.

viaIdx int

An array-index of the corresponding WayPoint.

-1 if there is no direct corresponding WayPoint.

This index always points to the WayPoint just passed.

The WayPoint is located between this and the previous manoeuvre except this is the last manoeuvre. In this case the WayPoint is located after this manoeuvre.

RoutingOption

Represents one routing option. The option type is described by the enumeration RoutingParameter.

Attribute Name Type Description
parameter RoutingParameter

The routing option to be set.

value String

The according value for the routing option. Legal values depend on the RoutingParameter.

SegmentAttributes

Additional attributes of a single RouteListSegment.

Attribute Name Type Description
brunnelCode BrunnelCode

Describes if this segment belongs to a tunnel or bridge and describes the type.

isFerry boolean

If true, this segment represents a ferry, otherwise a piggyback train connection.

If ResultListOption segmentAttributePiggyback is true, this attribute is true only if the segment represents a ferry. Otherwise (default) this attribute is true if the segment represents a ferry or a piggyback.

isBlockedCar boolean

If true, this segment is blocked for cars.

isBlockedTruck boolean

If true, this segment is blocked for trucks.

hasTollCar boolean

If true, this segment is a toll road for cars.

hasTollTruck boolean

If true, this segment is a toll road for trucks.

hasVignetteCar boolean

If true, this segment is a vignette road for cars

hasVignetteTruck boolean

If true, this segment is a vignette road for trucks.

hasExtraToll boolean

If true, this segment has extra toll.

hasNamedToll Boolean

If true, this segment has named toll.

This attribute is only present if ResultListOption segmentAttributeNamedToll is true. Otherwise (default) this attribute is not present.

hasSeparator boolean

If true, the road of this segment has a divider (is currently always false).

isPedestrianZone boolean

If true, the road of this segment is a pedestrian zone.

additionalRE String

Indicates optional road editor information given as semicolon separated key-value pairs according to the RoadEditor properties set for the corresponding segment in the additional road editor database.

Possible keys are given in RoadEditorOptions

If no road editor information is requested, this attribute does not exist.

Example:

<< key1|dir1 >>=<>,<< key2|dir2 >>=<< value2 >>,...,<< keyn|dirn >>=<< valuen >>

dir = 0, the segment is given in opposite direction

dir = 1, the segment is given in driving direction

EXT_INFO|0=1,IS_RAMP|1=1,OPT_MALUS1|1=-50

additionalInfo String

Represents optional additional - not documented - Information for project purposes.

lowEmissionZoneType String

The low emission zone is presented by one of the these identifiers:

  • 0      (NO low emission zone)
  • 1       (GREEN low emission zone)
  • 2       (YELLOW low emission zone)
  • 3       (RED low emission zone)
isPiggyback Boolean

Describes if this segment represents a piggyback.

This attribute is only present if ResultListOption segmentAttributePiggyback is true. Otherwise (default) this attribute is not present.

SpeedLimit

A single speed limit.

Speed limits are not available for all segments. Dependent on the map provider only some speed limits may be free of charge and not all maps contain speed limits, at all. For more information on the availability and licensing contact your PTV representative.

These speed limits represent the signs on the roads, they have not been used to calculate the travel speed on this segment during routing calculation.

For more information on format of the condition string see the use-case documentation.

Attribute Name Type Description
limitVelocity int

The speed limit itself in [km/h].

condition String

The condition under which the speed limit is valid.

SpeedLimits

An array of speed limits.
Attribute Name Type Description
speedLimit SpeedLimit[]

The array of speed limits.

TimeEvent

An event occurring during the tour. All times values are given in seconds from the start of the tour.
Attribute Name Type Description
type TimeEventType

The type of event.

startTime int

The start time of the event which might become negative if remaining driving times are given and the current tour does not follow the previous one immediately. The time in-between can then be used for a break or a rest.

period int

The period of the event.

tourPointIdx int

The zero-based index of this event in the tour point array of the Tour element.

segmentIdx int

The zero-based index of this event in the stations array of the Route element. This is particularly interesting if the event does not occur at a tour point but on the road instead. The segment index of the last tour point is invalid as there is no segment beginning at the last tour point.

TollCost

A single toll cost, which is identified by its type, iuCode, currency and the cost.
Attribute Name Type Description
cost int

The cost.

currency Currency

The currency of the toll prices. Deprecated, use attribute currencyISOCode instead.

currencyISOCode String

The ISO 4217 code of the currency in case there is toll data for this country available.

This is an optional attribute and is only set if 'currencyDescription' in CountryInfoOptions is true.

currencyName String

The currency name of the requested language in case there is toll data for this country available.

This is an optional attribute and is only set if 'currencyDescription' in CountryInfoOptions is true.

iuCode int

The integration unit code .

type TollType

The type of the toll.

TollCostInfo

The detailed toll costs for each country, each element represents a toll section. The toll is calculated by distance for some countries and globally (vignette) for some other countries. Those countries with global toll do not divide the route into toll sections, for example the tollSectionID equals -1, and the elements tollStationFrom and tollStationTo do not contain proper values.

In Austria there might be duplicate entries with different tollType values. In that case those with tollType SPECIALCHARGE are relevant.

Attribute Name Type Description
tollStationFrom TollStationDescription

If tollSectionID does not equal -1, this element contains information on the start point of this toll section.

tollStationTo TollStationDescription

If tollSectionID does not equal -1, this element contains information on the end point of this toll section.

tollSectionID int

ID for the toll section. -1 if this country has global toll (vignette).

tollSectionName String

The name for the toll section according to the sectionID. Empty if this country has global toll (vignette).

This is an optional attribute and is only set if the REQUEST_VERSION is set to 1.4.5 or higher

tollProviderID int

ID for the toll company.

tollProviderName String

The toll provider name according to the providerID.

This is an optional attribute and is only set if the REQUEST_VERSION is set to 1.4.5 or higher.

streetName String

The street name. This is an optional attribute and is only set if the REQUEST_VERSION is set to 1.4.5 or higher.

tollDistance int

Distance of the toll section in [m].

tollPrice int

Price for the toll section (can be 0 for citytoll/vignette in case of reentering). The price is given in subunits of the currency, for example if currency is Euro, the price is given in Eurocents. If the currency consists of 1000 subunits, the price is given in 10 subunits.

tollType TollType

Kind of the toll section (for example national toll or extra toll).
The TollType parameter also includes all kind of special charge toll types, except for the common aggregation SPECIALCHARGE.

vehicleTarifID Integer

For internal use only.

This is an optional attribute and is only set if the REQUEST_VERSION is set to 1.4.5 or higher.

currency Currency

The currency of the toll prices. Deprecated.

currencyName String

Represents the currency description.

This is an optional attribute and is only set if the REQUEST_VERSION is set to 1.4.5 or higher.

waypointIndex Integer

Index of the waypoint to which this toll section is assigned to. This value is only filled if the CountryInfoOptions.waypointIndexInTollCostInfo is set to true in the request.

TollScenario

A toll scenario for a single country. The country is specified by its country code, for example 49 for Germany. The scenario ID is an ascending number. The default scenario is 1.
Attribute Name Type Description
iuCode int

The integration unit code for this scenario.

scenarioId int

The unique key to identify the scenario.

TollStationDescription

Describes information of toll station.

Attribute Name Type Description
tollStationName String

The name of the toll station.

tollStationID int

The identifier of the toll station.

tollLocationType InfoNodeType

Type of the location info at this toll station.

routeListIndex int

The index in the routelist where this tollsection starts or ends. It has the value -1 if there is no toll station. This is for countries in which the toll depends on the distance.

time String

The time String representing the time for entering or leaving the according toll section.

This is an optional attribute and is only set if the REQUEST_VERSION is set to 1.4.5 or higher.

manoeuvreType TollManoeuvreType

Optional attribute describing the manoeuvre type. Is either ENTER, EXIT, FURTHER or CHANGE.

TollTotals

The totals for distance and costs.
Attribute Name Type Description
distance int

The total toll distance within a country in [m]. This value indicates the distance given by the toll provider.

cost int

The total toll costs within a country.

Tour

Extends ExtendedRoute

Additional parameters returned by the calculateTour service method.
Attribute Name Type Description
tourPoints TourPoint[]

The tour points.

timeEvents TimeEvent[]

The list of events occurred during the tour.

tourSummary TourSummary

The tour summary.

TourEvent

Describes an event during the course of a tour chain. A tour event contains an interval in which the event takes place, and a description of the event. Besides interval and description, an event comprises identifications both of the logistic point and the tour the event may refer to (some events don't: DRIVING, INTERMEDIATE, ...). The intervals of the tour events decompose the chain period, for example they are seamlessly attached to each other. We do not export events of length 0 although some service or driving periods may be of this length. We usually join two consecutive events if they are the same apart from their intervals. The only exception to this rule are DRIVING events which are not joined to indicate a SERVICE event of length 0 in between.
Attribute Name Type Description
tourPointIndex int Index of the tour point at which the event takes place, or -1 if the event takes place on the road.
startTime Calendar Start time of this event.
period int Period of this event.
descriptions String[] An array of TourEventDescriptions for this event. See TourEventDescription for details. This enumeration may be extended without further notice. Client applications must ignore unknown values.
violations String[] An array of TourEventViolations for this TourEvent. See TourEventViolation for details. This enumeration may be extended without further notice. Client applications must ignore unknown values.
segmentIndex int Segment index of the tour point at which the event takes place. As with WayPoint attribute segmentIdx this index is invalid if it takes place at the last station.

TourOptions

Describes the time profile options to respect when calculating a tour. These options have no effect on the course of the route.
Attribute Name Type Description
startIntervalLength Integer The length of the start interval. The earliest point in time when the tour can be started, is the time given by RoutingParameter START_TIME. If startIntervalLength is present, this value specifies within what time period (in [s]) after the start time the tour can be started. 0 means that the tour must be started at the specified start time, 600 means the tour can be started within 10 minutes after the start time. Leave this value empty in order not to restrict the start time, at all.
operatingIntervals Interval[] The time intervals in which the driver is allowed to operate (to drive or to perform active service). Outside of these intervals, a driver must rest. The intervals must be disjoint and must be ordered strictly ascending.
restrictToSingleOperatingInterval boolean If true, all active service and driving with a duration greater than zero must take place within the same operating interval. By default, the restriction is disabled.
tourRestrictions TourRestrictions This attribute stores some restrictions which should be applied to the calculation.
useCase String This attribute specifies an internal optimization method. Adjust this value in collaboration with PTV's support only.
driverSettings DriverSettings The individual driver regulation settings.
regulations RegulationsBase Regulations to respect when calculating a tour.

This value must be set to null if remainingPeriods in driverSettings are set, because remainingPeriods contain the DriverRegulations from a previous tour and can not be changed.

By default, the regulations of the EU as described in DriverRegulations will be active.

TourPoint

A tour point. All times values are given in seconds from the start of the tour.
Attribute Name Type Description
arrivalTime int

The arrival time at this tour point.

startOfService int

Start of service.

endOfService int

End of service.

departureTime int

The departure time.

stationIdx int

The zero-based index of this tour point in the stations array of the Route element.

timeWindowViolation boolean

If true, the tour could not be calculated matching all parameters. Arrival (and complete service if needed) is not within the opening intervals.

serviceViolation boolean

If true, the tour could not be calculated matching all parameters. The complete service period is not within the opening intervals.

TourPointDesc

Extends WaypointDesc

Extends the WaypointDesc element by parameters used by the calculateTour service method. The first and the last waypoint for that method must be a tour point. Tour points must not use the fuzzy linking option.
Attribute Name Type Description
servicePeriod int

The service period at this tour point in [s].

openingIntervals Interval[]

The opening intervals at this tour point. The route will be calculated in a way so that arrival (and the service period if need be) will be within the opening intervals. The intervals must be disjunct, ascending and they must end after the start of the route. This element can be nil, in that case arrival can be anytime.

useServicePeriodForRecreation boolean

If true, the driver must not help unloading a truck. If set to false, it can be assumed that the driver has to work during the whole service period. If set to true, the driver for example waits while someone else unloads the truck. This means if the service-period is longer than the minimum period required for a break, the driver can use the service period as a break (or rest).

completeServiceInIntervals boolean

If true, arrival and complete service period must be within the opening intervals, otherwise only arrival must be within.

siteID Integer For each tour point a siteID > 0 can be provided. Tour points with the same siteID refer to the same physical location. For example, this could model multiple deliveries to the same company. Leave empty if necessary.
minUninterruptedServicePeriod Integer Specifies the minimum uninterrupted period of service. If not present, the service can be interrupted at any time.

TourPointResult

Describes the tour point depending information as a result of the calculation.
Attribute Name Type Description
arrivalTime Calendar Time of arrival at this tour point.
startServiceTime Calendar Beginning of the service at this tour point.
endServiceTime Calendar

End of the service at this tour point. If the Site-ID is == Constants::UNDEFINED_SITE_ID(), the feature is not active.

departureTime Calendar Time of departure from this tour point (equals end of service at final tour point).
genuineWaitingPeriod int Period of time at this tour point that is used neither for recreation nor for service, for example for waiting only.
recreationPeriodsOnRoad RecreationPeriods Summary of all recreation periods between departure from previous and arrival at this tour point.
recreationPeriodsAtTourPoint RecreationPeriods Summary of all recreation periods between arrival and departure at this tour point.
stationIndex int

The zero-based index of this tour point in the stations array of the Route element.

TourRestrictions

The restrictions for calculating the time profile.
Attribute Name Type Description
transportPeriodRestrictions TransportPeriodRestriction[] An array containing transport period restrictions. Each entry contains a source/start tour point and a sink/end tour point index together with the max. transport period between these two tour points.
maxTourPeriod Integer Specifies the maximum duration of the tour. The duration of the tour is the period of time from the beginning of the first service up to the completion of the final service. Idle periods at the beginning of the tour before the first service do not increase the tour period. The above statement does not hold for all idle periods after the end of the given start interval. All tour events behind the end of the start interval increase the overall tour period. If not present, there will be no restriction.

TourSummary

The summary of the tour. All periods are given in seconds.
Attribute Name Type Description
totalPeriod int

The total period of the tour.

drivingPeriod int

The total driving period.

waitingPeriod int

The total waiting period.

earliness int

The total time the driver arrived at a tour point before the opening times.

servicePeriod int

The total service period.

idlePeriod int

The total idle period.

latestTourStart Calendar

The latest point of time at which the tour must be started in order to arrive on time at the last tour point. Will be nil if no opening intervals are given.

remainingShiftPeriod Integer

The remaining shift period. Only set if RoutingOption REMAINING_DRIVING_TIMES is present.

remainingWorkingHoursDuringShift Integer

The remaining working hours during current shift. Only set if RoutingOption REMAINING_DRIVING_TIMES is present.

remainingDrivingTimeBeforeNextBreak Integer

The remaining driving time before the next break. Only set if RoutingOption REMAINING_DRIVING_TIMES is present.

remainingBreakPeriod Integer

The remaining break period. Only set if RoutingOption REMAINING_DRIVING_TIMES is present.

TransportPeriodRestriction

A single transport period restriction.
Attribute Name Type Description
startTourPointIndex int The source/start logistic point.
destinationTourPointIndex int The sink/end logistic point.
maxPeriodBetweenServices int The maximum transport period between the two logistic points.

UKDefra2014

Extends CENEmissions

The emissions according to CENVersion UK_DEFRA_2014.
Attribute Name Type Description
energyUseTank2Wheel double

The energy use tank-to-wheel in [MJ].

co2eTank2Wheel double

The CO2e tank-to-wheel in [kg].

co2eWell2Wheel Double

The CO2e well-to-wheel calculation in [kg].

co2Tank2Wheel double

The CO2 tank-to-wheel in [kg].

ch4Tank2Wheel double

The CH4 (methane) tank-to-wheel in [g].

n2oTank2Wheel double

The N2O (Nitrous oxide) tank-to-wheel in [g].

UniqueGeoID

A node in the roadnetwork specified by its geographical xyn-position.

Attribute Name Type Description
tID long

The tile ID where this UniqueGeoID is located.

xOff int

The x-offset adress of this UniqueGeoID.

yOff int

The y-offset adress of this UniqueGeoID.

n int

The n-level of this UniqueGeoID.

iuCode int

The integration unit code where this node is located.

For example: 49 - germany; 33 - france; 34 - spain

UrbanManoeuvre

Describes an additional urban manoeuvre.

Attribute Name Type Description
urbanIdx int

The array index of the urban description text.

additionalUrbanIdx Integer

An optional array index of an additional urban description text. This index is only set if a manoeuvre has set the ManoeuvreAttribute.isUrbanStart and ManoeuvreAttribute.isUrbanEnd at the same time. In this case urbanIdx holds the index to the text of the urban area just left while additionalUrbanIndex holds the index to the urban area just entering

VehicleOption

Represents one vehicle option. The option type is described by the enumeration VehicleParameter.

These options do not have any effect on RoadEditor Options. 
Attribute Name Type Description
parameter VehicleParameter The string representation of the enumeration value VehicleParameter
value String

The value of the VehicleParameter

ViaType

The type of the via point.
Attribute Name Type Description
viaType ViaTypeEnum

The type of the via point.

WayPoint

A station waypoint for start, destination or via-stations.

Attribute Name Type Description
accTime int

The accumulated time in [s] up to this station (arrival time), the first station has accTime = 0, the last station has accTime = routeInfo.time - link time. When using the calculateTour service, the arrival time does not comprise service, break, and rest at this station. This also applies to the last station; if there is a service period given, accTime + service period = routeInfo.time. Please use the corresponding TourPoint element for more information on arrival, service, and departure times.

accDist int

The accumulated distance in [m] up to this station. The first station has accDist = 0. The last station has accDist = routeInfo.distance - link distance.

iuCode int

The integration unit code of the country in which this station is located.

polyIdx int

The index in the polygon pointing to the polypoint right behind the station. For example if the polyIdx = 5, the station is located between polyIdx = 4 and polyIdx = 5

nodeIdx int

The index in the nodes array pointing to the node right behind the station. For example if the nodeIdx = 5 the station is located between nodeIdx = 4 and nodeIdx = 5.

segmentIdx int

The zero-based index in the segments-array pointing to the segment to which the station was linked. The coordinate of the segment is its beginning, but time and distance values are its end. Therefore accTime and accDist of this station are less or equal the respective values of the segment, and the location lies after the beginning of the segment. As there is no segment beginning at the last station, this index is invalid for the last station. Breaks, rests, and service periods calculated by calculateTour are added to the segment where the station was linked.

manoeuvreIdx int

The zero-based index in the manoeuvre-array pointing to the manoeuvre right after the station. As there is no manoeuvre after at the last station, this index is invalid for the last station.

locationCoord Point

The coordinates of the location.

matchCoord Point

The coordinates of the link point (the intersection point of the perpendicular with the segment).

wayPointType WayPointType

The WayPointType of this waypoint.

countryCode String

The optional country code information. If the RoutingParameter COUNTRY_ENCODING is not set, this attribute does not exist.

emissions Emissions

The accumulated amount of emissions of various substances.

cenEmissions CENEmissionScenarios

The accumulated CEN emissions for this waypoint.

utcOffset Integer The UTC offset (offset from Coordinated Universal Time ±) is the difference in minutes from Coordinated Universal Time (UTC) at this waypoint. It includes the DST (Daylight saving time) if required for this waypoint. This attribute is optional and is only returned if 'utcOffsets' in ResultListOptions is set to true.

WaypointDesc

Describes coordinates and the linktype of the location which has to be linked to the road network. Please consider the restrictions described with the attributes.

Attribute Name Type Description
coords Point[]

The coordinates of the location which have to be linked to roadnetwork. In case of a multilink, this can also be an array of coordinates treated as entrypoints for one single waypoint.

linkType LinkType

The linktype for the location which has to be linked to the roadnetwork.

nodeID UniqueGeoID

The unique key to identify the node to which explicitly has to be linked.

This attribute is optional and does not need to be set.

Explicit linking to a node is not allowed for the methods calculateMatrixInfo, calculateIsochrones, and calculateReachableObjects.

segmentID UniqueGeoID[]

The unique keys to identify the pair for the segment to which explicitly has to be linked.

This attribute is optional and does not need to be set.

Explicit linking to a segment is not allowed for the methods calculateMatrixInfo, calculateIsochrones, and calculateReachableObjects.

fuzzyRadius int

The radius for fuzzy linking to a certain location in [m].

The resulting via point may now be one of the nodes which can be reached within the given road distance from the co-ordinate. Be careful when using small values close to motorways. In that case it is very likely that the motorway is within the radius but none of the exits.

This algorithm uses a heuristic method, thus the result might not be the optimal solution especially when using several fuzzy waypoints one after the other..

This value is only interpreted for via-points with linkType FUZZY_LINKING in 1:1 routing requests and not when calculating a matrix.

Legal values are >=0, the default is 0.

heading Integer

The angle which specifies an additional constraint when linking a certain location to the road network. This means that the location will be linked to the geographically nearest segment which has approximately the same orientation as described in the heading. The tolerance can be given in the profile.

Legal angle values are 0 to 360 related to north in [deg] (clockwise).

This parameter is optional and has only an effect when using LinkType NEXT_SEGMENT, AUTO_LINKING or TI_LINKING and headingTolerance being configured in the profile.

street String

A street name respectively street number which specifies an additional constraint when linking a certain location to the road network.
Street name of start/ destination can be different. This parameter is optional and has only an effect when using LinkType NEXT_SEGMENT, AUTO_LINKING or TI_LINKING.
Given street must match a segment, otherwise linking fails. Also several street names can be given in a list for a certain location. In this case all segments which match at least one of the street names, meet the plausibility constraint.

The syntax for this description is:

<streetname>[/<streetname>]*

routingOptions RoutingOption[]

The specific attributes for routing, up to the next waypoint. These options can only be used in the methods calculateRouteInfo(), calculateRoute(), calculateExtendedRoute() and calculateTour() of XRoute, otherwise the exception UNSUPPORTED_WAYPOINT_CONFIGURATION is thrown. There are routing parameters which must not be used here. See RoutingParameter, otherwise the exception INVALID_WAYPOINT_CONFIGURATION is thrown. Options are not allowed at fuzzy waypoints or combined transports, otherwise the exception UNSUPPORTED_WAYPOINT_CONFIGURATION is thrown.

vehicleOptions VehicleOption[]

The vehicle specific attributes, up to the next waypoint. These options can only be used in the methods calculateRouteInfo(), calculateRoute(), calculateExtendedRoute() and calculateTour() of XRoute, otherwise the exception UNSUPPORTED_WAYPOINT_CONFIGURATION is thrown. Options are not allowed at fuzzy waypoints or combined transports, otherwise the exception UNSUPPORTED_WAYPOINT_CONFIGURATION is thrown.

viaType ViaType

The type of the via point. Must be NULL for start and destination, otherwise the exception CONFLICT_VIA_TYPE is thrown. This type can only be used in the methods calculateRouteInfo(), calculateRoute(), calculateExtendedRoute() and calculateTour() of XRoute, otherwise the exception UNSUPPORTED_WAYPOINT_CONFIGURATION is thrown. Fuzzy waypoints and combined transports must not be used with TourPointDesc, otherwise the exception CONFLICT_TOUR_FUZZYPOINTS is thrown. The default value is VIA.

combinedTransportID String

The unique key to identify a ferry or a piggyback transport. If the viaType COMBINED_TRANSPORT is selected, this attribute must be set. If combinedTransportID is set, the attribute coords must be null. Otherwise an exception is thrown.

WeeklyRestRule

Periods and frequencies needed to obey the weekly rest rules of the European Union.
Attribute Name Type Description
maximumPeriodBetweenWeeklyRests int

Maximum period between the end of a weekly rest period and the beginning of the following weekly rest period.

Remarks: According to EU regulation : 6d (518400s)
maximumWeeklyDrivingPeriod int

Cumulative period of time a driver is allowed to drive within a week.

Remarks: According to EU regulation : 56h (201600s)
maximumBiweeklyDrivingPeriod int

Cumulative period of time a driver is allowed to drive within two weeks.

Remarks: According to EU regulation : 90h (324000s)
weeklyRestPeriod int

Minimum period of time of a weekly rest.

Remarks: According to EU regulation : 45h (162000s)

WeeklyRestRuleAUS

Stores all periods needed to obey the Australian weekly rest rule.
Attribute Name Type Description
weeklyRestPeriod int

Minimum duration of a required weekly rest.

Remark: According to NTC_AUS regulation: 24h (86400 s)

maximumWeeklyWorkingPeriod int

Maximum working period which cannot be exceeded in one week (7d or 168h).

Remark: According to NTC_AUS regulation: 72h (259200 s)

WorkingRule

Parameters needed to obey the working rules of Germany.
Attribute Name Type Description
breakPeriod int

Minimum duration of required working break.

Remarks: According to German working hours regulation: 30m (1800s)
extendedBreakPeriod int

Minimum duration of extended break if workingPeriod exceeded.

Remarks: According to German working hours regulation: 45m (2700s)
maxWorkingPeriodWithoutBreak int

Maximum duration of uninterrupted working time without having a break.

Remarks: According to German working hours regulation: 6h (21600s)
maxWorkingPeriodWithoutExtendedBreak int

Maximum duration of uninterrupted working time without having an extended break.

Remarks: According to German working hours regulation: 9h (32400s)
minPartialBreakLength int

Minimum duration break part if break is split.

Remarks: According to German working hours regulation: 15m (900s)
maxWorkingPeriodWithoutDailyRest int

Maximum working period after which a daily working rest must be done.

Remarks: According to German working hours regulation: 8h - 10h (28000s - 36000s)
maxWorkingPeriodPerWeek int

Maximum working period in a week.

Remarks: According to German working hours regulation: 48h - 60h (172800s - 216000s)
dailyRestPeriod int

Minimum uninterrupted daily rest period after work.

Remarks: According to German working hours regulation: 11h (39600s)

Enumerations

BrunnelCode

The type of the tunnel or bridge.

Enumerator Name Value Description
NOTHING 0

No tunnel or bridge.

OVER_WATER 1

Bridge over water.

UNDER_WATER 2

Tunnel under water.

OVER_TRAIN 3

Bridge over railways.

UNDER_TRAIN 4

Tunnel under railways.

OVER_STREET 5

Bridge over a street.

UNDER_STREET 6

Tunnel under a street.

BRIDGE 7

Bridge without any further description.

TUNNEL 8

Tunnel without any further description.

CENVersion

This enumeration lists different CEN versions. Starting with xRoute 1.16 it also contains non-CEN emissions standards which are quite similar to CEN, we call them factor-based emissions. Anyway, the name "CENVersion" was kept for backward compatibility.
Enumerator Name Value Description
CEN_2011 0

The CEN calculation based on values from 2011 (EN16258:2011).

CEN_2012 1

The CEN calculation based on values from 2012 (EN16258:2012).

CO2_DECREE_FRANCE_2011 2

The French CO2 decree no. 2011-1336, Article L.1431-3:2011. Only the following biofuel blends are supported: E10, E85 and B30. These blends can be set using the VehicleParameters FUEL_TYPE and BIO_FUEL_RATIO. For example E10 is represented by FUEL_TYPE=EUROSUPER and BIO_FUEL_RATIO=10. B30 is set by FUEL_TYPE=DIESEL and BIO_FUEL_RATIO=30.

CO2E_DECREE_FRANCE_2017 3

The French CO2e decree no. 2017-639. Only the following biofuel blends are supported: E10, E85 and B30. These blends can be set using the VehicleParameters FUEL_TYPE and BIO_FUEL_RATIO. For example E10 is represented by FUEL_TYPE=EUROSUPER and BIO_FUEL_RATIO=10. B30 is set by FUEL_TYPE=DIESEL and BIO_FUEL_RATIO=30.

AUSTRALIA_NGA_2011 4

The emission calculation based on the Australian National Greenhouse Accounts (NGA), factors July 2011. To specify the emission class and the year of manufacture for each vehicle.

UK_DEFRA_2014 5

The emission calculation based on the emission factors provided by the Department for Environment, Food & Rural Affairs (Defra) in the United Kingdom, factors 2014.

AUSTRALIA_NGA_2015 6

The emission calculation based on the Australian National Greenhouse Accounts (NGA), factors December 2015. To specify the emission class and the year of manufacture for each vehicle.

Currency

The different currencies to choose. Some of these currencies do not exist anymore. They are kept anyway, otherwise backward-compatibility with older xRoute clients is not assured.

Enumerator Name Value Description
NONE 0

none - not defined.

EUR 1

Euro

GBP 2

British pound (sterling) - United Kingdom

DKK 3

Danish krone - Denmark, Greenland

NOK 4

Norwegian krone - Norway

SEK 5

Krona - Sweden

CHF 6

Swiss franc - Switzerland, Liechtenstein

PLN 7

Polish z?oty - Poland

SIT 8

Tolar - Slovenia

SKK 9

Slovak koruna - Slovakia

SK 10

Icelandic krona - Iceland

TRY 11

Turkish new lira - Turkey

USD 12

United States dollar

CAD 13

Canadian dollar - Canada

JPY 14

Yen - Japan

ROL 15

Romanian leu - Romania

BGN 16

Lev (Лев) - Bulgaria

HUF 17

Forint - Hungary

HRK 18

Kuna - Croatia

MKD 19

Denar - North Macedonia

ALL 20

Lek - Albania

BAM 21

Bosnian and Herzegovinian konvertibilna marka - Bosnia and Herzegovina

EEK 22

Kroon - Estonia

CSD 23

Serbian dinar - Serbia

LVL 24

Lat - Latvia

LTL 25

Litas - Lithuania

MTL 26

Maltese lira - Malta

MDL 27

Moldovan leu - Moldova

CYP 28

Cyprus pound - Cyprus

ZAR 29

Rand - South Africa

CZK 30

Czech Koruna - Czech Republic

DetailLevel

Describes different detail levels which can be requested.

Enumerator Name Value Description
BORDERS 0

Only Borders

VERY_IMPORTANT 1

The entering, leaving and changing of highways; The entering of ferries.

STANDARD 2

All manoeuvres.

LESS_IMPORTANT 3

All road changes.

OTHER_OPPORTUNITIES 4

The nodes with more than one trailing segment.

ORTHOGONAL 5

An additional manoeuvre. This level cannot be requested. All manoeuvres which are additional manoeuvres have detail ORTHOGONAL(like brunnel manoeuvres).

ALL 6

All the rest.

EmissionLevel

Determines at which level the emissions of the route are calculated. For example which result list elements are returned.
Enumerator Name Value Description
NONE 0

No emission calculation.

BASIC 1

Only the total amount of emissions.

SEGMENTS 2

The total amount of emissions and the emissions per segment.

STATIONS 3

The total amount of emissions and the emissions per station.

ALL 4

The total amount of emissions and the emissions per segment and per station.

ErrorCode

The error codes which can occur in the PTV xRoute Server.

If an error occurs, see the logfile for further detailed error descriptions.

Enumerator Name Value Description
SUCCESS 0

Calculation successful.

USER_ABORT -1

The user aborted the request.

GENERAL_ENGINE_ERROR 2000

Deprecated. This error will not be used anymore.

GENERAL_INITIALIZATION_ERROR 2010

Deprecated. This error will not be used anymore.

PROFILE_DOES_NOT_EXIST 2020

This error will not be used anymore.

INVALID_TIMECALC_PROFILE 2030

Deprecated. This error will not be used anymore.

GENERAL_CALCULATION_ERROR 2040

Deprecated. This error will not be used anymore.

INVALID_PROPERTY_ERROR 2050

Deprecated. This error will not be used anymore.

INVALID_OPTION_ERROR 2060

An attribute contains an invalid enumeration value. Please check the request.

INVALID_LINK_TYPE 2070

At least one station has link type NEXT_MAIN_TOLL_NODE which is not supported anymore

INVALID_EXPANSION_DESCRIPTION 2080

Expansion description invalid, the horizons are not in increasing order.

INVALID_NETWORKCLASS_DIMENSION 2090

The network class filter-array exceeds dimension.

CONFLICTING_PROPERTIES_ERROR 2100

Deprecated. This error will not be used anymore.

CONFLICTING_OPTIONS_ERROR 2110

Conflicting options in request.

GENERAL_LICENSE_ERROR 2120

General license error. Licence is not valid or expired. Check license contents.

BINARY_PATH_DESC_CORRUPT 2150

The binary path description is corrupt.

EXCEPTIONPATH_POLYLINE_CANNOT_BE_USED 2155

The polyline representation of an exception path can currently only be used in combination with a relative malus of -99.

EXCEPTIONPATH_POLYLINE_TOO_LONG 2156

Maximum length of the exception path's polyline exceeded.

CONFLICT_MATRIX_EXPATH_STREET 2157

The service method calculateMatrixInfo() does not support an exception path containing a street name.

DYNAMIC_TIME_ON_STATICROUTE_NOT_SUPPORTED 2158

The service methods calculateMatrixInfo(), calculateIsochrones(), calculateReachableObject(), and searchForReachableObjects() do not support RoutingParameter DYNAMIC_TIME_ON_STATICROUTE.

INACCURATE_EXCEPTIONPATH_DESC 2160

Inaccurate path descriptions in ExceptionPath, neither representation could be considered.

EXCEPTIONPATH_INTERSECTINGLINE_CANNOT_BE_USED 2161

The intersecting line has to be a linestring containing exactly two points.

WAYPOINTDESC_WITHOUT_COORDS 2170

Error in WaypointDesc object: no coordinates set.

WAYPOINTDESC_EXPLICITLINKING_AND_COORDS 2171

Error in WaypointDesc object: explicit linking (segmentID or nodeID set) as well as coordinates set.

WAYPOINTDESC_EXPLICITLINKING_WITH_NODE_AND_SEGMENT 2172

Error in WaypointDesc object: segmentID as well as nodeID set.

WAYPOINTDESC_EXPLICITLINKING_NOT_PAIR_OF_NODES_IN_SEGMENT 2173

Error in WaypointDesc object: segmentID does not consist of a pair of UniqueGeoIDs

WAYPOINTDESC_EXPLICITLINKING_ERROR_IN_SEGMENT 2174

Error in WaypointDesc object: segment could not be found or composed by the two specified UniqueGeoIDs.

INVALID_COMBINED_TRANSPORT_CONFIGURATION 2175

A combined transport waypoint has an invalid configuration.

WAYPOINTDESC_EXPLICITLINKING_NOT_SUPPORTED 2176

Explicit linking to node or segment ID is not supported by this method.

CONFLICT_WAYPOINTCOUNT_MANOEUVRE 2180

Conflict with waypoint count.

CONFLICTED_FUZZY_WAYPOINT 2190

Start or destination waypoint has a fuzzyRadius, or ViaType and LinkType contradict.

CONFLICT_VIA_TYPE 2191

Start and destination waypoint must not specify a via type.

ROUTER_FLIGHTDISTANCE_TOO_BIG 2200

Flight distance between start and destination too big.

PARSING_EXTSEGMENTS_FAILED 2210

Parsing external segments (string) failed.

EMPTY_RESULTLISTOPTIONS 2220

Empty resultlistoptions. This options are mandatory.

CONFLICT_ENABLE_DYNAMIC_INFO 2230

ResultListOption dynamicInfo can only be used if ENABLE_DYNAMIC is true or a FeatureLayer theme is configured with enabled time-dependency.

CONFLICT_ENABLE_DYNAMIC_TIME_ON_STATICROUTE 2240

RoutingParameter DYNAMIC_TIME_ON_STATICROUTE can only be used if ENABLE_DYNAMIC is true or a FeatureLayer theme is configured with enabled time-dependency.

CONFLICT_ENABLE_DYNAMIC_WITH_FREE_FLOW_SPEED 2241

RoutingParameter ENABLE_DYNAMIC_WITH_FREE_FLOW_SPEED can only be used if ENABLE_DYNAMIC is true or a FeatureLayer theme is configured with enabled time-dependency

CONFLICT_ROUTING_PARAMETER_COUNTRIES 2250

Both RoutingParameter ROUTING_COUNTRIES and EXCLUDE_COUNTRIES set.

ROUTING_PARAMETER_OUT_OF_RANGE 2260

RoutingParameter out of range.

WRONG_ROUTING_PARAMETER 2270

Wrong RoutingParameter.

EMPTY_ROUTING_OPTION_VALUE_STRING 2280

Empty RoutingOption.value string.

VEHICLE_PARAMETER_OUT_OF_RANGE 2290

VehicleParameter out of range.

EMPTY_VEHICLE_OPTION_VALUE_STRING 2300

Empty VehicleOption.value string

INVALID_TUNNEL_RESTRICTION_CODE 2301 documentation missing.
CONFLICT_VEHICLE_OPTION 2305

Conflicting vehicle options (probably the weights are not plausible such as empty weight + load weight > total weight).

CONFLICT_TOUR_FUZZYPOINTS 2309

Calculate(Advanced)Tour does not support fuzzy waypoints which are declared as tour points.

CONFLICT_TOUR_ROADEDITOR 2310

Calculate(Advanced)Tour does not support road editor layers which are stored in a database.

CONFLICT_TOUR_TIME_DEPENDENCY 2311

Calculate(Advanced)Tour does not support time dependency in feature layer configuration.

CONFLICT_TOUR_DYNAMIC 2320

Calculate(Advanced)Tour does not support dynamic routing.

CONFLICT_TOUR_DESTTIME 2330

Calculate(Advanced)Tour does not support the destination time attribute.

CONFLICT_TOUR_WAYPOINTS 2340

Conflict tour calculation - both start and destination waypoints need to be tour points.

TOUR_INVALIDBRPARAMS 2341

The break and rest rules (or regulation parameters) are invalid. Make sure that all values are > 0 and the maximum values are > their corresponding values (such as total break period > first break period).

TOUR_INVALIDINTERVAL 2342

The intervals of a tour point (or the break or operating intervals) are invalid. Please make sure that at least one of the intervals ends after the start of the route. Furthermore, the intervals must be disjoint and ascending. The object in question is stated in the response.

ADVANCEDTOUR_INVALID_SITEID 2343

The siteID is invalid, it must be > 0.

ADVANCEDTOUR_INVALID_USECASE 2344

The useCase is invalid, this value should not be set without collaboration with PTV's support.

ADVANCEDTOUR_INVALID_PARAMS 2345

A parameter is invalid or conflicts with another parameter. Details are stated in the response.

ADVANCEDTOUR_ERROR 2346

An error occurred during the calculation of the advanced tour. Details are stated in the response.

NO_REACHABLE_SINK_OR_PATHDESC 2350

No sink and no pathdesc or both of them are given for reachable object request. Exactly one of them must be set.

NO_REACHABLE_LOCATIONS 2360

No locations set for reachable object request.

NO_REACHABLE_EXPANSION_DESCRIPTION 2370

Error in reachable object request: no expansion description set.

NO_ISO_SINK 2390

Invalid or no sink in isochrones or reachable object request.

NO_ISO_OPTIONS 2400

Error in isochrone object request: no iso options set.

NO_ISO_EXPANSION_DESCRIPTION 2410

Error in isochrone object request: no expansion description set.

NO_ISO_HORIZONS 2420

Error in isochrone object request: no horizons set.

UNKNOWN_CURRENCY 2430

Unknown currency.

CONVERTING_CURRENCY_TO_EURO_FAILED 2440

Converting currency to euro failed.

REDUCTIONIDS_NOT_SUPPORTED 2450

redcutionIDs are not supported.

TRAILER_HAS_BREAKS_DEPRECATED 2460

Setting deprecated ci parameter TRAILER_HAS_BREAKS not allowed.

CALCULATION_1TON_ROUTE_FAILED 2470

Cannot calculate 1 to n route.

CALCULATION_REACHABLE_OBJECT_FAILED 2480

Error calculating reachable objects.

CALCULATION_ISOCHRONES_FAILED 2490

Error calculating isochrones.

CALCULATION_1TO1_ROUTE_FAILED 2500

Cannot calculate route.

CALCULATION_ROUTE_LIST_FAILED 2510

Problem calculating routelist.

CALCULATION_MANOUEVRES 2511

Error in calculating manoeuvres.

CALULATE_TOLL_ERROR 2520

Error in calculating toll.

UNKNOWN_TOLL_SCENARIO 2521

Could not set scenario for country.

TOLL_SCENARIO_BYDATE_FAILED 2522

Could not set scenario by toll date.

SUPPLEMENTARY_MAP_DATA_MISSING 2525

Supplementary map data is missing. Some response data can not be provided because of the lack of additional data files (which are not included in the installed map).

WAYPOINT_NOT_LINKED_ERROR 2530

Linking to waypoint failed.

PATTERN_OVER_TIME_PROFILE_NOT_AVAILABLE 2540

Setting pattern over time profile failed.

PATTERN_OVER_TIME_ACCESS_ERROR 2550

Accessing pattern over time layer failed.

ID_MAPPING_ERROR 2560

ID mapping failed.

ID_MAPPING_DATA_NOT_PRESENT 2561

ID mapping data is not present, neither can extSegments be requested, nor can an ExceptionPath contain extSegments

WRONG_ROADEDITOR_PARAMETER 2570

Wrong roadeditor parameter.

ROADEDITOR_MISSING_WEIGHT 2571

ROADEDITOR_ADDITIONAL_PARAMETERS contains DIR_OPT_COND_MALUSn without a second parameter, but neither MAX_WEIGHT nor MAX_WEIGHT_DIR are specified.

ROADEDITOR_ACCESS_ERROR 2580

Accessing roadeditor layer failed, probably the specified layer name does not exist, or no layer name has been specified.

ROADEDITOR_ATTRIBUTESET_DEPRECATED 2590

Setting deprecated routing parameter ROADEDITOR_ATTRIBUTESET not allowed.

FEATURE_NOT_CONFIGURED 2601

The feature is used in the request but not configured in xroute.properties.

NO_ROADEDITOR_LICENSE_AVAILABLE 2600

Deprecated

NO_ROADEDITOR_LAYER_CONTROL_INITIALIZED 2610

Deprecated

NO_DYNAMIC_LICENSE_AVAILABLE 2620

Deprecated

WRONG_DISTANCE_MEASURE 2630

Wrong distance measure requested.

INCOMPLETE_WAYPOINTLIST 2640

Waypointlist should contain at least two waypoints.

EMISSIONCALCULATION_NOT_INITIALIZED 2700

Unable to execute emission calculation, emission data is not properly configured, see configuration file for details.

EMISSIONCALCULATION_NO_DATA_FOR_VEHICLE 2701

Unable to execute emission calculation, emission data is not available for this vehicle, see documentation for details.

EMISSIONCALCULATION_NOT_ALLOWED 2702

Unable to execute emission calculation with this service method, see documentation for details on the service methods which allow emission calculation.

EMISSIONCALCULATION_INVALID_VEHICLE_PROFILE 2703

The vehicle profile for emission calculation is invalid or incomplete.

SPEEDLIMITS_NOT_LICENSED 2740

Speed limits cannot be requested, no valid license available.

INVALID_ROUTINGOPTION_GEODATASOURCE_LAYER 2750

RoutingOption GEODATASOURCE_LAYER is not formatted correctly.

ERROR_EVALUATING_ROUTINGOPTION_GEODATASOURCE_LAYER 2751

Unable to evaluate RoutingOption GEODATASOURCE_LAYER due to a problem accessing the geodatasource. Further error information will be specified in the response, check the request and the geodatasource configuration and profiles.

INVALID_REACHABLEOBJECTSOPTION_GEODATASOURCE_LAYER 2752

ReachableObjectsOption 'geodatasourceLayer' is not formatted correctly.

ERROR_EVALUATING_REACHABLEOBJECTSOPTION_GEODATASOURCE_LAYER 2753

Unable to evaluate ReachableObjectsOption 'geodatasourceLayer' due to a problem accessing the geodatasource, further error information will be specified in the response, check the request and the geodatasource configuration and profiles.

INVALID_HORIZONS 2754

For calculating reachable objects, the horizons array in the ExpansionDescription element must be of length 1.

SEARCHREACHABLEOBJECTS_EXCEPTIONPATH_NOT_IMPLEMENTED 2755

This service-method does not support exceptionPath elements.

UNSUPPORTED_WAYPOINT_CONFIGURATION 2800

This service-method does not support vehicle or routing options.

INVALID_WAYPOINT_CONFIGURATION 2801

The option is not supported for waypoints.

UNSUPPORTED_LANGUAGE 2810

The language requested is not supported. Probably it is not configured correctly or missing at all.

CONFLICT_ISOCHRONES_ROADEDITOR 2830

Isochrones calculation does not support road editor.

CONFLICT_REACHABLEOBJECTS_ROADEDITOR 2840

Reachable objects calculation does not support road editor.

CONFLICT_REACHABLEOBJECTS_DYNAMIC 2850

Reachable objects calculation does not support dynamic.

EMISSIONCALCULATION_ERROR_RETRIEVING_CONVERSION_FACTORS 2860

Retrieving emission and energy conversion factors failed.

INVALID_ROUTINGOPTION_AVOID_NATIONALNAMEDTOLL_ROADS 2870

RoutingOption AVOID_NATIONALNAMEDTOLL_ROADS is not formatted correctly.

INVALID_FEATURELAYER_CONFIGURATION 2880

The FeatureLayer configuration is invalid.

MISSING_TIMEZONES_FEATURELAYER 2881

The required FeatureLayer PTV_TimeZones is missing in the map data.

FEATURE_LAYER_DATA_NOT_AVAILABLE 2882

Data for one or several requested FeatureLayer themes is not available.

INVALID_HIGH_PERFORMANCE_ROUTING_CONFIGURATION 2900

Invalid configuration of high-performance routing. High-performance routing  network is configured in xroute.properties.

CONFLICT_MAP_COMPATIBILITY_VERSION_AND_PROFILE 2910

The profile data compatibility version doesn't match the map version

INVALID_XML_PROFILE_SNIPPET 9000

Deprecated. This error will not be used anymore.

INVALID_PROFILE 9001

The profile could not be processed, probably it does not exist, it is not well-formed XML, it could not be validated against the schema, or the version is not supported.

ExpansionType

The type of expansion.
Enumerator Name Value Description
EXP_TIME 0

Time expansion (time must be given in [s]).

EXP_DIST 1

Distance expansion (distance must be given in [m]).

HBEFAVersion

This enumeration holds constants for different HBEFA versions. The data are (c) Handbook Emission Factors for Road Transport (HBEFA), versions 2.1 and 3.1.
Enumerator Name Value Description
HBEFA_2_1 0

HBEFA 2.1. This is the default.

HBEFA_3_1 1

HBEFA 3.1.

NO_HBEFA 2

HBEFA should not be used. Currently this value makes only sense if emission should be calculated with CEN 2012 without HBEFA restrictions.

HBEFA_3_2 3

HBEFA 3.2

COPERT_AUS_1_2 4

COPERT 1.2 for Australia

InfoNodeType

The type of a location info or a direction info element in a RouteManoeuvre.

Enumerator Name Value Description
NORMAL 0

No special type is used.

AE 1

End of motorway.

AS 2

A motorway junction.

AD 3

A three-way motorway interchange.

AK 4

A motorway interchange.

BORDER 5

A Border.

BUILT_UP 6

Built-Up area.

FERRY 7

A Ferry terminal.

TOLL_ROAD 8

A toll road.

SIGN 9

A sign.

IsochroneDetail

The detail level for the isochrone description.
Enumerator Name Value Description
POLYS_ONLY 0

The isochrone is described only by the surrounding polygon.

SEGMENTS_ONLY 1

The isochrone is described only by all segments corresponding to the isochrone.

POLY_AND_SEGMENTS 2

The isochrone is described by both polygons and segments.

LinkType

The linktype which specifies the linking method.

Enumerator Name Value Description
NEXT_NODE 0

The waypoint has to be linked to the geographically nearest valid node within the configured link distance. A node is valid if it can be used by the configured vehicle type.

NEXT_SEGMENT 1

The waypoint has to be linked to the geographically nearest valid segment within the configured link distance. A segment is valid if it can be used by the configured vehicle type.

NEXT_MAIN_NODE 2

The waypoint has to be linked to the geographically nearest valid main node (for example a motorway interchange) within the configured link distance. A main node is a collection of entry-nodes representing the interchange. The main node is valid if it can be used by the configured vehicle type. A main node is a collection of entry nodes representing the interchange.

FUZZY_LINKING 3

The waypoint has to be linked by fuzzy linking according to a given radius. FUZZY_LINKING is only valid for VIA-Points. Deprecated, use ViaTypeEnum::FUZZY instead.

AUTO_LINKING 4

The waypoint is linked by auto linking according to the following three steps. 1. Use link-type NEXT_SEGMENT. 2. Search for nearby main nodes as with link-type NEXT_MAIN_NODE. The radius of this search depends on the segment found in the first step and whether the waypoint is an intermediate via waypoint or not. If a main node is found link to all entry nodes of the main node, otherwise link to the segment found in the first step. 3. If a main node has been found check if one entry node of the main node belongs to a toll station. In this case link to all nodes that belong to the toll station with the minimal distance to the main node.

NEXT_MAIN_TOLL_NODE 5

This LinkType is not supported anymore, use a different one.

TOLL_STATION 6

The waypoint has to be linked to the geographically nearest valid toll station within the configured link distance. A toll station is valid if it can be used by the configured vehicle type.

TI_LINKING 7

Linking is executed in two steps: 1. Use link-type NEXT_MAIN_NODE. If some segments adjacent to an entry-nodes of the resulting main-node has the wanted name, take all these entry-nodes. 2. Otherwise, consider all segments within a given radius.

ManoeuvreGroupType

The type of a certain ManoeuvreGroup.

Enumerator Name Value Description
MG_TYPE1 0

A manoeuvre group including one or several manoeuvres close to each other being part of a complex intersection shape.

MG_TYPE2 1

Describes a manoeuvre group including one or several manoeuvres close to each other.

ManoeuvreType

Describes the type of the manoeuvre.

Enumerator Name Value Description
FURTHER 0

further

KEEP 1

keep

TURN 2

turn

UTURN 3

U-Turn

ENTER 4

Enter

EXIT 5

Exit

ENTER_RA 6

Enter roundabout

STAY_RA 7

Stay in roundabout

EXIT_RA 8

Exit roundabout

CHANGE 9

Change highway

ENTER_FERRY 10

Enter the ferry resp. piggy-back
This parameter also represents the enter manoeuvre regarding piggy-back.

EXIT_FERRY 11

Leave the ferry respectively piggy-back
This parameter also represents the exit manoeuvre regarding piggy-back.

EXIT_RA_ENTER 12

Exit roundabout and enter immediately.

EXIT_RA_ENTER_FERRY 13

Exit roundabout and enter the ferry immediately.

NetworkClass

The type of a certain road.

Enumerator Name Value Description
MOTORWAY 0

Motorways

HIGHWAY 1

Highways

TRUNK_ROAD 2

Trunk roads

COUNTRY_ROAD 3

Country roads

CITY_ROAD 4

City roads

RESIDENTIAL_ROAD 5

Residential roads

SPECIAL_ROAD 6

Drivable but normally blocked roads (for cars).

CYCLE_AND_WALKWAY 7

Cycle lanes and walkways

NormSpeedType

This enumeration specifies how to interpret the NormSpeed.
Enumerator Name Value Description
FREE_FLOW None

Dynamic routing with POT (pattern over time) including a FreeFlowSpeed-Phase: the maximum speed at this day without any obstacles.

MAX_DYNAMIC None

Dynamic routing with POT (pattern over time) not including FreeFlowSpeed-Phase: the maximum speed at this day within the POT.

STATIC None

Routing without dynamic. Therefore the speed is given according to the network/speed class.

PolygonCalculationMode

Describes the mode of the isochrone calculation.
Enumerator Name Value Description
NODE_BASED 0

A node-based isochrone calculation, where the surrounding polygon connects the endpoints of all isochrone segments.

TILE_BASED 1

A tile-based isochrone calculation where the surrounding polygon connects the centers of all reachable tiles of the isochrone.

RoadEditorOptions

The RoadEditorOptions which define if and how certain additional attributes should be taken into account during the route calculation process. See the use case documentation for more information on the specific options.
Enumerator Name Value Description
SEGMENT_LENGTH 1

See use case documentation.

FERRY_LENGTH 1

See use case documentation.

IS_URBAN_AREA 2

See use case documentation.

FERRY_DURATION 2

See use case documentation.

IS_RAMP 3

See use case documentation.

VNORMAL 4

See use case documentation.

BLOCKS_CAR 5

See use case documentation.

BLOCKS_TRUCK 6

See use case documentation.

HAS_TOLL_CAR 7

See use case documentation.

HAS_TOLL_TRUCK 8

See use case documentation.

MAX_HEIGHT 20

See use case documentation.

MAX_WEIGHT 21

See use case documentation.

MAX_WIDTH 22

See use case documentation.

MAX_LENGTH 23

See use case documentation.

MAX_AXLE_LOAD 24

See use case documentation.

MAX_HEIGHT_DIR 40

See use case documentation.

MAX_WEIGHT_DIR 41

See use case documentation.

MAX_WIDTH_DIR 42

See use case documentation.

MAX_LENGTH_DIR 43

See use case documentation.

MAX_AXLE_LOAD_DIR 44

See use case documentation.

HAZARDOUS_TO_WATERS 45

See use case documentation.

HAZARDOUS_GOODS 46

See use case documentation.

COMBUSTIBLES 47

See use case documentation.

HEAVYLOAD 48

See use case documentation.

VIGNETTE 49

See use case documentation.

SCENIC_ROUTE_TYPE1 50

See use case documentation.

SCENIC_ROUTE_TYPE2 51

See use case documentation.

SCENIC_ROUTE_TYPE3 52

See use case documentation.

SCENIC_ROUTE_TYPE4 53

See use case documentation.

SCENIC_ROUTE_TYPE5 54

See use case documentation.

TRAILER 60

See use case documentation.

RESIDENTIAL_TRUCKS 61

see use case documentation

DELIVERY_TRUCKS 62

see use case documentation

PUBLIC_TRUCKS 63

see use case documentation

PREFERRED_TRUCKS 64

see use case documentation

PREFERRED_HAZARDOUS_TRUCKS 65

see use case documentation

DIR_OPT_COND_MALUS1 70

see use case documentation

DIR_OPT_COND_MALUS2 71

see use case documentation

DIR_OPT_COND_MALUS3 72

see use case documentation

DIR_OPT_COND_MALUS4 73

see use case documentation

DIR_OPT_COND_MALUS5 74

see use case documentation

DIR_OPT_COND_MALUS6 75

see use case documentation

DIR_OPT_COND_MALUS7 76

see use case documentation

DIR_OPT_COND_MALUS8 77

see use case documentation

DIR_OPT_COND_MALUS9 78

see use case documentation

DIR_OPT_COND_MALUS10 79

see use case documentation

OPT_BLOCKS1 90

see use case documentation

OPT_BLOCKS2 91

see use case documentation

OPT_BLOCKS3 92

see use case documentation

OPT_BLOCKS4 93

see use case documentation

OPT_BLOCKS5 94

see use case documentation

OPT_BLOCKS6 95

see use case documentation

OPT_BLOCKS7 96

see use case documentation

OPT_BLOCKS8 97

see use case documentation

OPT_BLOCKS9 98

see use case documentation

OPT_BLOCKS10 99

see use case documentation

OPT_MALUS1 100

see use case documentation

OPT_MALUS2 101

see use case documentation

OPT_MALUS3 102

see use case documentation

OPT_MALUS4 103

see use case documentation

OPT_MALUS5 104

see use case documentation

OPT_MALUS6 105

see use case documentation

OPT_MALUS7 106

see use case documentation

OPT_MALUS8 107

see use case documentation

OPT_MALUS9 108

see use case documentation

OPT_MALUS10 109

see use case documentation

OPT_MALUS11 110

see use case documentation

OPT_MALUS12 111

see use case documentation

OPT_MALUS13 112

see use case documentation

OPT_MALUS14 113

see use case documentation

OPT_MALUS15 114

see use case documentation

OPT_MALUS16 115

see use case documentation

OPT_MALUS17 116

see use case documentation

OPT_MALUS18 117

see use case documentation

OPT_MALUS19 118

see use case documentation

OPT_MALUS20 119

see use case documentation

EXT_INFO 254

for compatibility reasons only

MAX_WEIGTH 21

Deprecated. Use MAX_WEIGHT instead.

HEAVY_LOAD 48

Deprecated. Use HEAVYLOAD instead.

RoutingDirectionType

The routing direction.
Enumerator Name Value Description
FORWARD None

Routes from start to destination.

BACKWARD None

Routes from destination to start.

RoutingParameter

Describes all possible RoutingParameters. All parameters must not occur more than once, otherwise it is not defined which occurrence will be considered. Only those parameters marked with (*) may be used within a waypoint. All these parameters shall preferably also be set through the XML profile.

Enumerator Name Value Description
OPTIMIZATION None

The optimization, for example a weighting between shortest and fastest route. For recommended values see below. (*)

Legal values are integers in the range 0..100

  • 30 - shortest
  • 90 - fastest
SPEED_PROFILE None

The speed profile (*)

The speed profile has to be described as a string of 16 comma separated speed values in [km/h] representing the 2 speeds per network class.

For more information on speed values, please refer to the speeds documentation.

AVOID_NATIONALNAMEDTOLL_ROADS None

The value is a comma separated list of CountryCode/malus value pairs. It specifies the malus or bonus value for using NATIONALNAMEDTOLL roads for individual countries.

For example, to set a malus of 2500 for ecotaxe roads in France (country code 33) the value would be:

33=2500

The malus or bonus value is given in percent which has to be added to the base cost value of toll roads.

Legal values are -99 to 2501 and BAN.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_TOLLROADS None

The malus or bonus value in percent which has to be added to the base cost value of toll roads. (*)

Legal values are -99 to 2501 and BAN.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_VIGNETTEROADS None

The malus or bonus value in percent which has to be added to the base cost value of vignette roads. (*)

Legal values are -99 to 2501 and BAN.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_HIGHWAYS None

The malus or bonus value in percent which has to be added to the base cost value of highways. (*)

Legal values are -99 to 2501 and BAN.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_FERRIES None

The malus or bonus value in percent which has to be added to the base cost value of ferries and piggyback transports. (*)

Legal values are -99 to 2501 and BAN. The default is 100.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_RESIDENTS_ONLY None

The malus or bonus value in percent which has to be added to the base cost value of residents-only streets. (*)

Legal values are -99 to 2501 and BAN. The default is 2500.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_URBAN_AREAS None

The malus or bonus value in percent which has to be added to the base cost value of road segments in urban areas. (*)

Legal values are -99 to 2501 and BAN.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_RAMPS None

The malus or bonus value in percent which has to be added to the base cost value of ramps. (*)

Legal values are -99 to 2501 and BAN. The default is 10.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
AVOID_LOW_EMISSION_ZONES None

The malus or bonus value in percent which has to be added to the base cost value of low-emission zones forbidden for the current vehicle. (*)

Legal values are -99 to 2501 and BAN. The default is 2500.

  • <0: Bonus (the minimum value -99 will reduce the cost value to a minimum, for example the road segments are preferred)
  • =0: No change (Default)
  • >0: Malus (the maximum value 2501 or BAN are interpreted as road segments blocked)
ALLOW_SEGMENT_VIOLATIONS None

This parameter controls if routing through blocking segments is possible. If the value is "true", for every violated blocked segment violation a cost is added to the base cost value. The cost value is defined by the  RoutingParameter COST_OF_SEGMENT_VIOLATIONS.

Legal values are "true" and "false". Default value is "false". RouteInfo will return a new attribute hasViolations if this parameter is true.

COST_OF_SEGMENT_VIOLATIONS None

The cost for a segment blocking violation. This value is for all types of violations. Only relevant if the RoutingParameter  ALLOW_SEGMENT_VIOLATIONS is set to "true".

Legal values are between 0 and 1000000. The default value is 50000.

EXCLUDE_COUNTRIES None

A list of countries to ban in route calculation (*)

The list has to be described as a string of comma separated values. Legal values are either PTV numbers (IU) or ISO2 or ISO3 codes: integration unit codes. Please note that ISO codes do not work for Russia, Australia, the United States and Canada.

Only one of the parameters ExludeCountries or RoutingCountries is allowed. See also ROUTING_COUNTRIES.

ROUTING_COUNTRIES None

A list of countries to use exclusively in route calculation (*)

The list has to be described as a string of comma separated values. Legal values are either PTV numbers (IU) or ISO2 or ISO3 codes: integration unit codes. Please note that ISO codes do not work for Russia, Australia, the United States and Canada.

Only one of the parameters ExludeCountries or RoutingCountries is allowed. See also EXCLUDE_COUNTRIES.

ROUTING_RECTANGLE None

A rectangle to use exclusively in route calculation. Specified by a string of comma separated values for the left, top, right and bottom coordinates.

The coordinates for the routing_rectangle must be geodecimal, not matter in which coordinate format all other coordinates are.

For matrix calculation, the routing rectangle can be calculated automatically as the minimum bounding rectangle of all input and output coordinates. This is useful when the matrix calculation cannot find a valid route for a relation and starts to extend the search space to the whole map. This will take a lot of time. To enable this feature, enter AUTO,extension whereas extension is an integer value which defines the extension of the minimum bounding rectangle in [km].

AUTO will be ignored for other service methods than calculateMatrixInfo.

ROUTE_LANGUAGE None

The language used for the directions in the route description calculation.

legal values are: (ISO 639-1 Codes)

  • BG - bulgarian
  • BS - bosnian
  • CS - czech
  • DA - danish
  • DE - german
  • EL - greek
  • EN - english
  • ES - spanish
  • FR - french
  • HR - croatian
  • IT - italian
  • NL - dutch
  • PL - polish
  • PT - portuguese
  • RO - romanian
  • RU - russian
  • SK - slovak
  • SR - serbian
  • SL - slovenian
  • SV - swedish
  • UK - ukrainian

Additional languages can manually be added to the file conf/RLTrans_ISO639-1.xml.

For further information see the xRoute UseCase Change the language of the routing result

START_TIME None

The starting time or the arrival time of the route(if IS_DESTTIME is set to true), in case of dynamic routing and for other time dependent calculations (such as toll). The time must be specified as a string using the xsd:datetime syntax as for example 2018-01-01T09:00:00-01:00. Legal value is between 1970-01-01T00:00:00+00:00 and 2038-01-19T03:14:07+00:00.

If this parameter is not set, it is assumed as 'now'. This parameter can be set without a time zone. Which time zone is applied in this case is specified by the parameter IS_LOCAL_TIME_AT_LOCATION.

IS_DESTTIME None

Specifies how the START_TIME value has to be interpreted.

  • true - START_TIME has to be interpreted as destination time
  • false - START_TIME has to be interpreted as start time
DYNAMIC_PROFILE None

Specifies the dynamic profile used for legacy dynamic routing.

This parameter is only interpreted if ENABLE_DYNAMIC is true.

Legal values are strings representing a valid dynamic profile.

ENABLE_DYNAMIC None

If true, legacy dynamic routing is active.

DYNAMIC_PROFILE must be set.

Legal values are true and false.

ENABLE_ROADEDITOR None

If true, a routing with roadeditor is active.

ROADEDITOR_LAYERNAME must be set.

Legal values are true and false.

This parameter is deprecated, please use XML profiles for the corresponding configuration (see Routing - Course - AdditionalDataRules). Especially in case of considering feature layer and no road editor data, this parameter must not be used.

START_TIME_ROADEDITOR None

The starting time of the route in case of roadeditor routing. The time has to be described as a string using the xsd:datetime syntax as for example 2018-01-01T09:00:00-01:00. It must be between 1970-01-01T00:00:00+00:00 and 2038-01-19T03:14:07+00:00.

If this parameter is not set, it is assumed as the current time.

This parameter is only interpreted if ENABLE_ROADEDITOR is true and ROADEDITOR_LAYERNAME represents a database layer.

ROADEDITOR_LAYERNAME None

This parameter has to be used for roadeditor routing.
Legal values are strings representing:

  • A valid roadeditor layer name without extension.
  • The name of the sub-folder in which an adequate roadeditor layer should be present
  • An attribute set, indicated by the extension ".db" such as "attribute1.db". Given attribute must correspond with database entry. In this case the roadeditor has to be in database mode, being set by roadeditor parameter "reDBConnection" in xroute.properties
  • not exceeding 63 characters

This parameter is only interpreted if ENABLE_ROADEDITOR is true.

ROADEDITOR_ATTRIBUTESET None

Deprecated. Use ROADEDITOR_LAYERNAME instead.

ROADEDITOR_ADDITIONAL_OPTIONS None

Describes additional RoadEditor options. This is a free text option field to set several additional RoadEditor options. Additional options are comma separated <key>=<value> pairs. Legal values are described in the enumeration: RoadEditorOptions. (*)

These options don't have any effect on CountryInfoVehicleOptions

This parameter is only interpreted if ENABLE_ROADEDITOR is true.

DEPRECATED: Please use XML profiles for RoadEditor configuration.See the UseCase documentation for further details.

DISTANCE_MEASURE None

Describes the distance measure. Legal values are KM and MILES. Default: KM. The factor used is 1.609344 (see http://en.wikipedia.org/wiki/Miles).

This parameter is deprecated, do not use it anymore. Request parameters always have to be given in [m], and only the following response values will be converted to yards. All other response values will be given in [m]. This problem will be addressed with the next incompatible API redesign.

COUNTRY_ENCODING None

Defines if and how the optional countryCode string-attribute in the RouteListSegment and WayPoint Objects has to be filled.

If this option is not set the countryCode string-attribute will not be set.

Possible values are:

  • ISO2
  • ISO3
GENERATE_EXTWAYPOINTS None

If true, ExtWaypoint-Informations are generated and the Waypoint-Array in the Route-Object consists of the specialized ExtWaypoints.

Legal values are true and false.

EXPERT_OPTIONS None

Represents expert options. This option is for alternative routing. To calculate the nth alternative route within one request. For n <= 5.

Usage: ALT|1000|1

The component parts are:

  • ALT - Alternative routing
  • 1000 - Malus
  • 1 - the result of the request is the first alternative route
REQUEST_VERSION None

Gives the RequestVersion.

Default Version is 1.4

According to the RequestVersion some optional fields may be set or omitted.

LOW_EMISSION_ZONE_TYPE None

The low emission zone type of the vehicle. It can be set by one of these identifiers:

  • 0 (NO low emission zone)
  • 1 (GREEN low emission zone)
  • 2 (YELLOW low emission zone)
  • 3 (RED low emission zone)
DYNAMIC_TIME_ON_STATICROUTE None

Enables dynamic travel time calculation on the static route. If true, the dynamic travel time will be calculated on the static route. For more information see UseCase Dynamic Routing.

Set the START_TIME respectively IS_DESTTIME RoutingParameter if required.

This parameter is only interpreted if ENABLE_DYNAMIC is true.

DYNAMIC_TRAVEL_TIME_STEP_SIZE None

Used for travel trend of commuters. A commuter likes to know the best departure time for the shortest travel time. The travel time is calculated repeatedly every x minutes. This parameter defines the number of minutes. The corresponding parameter DYNAMIC_TRAVEL_TIME_STEP_COUNT is used for the number of intervals.

This parameter is only interpreted if ENABLE_DYNAMIC and DYNAMIC_TIME_ON_STATICROUTE are true and DYNAMIC_TRAVEL_TIME_STEP_COUNT > 1.

The START_TIME + DYNAMIC_TRAVEL_TIME_STEP_SIZE * (DYNAMIC_TRAVEL_TIME_STEP_COUNT - 1) has to be in the same day as START_TIME.

DYNAMIC_TRAVEL_TIME_STEP_COUNT None

Used for travel trend of commuters. A commuter likes to know the best departure time for the shortest travel time. The travel time is calculated repeatedly every x minutes. This parameter defines the number of intervals for the calculation. The first departure time for the calculation is the START_TIME. The corresponding parameter is DYNAMIC_TRAVEL_TIME_STEP_SIZE.

This parameter is only interpreted if ENABLE_DYNAMIC and DYNAMIC_TIME_ON_STATICROUTE are true.

This parameter must not be greater than 100. If it is greater than 1, all result values of the route calculation such as segment times refer to the first step, except for the CommuterTravelTrend element which carries the dynamic travel times.

SPEED_INFOS None

Defines if additional speed infos (normSpeed and vCalc) should be added to each RouteListSegment. The default is false.

For more information on speed values, please refer to the speeds documentation.

ENABLE_DYNAMIC_WITH_FREE_FLOW_SPEED None

Enables dynamic routing with the following extension: If a segment has dynamic information including a free flow speed, this speed will be used for calculation, otherwise the maximum dynamic speed of the segment of the day in question will be used. This feature is useful when calculating the possible travel time for a route where the free flow speed is greater than the segment speed in the map data.

For more information on speed values, please refer to the speeds documentation and UseCase Dynamic Routing.

GEODATASOURCE_LAYER None

Adds a geodatasource layer which will be considered when executing the service method in question. The format is <geodatasource configuration>.<layer name>[.<geodata profile>][;<SQL filter>]. When using attribute names, put them into brackets, such as [id] = 42. Examples: 'default.traffic' - 'default.traffic.avoid-all' - 'default.traffic.avoid-all;[id] in (0815,4711)'.

The SQL filter will be attached at the end of the WHERE clause. Valid expressions are comparisons (<, >, =, like, ...). Concatenations of expressions are possible with the SQL operators AND and OR.

REMAINING_DRIVING_TIMES None

The comma separated list of the remaining times in [s]: remainingShiftPeriod, remainingWorkingHoursDuringShift, remainingDrivingTimeBeforeNextBreak, remainingBreakPeriod[, deltatToPreviousTourEnd]. See TourSummary. The last parameter deltatToPreviousTourEnd is optional and denotes the time in seconds between the end of the previous tour and the start of the current tour. If the current tour does not start directly after the previous tour, the time between might be used for breaks.

If the driver is at the beginning of his shift, START_OF_SHIFT is to be used.

This parameter is only interpreted when using calculateTour.

IS_LOCAL_TIME_AT_LOCATION None

This parameter specifies which time zone is used, if routing parameter START_TIME is set without a time zone:

  • true - the time zone of the reference location is used (start or destination location depending on parameter IS_DESTTIME)
  • false - the time zone of the local time of the PTV xRoute Server is used
ENFORCE_HIGH_PERFORMANCE_ROUTING None

Enforces the usage of a high-performance routing network. If there is no matching network available, an exception will be thrown.

TimeEventType

The type of a time event.
Enumerator Name Value Description
DRIVING None

Driving time

WAITING None

Waiting time

SERVICE None

Service period

IDLE None

The idle time which is not a break or a rest.

EXTENDED_IDLE None

The idle time between intervals has been extended.

BREAK_ON_ROAD None

Making a break on the road.

BREAK_AT_STOP None

Making a break at a tour point.

BREAK_AT_STOP_WHILE_SERVICE None

Making a break at a tour point during the service period.

BREAK_AT_STOP_SERVICE_ON_IDLE None

Currently unused.

BREAK_ON_IDLE None

Making a break during idle time.

SERVICE_ON_IDLE None

Service during an idle period which cannot be a break as it is shorter than the minimum break period.

REST_ON_ROAD None

Resting on the road.

REST_AT_STOP None

Resting at a stop.

REST_AT_STOP_WHILE_SERVICE None

Resting at a stop during the service period.

INTERMEDIATE None

Currently unused.

BREAK_AT_INTERMEDIATE None

Making a break before starting the tour (for example between two tours).

TOUR_START None

The tour start.

TOUR_END None

The tour end.

DISTURBANCE None

Currently unused.

REST_AT_INTERMEDIATE None

Resting before starting the tour (for example between two tours). Only if remaining driving times are given.

TollManoeuvreType

Describes different kinds of toll manoeuvres.
Enumerator Name Value Description
ENTER None

Entering a toll road.

EXIT None

Leaving a toll road.

FURTHER None

Continuing on a toll road.

CHANGE None

Changing from one toll road to another toll road.

TollType

The type of the toll costs. There are three major types: special charge, national toll, and city toll. The types special charge and national toll have several sub-types. This means the major types contain the summary of their sub-types which in turn give more detailed information.

It is data-dependent of which type a toll event is. For example the congestion charge in London might be modeled as city toll or special charge.

Enumerator Name Value Description
SPECIALCHARGE 0

Major type for special charge toll (also known as "extra toll").This parameter represents the common aggregation of all kind of special charge toll types.

NATIONALTOLL 1

Major type for the country-wide national toll system. This parameter represents the common aggregation of all kind of national toll types.

CITYTOLL 2

Major toll type for city (area) toll.

SPECIALCHARGEBRIDGE 3

Sub-type of special charge: special charge for a bridge.

SPECIALCHARGETUNNEL 4

Sub-type of special charge: special charge for a tunnel.

SPECIALCHARGEFERRY 5

Sub-type of special charge: special charge for a national ferry.

SPECIALCHARGEINTERNATIONALFERRY 6

Sub-type of special charge: special charge for an international ferry.

SPECIALCHARGEMOUNTAINPASS 7

Sub-type of special charge: special charge for a mountain pass.

NATIONALNAMEDTOLL 8

Sub-type of national toll: named toll is calculated distance-based by segments with the corresponding named toll flag. For example, in France this toll type represent the toll system called "écotaxe".

NATIONALSECTIONBASED 9

Sub-type of national toll: section based toll like in Germany, France, Portugal, etc.

NATIONALDISTANCEBASED 10

Sub-type of national toll: distance based toll like in Switzerland.

NONE 32000

Not used.

TourEventDescription

Enumeration of possible description flags of a TourEvent. Description flags are independent of each other to a large extent. This enumeration may be extended without further notice. Client applications must ignore unknown values.

Some examples:

As explained above, some flags may seem superfluous in the presence of others. We leave it up to the calling client to remove flags and further join events.
Enumerator Name Value Description
DRIVING 1 The driver is driving a vehicle.
SERVICE 2 Some service is provided. The driver is either actively working or waiting for the service to be finished.
WAITING 3 The driver is waiting. He might be recreating himself at the same time.
NOT_OPERATING 4 The event takes place outside of any operating interval. The driver might be recreating himself at the same time.
BREAK 5 The driver is taking a break. Break is a kind of recreation.
DAILY_REST 6 The driver is taking a daily rest. Daily rest is a kind of recreation.
WEEKLY_REST 7 The driver is taking a weekly rest. Weekly rest is a kind of recreation.
IS_IN_SERVICE_INTERVAL 8 Set whether the tour event takes place within a service interval.
WORKING 9 The driver is working.
WORKING_BREAK 10 The driver is taking a working break.
WORKING_REST 11 The driver is taking a daily working rest.
INTERVAL_BREAK 12 The driver is taking a break stipulated by the given break intervals.

TourEventViolation

Enumerates all violations which can occur within a TourEvent. This enumeration may be extended without further notice. Client applications must ignore unknown values.
Enumerator Name Value Description
OPERATING_INTERVAL_VIOLATION 1 Driving of active service is performed outside of all operating intervals.
SERVICE_INTERVAL_VIOLATION 2 Service is performed although the given service intervals do not allow this.
MAXIMUM_TOUR_PERIOD_VIOLATION 3 The tour period exceeds the allowed tour period.
TRANSPORT_PERIOD_VIOLATION 4 Maximum distance of services between two tour points was exceeded.
REGULATION_VIOLATION 5

In ETA use case (internal use), it indicates that the driving event would have been a violation to the regulation if the driving period had not been cropped to prevent this.

TurnOrient

Describes the orientation of the turn manoeuvre.

Enumerator Name Value Description
STRAIGHT 0

Straight

LEFT 1

Left

RIGHT 2

Right

TurnWeight

Describes the weight of the turn manoeuvre.

Enumerator Name Value Description
NORMAL 0

Represents no special turn weight.

HALF 1

Half

STRONG 2

Strong

VehicleParameter

Vehicle parameters for toll and emission calculation.

Enumerator Name Value Description
TYPE 0

The vehicle type (toll and emissions).
Legal values are:

  • CAR - car
  • VAN - truck less than 7.5 t total weight
  • TRU - truck more than 7.5 t total weight
  • TRL - truck with trailer
  • COM - combustible TRU
  • HAZ - water hazardous TRU
  • MOT - motorbike
  • BIK - bicycle (no emission calculation supported)
  • CAM - camper/minivan
  • BUS - bus (no emission calculation supported)
  • PED - pedestrian (no emission calculation supported)



TOTAL_WEIGHT 1 The total permitted weight of the vehicle in [kg] - including the trailer's weight - (toll and emissions).
Legal values are > 0
Default is 15 tons (suitable for trucks).
Set about 1.5 tons as a guide value for cars.
TRAILER_WEIGHT 2

The total permitted weight of the trailer in [kg] (toll and emissions).
Legal values are >= 0
Default: 0 (no trailer)

AXLE_WEIGHT 3

The total axle weight of the vehicle in [kg] (toll only).
Legal values are >= 0
Default: 0 (not specified)

NUMBER_OF_AXLES 4

The total number of axles of the vehicle -including trailer- (toll only).
Legal values are > 0
Default is 3 axles (suitable for trucks)
Set 2 axles concerning cars.

EMISSION_CLASS 5

The emission class of this vehicle (toll and emissions).
Legal values are EURO_0 - EURO_7 and EURO_EEV as long as the data supports the emission class.
Default is "Euro 0" class (suitable for trucks)
Set "Euro 3" class as a guide value for cars.
For emission calculation with HBEFA 3.1 EURO_EEV will be mapped to EURO_5.
For emission calculation with COPERT Australia for EURO 5-7

HEIGHT 6

The total height of the vehicle [cm] (toll only).
Legal values are > 0
Default is 2.5 m (suitable for trucks)
Set about 1.5 m as a guide value for cars.

LENGTH 7

The total length of the vehicle [cm] (toll only).
Legal values are > 0
Default is 12.0 m (suitable for trucks)
Set about 4.5 m as a guide value for cars.

WIDTH 8

The total width of the vehicle [cm] (toll only).
Legal values are > 0
Default is 2.2 m (suitable for trucks)
Set about 1.8 m as a guide value for cars.

CYLINDER_CAPACITY 9

The cylinder capacity of this vehicle [ccm] (toll and emissions)
Legal values are >= 0
Default capacity is 3000 ccm (suitable for trucks).

NUMBER_OF_PASSENGERS 10

The number of passengers for this vehicle (toll only).
Legal values are > 0
By default only 1 driver

TRAILER_HAS_BREAKS 11

Deprecated parameter. (toll only).
This parameter now will not be evaluated.
Defines whether the trailer has brakes or not.

For later use: in Version 2, this parameter will be reactivated as TRAILER_HAS_BRAKES, when being evaluated eventually.

FUEL_TYPE 12

The fuel type (emissions only). Legal values for HBEFA 2.1 are:

  • DIESEL
  • EUROSUPER

From HBEFA version 3.1 and for other factor-based models such as CEN additionally:

  • COMPRESSED_NATURAL_GAS
  • LIQUEFIED_PETROLEUM_GAS
  • E85 (ethanol), HBEFA only

For  COPERT Australia Legal values are:

  • DIESEL
  • LIQUEFIED_PETROLEUM_GAS

E85 is available for HBEFA only, for factor-based models use FUEL_TYPE EUROSUPER with BIO_FUEL_RATIO 85, instead.

EMPTY_WEIGHT 13

The empty weight of the vehicle and trailer including driver and half-full fuel tank in [kg] (emissions only, from HBEFA version 3.1).

EMISSION_TECHNOLOGY 14

The technology type of emission reduction for trucks. (emissions only, from HBEFA version 3.1).

Legal Values are:

  • NONE - no emission reduction technology (default)
  • EGR - exhaust gas recirculation
  • SCR - selective catalytic reduction
LOAD_WEIGHT 15

The weight of the vehicle's load (including trailer) in [kg] (emissions only, from HBEFA version 3.1).

AVERAGE_FUEL_CONSUMPTION 16

The average fuel consumption of the current vehicle in [l/100km] for liquid fuel types or [kg/100km] for gaseous fuel types like COMPRESSED_NATURAL_GAS (emissions only).

BIO_FUEL_RATIO 17

The ratio of bio fuel compared to conventional fuel in [%] (factor-based emissions such as CEN only, will be ignored for HBEFA). Default is 0. Do not use this parameter with FUEL_TYPE E85 or other fuel types which do not support blends with biofuel such as COMPRESSED_NATURAL_GAS or LIQUEFIED_PETROLEUM_GAS.

PARTICLE_FILTER_TYPE 18

Whether a particle filter is present or not (toll only). Possible values are:

  • NONE - No particle filter is present.
  • INSTALLED - There is a particle filter.
HEIGHT_ABOVE_FRONT_AXLE 19

The vehicle height above its front axle [cm] (toll only).

Legal values are > 0. Set < 130 as guide value for cars.

PARTICLE_REDUCTION_CLASS 20

This parameter remains inactive until suitable toll data is provided (toll only).

YEAR_OF_MANUFACTURE 21

Specifies the vehicle's year of manufacture (emissions only, Australia NGA).

TUNNEL_RESTRICTION 0

Vehicle parameter for tunnel restriction.

ViaTypeEnum

This enumeration holds constants for the via points.
Enumerator Name Value Description
VIA None

For a route A-B-C the match coordinate of B is included in the route but the route A-B-C is treated as one single route. This means that a U-turn at B is unlikely to happen, and the route distance and time do not contain the distance and time from B to its match point. This is the default value.

VIA_STOP None

For a route A-B-C both routes, A-B and B-C are calculated separately and joined to the route A-B-C. This means that a U-turn at B is likely to happen if it is the optimal route, and the route distance and time contains twice the distance and time from B to its match point.

FUZZY None

The match coordinate is not included in the route, but the route passes by at a distance of WaypointDesc::fuzzyRadius at most. See LinkType::FUZZY_LINKING.

COMBINED_TRANSPORT None

This via type represents a ferry or a piggyback transportation. The attribute combinedTransportID on WaypointDesc must be set with this enumeration value.

WayPointType

The type of the waypoint.

Enumerator Name Value Description
START 0

The starting waypoint.

VIA 1

The via waypoint (does not distinguish between via, via stop, and fuzzy via).

DEST 2

The destination waypoint.

Exceptions

XRouteException

Exception thrown on module specific problems such as wrong parameters or engine errors.

Component common

Diagrams

basetypes

opengis-geometry

Exceptions

Asynchronous Requests

Classes

BoundingBox

A bounding box, definded by its left top corner point and right bottom corner point.
Attribute Name Type Description
leftTop Point

The left top corner point.

rightBottom Point

The right bottom corner point.

BulkProgress

Extends JobProgress

Default implementation for bulk jobs.
Attribute Name Type Description
remaining int

Specifies how many requests have still to be calculated.

successful int

The number of successful calculations so far.

failed int

The number of failed computations so far.

ClusterProgress

Extends JobProgress

Implementation of JobProgress for cluster planning.
Attribute Name Type Description
action String

The current action being executed. For more information on progress see About Asynchronous Protocol.

distanceMatrixProgress DistanceMatrixProgress

The progress of the distance matrix calculation, available only if action equals "DistanceMatrix.Calculation".

optimizationProgress OptimizationProgress

The progress of the optimization, available only if action starts with "Optimization.".

DistanceMatrixCalculationProgress

Progress information of the currently active distance matrix calculation
Attribute Name Type Description
dimaId int

The unique key to identify the distance matrix currently being calculated.

currentDimaIndex int

The 1-based index of the distance matrix currently being calculated. Depending on the number of different vehicles in the request the number of distance matrices to be calculated can be greater than

lastDimaIndex int

The index of the last distance matrix to be calculated, that is the total number of distance matrices.

currentDistanceMatrixProgress DistanceMatrixProgress

The progress of the distance matrix currently being processed, available only if action equals "DistanceMatrix.Calculation".

DistanceMatrixProgress

Extends JobProgress

Default implementation for distance matrix calculation jobs.
Attribute Name Type Description
currentRowIndex int

The 1-based index of the current row of the current distance matrix being calculated.

lastRowIndex int

The index of the last row of the current distance matrix to be calculated.

EncodedGeometry

Extends EncodedGeometryBase

The abstract base class for geometry objects used in a geographical PTV xServer. Contains the attributes to represent openGIS conform encodings with a specific coordinate format. The actual representation is defined by the CallerContext ResponseGeometry property (GeometryEncoding) and the CallerContext CoordFormat property (CoordFormat).

Attribute Name Type Description
wkb byte[]

If not null, this attribute contains the well-known binary encoded form of the geometry

wkt String

If not null, this attribute contains the well-known text encoded form of the geometry

kml KML

If not null, this attribute contains the well-known text encoded form of the geometry

EncodedGeometryBase

The abstract base class for geometry objects.
No attributes defined.

GeometryCollection

Extends EncodedGeometry

A geometry collection as specified by the openGIS standard.
Attribute Name Type Description
geometryCollection PlainGeometryCollection

If not null, this attribute contains the explicit form of the geometry

ImprovementProgress

Progress information of the currently active improvement step of the optimization.
Attribute Name Type Description
availableMachineTime int

The available machine time stated in the request in [s]. This value is 0 if available machine time is not set in the request.

usedMachineTime int

The machine time already used in [s].

iterationIndex int

The index of this iteration. Index 0 denotes the initial plan directly after construction or the input plan.

numberOfImprovements int

The number of improvements the algorithm has already achieved. In other words, this is the number of tour plans with a smaller value of costOfObjectiveFunction than the best one at that time.

currentPlan KeyFigures

The key figures characterizing the current tour plan.

bestPlan KeyFigures

The key figures characterizing the currently best tour plan.

initialPlan KeyFigures

The key figures characterizing the initial tour plan. The initial tour plan is the input plan, if available, or the first tour plan after the construction step.

Job

Reference to jobs running in the background.
Attribute Name Type Description
id String

This id references the background job on the server.

status JobStatus

The current status of the job.

progress JobProgress

The current progress of the job. Can be null at the very beginning or very end of the request execution.

elapsedTime int

Elapsed time since this job has been queued.

JobProgress

Abstract base class for progresses. An individual PTV xServer might define its own implementations.
No attributes defined.

KML

Represents a KML geometry.
Attribute Name Type Description
kml String

The KML string itself.

placemarks String[]

The placemarks of the KML. If empty, all placemarks will be used. This will result in a GeometryCollection, if more than one exists.

KeyFigures

These key figures characterize a tour plan.
Attribute Name Type Description
costOfObjectiveFunction int

The optimization aims at minimizing the objective function. This value contains its arithmetical cost.

The significance of this value is not the value itself, but rather if and how fast it decreases during the calculation. The faster the value decreases the better the tour plans become according to the GoalImportance which defines what "better" means, at all.

numberOfScheduledOrders int

The number of orders already being scheduled.

numberOfUnscheduledOrders int

The number of orders not being scheduled, yet. These orders are feasible and can be scheduled during further improvement iterations.

numberOfInfeasibleOrders int

The number of orders not being scheduled. These orders are infeasible and will not be scheduled during further improvement iterations.

numberOfScheduledVehicles int

The number of vehicles being scheduled.

totalTourCount int

The number of all planned tours.

totalTourPeriod int

The sum of the tour periods for all planned tours ([sec]).

totalTourDrivingPeriod int

The sum of the tour driving periods for all planned tours ([sec]).

totalTourWaitingPeriod int

The sum of the tour waiting periods for all planned tours ([sec]).

totalTourDistance int

The sum of the tour distances for all planned tours ([m]).

totalTourCost int

The sum of the tour costs for all planned tours ([MU]). The costs per chain will not be included, see attribute totalChainCosts.

totalChainCost int

The sum of the costs per chain of all planned chains ([MU]). See VehicleCosts.

totalChainPeriod int

The sum of the chain periods of all planned chains ([sec]). The chain period is defined as the period between the start of the first tour and the end of the last tour. This period is greater than the sum of the periods of all tours if two subsequent tours do not start right after the other.

LineString

Extends EncodedGeometry

A line string as specified by the openGIS standard.

See EncodedGeometry for possible representations.

Attribute Name Type Description
lineString PlainLineString

If not null, this attribute contains the explicit form of the geometry.

ATTENTION: Filled with requested EncodedGeometry representation (not necessarily a plain geometry).

LinearRing

Extends EncodedGeometry

A linear ring as specified by the openGIS standard.

See EncodedGeometry for possible representations.

Attribute Name Type Description
linearRing PlainLinearRing

If not null, this attribute contains the explicit form of the geometry.

ATTENTION: Filled with requested EncodedGeometry representation (not necessarily a plain geometry).

MultiLineString

Extends EncodedGeometry

A multi line string as specified by the openGIS standard.

See EncodedGeometry for possible representations.

Attribute Name Type Description
multiLineString PlainMultiLineString

If not null, this attribute contains the explicit form of the geometry.

ATTENTION: Filled with requested EncodedGeometry representation (not necessarily a plain geometry).

MultiPoint

Extends EncodedGeometry

A multi point as specified by the openGIS standard.

See EncodedGeometry for possible representations.

Attribute Name Type Description
multiPoint PlainMultiPoint

If not null, this attribute contains the explicit form of the geometry.

ATTENTION: Filled with requested EncodedGeometry representation (not necessarily a plain geometry).

MultiPolygon

Extends EncodedGeometry

A multi polygon as specified by the openGIS standard.

See EncodedGeometry for possible representations.

Attribute Name Type Description
multiPolygon PlainMultiPolygon

If not null, this attribute contains the explicit form of the geometry.

ATTENTION: Filled with requested EncodedGeometry representation (not necessarily a plain geometry).

OptimizationProgress

The progress information of the currently active step of the optimization.
Attribute Name Type Description
currentLoopIndex int

The index of the current loop being calculated.

lastLoopIndex int

The index of the last loop being calculated. The calculation will automatically be finished by the algorithm before reaching this index when no improvement could be reached, anymore. The total number of loops can be set for the improvement step, only (see Params).

progress int

The progress in % of the current loop being calculated.

PlainGeometryBase

The abstract base class for the structured representation of geometry objects.
No attributes defined.

PlainGeometryCollection

Extends PlainGeometryBase

A plain structured polygon consisting of a set geometries.
Attribute Name Type Description
geometries PlainGeometryBase[]

The set of geometries making up the geometry collection.

PlainLineString

Extends PlainGeometryBase

A plain structured line string consisting of a set of points.

Attribute Name Type Description
points PlainPoint[]

The set of points defining the line string.

PlainLinearRing

Extends PlainGeometryBase

A plain structured linear ring consisting of a set of points

Attribute Name Type Description
points PlainPoint[]

The set of points defining the linear ring.

PlainMultiLineString

Extends PlainGeometryBase

A plain structured polygon consisting of a set of line strings.
Attribute Name Type Description
lineStrings PlainLineString[]

The set of line strings making up the multi line string.

PlainMultiPoint

Extends PlainGeometryBase

A plain structured polygon consisting of a set of points.
Attribute Name Type Description
points PlainPoint[]

The set of points making up the multi point.

PlainMultiPolygon

Extends PlainGeometryBase

A plain structured polygon consisting of a set of polygons.
Attribute Name Type Description
polygons PlainPolygon[]

The set of polygons making up the multi polygon.

PlainPoint

Extends PlainGeometryBase

A plain structured point consisting of two floating point attributes for the coordinates. In contrast to Point it is never transformed.

Attribute Name Type Description
x double

The x coordinate

y double

The y coordinate

z Double

The z coordinate (optional, only if requested)

PlainPolygon

Extends PlainGeometryBase

A plain structured polygon consisting of a set of linear rings.

Attribute Name Type Description
linearRings PlainLinearRing[]

The set of linear rings making up the polygon.

PlanProgress

Extends JobProgress

Implementation of JobProgress for tour planning.
Attribute Name Type Description
action String

The current action being executed. For more information on progress information see About Asynchronous Protocol.

distanceMatrixCalculationProgress DistanceMatrixCalculationProgress

The progress of the distance matrix calculation, available only if action starts with "DistanceMatrix.".

improvementProgress ImprovementProgress

The progress of the improvement step during the tour plan optimization, available only if action equals "Optimization.Improvement".

Point

Extends EncodedGeometry

Represents a single coordinate (point). Do not use this type for other points (e.g. pixel in an image), the coordinates are automatically transformed. Instead use PlainPoint.

See EncodedGeometry for possible representations.

Attribute Name Type Description
point PlainPoint

If not null, this attribute contains the explicit form of the geometry.

ATTENTION: Filled with requested EncodedGeometry representation (not necessarily a plain geometry).

Polygon

Extends EncodedGeometry

A polygon as specified by the openGIS standard.

See EncodedGeometry for possible representations.

Attribute Name Type Description
polygon PlainPolygon

If not null, this attribute contains the explicit form of the geometry.

ATTENTION: Filled with requested EncodedGeometry representation (not necessarily a plain geometry).

RequestOptions

General options for requests

Attribute Name Type Description
coordFormat CoordFormat

The coordinate format used in the request/response.

responseGeometry GeometryEncoding[]

The geometry encoding for the response.

profile String

The name of the parameter profile to be used.

profileXMLSnippet String

For internal use only.

srId String

If the coordFormat equals to 'OG_SRID', this attribute contains the Spatial Reference Identifier as specified by the Open Geospatial Consortium (OGC), otherwise it is null. All codes of the EPSG Geodetic Parameter Dataset V7.9 maintained by the EPSG.

TerritoryProgress

Extends JobProgress

Implementation of JobProgress for territory planning.

Attribute Name Type Description
action String

The current action being executed. For more information on progress with territory planning see the use case documentation.

distanceMatrixProgress DistanceMatrixProgress

The progress of the distance matrix calculation, available only if action equals "DistanceMatrix.Calculation".

optimizationProgress int

The progress of the optimization, available only if action starts with "TerritoryOptimization.".

WatchOptions

This class includes options to control job status and progress updates. All parameters are optional.
Attribute Name Type Description
progressUpdatePeriod Integer

If defined this optional parameter enables additional progress updates with the specified interval. If no new progress update arrives during the specified period, watchJob will wait for and return with the next available progress update. Important updates such as terminal states will always return immediately. The minimum period must be at least 250ms. If no progress waiting period is defined, progress will only be sent as part of status updates.

maximumPollingPeriod Integer

Specifies the timeout after which watchJob will report the last status even if no further updates are available.If not specified a configured default is used.

ZoneLoadingProgress

Extends JobProgress

Attribute Name Type Description
action String

The current action being executed.

optimizationProgress int

The progress of the optimization, available only if action starts with "LoadingSpaceOptimization.".

Enumerations

CoordFormat

The CoordFormat enumeration contains all coordinate types supported by the PTV xServer. All examples represent the same geographic location.

Enumerator Name Value Description
OG_GEODECIMAL None

OpenGIS representation of WGS 84 coordinates. Example x=8.2505556, y=48.7627778.

PTV_MERCATOR None Mercator projection. Example x=917420, y=6227729.
PTV_GEOMINSEC None

PTV representation of coordinates by degree, minute, and second. Example x=815020, y=4845460.

PTV_GEODECIMAL None

PTV representation of WGS 84 coordinates. Example x=825056, y=4876278.

PTV_CONFORM None

PTV representation of conform coordinates. Example x=1672358, y=1620743.

PTV_SUPERCONFORM None

PTV representation of super-conform coordinates. Example x=5072358, y=3320743.

PTV_SMARTUNITS None

PTV internal coordinate format. Example x=4352286, y=5456405.

OG_SRID None

This format is set implicitly, if a Spatial Reference Identifier as specified by the Open Geospatial Consortium (OGC) is set in the CallerContext. All codes of the EPSG Geodetic Parameter Dataset V7.9 maintained by the EPSG..
Note: The coordinate format 'OG_GEODECIMAL' and the SRID code 'EPSG:4326' are equivalent.

ErrorCode

Enumerator Name Value Description
REQUEST_INVALID_WKT 10

The specified WKT in the request is invalid. It should a well-known text representation of a geometry from a string (see the OpenGIS simple features specification).

REQUEST_INVALID_WKB 11

The specified WKB in the request is invalid. It should be a geometry from a byte stream in well-known binary format.

REQUEST_INVALID_KML 12

The specified KML in the request is invalid.

KML_PLACEMARK_NOT_FOUND 13

Thrown, if requested placemark name is not found in the KML

CONVERT_GEOMETRY_OBJECT 20

One or more geometry objects in the request are invalid. There are problems to convert a geometry object to a plain geometry object. Also used for retrieving the plain geometry object from a geometry object.

CONVERT_COORDINATE_FORMAT 21

There are problems to convert a CoordFormat of the request to a coordinate type.

GEOMETRY_ENCODING 22

Geometry objects cannot be encoded.

GeometryEncoding

Defines encoding options for geometry parameters and results.

Plain indicates that geometry objects should be transmitted in plain object form, WKB indicates that openGIS well-known binary format should be used, WKT represents the openGIS well-known text format. KML represents the Keyhole Markup Language.

Enumerator Name Value Description
PLAIN None

Plain geometry encoding using structured objects and according network presentation.

WKB None

Geometry should be represented by well-known binaries.

WKT None

Use well-known texts to encode geometry objects.

KML None

Use Keyhole Markup Language to encode geometry objects.

JobStatus

Specifies different job status values.
Enumerator Name Value Description
QUEUING None

Job has been enqueued.

RUNNING None

Job is currently running.

STOPPING None

Stop has been requested, the job will terminate its calculation as soon as possible.

SUCCEEDED None

Job has completed successfully.

FAILED None

Job has failed with an exception.

DELETED None

The job was deleted by the user.

UNKNOWN None

The job is in an unknown state. For example a given id is unknown or the job has already been fetched and has thus been deleted from the underlying persistent store.

Exceptions

XServiceException

XServiceException is used for all exceptions which can occur in the PTV xServer framework.

SystemException (from package com.ptvag.jabba.core.exception)

This is the base class for all system relevant exceptions. It is thrown for example if a request has timed out or if a request has been rejected.