A Hypertext Application Language MediaType library for the JVM.
HAL is a simple way of linking with JSON or XML.
It provides a set of conventions for expressing hyperlinks to, and embeddedness of, related resources - the rest of a HAL document is just plain old JSON or XML.
HAL is a bit like HTML for machines, in that it is generic and designed to drive many different types of application. The difference is that HTML has features for presenting a graphical hypermedia interface to a ‘human actor’, whereas HAL is intended for presenting a machine hypertext interface to ‘automated actors’.
The HAL format, and the HalBuilder Java library provide a consistent approach to both designing and consuming reusable, and navible REST APIs built on the Java platform.
You can contribute to the HalBuilder project in many ways: discussion on the Google Group, bug reports, feature requests and pull requests on the relevant Github project are also welcone.
Each projects git repository is modeled with the git-flow branching model, so any pull requests should be against the appropriate "develop" branch.
HalBuilder and its various modules are released under the Apache V2 license.