The document proposes a semantic description language (SEREDASj) to provide machine-readable descriptions of RESTful web services. It aims to address the lack of standards for describing REST APIs and help combat "semaphobia", the fear of semantics. The language builds on previous work but is tailored specifically for REST by focusing on simplicity and supporting many use cases including discovery and composition of RESTful services.
3. Why do we Why do we
need a website? need an API?
1995 2000 2005 2010
Of course we Of course we
have a website have an API
Adapted from T. Vitvar’s and J. Musser’s ECOWS 2010 Keynote,
“ProgrammableWeb.com: Statistics, Trends, and Best Practices”
11. Metadata Element description
Model
Prefixes Links Type ref.
Semantics Properties Items
Media type &
Prefix Name URI Target SEREDASj desc.
Predicate Object(s) Name
Request
Semantics
SEREDASj d.
Variables Semantics
Model
Predicate Object(s) Name Binding Predicate Object(s)
ref.
21. A person. (object)
id number
first_name string The first name of a person.
last_name string The surname of some person.
gender string The gender of this Agent (typically but
not necessarily 'male' or 'female').
knows array A person known by this person
(indicating some level of reciprocated
interaction between the parties).
A person. (object)
id number
name string A name for some thing.
22.
23. strong emphasis on simplicity many use
cases
son
discovery and composition
26. Image Credits
(3) Adapted from T. Vitvar’s and J. Musser’s ECOWS 2010 Keynote,
“ProgrammableWeb.com: Statistics, Trends, and Best Practices”
(7) http://en.wikipedia.org/wiki/The_Scream
(9) http://www.flickr.com/photos/clevercupcakes/4397152402/
(10) http://www.flickr.com/photos/nesster/3168425434/