This is part 2 of the ISWC 2009 tutorial on the GoodRelations ontology and RDFa for e-commerce on the Web of Linked Data.
See also
http://www.ebusiness-unibw.org/wiki/Web_of_Data_for_E-Commerce_Tutorial_ISWC2009
1. The Web of Data for E-Commerce in Brief
A Hands-on Introduction to the GoodRelations Ontology,
RDFa, and Yahoo! SearchMonkey
October 25, 2009
Westfields Conference Center near Washington, DC, USA
Martin Hepp
Universität der Bundeswehr München, Munich, Germany
Richard Cyganiak
Digital Enterprise Research Institute (DERI), Ireland
2. Logistics
08:30-10:30 Overview and Motivation: Why the Web of Data is Now 30’
Quick Review of Prerequisites 15’
The GoodRelations Ontology: E-Commerce on the Web of Data 75’
10:30-10:45 Coffee Break
10:45-12:30 RDFa: Bridging the Web of Documents with the Web of Data 45’
Expressing GoodRelations in RDFa: A Running Example 30’
GoodRelations – Advanced Topics 30’
12:30-13:30 Lunch Break
13:30-16:00 Hands-on Exercise: Annotating a Web Shop 60’
Querying the Web of Data for Offerings – SPARQL 15’
Querying the Web of Data – Exercises 15’
16:00-16:30 Coffee Break
16:30-18:00 Publishing Semantic Web Data: Make Your RDF Available 30’
Yahoo SearchMonkey and Yahoo BOSS 45’
Discussion, Conclusion, Feedback Round 15’
2
4. Learning Goals
In this part, we will
• make sure all participants have sufficient
knowledge of related topics,
and
• show how to install the Twinkle software.
25.10.2009 4
5. Prerequisites for the Tutorial
• Markup Languages • Tooling and
– XML, HTML, XHTML Infrastructure
• Semantic Web Basics – Editors
– URIs – Repositories and
Reasoners
– RDF
– Frameworks / APIs
– RDFS and OWL
• Linked Data
Principles
25.10.2009 5
6. Core Semantic Web Technology Pillars
• Global Identifiers: URIs for everything
• Data Model: RDF - A data model for exchanging conceptual graphs based
on triples
– Compatible with the design principles of the Web (especially with its distributed
nature)
– Triple: (Subject, Predicate, Object)
– Exchange syntax: RDF/XML, N3, RDFa etc.
• Ontology Languages: RDFS and OWL - formal languages that help
reduce ambiguity and codify implicit facts
– foo:human rdfs:subClassOf foo:mammal
• Query Language & Interface: SPARQL - standardized query language
and endpoint interface for RDF data
• LOD Principles: Best practices for keeping the current Web and the Web
of Data compatible
6
7. Global Identifiers: URIs for Everything
1. Make clear whether
you are referring to
something or its
representation.
URI1: Page
URI2-x: Data items
2. Distinct URIs for • Web page
distinct data items • Company
• Product
• Price information
• etc.
7
8. Creating URIs for Everything
• Web of Documents
– http://www.myshop.com/about.html
• Web of Linked Data
– http://www.myshop.com/about.html (Page)
– http://www.myshop.com/about.html#BusinessEntity
– http://www.myshop.com/about.html#Product
– http://www.myshop.com/about.html#Warranty
8
9. RDF vs. RDF/XML, N3/Turtle, RDFa
• RDF – Resource Description Framework
– Basically, the data model of representing
conceptual graphs in the form of triples
subject predicate object
<http://foo.org/joe> <http://vocab.at/likes> <http://foo.org/linda>.
<http://foo.org/joe> <http://vocab.at/name> “Joe Miller”.
25.10.2009 9
11. Turtle Syntax for RDF
http://www.dajobe.org/2004/01/turtle/
25.10.2009 11
12. RDFa = Complete RDF
N3/
Turtle
RDF/
RDFa
XML
This is not widely known!
25.10.2009 12
13. Simplified Process of Using the
Semantic Web
• Find or create ontology / vocabulary
– “Ontology Engineering”
• Create data expressed using that vocabulary
– “Ontology Population” / “Knowledge Base
Population” / “Annotating Data” / “RDFizing”
• Publish the data
• Query / reuse / combine the data
25.10.2009 13
16. Parsers, Repositories, Reasoners
Reasoner
RDF/XML
Explicit
Model
Query
N3 Parser
Implicit Model
XHTML
+RDFa Repository
25.10.2009 16
17. Frameworks, Libraries, and APIs
• Jena Semantic Web Framework: Java
framework for building Semantic Web
applications.
– http://jena.sourceforge.net/
• RDFLib: Python library for working with RDF
– http://www.rdflib.net/
• Redland RDF Libraries (aka librdf): C-based
library with APIs in Perl, Python, Tcl and Java.
– http://librdf.org
25.10.2009 17
18. Linked Data Principles
• Linked data principles, by Tim Berners-
Lee, ca. 2006
– Use URIs to identify things (anything, not just
documents)
– Use HTTP URIs – globally unique names, distributed
ownership – allows people to look up things
– Provide useful information in RDF – when someone
looks up a URI
– Include RDF links to other URIs – to enable
discovery of related information
18
20. Twinkle: A SPARQL Query Tool
http://www.ldodds.com/projects/twinkle/
25.10.2009 20
21. Twinkle: Installation
• Requires Java 1.5 or higher
• Download the distribution and unzip it into a new
directory:
– http://www.ldodds.com/projects/twinkle/twinkle-2.0-bin.zip
• Replace the file config.n3 in the "etc" subdirectory by the
file available at
– http://www.ebusiness-unibw.org/pubwiki/images/8/84/
Config.n3.txt
– Rename it to config.n3 after downloading
• Open a command prompt and execute the following:
– java -jar twinkle.jar
25.10.2009 21