Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Do not merge - temp PR to help reviewing #79 #1

Open
wants to merge 39 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
22fcab2
Update schemas for v3.0-RC
Mar 10, 2023
e45bdea
patch
Mar 10, 2023
c38de8d
Delete free_bike_status.json
isabelle-dr Mar 16, 2023
5fcf0d1
Delete gbfs.json
isabelle-dr Mar 16, 2023
17883ce
Delete gbfs_versions.json
isabelle-dr Mar 16, 2023
2446f89
Delete geofencing_zones.json
isabelle-dr Mar 16, 2023
319143c
Delete station_information.json
isabelle-dr Mar 16, 2023
82c49b8
Delete station_status.json
isabelle-dr Mar 16, 2023
d9ab2d0
Delete system_alerts.json
isabelle-dr Mar 16, 2023
c3c61f8
Delete system_calendar.json
isabelle-dr Mar 16, 2023
d5cdecd
Delete system_hours.json
isabelle-dr Mar 16, 2023
c4fb29d
Delete system_information.json
isabelle-dr Mar 16, 2023
4600729
Delete system_pricing_plans.json
isabelle-dr Mar 16, 2023
a9188b7
Delete system_regions.json
isabelle-dr Mar 16, 2023
0d20d5f
Delete vehicle_types.json
isabelle-dr Mar 16, 2023
a6602e7
Delete gbfs.json
isabelle-dr Mar 16, 2023
0763682
Create gbfs.json
isabelle-dr Mar 16, 2023
b68d040
Create gbfs_versions.json
isabelle-dr Mar 16, 2023
f3e06fd
Delete gbfs_versions.json
isabelle-dr Mar 16, 2023
a112f38
Create geofencing_zones.json
isabelle-dr Mar 16, 2023
a7c3d35
Delete geofencing_zones.json
isabelle-dr Mar 16, 2023
08b95fa
Create manifest.json
isabelle-dr Mar 16, 2023
4c26dbc
Delete manifest.json
isabelle-dr Mar 16, 2023
b8132e7
Create station_information.json
isabelle-dr Mar 16, 2023
0d7f9a7
Delete station_information.json
isabelle-dr Mar 16, 2023
fbd202b
Create station_status.json
isabelle-dr Mar 16, 2023
21c0de9
Delete station_status.json
isabelle-dr Mar 16, 2023
8055a8a
Create system_alerts.json
isabelle-dr Mar 16, 2023
d3c81a1
Delete system_alerts.json
isabelle-dr Mar 16, 2023
bbe8177
Create system_information.json
isabelle-dr Mar 16, 2023
bed4874
Delete system_information.json
isabelle-dr Mar 16, 2023
416b9bd
Create system_pricing_plans.json
isabelle-dr Mar 16, 2023
f903fb4
Delete system_pricing_plans.json
isabelle-dr Mar 16, 2023
72d7e28
Create vehicle_status.json
isabelle-dr Mar 16, 2023
567aec1
Delete vehicle_status.json
isabelle-dr Mar 16, 2023
8e1faba
Create system_regions.json
isabelle-dr Mar 16, 2023
c4d1170
Delete system_regions.json
isabelle-dr Mar 16, 2023
3f1896d
Create vehicle_types.json
isabelle-dr Mar 16, 2023
6e0dfb8
Delete vehicle_types.json
isabelle-dr Mar 16, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 36 additions & 46 deletions v2.3/gbfs.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://github.com/NABSA/gbfs/blob/v2.3/gbfs.md#gbfsjson",
"$id": "https://github.com/NABSA/gbfs/blob/v3.0-RC/gbfs.md#gbfsjson",
"description":
"Auto-discovery file that links to all of the other files published by the system.",
"type": "object",
Expand All @@ -21,58 +21,48 @@
"description":
"GBFS version number to which the feed conforms, according to the versioning framework (added in v1.1).",
"type": "string",
"const": "2.3"
"const": "3.0-RC"
},
"data": {
"description": "Response data in the form of name:value pairs.",
"type": "object",
"patternProperties": {
"^[a-z]{2,3}(-[A-Z]{2})?$": {
"type": "object",
"properties": {
"feeds": {
"description":
"An array of all of the feeds that are published by the auto-discovery file. Each element in the array is an object with the keys below.",
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"description":
"Key identifying the type of feed this is. The key must be the base file name defined in the spec for the corresponding feed type.",
"type": "string",
"enum": [
"gbfs",
"gbfs_versions",
"system_information",
"vehicle_types",
"station_information",
"station_status",
"free_bike_status",
"system_hours",
"system_alerts",
"system_calendar",
"system_regions",
"system_pricing_plans",
"geofencing_zones"
]
},
"url": {
"description": "URL for the feed.",
"type": "string",
"format": "uri"
}
},
"required": ["name", "url"]
"properties": {
"feeds": {
"description": "An array of all of the feeds that are published by the auto-discovery file. Each element in the array is an object with the keys below.",
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"description": "Key identifying the type of feed this is. The key must be the base file name defined in the spec for the corresponding feed type.",
"type": "string",
"enum": [
"gbfs",
"manifest",
"gbfs_versions",
"system_information",
"vehicle_types",
"station_information",
"station_status",
"vehicle_status",
"system_alerts",
"system_regions",
"system_pricing_plans",
"geofencing_zones"
]
},
"url": {
"description": "URL for the feed.",
"type": "string",
"format": "uri"
}
},
"required": true
"required": ["name", "url"]
}
},
"required": true
},
"additionalProperties": false
}
}
},
"required": true
},
"additionalProperties": false,
"required": ["last_updated", "ttl", "version", "data"]
}
13 changes: 6 additions & 7 deletions v2.3/gbfs_versions.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id":
"https://github.com/NABSA/gbfs/blob/v2.3/gbfs.md#gbfs_versionsjson-added-in-v11",
"description":
"Lists all feed endpoints published according to version sof the GBFS documentation. (added in v1.1)",
"https://github.com/NABSA/gbfs/blob/v3.0-RC/gbfs.md#gbfs_versionsjson-added-in-v11",
"description": "Lists all feed endpoints published according to version sof the GBFS documentation. (added in v1.1)",
"type": "object",
"properties": {
"last_updated": {
Expand All @@ -22,7 +21,7 @@
"description":
"GBFS version number to which the feed conforms, according to the versioning framework.",
"type": "string",
"const": "2.3"
"const": "3.0-RC"
},
"data": {
"description": "Response data in the form of name:value pairs.",
Expand All @@ -36,16 +35,16 @@
"type": "object",
"properties": {
"version": {
"description":
"The semantic version of the feed in the form X.Y",
"description": "The semantic version of the feed in the form X.Y",
"type": "string",
"enum": [
"1.0",
"1.1",
"2.0",
"2.1",
"2.2",
"2.3"
"2.3",
"3.0-RC"
]
},
"url": {
Expand Down
68 changes: 62 additions & 6 deletions v2.3/geofencing_zones.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id":
"https://github.com/NABSA/gbfs/blob/v2.3/gbfs.md#geofencing_zonesjson",
"https://github.com/NABSA/gbfs/blob/v3.0-RC/gbfs.md#geofencing_zonesjson",
"description":
"Describes geofencing zones and their associated rules and attributes (added in v2.1-RC).",
"type": "object",
Expand All @@ -20,7 +20,7 @@
"version": {
"description": "GBFS version number to which the feed conforms, according to the versioning framework.",
"type": "string",
"const": "2.3"
"const": "3.0-RC"
},
"data": {
"description": "Array that contains geofencing information for the system.",
Expand Down Expand Up @@ -53,7 +53,22 @@
"properties": {
"name": {
"description": "Public name of the geofencing zone.",
"type": "string"
"type": "array",
"items": {
"type": "object",
"properties": {
"start": {
"description": "Start time of the alert.",
"type": "integer",
"minimum": 1450155600
},
"end": {
"description": "End time of the alert.",
"type": "integer",
"minimum": 1450155600
}
}
}
},
"start": {
"description": "Start time of the geofencing zone in POSIX time.",
Expand All @@ -76,8 +91,12 @@
"description": "Array of vehicle type IDs for which these restrictions apply.",
"items": { "type": "string" }
},
"ride_allowed": {
"description": "Is the undocked ride allowed to start and end in this zone?",
"ride_start_allowed": {
"description": "Is the ride allowed to start in this zone?",
"type": "boolean"
},
"ride_end_allowed": {
"description": "Is the ride allowed to end in this zone?",
"type": "boolean"
},
"ride_through_allowed": {
Expand All @@ -95,7 +114,7 @@
"type": "boolean"
}
},
"required": ["ride_allowed", "ride_through_allowed"]
"required": ["ride_start_allowed", "ride_end_allowed", "ride_through_allowed"]
}
}
}
Expand Down Expand Up @@ -136,6 +155,43 @@
}
},
"required": ["type", "features"]
},
"rules": {
"description": "Array that contains one object per rule.",
"type": "array",
"items": {
"type": "object",
"properties": {
"vehicle_type_id": {
"type": "array",
"description": "Array of vehicle type IDs for which these restrictions apply.",
"items": { "type": "string" }
},
"ride_start_allowed": {
"description": "Is the ride allowed to start in this zone?",
"type": "boolean"
},
"ride_end_allowed": {
"description": "Is the ride allowed to end in this zone?",
"type": "boolean"
},
"ride_through_allowed": {
"description":
"Is the ride allowed to travel through this zone?",
"type": "boolean"
},
"maximum_speed_kph": {
"description": "What is the maximum speed allowed, in kilometers per hour?",
"type": "integer",
"minimum": 0
},
"station_parking": {
"description": "Vehicle MUST be parked at stations defined in station_information.json within this geofence zone",
"type": "boolean"
}
},
"required": ["ride_start_allowed", "ride_end_allowed", "ride_through_allowed"]
}
}
}
}
Expand Down
79 changes: 79 additions & 0 deletions v2.3/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://github.com/NABSA/gbfs/blob/v3.0-RC/gbfs.md#manifestjson",
"description": "An index of gbfs.json URLs for each GBFS data set produced by a publisher. A single instance of this file should be published at a single stable URL, for example: https://example.com/gbfs/manifest.json.",
"type": "object",
"properties": {
"last_updated": {
"description": "Last time the data in the feed was updated in POSIX time.",
"type": "integer",
"minimum": 1450155600
},
"ttl": {
"description": "Number of seconds before the data in the feed will be updated again (0 if the data should always be refreshed).",
"type": "integer",
"minimum": 0
},
"version": {
"description": "GBFS version number to which the feed conforms, according to the versioning framework (added in v1.1).",
"type": "string",
"const": "3.0-RC"
},
"data": {
"type": "object",
"properties": {
"datasets": {
"description": "An array of objects, each containing the keys below.",
"type": "array",
"items": {
"type": "object",
"properties": {
"system_id": {
"description": "The system_id from system_information.json for the corresponding data set(s).",
"type": "string"
},
"versions": {
"description": "Contains one object, as defined below, for each of the available versions of a feed. The array MUST be sorted by increasing MAJOR and MINOR version number.",
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"description": "The semantic version of the feed in the form X.Y",
"type": "string",
"enum": [
"1.0",
"1.1",
"2.0",
"2.1",
"2.2",
"2.3",
"3.0-RC"
]
},
"url": {
"description": "URL of the corresponding gbfs.json endpoint",
"type": "string",
"format": "uri"
}
},
"required": [
"version",
"url"
]
}
}
},
"required": [
"system_id",
"versions"
]
}
}
},
"required": ["datasets"],
"additionalProperties": false
}
},
"required": ["last_updated", "ttl", "version", "data"]
}
Loading