/TDx

Transportation Data Exchanges

Creative Commons Zero v1.0 UniversalCC0-1.0

Transportation Data Exchange (TDx)

This repository contains data specifications intended to harmonize sharing of information about transportation events and infrastructure between infrastructure owner operators and the public. The specifications here were initially created under the Work Zone Data Exchange project.

README Outline

Data Feeds

TDx defines the structure and content of multiple distinct data feeds. Each feed is distributed as a single GeoJSON file and is represented by both human-friendly documentation in the spec-content directory and a JSON Schema in /schemas. Each feed is designed for a specific use case.

List of Data Feeds

Feed Name Description Producer Consumer Uses Content
RoadIncidentFeed Provides information about incidents or events that close or restrict the use of a road segment. Transportation Authorities like Tribal, Local, State, or Federal Agencies. Traveling public via third parties such as mapping companies and CAVs. Increased awareness; Route planning; Driver, Passenger, and Road-User Safety. Incident and detour road events (see IncidentRoadEvent and DetourRoadEvent).
RoadRestrictionFeed Provides information about sections of roadways that have restrictions. Restriction types described by this specification are listed in the RestrictionType enumerated type. Transportation Authorities like Tribal, Local, State, or Federal Agencies. Traveling public via third parties such as mapping companies and CAVs. Increased awareness; Route planning; Driver, Passenger, and Road-User Safety; Increased Efficiency; Reduced Damage to Infrastructure. Restriction road events (see RestrictionRoadEvent).

Repository Organization

The TDx Specification repository contains several files and subdirectories.

Directories

  1. examples: example GeoJSON documents from TDx data feeds. examples/README.md describes the content of this directory in detail.
  2. images: the images that are referenced by other Markdown files in the repository.
  3. schemas: contains JSON Schemas for each of the feeds defined by TDx for feed validation.
  4. spec-content: details the data content of the TDx specification, including objects, property names and types, and enumerated types. spec-content/README.md describes the content of this directory in detail.

Files

  1. Creating_a_TDx_Feed.md: information to assist in creating a TDx data feed, such as the feed format, business rules, and validation tools.
  2. LICENSE: the Creative Commons Zero v1.0 Universal license that the repository is licensed under.
  3. README.md (this document): information about the TDx effort and navigating the repository.
  4. RELEASES.md: detailed information about every release of the TDx specification.

Project Description

What is the TDx Specification? The Transportation Data Exchange (TDx) Specification enables infrastructure owners and operators (IOOs) to make harmonized transportation data available for third-party use. The intent is to make travel safer and more efficient through ubiquitous access to data on hazards like road restrictions.

How was TDx started? The TDx Road Restriction Feed was created as an extension of the Work Zone Data Exchange (WZDx) model. WZDx created a specification for communicating work zone and detour information using GeoJSON files and features called "road events." The Road Restriction Feed extended that model to communicate sections of roadway that feature permanent height, weight, or other restrictions.

How can I get help with implementation? Review Creating_a_TDx_Feed.md which contains information to assist in creating a TDx data feed, such as the feed format, business rules, and validation tools.

This project repository will be continually updated with resources to help with implementation - in the meantime, please make a new GitHub discussion if you need help implementing the TDx Specification or have questions.

Contact Information

Contact Name: ITS JPO

Contact Information: avdx@dot.gov

Release Notes - TDx v1.1

Released February 2023

New Functionality

Refactoring

  • Incorporate changes made to the WZDx Specification deprecating objects, properties, and enumerated type values utilized in this specification:
    • Deprecate the relationship property on the RoadEventCoreDetails; use the new related_road_events property instead.
    • Deprecate the center-left-turn-lane value in the LaneType enumerated type; use the new two-way-center-turn-lane instead.

Cleanup

  • Incorporate changes made to WZDx Specification cleaning up objects and values utilized in this specification:
    • Expand the description of the geometry property on the RoadEventFeature object to clarify how geometry should be used to represent a road event.
    • Update the description of the open and closed enumerations of the LaneStatus enumerated type.

Getting Started

Feedback and comments on the TDx v1.0 Specification are welcome. Comments can be made by posting a GitHub Issue or Discussion, while suggested changes can be made using a Pull Request.

  1. Learn about using GitHub as a tool for collaboration and support.
  2. Use the Specification Content page to understand the data components of the specification.
  3. Validate your feed output using the respective JSON Schema.
  4. Publish your feed and tell us about it via avdx@dot.gov.

JSON Schemas

The TDx Specification defines a JSON schema for each feed within the schemas directory. Schemas can be used to validate a TDx feed document for compliance to the specification. The repository contains schemas for the following feeds:

Current Version (TDx 1.1)

Previous Versions

Contributions

How do I contribute to the TDx Specification?

  • Report bugs and request features via GitHub Issues.
  • Ask the TDx community for input on a question or propose an idea you have via GitHub Discussions.
  • Create a GitHub Pull Request that implements new functionality or fixes a bug.
  • Review and provide feedback on update issues/discussions/pull requests created by other users.
  • Alternatively, email us with any questions.
  • Help us improve our best practices and formatting on GitHub.

Versioning

The WZDx and TDx specifications use a major.minor versioning scheme, similar to SemVer. The rules are as follows:

  1. The minor version number must be incremented if new, backwards compatible fields/entities/enumerations are introduced or if any existing fields/entities/enumerations are marked as deprecated.
  2. The major version number must be incremented if any backwards incompatible changes are introduced.
  3. Neither version number shall be incremented for documentation changes/clarifications that have no effect on either the specification schema or the content or structure of a GeoJSON feed file which conforms to the specification.

To view available versions, refer to the tags section of this repository.

License

The TDx project is in the worldwide public domain (i.e., in the public domain within the United States - copyright and related rights in the work worldwide are waived through the CC0 1.0 Universal public domain dedication). All contributions to this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with the waiver of copyright interest. see License for more details.