[occi-wg] RDF, RDFa and HTML

Edmonds, AndrewX andrewx.edmonds at intel.com
Wed Jun 23 06:44:47 CDT 2010

Hi all,

I've been looking into how OCCI can expose itself through a HTML serialization and to demarcate machine readable, semantic content. To demarcate that content we already decided that we would use RDFa [1]. In order to truly and correctly use RDFa we need to be able to point to the ontology (model) in which subject, predicate and object triplets are defined. Defining the ontology is somewhat easy, we have it already with the OCCI model; it's just a matter of expressing it in RDF. With an ontology in hand, we can define semantically marked-up HTML with the ontology's vocabulary using the facilities of RDFa. I've worked on 2 ways of expressing the OCCI model in RDF.

 1. Using python [2].
 2. Using a modeling tool (Protégé) [3][4][5]. Note these owl files may need their imports modified in Protégé.

The only difference in the two is that occi.owl (core spec), occi-infrastructure.owl (infrastructure spec) and occi-sla-at-soi.owl (SLA at SOI extensions) are defined in separate files with the Protégé approach. This should give folks an idea of how extensions for OCCI can be introduced. However in both examples, occi-core, occi-infrastructure and slasoi-infrastructure are separated by namespace. 

As RDFa does not explicitly define a rigorous structure for HTML documents, and it shouldn't, we need to be able to express 2 basics forms: 

 1. A concrete OCCI Kind instance (Compute, Storage, Network). I have an example here [6].
 2. A collection of OCCI Kind instances. I have an example here [7]. In this example values of objects are exposed using the 'content' RDFa attribute [8]. 

Each example may not be 100% perfect but what's most interesting is when you run the each HTML rendering through a RDFa parser [9] (examples here [10] [11]). The RDF extracted is quite along the lines of what some might expect an OCCI POX format to be. Note, I'm not advocating POX, just pointing to the flexibility of RDFa. There are still some aspects to be worked out but I will follow up on these in a separate mail (this one is long enough!).

If you want to see how all of this visually looks then see here: ontology only [12], ontology and graph instance [13].

I'd really appreciate and love to hear people's comments, opinions on this! :-)


[1] http://www.w3.org/TR/rdfa-in-html/
[2] http://dl.dropbox.com/u/165239/occi-rdf.py
[3] http://dl.dropbox.com/u/165239/occi.owl
[4] http://dl.dropbox.com/u/165239/occi-infrastructure.owl
[5] http://dl.dropbox.com/u/165239/occi-sla-at-soi.owl
[6] http://home.edmonds.be/occi-html5-rdfa-one.html
[7] http://home.edmonds.be/occi-html5-rdfa-list.html
[8] http://www.w3.org/TR/2010/WD-rdfa-core-20100422/#s_syntax
[9] http://www.w3.org/2007/08/pyRdfa
[10] http://www.w3.org/2007/08/pyRdfa/extract?uri=http%3A%2F%2Fhome.edmonds.be%2Focci-html5-rdfa-one.html
[11] http://www.w3.org/2007/08/pyRdfa/extract?uri=http%3A%2F%2Fhome.edmonds.be%2Focci-html5-rdfa-list.html
[12] http://dl.dropbox.com/u/165239/occi-rdf-graph-rev2.png
[13] http://dl.dropbox.com/u/165239/occi-rdf-graph-inst-rev2.png

Intel Ireland Limited (Branch)
Collinstown Industrial Park, Leixlip, County Kildare, Ireland
Registered Number: E902934

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

More information about the occi-wg mailing list