Skip to content

Latest commit

 

History

History
83 lines (64 loc) · 7.7 KB

README.md

File metadata and controls

83 lines (64 loc) · 7.7 KB

TDx Specification Content

The TDx specification defines the content and structure of GeoJSON documents intended to be distributed as a data feed. Each GeoJSON document (colloquially "feed") contains a single feed root object. The specification defines the following feed objects:

  • RoadRestrictionFeed: describes the location and details of restrictions on roadways.
  • RoadIncidentFeed: describes the location and details of incidents and events impacting roadways.

Each feed object contains many layers of child objects. Together all the objects define the TDx feed. All TDx objects are located in the objects subdirectory and listed in the Objects section of this document.

The value of certain object properties is restricted to a defined set of values called an enumerated type. Enumerated types are located in the enumerated-types subdirectory and listed in the Enumerated Types section of this document.

Many of the objects and enumerated types used in the TDx Specification were initially developed for the WZDx Specification.

Objects

Each TDx object is described by a table of properties with following columns:

  • Name - The property name.
  • Type - The type of data being stored. This can be one of the JSON primitive types (only String, Number, Array are used), Integer, as defined in the JSON schema validation specification section 6.1 (Draft 07), a formatted string as defined in JSON schema validation specification section 7 (Draft 07), a TDx Enumerated Type, a TDx Object, or a GeoJSON Object.
  • Description - A description of the value of the property.
  • Conformance - An indication of the requirement for including the property in a TDx GeoJSON document. There are three categories of conformance:
    • Required - The property must be included
    • Optional - The property may be omitted
    • Conditional - The property's inclusion depends on the inclusion or value of a separate property
  • Notes - Additional comments, guidance, notes for future consideration, or examples.

List of Objects

This section provides a tabular list of all objects used in the TDx specification.

Feed-Level

The following objects are high-level and describe either a TDx feed or information about a TDx feed:

Object Description
FeedDataSource Information about a specific data source used to build a TDx data feed.
FeedInfo Information about a TDx feed such as metadata, contact information, and data sources.
RoadIncidentFeed The root (highest-level) object of a Road Incident Feed GeoJSON document.
RoadRestrictionFeed The root (highest-level) object of a Road Restriction Feed GeoJSON document.

Road Events

The following objects are used to describe events occurring on roadways (road events) that impact the characteristics of the roadway and involve a change from the default state:

Object Description
DetourRoadEvent A detour on a roadway.
IncidentRoadEvent Describes incidents or events that close or restrict the use of a road segment.
Lane An individual lane within a road event.
RelatedRoadEvent Identification a road event that is related to the road event that the RelatedRoadEvent object occurs on.
Restriction A restriction on a road event or lane, including type and value.
RestrictionRoadEvent Describes a section of roadway and the limitations of how that section can be used.
RoadEventCoreDetails The core details of an event occurring on a roadway (i.e. a road event) that is shared by all types of road events.
RoadEventFeature The GeoJSON Feature container object for a TDx road event.
TypeOfIncident Describes an event that causes disruptions to expected operations.
Relationship (DEPRECATED) All properties that use this object are deprecated so this object will be removed in a future release, use RelatedRoadEvent instead. Identification of both sequential and hierarchical relationships between road events and other entities.

Object Diagrams

The object diagrams below depict the relationship between the data objects for each TDx feed.

The object diagram below indicates the relationship between the data objects used in the RoadRestrictionFeed:

TDx RoadRestrictionFeed object diagram

Updating the object diagram

When making changes to the specification, the object diagram needs to be updated as well. To modify the object diagram, open /images/TDx_RoadRestrictionFeed_object_diagram.drawio or /images/TDx_RoadIncidentFeed_object_diagram.drawio at https://app.diagrams.net (or any drawio editor). Make necessary changes to the diagram using the web editor, then download the drawio file and replace the appropriate file in the /images directory with the new file. Additionally export the diagram as a PNG, using the diagram name as the file name, and replace /images/TDx_RoadRestrictionFeed_object_diagram.png with the new image file.

Enumerated Types

Many object properties are restricted to a finite set of values defined by an enumerated type. The enumerations for each enumerated type as well as what object properties it is used by is described in its own file in the enumerated-types directory.

List of Enumerated Types

This section provides a tabular list of all enumerated types used in the TDx specification.

Road Events

The following enumerated types are used by objects that describe road events:

Enumerated Type Description
Direction The direction for a road event based on standard naming for US roads.
EventType The type of a TDx road event.
IncidentCategory Categories of incidents causing disruptions to expected operations.
IncidentType Descriptions of the incidents causing disruptions to expected operations.
LaneStatus The status of a lane for the traveling public.
LaneType An indication of the type of lane or shoulder.
RelatedRoadEventType The type of relationship with a road event that is being identified.
RestrictionType The type of vehicle restriction on a roadway or lane.
UnitOfMeasurement Unit of measurement (e.g. "pounds", "centimeters").