iswc goodrelations tutorial part 2
DESCRIPTION
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 alsohttp://www.ebusiness-unibw.org/wiki/Web_of_Data_for_E-Commerce_Tutorial_ISWC2009TRANSCRIPT
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
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
Logistics
Quick Review of Prerequisites
Martin Hepp
25.10.2009 3
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
Prerequisites for the Tutorial
• Markup Languages
– XML, HTML, XHTML
• Semantic Web Basics
– URIs
– RDF
– RDFS and OWL
• Tooling and
Infrastructure
– Editors
– Repositories and
Reasoners
– Frameworks / APIs
• Linked Data
Principles
25.10.2009 5
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
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
distinct data items
• Web page
• Company
• Product
• Price information
• etc.
7
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
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
Syntaxes: RDF/XML, N3/Turtle, RDFa
• RDF/XML – RDF in XML
• N3/Turtle – Human-readable RDF
• RDFa – RDF embedded in XHTML/HTML
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 10
Turtle Syntax for RDF
http://www.dajobe.org/2004/01/turtle/
25.10.2009 11
RDFa = Complete RDF
N3/Turtle
RDF/XML
RDFa
25.10.2009 12
This is not widely known!
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
Tooling and Infrastructure
Editors
Repositories and Reasoners
Frameworks / APIs
25.10.2009 14
Editors
25.10.2009 15
Parsers, Repositories, Reasoners
25.10.2009 16
RDF/XML Reasoner
Implicit Model
Explicit
Model
N3
XHTML
+RDFa
Parser Query
Repository
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
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
Twinkle
Installations and Usage
25.10.2009 19
Twinkle: A SPARQL Query Tool
http://www.ldodds.com/projects/twinkle/ 25.10.2009 20
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
Thank you.
25.10.2009 22