Let's Fix HAL!

RESTfest 2017

Erik Wilde , API Academy, CA Technologies
September 15, 2017

Creative Commons License [http://creativecommons.org/licenses/by/3.0/]

This work is licensed under a CC
Attribution 3.0 Unported License
[http://creativecommons.org/licenses/by/3.0/]

Contents Erik Wilde : Let's Fix HAL!

Contents

Erik Wilde : Let's Fix HAL!

(2) Summary

The Hypertext Application Language (HAL) has gained some popularity, but it also is held back by design issues that make the language ill-defined. This is a call to action to fix HAL and get it to the point where it is well-defined and its definition can enter an open and broad review and standardization process.



Introduction

Outline (Introduction)

  1. Introduction [2]
  2. 5 in 5: Let's Fix HAL! [5]
  3. Conclusions [1]
Introduction Erik Wilde : Let's Fix HAL!

(4) About Me



Introduction Erik Wilde : Let's Fix HAL!

(5) API Academy [http://www.apiacademy.co/]

API Acacdemy

5 in 5: Let's Fix HAL!

Outline (5 in 5: Let's Fix HAL!)

  1. Introduction [2]
  2. 5 in 5: Let's Fix HAL! [5]
  3. Conclusions [1]
5 in 5: Let's Fix HAL! Erik Wilde : Let's Fix HAL!

(7) Let's Fix HAL!

lets-fix-hal-braveheart.jpg

5 in 5: Let's Fix HAL! Erik Wilde : Let's Fix HAL!

(8) Some Examples

{ "_links": {
    "curies": [ { "name": "prefix1", "href": "http://example.com/rel/{rel}" },
                { "name": "prefix2", "href": "http://example.com/rel/{rel}" } ],
    "prefix1:link": { "href": "/example1" },
    "prefix2:link": { "href": "/example2" } }}
{ "_links": {
    "curies": [ { "name": "prefix", "href": "http://example.com/rel/{rel}" } ]},
  "_embedded": { "_links": { "prefix:link": { "href": "/example" } }}}
{ "_links": {
    "curies": [ { "name": "prefix", "href": "http://example.com/rel/{rel}" } ],
    "prefix:link": { "href": "/example" } },
  "_embedded": { "item" : {
    "_links": {
      "curies": [ { "name": "prefix", "href": "http://example.org/rel/{rel}" } ], 
      "prefix:link": { "href": "/example" } }}}}
{ "_embedded": { "item" : [
  { "_links": {
      "curies": [ { "name": "prefix", "href": "http://example.com/rel/{rel}" } ], 
      "prefix:link": { "href": "/example" } }},
  { "_links": {
      "curies": [ { "name": "prefix", "href": "http://example.org/rel/{rel}" } ], 
      "prefix:link": { "href": "/example" } }}]}}


5 in 5: Let's Fix HAL! Erik Wilde : Let's Fix HAL!

(9) If it's broken, fix it



5 in 5: Let's Fix HAL! Erik Wilde : Let's Fix HAL!

(10) The Case of GeoJSON



5 in 5: Let's Fix HAL! Erik Wilde : Let's Fix HAL!

(11) HAL Call to Action



Conclusions

Outline (Conclusions)

  1. Introduction [2]
  2. 5 in 5: Let's Fix HAL! [5]
  3. Conclusions [1]
Conclusions Erik Wilde : Let's Fix HAL!

(13) Thanks! Q&A

What's Next?

September 15, 2017 RESTfest 2017