HAL - Hypertext Application Language

A lean hypermedia type

HAL is a simple way of linking with JSON or XML.

It provides a small set of conventions on top of JSON and XML for expressing hyperlinks to, and embeddedness of, related resources.

The spec is here: hal_specification.md.

For a friendlier, more practical introduction to HAL you can read this article: JSON Linking with HAL.

The JSON variant of HAL (application/hal+json) has now been published as an internet draft: draft-kelly-json-hal.

Discussion Group

If you have any questions or feedback about HAL, you can message the HAL-discuss mailing list.

Contributing

If you think some part of the spec needs changing, just fork this repo and raise a pull request with your changes.

Code/Libraries

hal_specification.md contains a list of libraries for working with HAL.