Coder Social home page Coder Social logo

apds-spec's Introduction

API Specification for APDS

IMPORTANT This specification is a working DRAFT. It is in the process of being updated to reflect the latest version of the APDS Data Model and the emerging ISO 5206-1.

About

APDS: Context, Motivation

A few years back, the International Parking & Mobility Institue (IPMI), the British Parking Association (BPA), and the European Parking Association (EPA) formed a not-for-profit organization with the mission to develop, promote, manage, and maintain a uniform global standard that will allow organizations to share parking data across platforms worldwide: APDS, the Alliance for Parking Data Standards.

About this Repository

APDS Specification

APDS has developed the global parking data standard in form of a comprehensive (UML) model. This model is the source for the APDS Specifications (overview, information model, data model, use cases). You can request the specification documents on the APDS website free of charge.

APDS API

The APDS working group has also created a comprehensive representation of the APDS data model in form of an API. This interface is documented using the OpenAPI Specification Standard originally initiated by Swagger and then taken over by the Open APIs initiative. Depending on the particular application, there might be other ways to describe the model and a derived interface. But APDS figured it would be a good starting point for adopters to have something readily available to base their work on. This repository contains said APS OpenAPI Specification.

Specification Structure

The actual specification has been documented in a modular way. The main document can be found here. It provides header information, and a directory of interface endpoints and expected payloads/responses. The actual model behind it is specified in form of individual OpenAPI sub-specs, one per data type. It can be found here.

Note: depending on the OpenAPI tool chain of your choice, working off the modular specification version may show some processing issues. We hence have also created a bundled version that compiles all components into one single file. It is a full equivalent of the modular specification version. You can find it here. This bundled representation has been created using swagger-cli. As some tools struggle with relative paths and circular references, we have also added a fully-dereferenced bundled version which you can find here.

Questions, Suggestions

APDS is commited to support all adopters. In case you have questions or even suggestions for changes, head over to the APDS Forum where you can join the discussion with parking, transportation and mobility professionals: Forum.

Alternatively, you can send an email to the Technical Comments Email Address.

Tell us about your Project

Obviously, APDS is more than keen to learn how the standard is being applied by its users. So, please drop us a comment with some initial information about the particular APDS-related project you are working on.

License

The APDS API specification is provided under the GNU General Public License Version 3. You can find the plain text version of this license in this repository: ./LICENSE.


Validation

This OpenAPI specification has been validated for confirmity using a set of different tools.

Swagger CLI

$ swagger-cli validate api/reference/APDS_API.yaml

api/reference/APDS_API.yaml is valid.

More information on the Swagger CLI can be found here: https://github.com/APIDevTools/swagger-cli

IBM lint-openapi

$ lint-openapi -e api/reference/APDS_API.yaml

api/reference/APDS_API.yaml passed the validator.

More information on IBM's OpenAPI linter can be found here: https://github.com/IBM/openapi-validator

OpenAPI Generator

When using openapi-generator, you should use the bundled version of the API specification.

$ openapi-generator validate -i api/reference/APDS_API_bundled.json 

No validation issues detected.

More information on openapi-generator can be found here: https://openapi-generator.tech

Swagger Editor

The Swagger-provided editor successfully validates the fully-dereferenced bundled version (api/reference/APDS_API_dereferenced_bundled.json).

More information on Swagger Editor can be found here: https://editor.swagger.io


© 2022 Alliance for Parking Data Standards

apds-spec's People

Contributors

plexxdigital avatar dzacarias avatar keithukpml avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.