Getting Started with Semantic Web Applications

Accepted Session
Short Form
Scheduled: Tuesday, June 21, 2011 from 2:30 – 3:15pm in B201


Leave rigid tables behind, and work with your data as a graph, using standard web data schemas.


Curious about the semantic web / graph stores, but don’t know where to start?
We’ll walk through setting up a community network directory webapp using standard Linked Data ontologies, using a combination of Scalatra (a Sinatra workalike in Scala), and Jena (a Java Semantic Web library).

The standard model for the semantic web / linked data is RDF, a directed, labeled graph where everything is identified by a URL (mostly). This can be viewed as a regular Object-Oriented model, where objects (nodes), that have properties (labeled edges), whose values can be data types or other objects. This makes an Object-Relational Mapping layer unnecessary, and any part of the data model can be presented in the REST paradigm at the URL it uses for its identifier. With a plethora of graph stores available, this format is a flexible and effective choice for networked data with arbitrary link depth, and the graph query language allows for very powerful patterns to be queried.

Also covered:

  • Practical tips & tricks for incorporating open web schemas into your existing app, both consuming and publishing standard semantic web data.
  • Data inferencing: adding rules to infer additional information as logical entailments of your existing model data.
  • SPARQL, the standard graph query language (a description of a graph snippet with wildcards).
  • Turning your network graphs into exciting diagrams!

Speaking experience