Skip to content

Commit dd3bbc2

Browse files
committed
Merge branch 'dev' into feature-agency-provider-api-alignment
# Conflicts: # agency/README.md # general-information.md # provider/README.md
2 parents 0add737 + 47fe606 commit dd3bbc2

20 files changed

Lines changed: 643 additions & 1384 deletions

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,9 +165,9 @@ To add yourself to the [agency list](/agencies.csv) and add your [Policy Require
165165

166166
# Providers Using MDS
167167

168-
Over two dozen mobility service providers (MSPs) around the world use MDS, allowing them to create tools around a single data standard for multiple cities.
168+
Over three dozen mobility service providers (MSPs) around the world use MDS, allowing them to create tools around a single data standard for multiple cities.
169169

170-
- See our **[list of providers using MDS](https://www.openmobilityfoundation.org/mds-users/#mobility-providers-using-mds)**. For a table list with unique IDs, see the MDS [provider list](/providers.csv).
170+
- See our **[list of providers using MDS](https://www.openmobilityfoundation.org/mds-users/#mobility-providers-using-mds)**. For a table list with unique IDs, see the MDS [provider list](/providers.csv) which includes both service operators and data solution providers.
171171

172172
To add yourself to the provider list, please let us know [via our website](https://www.openmobilityfoundation.org/get-in-touch/) or open an [Issue](https://github.com/openmobilityfoundation/mobility-data-specification/issues) or [Pull Request](https://github.com/openmobilityfoundation/mobility-data-specification/pulls). Find out how in our [Adding an Provider ID](https://github.com/openmobilityfoundation/mobility-data-specification/wiki/Adding-an-MDS-Provider-ID) help document.
173173

data-types.md

Lines changed: 117 additions & 92 deletions
Large diffs are not rendered by default.

general-information.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ See new location within [individual modes](/modes#list-of-supported-modes) in [m
200200

201201
MDS APIs must handle requests for specific versions of the specification from clients.
202202

203-
Versioning must be implemented through the use of a custom media-type, `application/vnd.mds+json`, combined with a required `version` parameter.
203+
Versioning must be implemented through the use of a custom media-type, `application/vnd.mds+json`, combined with a required `version` parameter. The one exception is the `/reports` endpoint, which returns CSV files instead of JSON, and so uses `text/vnd.mds+csv` as its media-type.
204204

205205
The version parameter specifies the dot-separated combination of major and minor versions from a published version of the specification. For example, the media-type for version `1.0.1` would be specified as `application/vnd.mds+json;version=1.0`
206206

modes/car-share.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ Example 3: one trip point-to-point with an employee moving the vehicle to a new
6464

6565
The `journey_attributes` array **may** have the following key value pairs:
6666

67-
- ...
67+
- `reservation_id` (UUID, optional): unique identifier for an entire car share reservation, tied across multiple journeys and therefore trips.
6868

6969
[Top][toc]
7070

@@ -103,7 +103,7 @@ _See more available trip attributes for any mode in the [trips endpoint](/provid
103103

104104
The `fare_attributes` array **may** have the following key value pairs:
105105

106-
- `payment_type` (enumerated, required): `cash`, `credit_card`, `mobile`, `voucher`, `paratransit`, `no payment`, `test`
106+
- `payment_type` (enumerated, required): `cash`, `credit_card`, `mobile`, `voucher`, `no payment`, `test`
107107
- `fare_type` (enumerated, required): `meter_fare`, `upfront_pricing`, `flat_rate`. Indicator of which rate was charged.
108108
- `tolls` (currency, optional) - Sum of any and all tolls charged for the trip, such as bridge tolls
109109
- `base_rate` (currency, optional) - Minimum fare to be charged as soon as the trip starts.
@@ -113,8 +113,6 @@ The `fare_attributes` array **may** have the following key value pairs:
113113
- `extra_amount` (currency, optional) - miscellaneous extra amounts charged to customer not covered by other fields.
114114
- `taxes` (currency, optional) - amount of taxes paid for the ride
115115
- `surcharge` (currency, optional) - any surcharge pricing
116-
- `commission` (currency, optional) - any extra commission for the ride
117-
- `driver_trip_pay` (currency, optional) - The payment the company driver received for the trip
118116

119117
_See more available fare attributes for any mode in the [trips endpoint](/provider#trips)._
120118

modes/delivery-robots.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ Example 2: three overlapping delivery trips in the same journey
6262

6363
### Journey Attributes
6464

65-
The `journey_attributes` array **may** have the following key value pairs:
65+
The `journey_attributes` array is not used in this mode.
6666

6767
- ...
6868

@@ -95,7 +95,7 @@ The `trip_type` field **must** have one of the following enumerated values:
9595
The `trip_attributes` array **may** have the following key value pairs:
9696

9797
- `driver_type` (ennum, required): type of driver operating the device: `human`, `semi-autonomous`, `autonomous`
98-
- `driver_id` (UUID, optional): consistent unique identifier of the privary driver. Could be based on software version or human
98+
- `driver_id` (UUID, optional): consistent unique identifier of the privary driver. Could be based on software version or an internal human driver id.
9999
- `app_name` (text, optional): name of the app used to reserve the trip which could be provider's app or 3rd party app
100100
- `request_time` (timestamp, optional): when the customer requested the trip
101101
- `has_payload` (boolean, optional): is there any payload for any delivery included in the device at trip start. 1 = loaded, 0 = empty

modes/micromobility.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ Valid micromobility vehicle event types are
153153
- `trip_start`
154154
- `unspecified`
155155

156-
Note that providers should make best-effort to map their business logic onto these states, which are meant to provide a view of the fleet to an agency. But if an agency does not perform `agency_drop_off` or `agency_pick_up`, for example, they need not be included in the parovider's implementation.
156+
Note that providers should make best-effort to map their business logic onto these states, which are meant to provide a view of the fleet to an agency. But if an agency does not perform `agency_drop_off` or `agency_pick_up`, for example, they need not be included in the provider's implementation.
157157

158158
See vehicle [Event Types][vehicle-events] for descriptions.
159159

policy/README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -138,10 +138,10 @@ Authorization is not required and agencies are encouraged to make these endpoint
138138
| Name | Type | Required / Optional | Description |
139139
| ------------ | --------- | --- | ---------------------------------------------- |
140140
| `id` | UUID | Optional | If provided, returns one policy object with the matching UUID; default is to return all policy objects. |
141-
| `start_date` | [timestamp][ts] | Optional | Earliest effective date; default is policies effective as of the request time |
142-
| `end_date` | [timestamp][ts] | Optional | Latest effective date; default is all policies effective in the future |
141+
| `start_date` | [timestamp][ts] | Optional | Beginning date of the queried time range; the default value is the request time |
142+
| `end_date` | [timestamp][ts] | Optional | Ending date of the queried time range; the default value is null, which captures all policies that are effective in the future|
143143

144-
`start_date` and `end_date` are only considered when no `id` parameter is provided.
144+
`start_date` and `end_date` are only considered when no `id` parameter is provided. They should return any policy whose effectiveness overlaps with or is contained with this range. Suppose there's a policy with a `start_date` of 1/1/21 and `end_date` of 1/31/21. Assuming an `end_date` that is null, 12/1/20 and 1/5/21 `start_dates` will return the policy, but 2/10/21 wouldn't. Assuming a `start_date` parameter of say, 11/1/20, then an `end_date` of 12/1/20 wouldn't return the policy, but 1/5/21 and 2/10/21 would. Lastly, a `start_date` of 1/5/21 and `end_date` of 1/6/21 would also return the policy. Please note also that while dates in the format MM:DD:YY are being used here, `start_date` and `end_date` must be numbers representing milliseconds since the Unix epoch time.
145145

146146
Policies will be returned in order of effective date (see schema below), with pagination as in the `agency` and `provider` specs.
147147

@@ -603,6 +603,7 @@ For each combination of items in a program, you can specify the data specs, APIs
603603
{
604604
"data_spec_name": "[DATA SPEC NAME]",
605605
"version": "[VERSION NUMBER]",
606+
"mode": "[MODE SHORTNAME]",
606607
"required_apis": [
607608
{
608609
// Required APIs array
@@ -623,6 +624,7 @@ For each combination of items in a program, you can specify the data specs, APIs
623624
| -------------------- | ------ | -------- | ----------------------------------- |
624625
| `data_spec_name` | Enum | Required | Name of the data spec required. Supported values are: '[MDS](https://github.com/openmobilityfoundation/mobility-data-specification/tree/ms-requirements)', '[GBFS](https://github.com/NABSA/gbfs/tree/v2.2)'. Others like GOFS, GTFS, TOMP-API, etc can be tested by agencies and officially standardized here in the future -- leave your feedback on [this issue](https://github.com/openmobilityfoundation/mobility-data-specification/issues/682). |
625626
| `version` | Text | Required | Version number of the data spec required. E.g. '1.2.0' |
627+
| `mode` | Text | Optional | The [mode list][modes] shortname for MDS. E.g. 'passenger-services' |
626628
| `required_apis` | Array | Conditionally Required | Name of the [Requirement APIs](#requirement-apis) that need to be served by providers. At least one API is required. APIs not listed will not be available to the agency. |
627629
| `available_apis` | Array | Conditionally Required | Name of the [Requirement APIs](#requirement-apis) that are being served by agencies. Not applicable to GBFS. APIs not listed will not be available to the provider. |
628630

0 commit comments

Comments
 (0)