KEMBAR78
ISWC GoodRelations Tutorial Part 2 | PDF
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
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
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          • 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
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      •   Web page
     distinct data items    •   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/
                 RDFa
                                  XML


                This is not widely known!

25.10.2009                                  12
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
                                     Reasoner
   RDF/XML
                         Explicit
                         Model
                                          Query
        N3     Parser
                         Implicit Model

    XHTML
    +RDFa               Repository
25.10.2009                                  16
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

ISWC GoodRelations Tutorial Part 2

  • 1.
    The Web ofData 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
  • 3.
    Quick Review ofPrerequisites Martin Hepp 25.10.2009 3
  • 4.
    Learning Goals In thispart, 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 theTutorial • 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 WebTechnology 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: URIsfor 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 forEverything • 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
  • 10.
    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
  • 11.
    Turtle Syntax forRDF http://www.dajobe.org/2004/01/turtle/ 25.10.2009 11
  • 12.
    RDFa = CompleteRDF N3/ Turtle RDF/ RDFa XML This is not widely known! 25.10.2009 12
  • 13.
    Simplified Process ofUsing 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
  • 14.
    Tooling and Infrastructure Editors Repositories and Reasoners Frameworks / APIs 25.10.2009 14
  • 15.
  • 16.
    Parsers, Repositories, Reasoners Reasoner RDF/XML Explicit Model Query N3 Parser Implicit Model XHTML +RDFa Repository 25.10.2009 16
  • 17.
    Frameworks, Libraries, andAPIs • 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
  • 19.
    Twinkle Installations and Usage 25.10.2009 19
  • 20.
    Twinkle: A SPARQLQuery Tool http://www.ldodds.com/projects/twinkle/ 25.10.2009 20
  • 21.
    Twinkle: Installation • RequiresJava 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
  • 22.