6. Exception logging
system
• Sensor processes monitoring generation of
exceptions in different nodes and languages/platforms
• Aggregator processes retrieving the exceptions and
creating Exception resources
• Exception RESTful semantic web service
• Web client displaying generated exceptions
Monday, December 21, 2009
10. 1.Knowledge modeling
• Building of an ontology for the problem domain
• Ontology = TBox in Description Logics
• Use of W3C’s standard languages: RDFS or OWL
• Assistance of graphical tools like Protégé
Monday, December 21, 2009
11. Sample application ontology
level message createdAt
Exception
generated
platform
Node Language
ipAddress domain dc:title formatPattern
Monday, December 21, 2009
15. • Formal description of the whole distributed
system
• Concerned with ‘dynamic’ aspects of the
system
• Use of an extended version of the Pi-
Calculus
Monday, December 21, 2009
16. Formal description of the sample application
S(r)
GET subscribe n POST n
W E A TE
S(j)
Monday, December 21, 2009
17. Formal description of the sample application
Processes equations:
Monday, December 21, 2009
19. • 1 RESTful semantic service per OWL/RDFS
class in the ontology
• Use of the Plaza Framework developed for
building RESTful semantic web services
Monday, December 21, 2009
20. RESTful Semantic Web
Service
• OWL/RDFS class triples
• Exposed as a RESTful resource
• Conceptually equivalent to a Linda triple
space
Monday, December 21, 2009
21. Service’s Interface
Create POST
Read GET
Blocking read GET + xblocking header
Subscribe • GET + xsubscribe header
• Websockets
Update PUT
Destroy DELETE
Monday, December 21, 2009
22. RDF
Lifting Graph
SPARQL query
REST Resource
triple
resource
space
triple space op.
HTTP request Lowering
Monday, December 21, 2009
24. Plaza Framework
• Manages ‘Plaza Applications’: OWL ontolgy +
configuration module + resources modules
• Declarative: almost no coding required
• Support for different Java RDF repositories
• Automatic managing of triples through the concepts of
write-tree and read-tree for the resources
• Support for the subscribe operation through chunked
HTTP responses and websockets
Monday, December 21, 2009
28. • Client processes are just REST clients
• Required libraries: HTTP and triples format
parser (RDF/XML, Turtle, JSON)
• Optional support for Websockets
• Clojure library included as part of the Plaza
Framework
Monday, December 21, 2009
32. Conclusions
• Semantic technologies enable rich description of
problem domains vs. relational modeling
• Formal description of distributed systems enables
reasoning about its validity and correctness
• RESTful semantic web services enable easy access
to semantic data
• Building RESTful semantic web services clients is
trivial due to the use of well known HTTP
standard
• Triple Space operations are powerful coordination
mechanisms for distributed processes
Monday, December 21, 2009