SA-REST: Semantically-enhancing RESTful Services & Resources

SA-REST as a member submission was accepted by the W3C on May 2010.

Following is the introduction from the W3C submission. Please refer to the W3C submission document for the complete specification.


Semantic Annotations for REST (SA-REST) define three basic properties that can be used to non-intrusively annotate HTML/XHTML documents, typically to embed ontological meta-data. These properties, defined as a poshformat, are included as part of the XHTML document allowing a capable processor to gain extra information about the content of the document. Poshformats are the superset of microformats. While a poshformat may follow certain microformat design principles, it may not have gone through a rigorous community process as defined by microformat process guidelines.

Basic SA-REST properties, namely domain-rel,sem-rel and sem-class are specified using the class attribute and the title attribute defined by the HTML specification. Similar to microformats, the scope of the annotation is defined by the HTML element that bears the annotation.


The following example illustrates an XHTML fragment embedded with SA-REST annotations. The original text fragment is from Wikipedia for the subject computer. The markup in bold highlight the SA-REST annotations.

(001) <p>
(002) A <b><span class="sem-class" title=""> computer </span></b>
(003) is a <a href="/wiki/Machine" title="Machine">machine</a> that manipulates
(004) <a href="/wiki/Data_(computing)" title="Data (computing)">data</a> according
(005) to a set of <a href="/wiki/Source_code" title="Source code">instructions</a>.
(006) </p>
(007) <p>
(008) <span class="domain-rel" title="" >
(009) Although mechanical examples of computers have existed through much of recorded human
(010) history, the first electronic computers were developed in the mid-20th century (1940â1945).</span> </p>

Line (002) illustrates the specification of the term computer using the sem-class property. Lines (008) to (010) exemplify the marking up of the text fragment to indicate that it belongs to the domain History of Computing.