An introduction to Callimachus for OMG’s Ontology PSIG, 22 March 2012, focusing on the use of Callimachus for the collaborative annotation of OWL ontologies.
2. calimande@fr
limande@fr plie@fr
carrelet@fr
plaice@en_gb sand dab@en_us
lemon dab@en_us
lemon sole@en_us
Thursday, March 22, 12
Julia Child had a problem. Lack of governmental data standards hampered her work on her
1961 bestseller Mastering the Art of French Cooking. Names for fish varied between British &
American English and French. Even Latin names differed. French and US governments were
working on these problems themselves. The data was in silos.
3. Silos
$ cat foo.txt
| grep blah |
sort
1970s
A neat little
1980s 1990s
Client-Server The Early Web
package
Thursday, March 22, 12
Julia had her problem because her data was separated into silos. The history of computing is
littered with silos.
4. Universal Client Ubiquitous,
reusable applications
URL
Curation/
Proxy/Cache
Universal Connection
Web
Universal File
System
Thursday, March 22, 12
The Web is very different. Documents and processes can link to each other: Facebook,
twitter, Wordpress, Drupal, even Salesforce and Google Docs can break out of their silos via
hyperlinks.
5. Thursday, March 22, 12
Our data is still in the dinosaur age. Traditional data is hierarchical, tabular with external
schemas, and so are the systems that support them.
Photo credit: David Wood, 2009
6. Universal Client Ubiquitous,
reusable applications
URL
Curation/
Proxy/Cache
Logic and
Universal Connection interlinking
Web
of Data
Universal
Database
Thursday, March 22, 12
By using the Web to interlink structured data, we can remove data silos like we removed file
and process silos. We can make the Web into a database - a very large, distributed database
- which will be as different from the RDBMS as early software is from the Web.
7. Thursday, March 22, 12
Mallard Web page, BBC
Data comes from DBpedia, WWF and other Linked Data sites. BBC curates data on the Web to
ensure data quality. This is a fundamentally new business model for corporate data (and an
indication of how far the EU/UK are in front of the US in this nascent market).
8. Thursday, March 22, 12
Each HTML page is paired with a machine-readable data representation.
9. Thursday, March 22, 12
Like a credit card, data served by Callimachus has two sides, a human-readable side and a
machine-readable side. Linked Data in Callimachus is viewable in Web view presentable to
humans and automatically accessible to machines for reuse.
10. Credit: Bradley P. Allen, Elsevier Labs
Thursday, March 22, 12
Emerging enterprise architectures are making use of Linked Data techniques. This example
from Elsevier is typical of the genre.
11. LINKED DATA
MANAGEMENT SYSTEM
Thursday, March 22, 12
Callimachus is a framework for data-driven applications based on Linked Data principles. It allows Web authors to
quickly and easily create semantically-enabled Web applications, either using existing Linked Data or by creating
Linked Data as you go.
12. CONTENT LINKED DATA
MANAGEMENT MANAGEMENT
SYSTEM SYSTEM
DATA
TEXT
UNSTRUCTURED
Callimachus
STRUCTURED
DATA
TEXT
Thursday, March 22, 12
Callimachus, by contrast, manages primarily structured data. Linked Data makes statements about what we
know; Angola has a population of 18.5 million people, we executed a trade for $200K, the Callimachus Project
was founded in 2009. We use textual pages mostly to explain, navigate and visualize that data.
13. Thursday, March 22, 12
Callimachus is a Web application, and uses Web techniques throughout (HTTP, REST, HTML5,
CSS, JavaScript). It implements core structured data standards from the W3C (RDF, SKOS,
OWL).
14. Thursday, March 22, 12
Callimachus’ interface may be made nicer through a simple application of CSS.
15. Thursday, March 22, 12
The Callimachus psuedo file system is used to store and represent content, including RDF/
OWL data, named SPARQL queries, schemata, templates...
16. Thursday, March 22, 12
For OMG, we loaded the USPS’s Publication 28 ontology into Callimachus.
17. Thursday, March 22, 12
Documents, including data and ontologies, can be uploaded via drag-and-drop when using
an HTML5-compliant browser. File upload via a separate interface is available for older
browsers.
18. Thursday, March 22, 12
By default, Callimachus generates an HTML view of a ontology or other RDF graph. This view
is nearly at the triple level and is thus not as nice as we would like.
19. Thursday, March 22, 12
Attempting to resolve an omg.org URI will fail - Callimachus needs to be told that is should
handle a foriegn URI. We do that by associating content types with Callimachus templates.
20. Thursday, March 22, 12
In most cases, Callimachus associates content URIs with templates via an OWL class.
However, that gives us trouble when trying to visualize an OWL ontology: We don’t want to
associate all owl:Class with a template!
21. Thursday, March 22, 12
We can avoid this problem by directly adding some triples. This small Turtle file associates a
URI pattern for omg.org URIs with two Callimachus templates, one for viewing and the other
for editing.
22. Templates
• Written in XHTML+RDFa (declarative pattern);
• Parsed to create SPARQL queries;
• Query results are filled into the same template.
Thursday, March 22, 12
25. Thursday, March 22, 12
Using Callimachus templates, we can render ontological elements in any way we like. This
one shows an rdfs:label, rdfs:comment, rdf:type and rdfs:subClass relationships. Other
annotation terms can be added by writing HTML/RDFa into the associated view template.
26. Thursday, March 22, 12
The edit template allows us to change the RDF! Any fields can be edited. This template
shows only rdfs:label and rdfs:comment being edited.
27. Thursday, March 22, 12
Named SPARQL queries are associated with a URI. This interactive map was created by a
simple SPARQL query, which Callimachus converts to JSON to use as input into a Google Chart
widget.
30. David Wood
david@3roundstones.com
@prototypo
3RoundStones.com
info@3RoundStones.com
@3RoundStones
Thursday, March 22, 12
3 Round Stones produces Callimachus and offers support and licenses for enterprise versions. Please
use Callimachus and contact us if we can help you.