SlideShare ist ein Scribd-Unternehmen logo
1 von 184
1




Introduction to the Semantic Web
            (tutorial)

      Johnson & Johnson
       Philadelphia, USA
       October 30, 2009

       Ivan Herman, W3C
          ivan@w3.org
2


                Towards a Semantic Web
•
    Tasks often require to combine data on the Web:
    •
        hotel and travel information may come from different sites
    •
        searches in different digital libraries
    •
        etc.
•
    Humans combine these information easily even if
    •
        different terminologies are used
    •
        the information is incomplete, or buried in images,
        videos, …
3


        Example: automatic airline reservation
•
    Your automatic airline reservation
    •
        knows about your preferences
    •
        builds up knowledge base using your past
    •
        can combine the local knowledge with remote services:
         •
             airline preferences
         •
             dietary requirements
         •
             calendaring
         •
             etc
•
    It communicates with remote information (i.e., on
    the Web!)
    •
        (M. Dertouzos: The Unfinished Revolution)
4


           Example: data(base) integration
•
    Databases are very different in structure, in content
•
    Lots of applications require managing several
    databases
    •
        after company mergers
    •
        combination of administrative data for e-Government
    •
        biochemical, genetic, pharmaceutical research
    •
        combination of online library data
    •
        etc.
•
    Most of these data are accessible from the Web
    (though not necessarily public yet)
5


This problem you know very well…
6


               Example: social networks
•
    Social sites are everywhere these days (LinkedIn,
    Facebook, Dopplr, Digg, Plexo, Zyb, …)
•
    Data is not interchangeable: how many times did
    you have to add your contacts?
•
    Applications should be able to get to those data via
    standard means
    •
        there are, of course, privacy issues…
7


                 Example: digital libraries
•
    Sort of catalogues on the Web
    •
        librarians have known how to do that for centuries
    •
        goal is to have this on the Web, World-wide
    •
        extend it to multimedia data, too
•
    But it is more: software agents should also be
    librarians!
    •
        e.g., help you in finding the right publications
8


                  What is needed?
•
    (Some) data should be available for machines for
    further processing
•
    Data should be possibly combined, merged on a
    Web scale
•
    Machines may also need to reason about that data
•
    Create a Web of Data (beyond the Web of
    Documents)
9


                Find the right experts at NASA
•
    Expertise locater for nearly 70,000 NASA civil
    servants, integrating 6 or 7 geographically
    distributed databases, data sources, and web
    services…




Michael Grove, Clark & Parsia, LLC, and Andrew Schain, NASA, (SWEO Case Study)
10




So what is the Semantic Web?
11




  It is, essentially, the Web of Data.

 “Semantic Web Technologies” is a
collection of standard technologies to
         realize a Web of Data
12




•
    It is that simple…
•
    Of course, the devil is in the details
    •
        a common model has to be provided for machines to
        describe, query, etc, the data and their connections
    •
        the “classification” of the terms can become very complex
        for specific knowledge areas: this is where ontologies,
        thesauri, etc, enter the game…
13



                   In what follows…
•
    We will use a simplistic example to introduce the
    main technical concepts
•
    The details will be for later during the course
14


  The rough structure of data integration
1. Map the various data onto an abstract data
  representation
  •
      make the data independent of its internal representation…
2. Merge the resulting representations
3. Start making queries on the whole!
  •
      queries that could not have been done on the individual data
      sets
15


  A simplified bookstore data (dataset “A”)
ID                    Author Title               Publisher   Year
ISBN0-00-651409-X     id_xyz The Glass Palace    id_qpr      2000

ID        Name               Home Page
id_xyz    Ghosh, Amitav      http://www.amitavghosh.com




ID        Publ. Name         City
id_qpr    Harper Collins     London
16


1st: export your data as a set of relations
17


        Some notes on the exporting the data
•
    Relations form a graph
    •
        the nodes refer to the “real” data or contain some literal
    •
        how the graph is represented in machine is immaterial for
        now
•
    Data export does not necessarily mean physical
    conversion of the data
    •
        relations can be generated on-the-fly at query time
         •
             via SQL “bridges”
         •
             scraping HTML pages
         •
             extracting data from Excel sheets
         •
             etc.
•
    One can export part of the data
18


       Another bookstore data (dataset “F”)
               A              B          D               E

1             ID             Titre   Traducteur       Original
     ISBN0 2020386682     Le Palais A13         ISBN-0-00-651409-X
                          des
2
                          miroirs
3



6              ID          Auteur
7    ISBN-0-00-651409-X   A12


11           Nom
12   Ghosh, Amitav
13   Besse, Christianne
19


2nd: export your second set of data
20


3rd: start merging your data
21


3rd: start merging your data (cont.)
22


3rd: merge identical resources
23


                     Start making queries…
•
    User of data “F” can now ask queries like:
    •
        “give me the title of the original”
         •
             well, … « donnes-moi le titre de l’original »
•
    This information is not in the dataset “F”…
•
    …but can be retrieved by merging with dataset “A”!
24


             However, more can be achieved…
•
    We “feel” that a:author and f:auteur should be
    the same
•
    But an automatic merge doest not know that!
•
    Let us add some extra information to the merged
    data:
    •
        a:author same as f:auteur
    •
        both identify a “Person”
    •
        a term that a community may have already defined:
         •
             a “Person” is uniquely identified by his/her name and, say,
             homepage
         •
             it can be used as a “category” for certain type of resources
25


3rd revisited: use the extra knowledge
26


                Start making richer queries!
•
    User of dataset “F” can now query:
    •
        “donnes-moi la page d’accueil de l’auteur de l’originale”
         •
             well… “give me the home page of the original’s ‘auteur’”
•
    The information is not in datasets “F” or “A”…
•
    …but was made available by:
    •
        merging datasets “A” and datasets “F”
    •
        adding three simple extra statements as an extra “glue”
27


           Combine with different datasets
•
    Using, e.g., the “Person”, the dataset can be
    combined with other sources
•
    For example, data in Wikipedia can be extracted
    using dedicated tools
    •
        e.g., the “dbpedia” project can extract the “infobox”
        information from Wikipedia already…
28


Merge with Wikipedia data
29


Merge with Wikipedia data
30


Merge with Wikipedia data
31


                  Is that surprising?
•
    It may look like it but, in fact, it should not be…
•
    What happened via automatic means is done every
    day by Web users!
•
    The difference: a bit of extra rigour so that
    machines could do this, too
32


                       What did we do?
•
    We combined different datasets that
    •
        are somewhere on the web
    •
        are of different formats (mysql, excel sheet, XHTML, etc)
    •
        have different names for relations
•
    We could combine the data because some URI-s
    were identical (the ISBN-s in this case)
•
    We could add some simple additional information
    (the “glue”), possibly using common terminologies
    that a community has produced
•
    As a result, new relations could be found and
    retrieved
33


        It could become even more powerful
•
    We could add extra knowledge to the merged
    datasets
    •
        e.g., a full classification of various types of library data
    •
        geographical information
    •
        etc.
•
    This is where ontologies, extra rules, etc, come in
    •
        ontologies/rule sets can be relatively simple and small, or
        huge, or anything in between…
•
    Even more powerful queries can be asked as a
    result
34


What did we do? (cont)
35




The Basis: RDF
36


                          RDF triples
•
    Let us begin to formalize what we did!
    •
        we “connected” the data…
    •
        but a simple connection is not enough… data should be
        named somehow
    •
        hence the RDF Triples: a labelled connection between two
        resources
37


                           RDF triples (cont.)
•
     An RDF Triple (s,p,o) is such that:
      •
          “s”, “p” are URI-s, ie, resources on the Web; “o” is a URI or
          a literal
           •
               “s”, “p”, and “o” stand for “subject”, “property”, and “object”
      •
          here is the complete triple:


    (<http://…isbn…6682>, <http://…/original>, <http://…isbn…409X>)




• RDF is a general model for such triples (with
  machine readable formats like RDF/XML, Turtle,
  N3, RXR, …)
38


                     RDF triples (cont.)
•
    Resources can use any URI, e.g.:
    •
        http://www.example.org/file.xml#element(home)
    •
        http://www.example.org/file.html#home
    •
        http://www.example.org/file2.xml#xpath1(//q[@a=b])
•
    URI-s can also denote non Web entities:
    •
        http://www.ivan-herman.net/me is me
    •
        not my home page, not my publication list, but me
•
    RDF triples form a directed, labelled graph
39



     A simple RDF example (in RDF/XML)




<rdf:Description rdf:about="http://…/isbn/2020386682">
    <f:titre xml:lang="fr">Le palais des mirroirs</f:titre>
    <f:original rdf:resource="http://…/isbn/000651409X"/>
</rdf:Description>


(Note: namespaces are used to simplify the URI-s)
40


       A simple RDF example (in Turtle)




<http://…/isbn/2020386682>
    f:titre "Le palais des mirroirs"@fr ;
    f:original <http://…/isbn/000651409X> .
41


                      “Internal” nodes
•
    Consider the following statement:
    •
        “the publisher is a «thing» that has a name and an address”
•
    Until now, nodes were identified with a URI. But…
•
    …what is the URI of «thing»?
42


           Internal identifier (“blank nodes”)

    <rdf:Description rdf:about="http://…/isbn/000651409X">
       <a:publisher rdf:nodeID="A234"/>
    </rdf:Description>
    <rdf:Description rdf:nodeID="A234">
       <a:p_name>HarpersCollins</a:p_name>
       <a:city>HarpersCollins</a:city>
    </rdf:Description>


    <http://…/isbn/2020386682> a:publisher _:A234.
    _:A234 a:p_name "HarpersCollins".




•
     Syntax is serialization dependent
•
     A234 is invisible from outside (it is not a “real”
     URI!); it is an internal identifier for a resource
43



       Blank nodes: the system can also do it
•
     Let the system create a “nodeID” internally (you do
     not really care about the name…)
    <rdf:Description rdf:about="http://…/isbn/000651409X">
      <a:publisher>
          <rdf:Description>
              <a:p_name>HarpersCollins</a:p_name>
              …
          </rdf:Description>
      </a:publisher>
    </rdf:Description>
44


                      Same in Turtle



<http://…/isbn/000651409X> a:publisher [
    a:p_name "HarpersCollins";
    …
].
45


          Blank nodes: some more remarks
•
    Blank nodes require attention when merging
    •
        blanks nodes with identical nodeID-s in different graphs are
        different
    •
        implementations must be careful…
•
    Many applications prefer not to use blank nodes
    and define new URI-s “on-the-fly”
46


               RDF in programming practice
•
    For example, using Java+Jena (HP’s Bristol Lab):
    •
        a “Model” object is created
    •
        the RDF file is parsed and results stored in the Model
    •
        the Model offers methods to retrieve:
         •
             triples
         •
             (property,object) pairs for a specific subject
         •
             (subject,property) pairs for specific object
         •
             etc.
    •
        the rest is conventional programming…
•
    Similar tools exist in Python, PHP, etc.
47


                     Jena example

// create a model
Model model=new ModelMem();
Resource subject=model.createResource("URI_of_Subject")
// 'in' refers to the input file
model.read(new InputStreamReader(in));
StmtIterator iter=model.listStatements(subject,null,null);
while(iter.hasNext()) {
   st = iter.next();
   p = st.getProperty();
   o = st.getObject();
   do_something(p,o);
}
48


                     Merge in practice
•
    Environments merge graphs automatically
    •
        e.g., in Jena, the Model can load several files
    •
        the load merges the new statements automatically
49


    Integrate knowledge for Chinese Medicine
•
    Integration of a large number of TCM databases
      •
          around 80 databases, around 200,000 records each
•
    Form based query interface for end users




Courtesy of Huajun Chen, Zhejiang University, (SWEO Case Study)
50




One level higher up
   (RDFS, Datatypes)
51


                  Need for RDF schemas
•
    First step towards the “extra knowledge”:
    •
        define the terms we can use
    •
        what restrictions apply
    •
        what extra relationships are there?
•
    Officially: “RDF Vocabulary Description Language”
    •
        the term “Schema” is retained for historical reasons…
52


                      Classes, resources, …
•
    Think of well known traditional ontologies or
    taxonomies:
    •
        use the term “novel”
    •
        “every novel is a fiction”
    •
        “«The Glass Palace» is a novel”
    •
        etc.
•
    RDFS defines resources and classes:
    •
        everything in RDF is a “resource”
    •
        “classes” are also resources, but…
    •
        …they are also a collection of possible resources (i.e.,
        “individuals”)
         •
             “fiction”, “novel”, …
53


               Classes, resources, … (cont.)
•
    Relationships are defined among classes and
    resources:
    •
        “typing”: an individual belongs to a specific class
         •
             “«The Glass Palace» is a novel”
         •
             to be more precise: “«http://.../000651409X» is a novel”
    •
        “subclassing”: all instances of one are also the instances of
        the other (“every novel is a fiction”)
•
    RDFS formalizes these notions in RDF
54


             Classes, resources in RDF(S)




•
    RDFS defines the meaning of these terms
    •
        (these are all special URI-s, we just use the namespace
        abbreviation)
55


              Schema example in RDF/XML
•
     The schema part:
    <rdf:Description rdf:ID="Novel">
      <rdf:type
          rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
    </rdf:Description>




• The RDF data on a specific novel:

    <rdf:Description rdf:about="http://…/isbn/000651409X">
       <rdf:type rdf:resource="http://…/bookSchema.rdf#Novel"/>
    </rdf:Description>
56


                  Further remarks on types
•
    A resource may belong to several classes
    •
        rdf:type is just a property…
         •
             “«The Glass Palace» is a novel, but «The Glass Palace» is
             also an «inventory item»…”
    •
        i.e., it is not like a datatype!
•
    The type information may be very important for
    applications
    •
        e.g., it may be used for a categorization of possible nodes
    •
        probably the most frequently used RDF property…
         •
             (remember the “Person” in our example?)
57


                 Inferred properties




                 (<http://…/isbn/000651409X> rdf:type #Fiction)


•
    is not in the original RDF data…
•
    …but can be inferred from the RDFS rules
•
    RDFS environments return that triple, too
58


                Inference: let us be formal…
•
     The RDF Semantics document has a list of (33)
     entailment rules:
      •
          “if such and such triples are in the graph, add this and this”
      •
          do that recursively until the graph does not change
•
     The relevant rule for our example:

    If:
      uuu rdfs:subClassOf xxx .
      vvv rdf:type uuu .
    Then add:
      vvv rdf:type xxx .
59


                           Properties
•
    Property is a special class (rdf:Property)
    •
        properties are also resources identified by URI-s
•
    There is also a possibility for a “sub-property”
    •
        all resources bound by the “sub” are also bound by the other
•
    Range and domain of properties can be specified
    •
        i.e., what type of resources serve as object and subject
60


            Property specification serialized
•
     In RDF/XML:
    <rdf:Property rdf:ID="title">
      <rdfs:domain rdf:resource="#Fiction"/>
      <rdfs:range rdf:resource="http://...#Literal"/>
    </rdf:Property>


• In Turtle:
    :title
      rdf:type    rdf:Property;
      rdfs:domain :Fiction;
      rdfs:range rdfs:Literal.
61


                    What does this mean?
•
     Again, new relations can be deduced. Indeed, if
    :title
      rdf:type    rdf:Property;
      rdfs:domain :Fiction;
      rdfs:range rdfs:Literal.
    <http://…/isbn/000651409X> :title "The Glass Palace" .




• then the system can infer that:

    <http://…/isbn/000651409X> rdf:type :Fiction .
62


                             Literals
•
    Literals may have a data type
    •
        floats, integers, booleans, etc, defined in XML Schemas
    •
        full XML fragments
•
    (Natural) language can also be specified
63


               Examples for datatypes



<http://…/isbn/000651409X>
      :page_number "543"^^xsd:integer ;
      :publ_date   "2000"^^xsd:gYear ;
      :price       "6.99"^^xsd:float .
64


          A bit of RDFS can take you far…
•
    Remember the power of merge?
•
    We could have used, in our example:
    •
        f:auteur is a subproperty of a:author and vice versa
        (although we will see other ways to do that…)
•
    Of course, in some cases, more complex
    knowledge is necessary (see later…)
65


       Another relatively simple application

•
    Goal: reuse of older
    experimental data
•
    Keep data in
    databases or XML,
    just export key “fact”
    as RDF
•
    Use a faceted
    browser to visualize
    and interact with the
    result


Courtesy of Nigel Wilkinson, Lee Harland, Pfizer Ltd, Melliyal Annamalai, Oracle (SWEO Case Study)
66




How to get RDF Data?
(Microformats, GRDDL, RDFa)
67


                  Simple approach
•
    Write RDF/XML or Turtle “manually”
•
    In some cases that is necessary, but it really does
    not scale…
68


               RDF with XHTML and XML
•
    Obviously, a huge source of information
•
    By adding some “meta” information, the same
    source can be reused for, eg, data integration,
    better mashups, etc
    •
        typical example: your personal information, like address,
        should be readable for humans and processable by
        machines
•
    Two solutions have emerged:
    •
        extract the structure from the page and convert the content
        into RDF
    •
        add RDF statements directly into XHTML via RDFa
69


                      Extract RDF
•
    Use intelligent “scrapers” or “wrappers” to extract a
    structure (hence RDF) from a Web pages or XML
    files…
•
    … and then generate RDF automatically (e.g., via
    an XSLT script)
•
    GRDDL formalizes the this general scheme
70


    Formalizing the scraper approach: GRDDL
•
     GRDDL formalizes the scraper approach. For
     example:
    <html xmlns="http://www.w3.org/1999/">
      <head profile="http://www.w3.org/2003/g/data-view">
        <title>Some Document</title>
        <link rel="transformation" href="http:…/dc-extract.xsl"/>
        <meta name="DC.Subject" content="Some subject"/>
        ...
      </head>
      ...
      <span class="date">2006-01-02</span>
      ...
    </html>



• yields, through dc-extract.xsl:
    <>
         dc:subject "Some subject";
         dc:date "2006-01-02" .
71


                  GRDDL with XML
•
    The approach is very similar to the XHTML case
•
    The appropriate attributes are added to the XML
    namespace document
•
    Otherwise it is identical
72


             Bridge to relational databases
•
    Data on the Web are mostly stored in databases
•
    “Bridges” are being defined:
    •
        a layer between RDF and the relational data
         •
             RDB tables are “mapped” to RDF graphs, possibly on the fly
         •
             different mapping approaches are being used
    •
        a number RDB systems offer this facility already (eg,
        Oracle, OpenLink, …)
•
    A survey on mapping techniques has been
    published at W3C
•
    A W3C group has just started to standardize this
73




Linking Data
74


            Linking Open Data Project
•
    Goal: “expose” open datasets in RDF
•
    Set RDF links among the data items from different
    datasets
•
    Set up query endpoints
•
    Altogether billions of triples, millions of links…
75


            Example data source: DBpedia
•
    DBpedia is a community effort to
    •
        extract structured (“infobox”) information from Wikipedia
    •
        provide a query endpoint to the dataset
    •
        interlink the DBpedia dataset with other datasets on the
        Web
76


Extracting Wikipedia structured data
         @prefix dbpedia <http://dbpedia.org/resource/>.
         @prefix dbterm <http://dbpedia.org/property/>.

         dbpedia:Amsterdam
           dbterm:officialName “Amsterdam” ;
           dbterm:longd “4” ;
           dbterm:longm “53” ;
           dbterm:longs “32” ;
           ...
           dbterm:leaderTitle “Mayor” ;
           dbterm:leaderName dbpedia:Job_Cohen ;
           ...
           dbterm:areaTotalKm “219” ;
           ...
         dbpedia:ABN_AMRO
           dbterm:location dbpedia:Amsterdam ;
           ...
77


    Automatic links among open datasets
      <http://dbpedia.org/resource/Amsterdam>
        owl:sameAs <http://rdf.freebase.com/ns/...> ;
        owl:sameAs <http://sws.geonames.org/2759793> ;
        ...




  <http://sws.geonames.org/2759793>
    owl:sameAs <http://dbpedia.org/resource/Amsterdam>
    wgs84_pos:lat “52.3666667” ;
    wgs84_pos:long “4.8833333” ;
    geo:inCountry <http://www.geonames.org/countries/#NL> ;
   ...




Processors can switch automatically from one to the other…
78


The LOD “cloud”, March 2008
79


The LOD “cloud”, September 2008
80


The LOD “cloud”, July 2009
81


Using the LOD to build Web site: BBC
82


Using the LOD to build Web site: BBC
83


Using the LOD to build Web site: BBC
84


    Application specific portions of the cloud
•
    Eg, “bio” related datasets
    •
        done, partially, by the “Linking Open Drug Data” task force
        of the HCLS IG at W3C
85


Linked Open eGov Data
86


         You publish the raw data, we use it…




Examples from RPI’s Data-gov Wiki, Jim Hendler & al.
87




Query RDF Data
    (SPARQL)
88


                      RDF data access
•
    How do I query the RDF data?
    •
        e.g., how do I get to the DBpedia data?
89


                    Querying RDF graphs
•
     Remember the Jena idiom:
    StmtIterator iter=model.listStatements(subject,null,null);
    while(iter.hasNext()) {
        st = iter.next();
        p = st.getProperty(); o = st.getObject();
        do_something(p,o);


• In practice, more complex queries into the RDF
  data are necessary
      • something like: “give me the (a,b) pair of resources, for
        which there is an x such that (x parent a) and (b brother x)
        holds” (ie, return the uncles)
      • these rules may become quite complex
• The goal of SPARQL (Query Language for RDF)
90


                Analyse the Jena example
    StmtIterator iter=model.listStatements(subject,null,null);
    while(iter.hasNext()) {
        st = iter.next();
        p = st.getProperty(); o = st.getObject();
        do_something(p,o);


•
     The (subject,?p,?o) is a pattern for what we
     are looking for (with ?p and ?o as “unknowns”)
91


                 General: graph patterns
•
    The fundamental idea: use graph patterns
    •
        the pattern contains unbound symbols
    •
        by binding the symbols, subgraphs of the RDF graph are
        selected
    •
        if there is such a selection, the query returns bound
        resources
92


              Our Jena example in SPARQL
    SELECT ?p ?o
    WHERE {subject ?p ?o}

•
    The triples in WHERE define the graph pattern,
    with ?p and ?o “unbound” symbols
•
    The query returns all p,o pairs
93


               Simple SPARQL example
SELECT ?isbn ?price ?currency # note: not ?x!
WHERE {?isbn a:price ?x. ?x rdf:value ?price. ?x p:currency ?currency.}
94


               Simple SPARQL example
SELECT ?isbn ?price ?currency # note: not ?x!
WHERE {?isbn a:price ?x. ?x rdf:value ?price. ?x p:currency ?currency.}

 •
     Returns:
     [[<..49X>,33,£], [<..49X>,50,€], [<..6682>,60,€],
     [<..6682>,78,$]]
95


                    Pattern constraints
SELECT ?isbn ?price ?currency # note: not ?x!
WHERE { ?isbn a:price ?x. ?x rdf:value ?price. ?x p:currency ?currency.
        FILTER(?currency == € }

 •
     Returns: [[<..409X>,50,€], [<..6682>,60,€]]
96


              Other SPARQL features
•
    Limit the number of returned results; remove
    duplicates, sort them, …
•
    Optional branches in the query
•
    Specify several data sources (via URI-s) within the
    query (essentially, a merge!)
•
    Construct a graph combining a separate pattern
    and the query results
•
    Use datatypes and/or language tags when
    matching a pattern
97


              SPARQL usage in practice
•
    SPARQL is usually used over the network
    •
        separate documents define the protocol and the result
        format
    •
        SPARQL Protocol for RDF with HTTP and SOAP bindings
    •
        SPARQL results in XML or JSON formats
•
    Big datasets usually offer “SPARQL endpoints”
    using this protocol
    •
        typical example: SPARQL endpoint to DBpedia
98


SPARQL as a unifying point
99


                       Remember this example?
•
    The access to all the data is based on SPARQL
    queries




Courtesy of Huajun Chen, Zhejiang University, (SWEO Case Study)
100




Ontologies
   (OWL)
101


                             Ontologies
•
    RDFS is useful, but does not solve all possible
    requirements
•
    Complex applications may want more possibilities:
    •
        characterization of properties
    •
        identification of objects with different URI-s
    •
        disjointness or equivalence of classes
    •
        construct classes, not only name them
    •
        can a program reason about some terms? E.g.:
         •
             “if «Person» resources «A» and «B» have the same
             «foaf:email» property, then «A» and «B» are identical”
    •
        etc.
102


                     Ontologies (cont.)
•
     The term ontologies is used in this respect:

    “defines the concepts and relationships used to describe
    and represent an area of knowledge”

• RDFS can be considered as a simple ontology
  language
• Languages should be a compromise between
      • rich semantics for meaningful applications
      • feasibility, implementability
103


          Web Ontology Language = OWL
•
    OWL is an extra layer, a bit like RDF Schemas
    •
        own namespace, own terms
    •
        it relies on RDF Schemas
•
    It is a separate recommendation
    •
        actually… there is a 2004 version of OWL (“OWL 1”)
    •
        and there is an update (“OWL 2”) to be published in 2009
104


                 OWL is complex…
•
    OWL is a large set of additional terms
•
    We will not cover the whole thing here…
105


                      Term equivalences
•
    For classes:
    •
        owl:equivalentClass: two classes have the same
        individuals
    •
        owl:disjointWith: no individuals in common
•
    For properties:
    •
        owl:equivalentProperty
         •
             remember the a:author vs. f:auteur
    •
        owl:propertyDisjointWith
•
    For individuals:
    •
        owl:sameAs: two URIs refer to the same concept
        (“individual”)
    •
        owl:differentFrom: negation of owl:sameAs
106



Connecting to French…
107


          Typical usage of owl:sameAs
•
    Linking our example of Amsterdam from one data
    set (DBpedia) to the other (Geonames):

        <http://dbpedia.org/resource/Amsterdam>
          owl:sameAs <http://sws.geonames.org/2759793>;




• This is the main mechanism of “Linking” in the
  Linking Open Data project
108


                Property characterization
•
    In OWL, one can characterize the behaviour of
    properties (symmetric, transitive, functional, inverse
    functional…)
•
    One property may be the inverse of another
•
    OWL also separates data and object properties
    •
        “datatype property” means that its range are typed literals
109


                 What this means is…
•
    If the following holds in our triples:
:email rdf:type owl:InverseFunctionalProperty.
<A> :email "mailto:a@b.c".
<B> :email "mailto:a@b.c".


    then, processed through OWL, the following
    holds, too:
<A> owl:sameAs <B>.


• I.e., new relationships were discovered again
  (beyond what RDFS could do)
110


                 Property chains (OWL 2)
•
     Properties, when applied one after the other, may
     be subsumed by yet another one:
      •
          “if a person «P» was born in city «A» and «A» is in country
          «B» then «P» was born in country «B»”
      •
          more formally:

    ex:born_in_country owl:propertyChainAxiom
                (ex:born_in_city ex:city_in_country).




• More than two constituents can be used
• There are some restrictions to avoid “circular”
  specifications
111


                        Keys (OWL 2)
•
    Inverse functional properties are important for
    identification of individuals
    •
        think of the email examples
•
    But… identification based on one property may not
    be enough
112


                     Keys (OWL 2)
      “if two persons have the same emails and the same
      homepages then they are identical”

•
    Identification is based on the identical values of two
    properties
•
    The rule applies to persons only
113


               Previous rule in OWL 2




:Person rdf:type owl:Class;
   owl:hasKey (:email :homepage) .
114


                   What it means is…
 If:
<A> rdf:type :Person ;
   :email    "mailto:a@b.c";
   :homepage "http://www.ex.org".

<B> rdf:type :Person ;
   :email    "mailto:a@b.c";
   :homepage "http://www.ex.org".


 then, processed through OWL 2, the following
 holds, too:
<A> owl:sameAs <B>.
115


                     Classes in OWL
•
    In RDFS, you can subclass existing classes…
    that’s all
•
    In OWL, you can construct classes from existing
    ones:
    •
        enumerate its content
    •
        through intersection, union, complement
    •
        Etc
116


                 Classes in OWL (cont)
•
    OWL makes a stronger conceptual distinction
    between classes and individuals
    •
        there is a separate term for owl:Class, to make the
        difference (a specialization of the RDFS class)
    •
        individuals are separated into a special class called
        owl:Thing
•
    Eg, a precise classification would be:

ex:Person rdf:type owl:Class.
<uri-for-Amitav-Ghosh>
    rdf:type owl:Thing;
    rdf:type owl:Person .
117



      Classes contents can be enumerated

:£ rdf:type owl:Thing.
:€ rdf:type owl:Thing.
:¥ rdf:type owl:Thing.
:Currency
    rdf:type owl:Class;
    owl:oneOf (:€ :£ :¥).




•
    I.e., the class consists of exactly of those
    individuals
118


        Union of classes can be defined

:Novel           rdf:type owl:Class.
:Short_Story     rdf:type owl:Class.
:Poetry          rdf:type owl:Class.
:Literature rdf:type owl:Class;
   owl:unionOf (:Novel :Short_Story :Poetry).




•
    Other possibilities: complementOf,
    intersectionOf, …
119


                      For example…
 If:
:Novel           rdf:type owl:Class.
:Short_Story     rdf:type owl:Class.
:Poetry          rdf:type owl:Class.
:Literature rdf:type owl:Class;
   owl:unionOf (:Novel :Short_Story :Poetry).
<myWork> rdf:type :Novel .



 then the following holds, too:

<myWork> rdf:type :Literature .
120


       It can be a bit more complicated…
 If:
:Novel           rdf:type owl:Class.
:Short_Story     rdf:type owl:Class.
:Poetry          rdf:type owl:Class.
:Literature rdf:type owlClass;
   owl:unionOf (:Novel :Short_Story :Poetry).
fr:Roman owl:equivalentClass :Novel .
<myWork> rdf:type fr:Roman .



 then, through the combination of different terms,
 the following still holds:
<myWork> rdf:type :Literature .
121


               What we have so far…
•
    The OWL features listed so far are already fairly
    powerful
•
    E.g., various databases can be linked via
    owl:sameAs, functional or inverse functional
    properties, etc.
•
    Many inferred relationship can be found using a
    traditional rule engine
122


        However… that may not be enough
•
    Very large vocabularies might require even more
    complex features
    •
        typical usage example: definition of all concepts in a health
        care environment
    •
        a major issue: the way classes (i.e., “concepts”) are defined
•
    OWL includes those extra features but… the
    inference engines become (much) more complex
123


                 Property value restrictions
•
    Classes are created by restricting the property
    values on its individuals
•
    For example: how would I characterize a “listed
    price”?
    •
        it is a price (which may be a general term), but one that is
        given in one of the “allowed” currencies (say, €, £, or ¥)
    •
        more formally:
         •
             the value of “p:currency”, when applied to a resource on
             listed price, must be of one of those values…
         •
             …thereby defining the class of “listed price”
124


                      Restrictions formally
•
     Defines a class of type owl:Restriction with a
      •
          reference to the property that is constrained
      •
          definition of the constraint itself
•
     One can, e.g., subclass from this node when
     defining a particular class


    :Listed_Price rdfs:subClassOf [
           rdf:type           owl:Restriction;
           owl:onProperty     p:currency;
           owl:allValuesFrom  :Currency.
        ].
125


                    Possible usage…
 If:
:Listed_Price rdfs:subClassOf [
       rdf:type           owl:Restriction;
       owl:onProperty     p:currency;
       owl:allValuesFrom  :Currency.
    ].
:price rdf:type :Listed_Price .
:price p:currency <something> .




 then the following holds:
<something> rdf:type :Currency .
126


                      Other restrictions

•
    allValuesFrom could be replaced by:
    •
        someValuesFrom
         •
             e.g., I could have said: there should be a price given in at
             least one of those currencies
    •
        hasValue, when restricted to one specific value
•
    Cardinality restrictions: instead of looking at the
    values of properties, their number is considered
    •
        eg, a specific property should occur exactly once
127


                     Datatypes in OWL
•
    RDF Literals can have a datatypes, OWL adopts
    those
•
    But more complex vocabularies require datatypes
    “restrictions”; eg, numeric intervals
    •
        “I am interested in a price range between €5 and €15”
•
    RDF allows any URI to be used as datatypes
    •
        ie, one could use XML Schemas to define, eg, numeric
        intervals
    •
        but it is very complex, and reasoners would have to
        understand a whole different syntax
128


          Datatype restrictions (OWL 2)
•
    For each datatype, XML Schema defines possible
    restriction “facets”: min and max for numeric types,
    length for strings, etc
•
    OWL uses these facets to define datatype ranges
    for its own use
129


     Definition of a numeric interval in OWL 2

    :AllowedPrice rdf:type rdfs:Datatype;
        owl:onDatatype xsd:float;
        owl:withRestriction (
            [ xsd:minInclusive 5.0 ]
            [ xsd:maxExclusive 15.0 ]
        ) .




•
     The possible facets depend on the datatype:
     xsd:pattern, xsd:length, xsd:maxLength,
     …
130


Typical usage of OWL 2 datatype restrictions

 :Affordable_book rdf:type owl:Class;
     rdfs:subClassOf [
       rdf:type                   owl:Restriction;
       owl:onProperty             p:price_value;
       owl:allValuesFrom [
           rdf:type rdfs:Datatype;
           owl:onDatatype xsd:float;
           owl:withRestriction (
                 [ xsd:minInclusive 5.0 ]
                 [ xsd:maxExclusive 15.0 ]
           )
       ]
    ].




ie: an affordable book has a price between 5.0 and
15.0
131


                      But: OWL is hard!
•
    The combination of class constructions with various
    restrictions is extremely powerful
•
    What we have so far follows the same logic as
    before
    •
        extend the basic RDF and RDFS possibilities with new
        features
    •
        define their semantics, ie, what they “mean” in terms of
        relationships
    •
        expect to infer new relationships based on those
•
    However… a full inference procedure is hard
    •
        not implementable with simple rule engines, for example
132


                        OWL “species”
•
    OWL species comes to the fore:
    •
        restricting which terms can be used and under what
        circumstances (restrictions)
    •
        if one abides to those restrictions, then simpler inference
        engines can be used
•
    They reflect compromises: expressibility vs.
    implementability
133


        Unrestricted OWL (a.k.a. “OWL Full”)
•
    No constraints on any of the constructs
    •
        owl:Class is just syntactic sugar for rdfs:Class
    •
        owl:Thing is equivalent to rdfs:Resource
    •
        this means that:
         •
             Class can also be an individual, a URI can denote a property
             as well as a Class
               •
                   e.g., it is possible to talk about class of classes, apply properties
                   on them
               •
                   etc
    •
        etc.
•
    Extension of RDFS in all respects
•
    But: no system may exist that infers everything one
    might expect
134


                         OWL Full usage
•
    Nevertheless OWL Full is essential
    •
        it gives a generic framework to express many things with
        precise semantics
    •
        some application actually just need to express and
        interchange terms (even with possible scruffiness)
•
    Applications may control what terms are used and
    how
    •
        in fact, they may define their own sub-language via, eg, a
        vocabulary
         •
             thereby ensuring a manageable inference procedure
135


                                 OWL DL
•
    A number of restrictions are defined
    •
        classes, individuals, object and datatype properties, etc, are
        fairly strictly separated
    •
        object properties must be used with individuals
         •
             i.e., properties are really used to create relationships between
             individuals
    •
        no characterization of datatype properties
    •
        …
•
    But: well known inference algorithms exist!
136


              Examples for restrictions
•
    The following is not “legal” OWL DL:

<q> rdf:type <A>.        # A is a class, q is an individual
<r> rdf:type <q>.        # error: q cannot be used for a class, too
<A> ex:something <B>.    # error: properties are for individuals only
<q> ex:something <s>.    # error: same property cannot be used as
<p> ex:something “54”.   #   object and datatype property
137


                       OWL DL usage
•
    Abiding to the restrictions means that very large
    ontologies can be developed that require precise
    procedures
    •
        eg, in the medical domain, biological research, energy
        industry, financial services (eg, XBRL), etc
    •
        the number of classes and properties described this way
        can go up to the many thousands
•
    OWL DL has become a language of choice to
    define and manage formal ontologies in general
    •
        even if their usage is not necessarily on the Web
138

         OWL 2 defines further species
               a.k.a. “profiles”
•
    Further restrictions on how terms can be used and
    what inferences can be expected
139


                      OWL 2 profiles: EL
•
    Goal: classification and instance queries in
    polynomial time
•
    Suitable for
    •
        very large number of classes and/or properties
    •
        not require complex expressions
         •
             eg: SNOMED
•
    Some excluded features
    •
        no cardinality restrictions, fewer property restrictions
    •
        no inverse, reflexive, disjoint, symmetric, asymmetric,
        functional or inverse functional properties
    •
        class disjunction
    •
        …
140


                     OWL 2 profiles: QL
•
    Goal: conjunctive queries on top of relational
    databases (essentially: query rewriting to SQL)
•
    Suitable for
    •
        lightweight ontologies, but large data
•
    Some excluded features
    •
        functional and inverse functional properties, sameAs, keys
    •
        fewer property restrictions
    •
        no cardinality restrictions
    •
        transitive properties, property chains
    •
        …
141


                      OWL 2 profiles: RL
•
    Goal: polynomial reasoning on top of rule engines
•
    Suitable for
    •
        relatively lightweight ontologies, but large data
•
    Some excluded features
    •
        fewer property restrictions
    •
        fewer cardinality restrictions (at most 0/1)
    •
        constraints on class expressions (union, intersections, etc)
        when used in subclass expressions
    •
        no datatype restrictions
    •
        …
142


                  Ontology development
•
    The hard work is to create the ontologies
    •
        requires a good knowledge of the area to be described
    •
        some communities have good expertise already (e.g.,
        librarians)
    •
        OWL is just a tool to formalize ontologies
    •
        large scale ontologies are often developed in a community
        process
•
    Ontologies should be shared and reused
    •
        can be via the simple namespace mechanisms…
    •
        …or via explicit import
143


            Must I use large ontologies?
•
    NO!!!
•
    Many applications are possible with RDFS and a
    just a little bit of OWL
    •
        a few terms, whose meaning is defined in OWL, and that
        application can handle directly
    •
        OWL RL is a step to create such a generic OWL level
•
    Big ontologies can be expensive (both in time and
    money); use them only when really necessary!
144


               Ontologies examples
•
    eClassOwl: eBusiness ontology for products and
    services, 75,000 classes and 5,500 properties
•
    National Cancer Institute’s ontology: about 58,000
    classes
•
    Open Biomedical Ontologies Foundry: a collection
    of ontologies, including the Gene Ontology to
    describe gene and gene product attributes in any
    organism or protein sequence and annotation
    terminology and data (UniProt)
•
    BioPAX: for biological pathway data
145


    Example: improved search via ontology
•
    Search results are re-ranked using ontologies
•
    Related terms are highlighted, usable for further
    search
146


    Example: improved search via ontology
•
    Same dataset, different ontology
    •
        (ontology is on non-animal experimentation)
147


                 Eli Lilly’s Target Assessment Tool
•
     Prioritization of
     drug target,
     integrating data
     from different
     sources and
     formats
•
     Integration,
     search via
     ontologies
     (proprietary and
     public)


    Courtesy of Susie Stephens, Eli Lilly (SWEO Case Study)
148


         Help for deep sea drilling operations

•
    Integration of
    experience and data in
    the planning of deep
    sea drilling processes
•
    Discover relevant
    experiences
     •
         uses an ontology backed
         search engine




Courtesy of David Norheim and Roar Fjellheim, Computas AS (SWEO Use Case)
149




Rules
 (RIF)
150


                              Rules
•
    There is a long history of rule languages and rule-
    based systems
    •
        eg: logic programming (Prolog), production rules
•
    Lots of small and large rule systems (from mail
    filters to expert systems)
•
    Hundreds of niche markets
151


             Why rules on the Semantic Web?
•
    There are conditions that ontologies (ie, OWL)
    cannot express
    •
        a well known example is Horn rules: (P1 ∧ P2 ∧ …) → C
         •
             (though OWL 2 property chains cover some cases)
•
    A different way of thinking — people may feel more
    familiar in one or the other
152


             Things you may want to express
•
     An example from our bookshop integration:
      •
          “a novel with over 500 pages and costing less than €5 is a
          cheap book”
      •
          something like (in an ad-hoc syntax):

    If { ?x rdf:type p:Novel;
            p:page_number ?p;
            p:price [
                p:currency p:€;
                rdf:value ?z
            ].
          ?p > "500"^^xsd:integer.
          ?z < "5.0"^^xsd:double. }
    then { ?x rdf:type p:CheapBook }
153


        A new requirement: exchange of rules
•
    Applications may want to exchange their rules:
    •
        negotiate eBusiness contracts across platforms: supply
        vendor-neutral representation of your business rules so that
        others may find you
    •
        describe privacy requirements and policies, and let clients
        “merge” those (e.g., when paying with a credit card)
•
    Hence the name of the working group: Rule
    Interchange Format
    •
        goal is a language that
         •
             expresses the rules a bit like a rule language
         •
             can be used to exchange rules among engines
154


                     Notes on RIF (cont)
•
    RIF does not concentrate on RDF only
    •
        ie, certain constructions go beyond what RDF can express
•
    But there is a “subset” that is RDF and also OWL
    related
•
    For the coming few slides, forget about RDF
    •
        we will come back to it. Promise!
155


In an ideal World
156


                     In the real World…
•
    Rule based systems can be very different
    •
        different rule semantics (based on various type of model
        theories, on proof systems, etc)
    •
        production rule systems, with procedural references, state
        transitions, etc
•
    Such universal exchange format is not feasible
•
    The idea is to define “cores” for a family of
    languages with “variants”
157


RIF “core”: only partial interchange
158


                     RIF “dialects”




•
    Possible dialects: F-logic, production rules, fuzzy or
    probabilistic logic, …
159


Role of dialects
160


Role of dialects
161


Role of dialects
162


Role of dialects
163


                           However…
•
    Even this model does not completely work
•
    The gap between production rules and “traditional”
    logic systems is too large
•
    A hierarchy of cores is necessary:
    •
        a Basic Logic Dialect and Production Rule Dialect as “cores”
        for families of languages
    •
        a common RIF Core binding these two
164


Hierarchy of cores
165


                        Current status
•
    Candidate Recommendation published in October
    2009
    •
        what this means: technical work is done, cross-checked
        against implementations
166


                              RIF Core
•
    Core defines
    •
        a “presentation syntax”, which is really to… present the
        constructions (is not necessarily implemented in tools)
    •
        a formal XML syntax to encode and exchange the rules
•
    A Core document is
    •
        some directives like import, prefix settings for URI-s, etc
    •
        a sequence of implications, possibly involving built-in
        predicates on datatypes
167


                      RIF Core example
Document(
  Prefix(cpt http://example.com/concepts#)
  Prefix(ppl http://example.com/people#)
  Prefix(bks http://example.com/books#)
    Group
    (
      Forall ?Buyer ?Item ?Seller (
          cpt:buy(?Buyer ?Item ?Seller):- cpt:sell(?Seller ?Item ?Buyer)
      )
      cpt:sell(ppl:John bks:LeRif ppl:Mary)
    )
)




infers the following relationship:

cpt:buy(ppl:Mary bks:LeRif ppl:John)
168


               Additional RIF Core features
•
    RIF Core includes some extra features
    •
        built-in datatypes and predicates
    •
        notion of “local names”, a bit like RDF’s blank nodes
    •
        “classification”, like typing in RDFS and OWL
         •
             p # T
169


         What about RDF(S), OWL, and RIF?
•
    Typical scenario: applications exchange rules that
    refer to RDF data
•
    To make that work:
    •
        RDF facts/triples have to be representable in Core
    •
        harmonization on the concepts is necessary
    •
        the formal semantics of the two worlds should also be
        aligned
•
    There is a separate document that brings these
    together
170


                          Rules vs OWL?
•
    In a SW application, should I use RIF, OWL, or
    both?
•
    The two approaches are complimentary
    •
        there are things that rules cannot really express or infer
         •
             eg, inferencing complex relationships among classes
    •
        there are things that ontologies cannot really express or in
        only a very complicated manner
         •
             eg, complex Horn rules
•
    Often, applications require both
171




What have we achieved?
   (putting all this together)
172


                Other SW technologies
•
    There are other technologies that we do not have
    time for here
    •
        find RDF data associated with general URI-s: POWDER
    •
        bridge to thesauri, glossaries, etc: SKOS
173



Remember the integration example?
174


Same with what we learned
175


      Example: personalized tourist itinerary

                                                               •
                                                                   Integration of
                                                                   relevant data in
                                                                   Zaragoza (using
                                                                   RDF and ontologies)
                                                               •
                                                                   Use rules on the
                                                                   RDF data to provide
                                                                   a proper itinerary




Courtesy of Jesús Fernández, Mun. of Zaragoza, and Antonio Campos, CTIC (SWEO Use Case)
176




Available documents, resources
177




    Available specifications: Primers, Guides
•
    The “RDF Primer” or “OWL 2 Primer” give a formal
    introduction to RDF(S) and OWL
•
    GRDDL and RDFa Primers have also been
    published
•
    The W3C Semantic Web Activity Homepage has
    links to all the specifications and guides:
    •
        http://www.w3.org/2001/sw/
178


                    “Core” vocabularies
•
    There are also a number widely used “core
    vocabularies”
    •
        Dublin Core: about information resources, digital libraries,
        with extensions for rights, permissions, digital right
        management
    •
        FOAF: about people and their organizations
    •
        DOAP: on the descriptions of software projects
    •
        SIOC: Semantically-Interlinked Online Communities
    •
        vCard in RDF
    •
        …
•
    One should never forget: ontologies/vocabularies
    must be shared and reused!
179


                        Some books
•
    J. Pollock: Semantic Web for Dummies, 2009
•
    G. Antoniu and F. van Harmelen: Semantic Web
    Primer, 2nd edition in 2008
•
    D. Allemang and J. Hendler: Semantic Web for the
    Working Ontologist, 2008
•
    P. Hitzler, R. Sebastian, M. Krötzsch: Foundation
    of Semantic Web Technologies, 2009
•
    …

    See the separate Wiki page collecting book references:
    http://esw.w3.org/topic/SwBooks
180


                  Further information and Fora
•
    Planet RDF aggregates a number of SW blogs:
    •
        http://planetrdf.com/
•
    Semantic Web Interest Group
    •
        a forum developers with archived (and public) mailing list,
        and a constant IRC presence on freenode.net#swig
         •
             anybody can sign up on the list:
              •
                  http://www.w3.org/2001/sw/interest/
    •
        there are also similar list for Linked Open Data, OWL
        developers, etc
         •
             contact me for details if you cannot find them
181




        Lots of Tools (not an exhaustive list!)
•
    Categories:                    •
                                       Some names:
    •
        Triple Stores
                                       •
                                           Jena, AllegroGraph, Mulgara,
                                           Sesame, flickurl, …
    •
        Inference engines              •
                                           TopBraid Suite, Virtuoso
    •
        Converters                         environment, Falcon, Drupal 7,
                                           Redland, Pellet, …
    •
        Search engines                 •
                                           Disco, Oracle 11g, RacerPro,
    •
        Middleware                         IODT, Ontobroker, OWLIM, Tallis
                                           Platform, …
    •
        CMS                            •
                                           RDF Gateway, RDFLib, Open
    •
        Semantic Web browsers              Anzo, DartGrid, Zitgist, Ontotext,
                                           Protégé, …
    •
        Development environments       •
                                           Thetus publisher, SemanticWorks,
    •
        Semantic Wikis                     SWI-Prolog, RDFStore…
    •
        …                              •
                                           …
182


                   Conclusions
•
    The Semantic Web is about creating a Web of
    Data
•
    There is a great and very active user and
    developer community, with new applications
183


By the way: the book is real
184




       Thank you for your attention!


These slides are also available on the Web:

  http://www.w3.org/2009/Talks/1030-Philadelphia-IH/

Weitere ähnliche Inhalte

Was ist angesagt?

Semantic Web Landscape 2009
Semantic Web Landscape 2009Semantic Web Landscape 2009
Semantic Web Landscape 2009LeeFeigenbaum
 
20111114 b hyland government data and publishers
20111114   b hyland government data and publishers20111114   b hyland government data and publishers
20111114 b hyland government data and publishersBernadette Hyland-Wood
 
Social Networks and the Semantic Web: a retrospective of the past 10 years
Social Networks and the Semantic Web: a retrospective of the past 10 yearsSocial Networks and the Semantic Web: a retrospective of the past 10 years
Social Networks and the Semantic Web: a retrospective of the past 10 yearsPeter Mika
 
Making the Web Searchable - Keynote ICWE 2015
Making the Web Searchable - Keynote ICWE 2015Making the Web Searchable - Keynote ICWE 2015
Making the Web Searchable - Keynote ICWE 2015Peter Mika
 
Social web & linked data
Social web & linked dataSocial web & linked data
Social web & linked dataSerge Garlatti
 
Open Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata Commons
Open Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata CommonsOpen Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata Commons
Open Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata CommonsDomino Data Lab
 
Linked Data and Locah, UKSG2011
Linked Data and Locah, UKSG2011 Linked Data and Locah, UKSG2011
Linked Data and Locah, UKSG2011 Jane Stevenson
 
Is this BIG DATA which I see before me?
Is this BIG DATA which I see before me?Is this BIG DATA which I see before me?
Is this BIG DATA which I see before me?Dorothea Salo
 

Was ist angesagt? (8)

Semantic Web Landscape 2009
Semantic Web Landscape 2009Semantic Web Landscape 2009
Semantic Web Landscape 2009
 
20111114 b hyland government data and publishers
20111114   b hyland government data and publishers20111114   b hyland government data and publishers
20111114 b hyland government data and publishers
 
Social Networks and the Semantic Web: a retrospective of the past 10 years
Social Networks and the Semantic Web: a retrospective of the past 10 yearsSocial Networks and the Semantic Web: a retrospective of the past 10 years
Social Networks and the Semantic Web: a retrospective of the past 10 years
 
Making the Web Searchable - Keynote ICWE 2015
Making the Web Searchable - Keynote ICWE 2015Making the Web Searchable - Keynote ICWE 2015
Making the Web Searchable - Keynote ICWE 2015
 
Social web & linked data
Social web & linked dataSocial web & linked data
Social web & linked data
 
Open Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata Commons
Open Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata CommonsOpen Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata Commons
Open Data Bay Area (OBDA) | Kurt Bollacker: Public Metadata Commons
 
Linked Data and Locah, UKSG2011
Linked Data and Locah, UKSG2011 Linked Data and Locah, UKSG2011
Linked Data and Locah, UKSG2011
 
Is this BIG DATA which I see before me?
Is this BIG DATA which I see before me?Is this BIG DATA which I see before me?
Is this BIG DATA which I see before me?
 

Andere mochten auch

Prezentazia severnaya mozaika
Prezentazia severnaya mozaikaPrezentazia severnaya mozaika
Prezentazia severnaya mozaikaAtner Yegorov
 
S1 mobile based-smart-life-v2.5-owen-j_nipa
S1 mobile based-smart-life-v2.5-owen-j_nipaS1 mobile based-smart-life-v2.5-owen-j_nipa
S1 mobile based-smart-life-v2.5-owen-j_nipaAtner Yegorov
 
Efimov forsayt. budushchee_sibirskih_gorodov_2010_itog
Efimov forsayt. budushchee_sibirskih_gorodov_2010_itogEfimov forsayt. budushchee_sibirskih_gorodov_2010_itog
Efimov forsayt. budushchee_sibirskih_gorodov_2010_itogAtner Yegorov
 
Проект «Европа - Западный Китай»
Проект «Европа - Западный Китай»Проект «Европа - Западный Китай»
Проект «Европа - Западный Китай»Atner Yegorov
 
Yadrin Chuvashia development plan 2014
Yadrin Chuvashia development plan 2014Yadrin Chuvashia development plan 2014
Yadrin Chuvashia development plan 2014Atner Yegorov
 
Допобразование Чувашия 2013
Допобразование Чувашия 2013Допобразование Чувашия 2013
Допобразование Чувашия 2013Atner Yegorov
 
ростелеком управление ресурсами
ростелеком управление ресурсамиростелеком управление ресурсами
ростелеком управление ресурсамиAtner Yegorov
 
Sara Seager - Lecture2 - MIT
Sara Seager - Lecture2 - MITSara Seager - Lecture2 - MIT
Sara Seager - Lecture2 - MITAtner Yegorov
 
Linde lecturesmunich1
Linde lecturesmunich1Linde lecturesmunich1
Linde lecturesmunich1Atner Yegorov
 
примеры реализаций по решению городских проблем
примеры реализаций по решению городских проблемпримеры реализаций по решению городских проблем
примеры реализаций по решению городских проблемAtner Yegorov
 
Ивестиционные предложения Чувашской Республики
Ивестиционные предложения Чувашской Республики Ивестиционные предложения Чувашской Республики
Ивестиционные предложения Чувашской Республики Atner Yegorov
 
Prezentazia zolotoe kolzo
Prezentazia zolotoe kolzoPrezentazia zolotoe kolzo
Prezentazia zolotoe kolzoAtner Yegorov
 
Rostelecom investor presentation jan 2013 rus
Rostelecom investor presentation jan 2013 rusRostelecom investor presentation jan 2013 rus
Rostelecom investor presentation jan 2013 rusAtner Yegorov
 
танго изящество страсти
танго   изящество страститанго   изящество страсти
танго изящество страстиAtner Yegorov
 
Поддержка малого и среднего предпринимательства в г.Чебоксары
Поддержка малого и среднего предпринимательства в г.ЧебоксарыПоддержка малого и среднего предпринимательства в г.Чебоксары
Поддержка малого и среднего предпринимательства в г.ЧебоксарыAtner Yegorov
 

Andere mochten auch (19)

Prezentazia severnaya mozaika
Prezentazia severnaya mozaikaPrezentazia severnaya mozaika
Prezentazia severnaya mozaika
 
Izmgosprog
IzmgosprogIzmgosprog
Izmgosprog
 
S1 mobile based-smart-life-v2.5-owen-j_nipa
S1 mobile based-smart-life-v2.5-owen-j_nipaS1 mobile based-smart-life-v2.5-owen-j_nipa
S1 mobile based-smart-life-v2.5-owen-j_nipa
 
Efimov forsayt. budushchee_sibirskih_gorodov_2010_itog
Efimov forsayt. budushchee_sibirskih_gorodov_2010_itogEfimov forsayt. budushchee_sibirskih_gorodov_2010_itog
Efimov forsayt. budushchee_sibirskih_gorodov_2010_itog
 
Проект «Европа - Западный Китай»
Проект «Европа - Западный Китай»Проект «Европа - Западный Китай»
Проект «Европа - Западный Китай»
 
Yadrin Chuvashia development plan 2014
Yadrin Chuvashia development plan 2014Yadrin Chuvashia development plan 2014
Yadrin Chuvashia development plan 2014
 
Допобразование Чувашия 2013
Допобразование Чувашия 2013Допобразование Чувашия 2013
Допобразование Чувашия 2013
 
ростелеком управление ресурсами
ростелеком управление ресурсамиростелеком управление ресурсами
ростелеком управление ресурсами
 
Sara Seager - Lecture2 - MIT
Sara Seager - Lecture2 - MITSara Seager - Lecture2 - MIT
Sara Seager - Lecture2 - MIT
 
Prezentazia vologda
Prezentazia vologdaPrezentazia vologda
Prezentazia vologda
 
Linde lecturesmunich1
Linde lecturesmunich1Linde lecturesmunich1
Linde lecturesmunich1
 
Symbio city
Symbio citySymbio city
Symbio city
 
примеры реализаций по решению городских проблем
примеры реализаций по решению городских проблемпримеры реализаций по решению городских проблем
примеры реализаций по решению городских проблем
 
Presentation
Presentation Presentation
Presentation
 
Ивестиционные предложения Чувашской Республики
Ивестиционные предложения Чувашской Республики Ивестиционные предложения Чувашской Республики
Ивестиционные предложения Чувашской Республики
 
Prezentazia zolotoe kolzo
Prezentazia zolotoe kolzoPrezentazia zolotoe kolzo
Prezentazia zolotoe kolzo
 
Rostelecom investor presentation jan 2013 rus
Rostelecom investor presentation jan 2013 rusRostelecom investor presentation jan 2013 rus
Rostelecom investor presentation jan 2013 rus
 
танго изящество страсти
танго   изящество страститанго   изящество страсти
танго изящество страсти
 
Поддержка малого и среднего предпринимательства в г.Чебоксары
Поддержка малого и среднего предпринимательства в г.ЧебоксарыПоддержка малого и среднего предпринимательства в г.Чебоксары
Поддержка малого и среднего предпринимательства в г.Чебоксары
 

Ähnlich wie Semantic Web Introduction Merges Book Data

Introduction to the Semantic Web
Introduction to the Semantic WebIntroduction to the Semantic Web
Introduction to the Semantic WebGIS Colorado
 
Introduction to Semantic Web
Introduction to Semantic WebIntroduction to Semantic Web
Introduction to Semantic WebIvan Herman
 
Intro to Linked Open Data in Libraries, Archives & Museums
Intro to Linked Open Data in Libraries, Archives & MuseumsIntro to Linked Open Data in Libraries, Archives & Museums
Intro to Linked Open Data in Libraries, Archives & MuseumsJon Voss
 
2018 GIS in Development: Semantic Web
2018 GIS in Development: Semantic Web2018 GIS in Development: Semantic Web
2018 GIS in Development: Semantic WebGIS in the Rockies
 
Linked Open Data and American Art
Linked Open Data and American ArtLinked Open Data and American Art
Linked Open Data and American ArtGeorgina Goodlander
 
What is New in W3C land?
What is New in W3C land?What is New in W3C land?
What is New in W3C land?Ivan Herman
 
Linking American Art to the Cloud
Linking American Art to the CloudLinking American Art to the Cloud
Linking American Art to the CloudGeorgina Goodlander
 
Methodological Guidelines for Publishing Linked Data
Methodological Guidelines for Publishing Linked DataMethodological Guidelines for Publishing Linked Data
Methodological Guidelines for Publishing Linked DataBoris Villazón-Terrazas
 
Global lodlam_communities and open cultural data
Global lodlam_communities and open cultural dataGlobal lodlam_communities and open cultural data
Global lodlam_communities and open cultural dataMinerva Lin
 
(PROJEKTURA) open data big data @tgg osijek
(PROJEKTURA) open data big data @tgg osijek(PROJEKTURA) open data big data @tgg osijek
(PROJEKTURA) open data big data @tgg osijekRatko Mutavdzic
 
FAIR data: LOUD for all audiences
FAIR data: LOUD for all audiencesFAIR data: LOUD for all audiences
FAIR data: LOUD for all audiencesAlessandro Adamou
 
Web History 101, or How the Future is Unwritten
Web History 101, or How the Future is UnwrittenWeb History 101, or How the Future is Unwritten
Web History 101, or How the Future is UnwrittenBookNet Canada
 
Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)Anja Jentzsch
 

Ähnlich wie Semantic Web Introduction Merges Book Data (20)

Introduction to the Semantic Web
Introduction to the Semantic WebIntroduction to the Semantic Web
Introduction to the Semantic Web
 
Introduction to Semantic Web
Introduction to Semantic WebIntroduction to Semantic Web
Introduction to Semantic Web
 
Slides.ppt
Slides.pptSlides.ppt
Slides.ppt
 
Slides.ppt
Slides.pptSlides.ppt
Slides.ppt
 
Slides.ppt
Slides.pptSlides.ppt
Slides.ppt
 
Intro to Linked Open Data in Libraries, Archives & Museums
Intro to Linked Open Data in Libraries, Archives & MuseumsIntro to Linked Open Data in Libraries, Archives & Museums
Intro to Linked Open Data in Libraries, Archives & Museums
 
2018 GIS in Development: Semantic Web
2018 GIS in Development: Semantic Web2018 GIS in Development: Semantic Web
2018 GIS in Development: Semantic Web
 
Semantic Web - Introduction
Semantic Web - IntroductionSemantic Web - Introduction
Semantic Web - Introduction
 
Linked Open Data and American Art
Linked Open Data and American ArtLinked Open Data and American Art
Linked Open Data and American Art
 
What is New in W3C land?
What is New in W3C land?What is New in W3C land?
What is New in W3C land?
 
Linking American Art to the Cloud
Linking American Art to the CloudLinking American Art to the Cloud
Linking American Art to the Cloud
 
NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...
NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...
NISO/DCMI Webinar: Schema.org and Linked Data: Complementary Approaches to Pu...
 
Methodological Guidelines for Publishing Linked Data
Methodological Guidelines for Publishing Linked DataMethodological Guidelines for Publishing Linked Data
Methodological Guidelines for Publishing Linked Data
 
SWT Lecture Session 1 - Introduction
SWT Lecture Session 1 - IntroductionSWT Lecture Session 1 - Introduction
SWT Lecture Session 1 - Introduction
 
Global lodlam_communities and open cultural data
Global lodlam_communities and open cultural dataGlobal lodlam_communities and open cultural data
Global lodlam_communities and open cultural data
 
(PROJEKTURA) open data big data @tgg osijek
(PROJEKTURA) open data big data @tgg osijek(PROJEKTURA) open data big data @tgg osijek
(PROJEKTURA) open data big data @tgg osijek
 
FAIR data: LOUD for all audiences
FAIR data: LOUD for all audiencesFAIR data: LOUD for all audiences
FAIR data: LOUD for all audiences
 
Web History 101, or How the Future is Unwritten
Web History 101, or How the Future is UnwrittenWeb History 101, or How the Future is Unwritten
Web History 101, or How the Future is Unwritten
 
Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)Linked Data (1st Linked Data Meetup Malmö)
Linked Data (1st Linked Data Meetup Malmö)
 
Slides
SlidesSlides
Slides
 

Mehr von Atner Yegorov

Здравоохранение Чувашии 2015
Здравоохранение Чувашии 2015Здравоохранение Чувашии 2015
Здравоохранение Чувашии 2015Atner Yegorov
 
Чувашия. Итоги за 5 лет. 2015
Чувашия. Итоги за 5 лет. 2015Чувашия. Итоги за 5 лет. 2015
Чувашия. Итоги за 5 лет. 2015Atner Yegorov
 
Инвестиционная политика Чувашской Республики 2015
Инвестиционная политика Чувашской Республики 2015Инвестиционная политика Чувашской Республики 2015
Инвестиционная политика Чувашской Республики 2015Atner Yegorov
 
Господдержка малого и среднего бизнеса в Чувашии 2015
Господдержка малого и среднего бизнеса в Чувашии 2015Господдержка малого и среднего бизнеса в Чувашии 2015
Господдержка малого и среднего бизнеса в Чувашии 2015Atner Yegorov
 
ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015
ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015
ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015Atner Yegorov
 
Брендинг Чувашии
Брендинг ЧувашииБрендинг Чувашии
Брендинг ЧувашииAtner Yegorov
 
VIII Экономический форум Чебоксары
VIII Экономический форум ЧебоксарыVIII Экономический форум Чебоксары
VIII Экономический форум ЧебоксарыAtner Yegorov
 
Рейтин инвестклимата в регионах 2015
Рейтин инвестклимата в регионах 2015Рейтин инвестклимата в регионах 2015
Рейтин инвестклимата в регионах 2015Atner Yegorov
 
Аттракционы тематического парка, Татарстан
Аттракционы тематического парка, ТатарстанАттракционы тематического парка, Татарстан
Аттракционы тематического парка, ТатарстанAtner Yegorov
 
Тематический парк, Татарстан
Тематический парк, ТатарстанТематический парк, Татарстан
Тематический парк, ТатарстанAtner Yegorov
 
Будущее журналистики
Будущее журналистикиБудущее журналистики
Будущее журналистикиAtner Yegorov
 
Будущее нишевых СМИ
Будущее нишевых СМИБудущее нишевых СМИ
Будущее нишевых СМИAtner Yegorov
 
Будущее онлайн СМИ в регионах
Будущее онлайн СМИ в регионах Будущее онлайн СМИ в регионах
Будущее онлайн СМИ в регионах Atner Yegorov
 
Война форматов. Как люди читают новости
Война форматов. Как люди читают новости Война форматов. Как люди читают новости
Война форматов. Как люди читают новости Atner Yegorov
 
Национальная технологическая инициатива
Национальная технологическая инициативаНациональная технологическая инициатива
Национальная технологическая инициативаAtner Yegorov
 
О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ
О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ  ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ  ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ
О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ Atner Yegorov
 
Участники заседания по модернизации
Участники заседания по модернизацииУчастники заседания по модернизации
Участники заседания по модернизацииAtner Yegorov
 
Город Innopolis
Город InnopolisГород Innopolis
Город InnopolisAtner Yegorov
 
презентация1
презентация1презентация1
презентация1Atner Yegorov
 

Mehr von Atner Yegorov (20)

Здравоохранение Чувашии 2015
Здравоохранение Чувашии 2015Здравоохранение Чувашии 2015
Здравоохранение Чувашии 2015
 
Чувашия. Итоги за 5 лет. 2015
Чувашия. Итоги за 5 лет. 2015Чувашия. Итоги за 5 лет. 2015
Чувашия. Итоги за 5 лет. 2015
 
Инвестиционная политика Чувашской Республики 2015
Инвестиционная политика Чувашской Республики 2015Инвестиционная политика Чувашской Республики 2015
Инвестиционная политика Чувашской Республики 2015
 
Господдержка малого и среднего бизнеса в Чувашии 2015
Господдержка малого и среднего бизнеса в Чувашии 2015Господдержка малого и среднего бизнеса в Чувашии 2015
Господдержка малого и среднего бизнеса в Чувашии 2015
 
ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015
ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015
ИННОВАЦИИ В ПРОМЫШЛЕННОСТИ ЧУВАШИИ. 2015
 
Брендинг Чувашии
Брендинг ЧувашииБрендинг Чувашии
Брендинг Чувашии
 
VIII Экономический форум Чебоксары
VIII Экономический форум ЧебоксарыVIII Экономический форум Чебоксары
VIII Экономический форум Чебоксары
 
Рейтин инвестклимата в регионах 2015
Рейтин инвестклимата в регионах 2015Рейтин инвестклимата в регионах 2015
Рейтин инвестклимата в регионах 2015
 
Аттракционы тематического парка, Татарстан
Аттракционы тематического парка, ТатарстанАттракционы тематического парка, Татарстан
Аттракционы тематического парка, Татарстан
 
Тематический парк, Татарстан
Тематический парк, ТатарстанТематический парк, Татарстан
Тематический парк, Татарстан
 
Будущее журналистики
Будущее журналистикиБудущее журналистики
Будущее журналистики
 
Будущее нишевых СМИ
Будущее нишевых СМИБудущее нишевых СМИ
Будущее нишевых СМИ
 
Relap
RelapRelap
Relap
 
Будущее онлайн СМИ в регионах
Будущее онлайн СМИ в регионах Будущее онлайн СМИ в регионах
Будущее онлайн СМИ в регионах
 
Война форматов. Как люди читают новости
Война форматов. Как люди читают новости Война форматов. Как люди читают новости
Война форматов. Как люди читают новости
 
Национальная технологическая инициатива
Национальная технологическая инициативаНациональная технологическая инициатива
Национальная технологическая инициатива
 
О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ
О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ  ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ  ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ
О РАЗРАБОТКЕ И РЕАЛИЗАЦИИ НАЦИОНАЛЬНОЙ ТЕХНОЛОГИЧЕСКОЙ ИНИЦИАТИВЫ
 
Участники заседания по модернизации
Участники заседания по модернизацииУчастники заседания по модернизации
Участники заседания по модернизации
 
Город Innopolis
Город InnopolisГород Innopolis
Город Innopolis
 
презентация1
презентация1презентация1
презентация1
 

Kürzlich hochgeladen

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Kürzlich hochgeladen (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

Semantic Web Introduction Merges Book Data

  • 1. 1 Introduction to the Semantic Web (tutorial) Johnson & Johnson Philadelphia, USA October 30, 2009 Ivan Herman, W3C ivan@w3.org
  • 2. 2 Towards a Semantic Web • Tasks often require to combine data on the Web: • hotel and travel information may come from different sites • searches in different digital libraries • etc. • Humans combine these information easily even if • different terminologies are used • the information is incomplete, or buried in images, videos, …
  • 3. 3 Example: automatic airline reservation • Your automatic airline reservation • knows about your preferences • builds up knowledge base using your past • can combine the local knowledge with remote services: • airline preferences • dietary requirements • calendaring • etc • It communicates with remote information (i.e., on the Web!) • (M. Dertouzos: The Unfinished Revolution)
  • 4. 4 Example: data(base) integration • Databases are very different in structure, in content • Lots of applications require managing several databases • after company mergers • combination of administrative data for e-Government • biochemical, genetic, pharmaceutical research • combination of online library data • etc. • Most of these data are accessible from the Web (though not necessarily public yet)
  • 5. 5 This problem you know very well…
  • 6. 6 Example: social networks • Social sites are everywhere these days (LinkedIn, Facebook, Dopplr, Digg, Plexo, Zyb, …) • Data is not interchangeable: how many times did you have to add your contacts? • Applications should be able to get to those data via standard means • there are, of course, privacy issues…
  • 7. 7 Example: digital libraries • Sort of catalogues on the Web • librarians have known how to do that for centuries • goal is to have this on the Web, World-wide • extend it to multimedia data, too • But it is more: software agents should also be librarians! • e.g., help you in finding the right publications
  • 8. 8 What is needed? • (Some) data should be available for machines for further processing • Data should be possibly combined, merged on a Web scale • Machines may also need to reason about that data • Create a Web of Data (beyond the Web of Documents)
  • 9. 9 Find the right experts at NASA • Expertise locater for nearly 70,000 NASA civil servants, integrating 6 or 7 geographically distributed databases, data sources, and web services… Michael Grove, Clark & Parsia, LLC, and Andrew Schain, NASA, (SWEO Case Study)
  • 10. 10 So what is the Semantic Web?
  • 11. 11 It is, essentially, the Web of Data. “Semantic Web Technologies” is a collection of standard technologies to realize a Web of Data
  • 12. 12 • It is that simple… • Of course, the devil is in the details • a common model has to be provided for machines to describe, query, etc, the data and their connections • the “classification” of the terms can become very complex for specific knowledge areas: this is where ontologies, thesauri, etc, enter the game…
  • 13. 13 In what follows… • We will use a simplistic example to introduce the main technical concepts • The details will be for later during the course
  • 14. 14 The rough structure of data integration 1. Map the various data onto an abstract data representation • make the data independent of its internal representation… 2. Merge the resulting representations 3. Start making queries on the whole! • queries that could not have been done on the individual data sets
  • 15. 15 A simplified bookstore data (dataset “A”) ID Author Title Publisher Year ISBN0-00-651409-X id_xyz The Glass Palace id_qpr 2000 ID Name Home Page id_xyz Ghosh, Amitav http://www.amitavghosh.com ID Publ. Name City id_qpr Harper Collins London
  • 16. 16 1st: export your data as a set of relations
  • 17. 17 Some notes on the exporting the data • Relations form a graph • the nodes refer to the “real” data or contain some literal • how the graph is represented in machine is immaterial for now • Data export does not necessarily mean physical conversion of the data • relations can be generated on-the-fly at query time • via SQL “bridges” • scraping HTML pages • extracting data from Excel sheets • etc. • One can export part of the data
  • 18. 18 Another bookstore data (dataset “F”) A B D E 1 ID Titre Traducteur Original ISBN0 2020386682 Le Palais A13 ISBN-0-00-651409-X des 2 miroirs 3 6 ID Auteur 7 ISBN-0-00-651409-X A12 11 Nom 12 Ghosh, Amitav 13 Besse, Christianne
  • 19. 19 2nd: export your second set of data
  • 21. 21 3rd: start merging your data (cont.)
  • 23. 23 Start making queries… • User of data “F” can now ask queries like: • “give me the title of the original” • well, … « donnes-moi le titre de l’original » • This information is not in the dataset “F”… • …but can be retrieved by merging with dataset “A”!
  • 24. 24 However, more can be achieved… • We “feel” that a:author and f:auteur should be the same • But an automatic merge doest not know that! • Let us add some extra information to the merged data: • a:author same as f:auteur • both identify a “Person” • a term that a community may have already defined: • a “Person” is uniquely identified by his/her name and, say, homepage • it can be used as a “category” for certain type of resources
  • 25. 25 3rd revisited: use the extra knowledge
  • 26. 26 Start making richer queries! • User of dataset “F” can now query: • “donnes-moi la page d’accueil de l’auteur de l’originale” • well… “give me the home page of the original’s ‘auteur’” • The information is not in datasets “F” or “A”… • …but was made available by: • merging datasets “A” and datasets “F” • adding three simple extra statements as an extra “glue”
  • 27. 27 Combine with different datasets • Using, e.g., the “Person”, the dataset can be combined with other sources • For example, data in Wikipedia can be extracted using dedicated tools • e.g., the “dbpedia” project can extract the “infobox” information from Wikipedia already…
  • 31. 31 Is that surprising? • It may look like it but, in fact, it should not be… • What happened via automatic means is done every day by Web users! • The difference: a bit of extra rigour so that machines could do this, too
  • 32. 32 What did we do? • We combined different datasets that • are somewhere on the web • are of different formats (mysql, excel sheet, XHTML, etc) • have different names for relations • We could combine the data because some URI-s were identical (the ISBN-s in this case) • We could add some simple additional information (the “glue”), possibly using common terminologies that a community has produced • As a result, new relations could be found and retrieved
  • 33. 33 It could become even more powerful • We could add extra knowledge to the merged datasets • e.g., a full classification of various types of library data • geographical information • etc. • This is where ontologies, extra rules, etc, come in • ontologies/rule sets can be relatively simple and small, or huge, or anything in between… • Even more powerful queries can be asked as a result
  • 34. 34 What did we do? (cont)
  • 36. 36 RDF triples • Let us begin to formalize what we did! • we “connected” the data… • but a simple connection is not enough… data should be named somehow • hence the RDF Triples: a labelled connection between two resources
  • 37. 37 RDF triples (cont.) • An RDF Triple (s,p,o) is such that: • “s”, “p” are URI-s, ie, resources on the Web; “o” is a URI or a literal • “s”, “p”, and “o” stand for “subject”, “property”, and “object” • here is the complete triple: (<http://…isbn…6682>, <http://…/original>, <http://…isbn…409X>) • RDF is a general model for such triples (with machine readable formats like RDF/XML, Turtle, N3, RXR, …)
  • 38. 38 RDF triples (cont.) • Resources can use any URI, e.g.: • http://www.example.org/file.xml#element(home) • http://www.example.org/file.html#home • http://www.example.org/file2.xml#xpath1(//q[@a=b]) • URI-s can also denote non Web entities: • http://www.ivan-herman.net/me is me • not my home page, not my publication list, but me • RDF triples form a directed, labelled graph
  • 39. 39 A simple RDF example (in RDF/XML) <rdf:Description rdf:about="http://…/isbn/2020386682"> <f:titre xml:lang="fr">Le palais des mirroirs</f:titre> <f:original rdf:resource="http://…/isbn/000651409X"/> </rdf:Description> (Note: namespaces are used to simplify the URI-s)
  • 40. 40 A simple RDF example (in Turtle) <http://…/isbn/2020386682> f:titre "Le palais des mirroirs"@fr ; f:original <http://…/isbn/000651409X> .
  • 41. 41 “Internal” nodes • Consider the following statement: • “the publisher is a «thing» that has a name and an address” • Until now, nodes were identified with a URI. But… • …what is the URI of «thing»?
  • 42. 42 Internal identifier (“blank nodes”) <rdf:Description rdf:about="http://…/isbn/000651409X"> <a:publisher rdf:nodeID="A234"/> </rdf:Description> <rdf:Description rdf:nodeID="A234"> <a:p_name>HarpersCollins</a:p_name> <a:city>HarpersCollins</a:city> </rdf:Description> <http://…/isbn/2020386682> a:publisher _:A234. _:A234 a:p_name "HarpersCollins". • Syntax is serialization dependent • A234 is invisible from outside (it is not a “real” URI!); it is an internal identifier for a resource
  • 43. 43 Blank nodes: the system can also do it • Let the system create a “nodeID” internally (you do not really care about the name…) <rdf:Description rdf:about="http://…/isbn/000651409X"> <a:publisher> <rdf:Description> <a:p_name>HarpersCollins</a:p_name> … </rdf:Description> </a:publisher> </rdf:Description>
  • 44. 44 Same in Turtle <http://…/isbn/000651409X> a:publisher [ a:p_name "HarpersCollins"; … ].
  • 45. 45 Blank nodes: some more remarks • Blank nodes require attention when merging • blanks nodes with identical nodeID-s in different graphs are different • implementations must be careful… • Many applications prefer not to use blank nodes and define new URI-s “on-the-fly”
  • 46. 46 RDF in programming practice • For example, using Java+Jena (HP’s Bristol Lab): • a “Model” object is created • the RDF file is parsed and results stored in the Model • the Model offers methods to retrieve: • triples • (property,object) pairs for a specific subject • (subject,property) pairs for specific object • etc. • the rest is conventional programming… • Similar tools exist in Python, PHP, etc.
  • 47. 47 Jena example // create a model Model model=new ModelMem(); Resource subject=model.createResource("URI_of_Subject") // 'in' refers to the input file model.read(new InputStreamReader(in)); StmtIterator iter=model.listStatements(subject,null,null); while(iter.hasNext()) { st = iter.next(); p = st.getProperty(); o = st.getObject(); do_something(p,o); }
  • 48. 48 Merge in practice • Environments merge graphs automatically • e.g., in Jena, the Model can load several files • the load merges the new statements automatically
  • 49. 49 Integrate knowledge for Chinese Medicine • Integration of a large number of TCM databases • around 80 databases, around 200,000 records each • Form based query interface for end users Courtesy of Huajun Chen, Zhejiang University, (SWEO Case Study)
  • 50. 50 One level higher up (RDFS, Datatypes)
  • 51. 51 Need for RDF schemas • First step towards the “extra knowledge”: • define the terms we can use • what restrictions apply • what extra relationships are there? • Officially: “RDF Vocabulary Description Language” • the term “Schema” is retained for historical reasons…
  • 52. 52 Classes, resources, … • Think of well known traditional ontologies or taxonomies: • use the term “novel” • “every novel is a fiction” • “«The Glass Palace» is a novel” • etc. • RDFS defines resources and classes: • everything in RDF is a “resource” • “classes” are also resources, but… • …they are also a collection of possible resources (i.e., “individuals”) • “fiction”, “novel”, …
  • 53. 53 Classes, resources, … (cont.) • Relationships are defined among classes and resources: • “typing”: an individual belongs to a specific class • “«The Glass Palace» is a novel” • to be more precise: “«http://.../000651409X» is a novel” • “subclassing”: all instances of one are also the instances of the other (“every novel is a fiction”) • RDFS formalizes these notions in RDF
  • 54. 54 Classes, resources in RDF(S) • RDFS defines the meaning of these terms • (these are all special URI-s, we just use the namespace abbreviation)
  • 55. 55 Schema example in RDF/XML • The schema part: <rdf:Description rdf:ID="Novel"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> </rdf:Description> • The RDF data on a specific novel: <rdf:Description rdf:about="http://…/isbn/000651409X"> <rdf:type rdf:resource="http://…/bookSchema.rdf#Novel"/> </rdf:Description>
  • 56. 56 Further remarks on types • A resource may belong to several classes • rdf:type is just a property… • “«The Glass Palace» is a novel, but «The Glass Palace» is also an «inventory item»…” • i.e., it is not like a datatype! • The type information may be very important for applications • e.g., it may be used for a categorization of possible nodes • probably the most frequently used RDF property… • (remember the “Person” in our example?)
  • 57. 57 Inferred properties (<http://…/isbn/000651409X> rdf:type #Fiction) • is not in the original RDF data… • …but can be inferred from the RDFS rules • RDFS environments return that triple, too
  • 58. 58 Inference: let us be formal… • The RDF Semantics document has a list of (33) entailment rules: • “if such and such triples are in the graph, add this and this” • do that recursively until the graph does not change • The relevant rule for our example: If: uuu rdfs:subClassOf xxx . vvv rdf:type uuu . Then add: vvv rdf:type xxx .
  • 59. 59 Properties • Property is a special class (rdf:Property) • properties are also resources identified by URI-s • There is also a possibility for a “sub-property” • all resources bound by the “sub” are also bound by the other • Range and domain of properties can be specified • i.e., what type of resources serve as object and subject
  • 60. 60 Property specification serialized • In RDF/XML: <rdf:Property rdf:ID="title"> <rdfs:domain rdf:resource="#Fiction"/> <rdfs:range rdf:resource="http://...#Literal"/> </rdf:Property> • In Turtle: :title rdf:type rdf:Property; rdfs:domain :Fiction; rdfs:range rdfs:Literal.
  • 61. 61 What does this mean? • Again, new relations can be deduced. Indeed, if :title rdf:type rdf:Property; rdfs:domain :Fiction; rdfs:range rdfs:Literal. <http://…/isbn/000651409X> :title "The Glass Palace" . • then the system can infer that: <http://…/isbn/000651409X> rdf:type :Fiction .
  • 62. 62 Literals • Literals may have a data type • floats, integers, booleans, etc, defined in XML Schemas • full XML fragments • (Natural) language can also be specified
  • 63. 63 Examples for datatypes <http://…/isbn/000651409X> :page_number "543"^^xsd:integer ; :publ_date "2000"^^xsd:gYear ; :price "6.99"^^xsd:float .
  • 64. 64 A bit of RDFS can take you far… • Remember the power of merge? • We could have used, in our example: • f:auteur is a subproperty of a:author and vice versa (although we will see other ways to do that…) • Of course, in some cases, more complex knowledge is necessary (see later…)
  • 65. 65 Another relatively simple application • Goal: reuse of older experimental data • Keep data in databases or XML, just export key “fact” as RDF • Use a faceted browser to visualize and interact with the result Courtesy of Nigel Wilkinson, Lee Harland, Pfizer Ltd, Melliyal Annamalai, Oracle (SWEO Case Study)
  • 66. 66 How to get RDF Data? (Microformats, GRDDL, RDFa)
  • 67. 67 Simple approach • Write RDF/XML or Turtle “manually” • In some cases that is necessary, but it really does not scale…
  • 68. 68 RDF with XHTML and XML • Obviously, a huge source of information • By adding some “meta” information, the same source can be reused for, eg, data integration, better mashups, etc • typical example: your personal information, like address, should be readable for humans and processable by machines • Two solutions have emerged: • extract the structure from the page and convert the content into RDF • add RDF statements directly into XHTML via RDFa
  • 69. 69 Extract RDF • Use intelligent “scrapers” or “wrappers” to extract a structure (hence RDF) from a Web pages or XML files… • … and then generate RDF automatically (e.g., via an XSLT script) • GRDDL formalizes the this general scheme
  • 70. 70 Formalizing the scraper approach: GRDDL • GRDDL formalizes the scraper approach. For example: <html xmlns="http://www.w3.org/1999/"> <head profile="http://www.w3.org/2003/g/data-view"> <title>Some Document</title> <link rel="transformation" href="http:…/dc-extract.xsl"/> <meta name="DC.Subject" content="Some subject"/> ... </head> ... <span class="date">2006-01-02</span> ... </html> • yields, through dc-extract.xsl: <> dc:subject "Some subject"; dc:date "2006-01-02" .
  • 71. 71 GRDDL with XML • The approach is very similar to the XHTML case • The appropriate attributes are added to the XML namespace document • Otherwise it is identical
  • 72. 72 Bridge to relational databases • Data on the Web are mostly stored in databases • “Bridges” are being defined: • a layer between RDF and the relational data • RDB tables are “mapped” to RDF graphs, possibly on the fly • different mapping approaches are being used • a number RDB systems offer this facility already (eg, Oracle, OpenLink, …) • A survey on mapping techniques has been published at W3C • A W3C group has just started to standardize this
  • 74. 74 Linking Open Data Project • Goal: “expose” open datasets in RDF • Set RDF links among the data items from different datasets • Set up query endpoints • Altogether billions of triples, millions of links…
  • 75. 75 Example data source: DBpedia • DBpedia is a community effort to • extract structured (“infobox”) information from Wikipedia • provide a query endpoint to the dataset • interlink the DBpedia dataset with other datasets on the Web
  • 76. 76 Extracting Wikipedia structured data @prefix dbpedia <http://dbpedia.org/resource/>. @prefix dbterm <http://dbpedia.org/property/>. dbpedia:Amsterdam dbterm:officialName “Amsterdam” ; dbterm:longd “4” ; dbterm:longm “53” ; dbterm:longs “32” ; ... dbterm:leaderTitle “Mayor” ; dbterm:leaderName dbpedia:Job_Cohen ; ... dbterm:areaTotalKm “219” ; ... dbpedia:ABN_AMRO dbterm:location dbpedia:Amsterdam ; ...
  • 77. 77 Automatic links among open datasets <http://dbpedia.org/resource/Amsterdam> owl:sameAs <http://rdf.freebase.com/ns/...> ; owl:sameAs <http://sws.geonames.org/2759793> ; ... <http://sws.geonames.org/2759793> owl:sameAs <http://dbpedia.org/resource/Amsterdam> wgs84_pos:lat “52.3666667” ; wgs84_pos:long “4.8833333” ; geo:inCountry <http://www.geonames.org/countries/#NL> ; ... Processors can switch automatically from one to the other…
  • 79. 79 The LOD “cloud”, September 2008
  • 81. 81 Using the LOD to build Web site: BBC
  • 82. 82 Using the LOD to build Web site: BBC
  • 83. 83 Using the LOD to build Web site: BBC
  • 84. 84 Application specific portions of the cloud • Eg, “bio” related datasets • done, partially, by the “Linking Open Drug Data” task force of the HCLS IG at W3C
  • 86. 86 You publish the raw data, we use it… Examples from RPI’s Data-gov Wiki, Jim Hendler & al.
  • 87. 87 Query RDF Data (SPARQL)
  • 88. 88 RDF data access • How do I query the RDF data? • e.g., how do I get to the DBpedia data?
  • 89. 89 Querying RDF graphs • Remember the Jena idiom: StmtIterator iter=model.listStatements(subject,null,null); while(iter.hasNext()) { st = iter.next(); p = st.getProperty(); o = st.getObject(); do_something(p,o); • In practice, more complex queries into the RDF data are necessary • something like: “give me the (a,b) pair of resources, for which there is an x such that (x parent a) and (b brother x) holds” (ie, return the uncles) • these rules may become quite complex • The goal of SPARQL (Query Language for RDF)
  • 90. 90 Analyse the Jena example StmtIterator iter=model.listStatements(subject,null,null); while(iter.hasNext()) { st = iter.next(); p = st.getProperty(); o = st.getObject(); do_something(p,o); • The (subject,?p,?o) is a pattern for what we are looking for (with ?p and ?o as “unknowns”)
  • 91. 91 General: graph patterns • The fundamental idea: use graph patterns • the pattern contains unbound symbols • by binding the symbols, subgraphs of the RDF graph are selected • if there is such a selection, the query returns bound resources
  • 92. 92 Our Jena example in SPARQL SELECT ?p ?o WHERE {subject ?p ?o} • The triples in WHERE define the graph pattern, with ?p and ?o “unbound” symbols • The query returns all p,o pairs
  • 93. 93 Simple SPARQL example SELECT ?isbn ?price ?currency # note: not ?x! WHERE {?isbn a:price ?x. ?x rdf:value ?price. ?x p:currency ?currency.}
  • 94. 94 Simple SPARQL example SELECT ?isbn ?price ?currency # note: not ?x! WHERE {?isbn a:price ?x. ?x rdf:value ?price. ?x p:currency ?currency.} • Returns: [[<..49X>,33,£], [<..49X>,50,€], [<..6682>,60,€], [<..6682>,78,$]]
  • 95. 95 Pattern constraints SELECT ?isbn ?price ?currency # note: not ?x! WHERE { ?isbn a:price ?x. ?x rdf:value ?price. ?x p:currency ?currency. FILTER(?currency == € } • Returns: [[<..409X>,50,€], [<..6682>,60,€]]
  • 96. 96 Other SPARQL features • Limit the number of returned results; remove duplicates, sort them, … • Optional branches in the query • Specify several data sources (via URI-s) within the query (essentially, a merge!) • Construct a graph combining a separate pattern and the query results • Use datatypes and/or language tags when matching a pattern
  • 97. 97 SPARQL usage in practice • SPARQL is usually used over the network • separate documents define the protocol and the result format • SPARQL Protocol for RDF with HTTP and SOAP bindings • SPARQL results in XML or JSON formats • Big datasets usually offer “SPARQL endpoints” using this protocol • typical example: SPARQL endpoint to DBpedia
  • 98. 98 SPARQL as a unifying point
  • 99. 99 Remember this example? • The access to all the data is based on SPARQL queries Courtesy of Huajun Chen, Zhejiang University, (SWEO Case Study)
  • 100. 100 Ontologies (OWL)
  • 101. 101 Ontologies • RDFS is useful, but does not solve all possible requirements • Complex applications may want more possibilities: • characterization of properties • identification of objects with different URI-s • disjointness or equivalence of classes • construct classes, not only name them • can a program reason about some terms? E.g.: • “if «Person» resources «A» and «B» have the same «foaf:email» property, then «A» and «B» are identical” • etc.
  • 102. 102 Ontologies (cont.) • The term ontologies is used in this respect: “defines the concepts and relationships used to describe and represent an area of knowledge” • RDFS can be considered as a simple ontology language • Languages should be a compromise between • rich semantics for meaningful applications • feasibility, implementability
  • 103. 103 Web Ontology Language = OWL • OWL is an extra layer, a bit like RDF Schemas • own namespace, own terms • it relies on RDF Schemas • It is a separate recommendation • actually… there is a 2004 version of OWL (“OWL 1”) • and there is an update (“OWL 2”) to be published in 2009
  • 104. 104 OWL is complex… • OWL is a large set of additional terms • We will not cover the whole thing here…
  • 105. 105 Term equivalences • For classes: • owl:equivalentClass: two classes have the same individuals • owl:disjointWith: no individuals in common • For properties: • owl:equivalentProperty • remember the a:author vs. f:auteur • owl:propertyDisjointWith • For individuals: • owl:sameAs: two URIs refer to the same concept (“individual”) • owl:differentFrom: negation of owl:sameAs
  • 107. 107 Typical usage of owl:sameAs • Linking our example of Amsterdam from one data set (DBpedia) to the other (Geonames): <http://dbpedia.org/resource/Amsterdam> owl:sameAs <http://sws.geonames.org/2759793>; • This is the main mechanism of “Linking” in the Linking Open Data project
  • 108. 108 Property characterization • In OWL, one can characterize the behaviour of properties (symmetric, transitive, functional, inverse functional…) • One property may be the inverse of another • OWL also separates data and object properties • “datatype property” means that its range are typed literals
  • 109. 109 What this means is… • If the following holds in our triples: :email rdf:type owl:InverseFunctionalProperty. <A> :email "mailto:a@b.c". <B> :email "mailto:a@b.c". then, processed through OWL, the following holds, too: <A> owl:sameAs <B>. • I.e., new relationships were discovered again (beyond what RDFS could do)
  • 110. 110 Property chains (OWL 2) • Properties, when applied one after the other, may be subsumed by yet another one: • “if a person «P» was born in city «A» and «A» is in country «B» then «P» was born in country «B»” • more formally: ex:born_in_country owl:propertyChainAxiom (ex:born_in_city ex:city_in_country). • More than two constituents can be used • There are some restrictions to avoid “circular” specifications
  • 111. 111 Keys (OWL 2) • Inverse functional properties are important for identification of individuals • think of the email examples • But… identification based on one property may not be enough
  • 112. 112 Keys (OWL 2) “if two persons have the same emails and the same homepages then they are identical” • Identification is based on the identical values of two properties • The rule applies to persons only
  • 113. 113 Previous rule in OWL 2 :Person rdf:type owl:Class; owl:hasKey (:email :homepage) .
  • 114. 114 What it means is… If: <A> rdf:type :Person ; :email "mailto:a@b.c"; :homepage "http://www.ex.org". <B> rdf:type :Person ; :email "mailto:a@b.c"; :homepage "http://www.ex.org". then, processed through OWL 2, the following holds, too: <A> owl:sameAs <B>.
  • 115. 115 Classes in OWL • In RDFS, you can subclass existing classes… that’s all • In OWL, you can construct classes from existing ones: • enumerate its content • through intersection, union, complement • Etc
  • 116. 116 Classes in OWL (cont) • OWL makes a stronger conceptual distinction between classes and individuals • there is a separate term for owl:Class, to make the difference (a specialization of the RDFS class) • individuals are separated into a special class called owl:Thing • Eg, a precise classification would be: ex:Person rdf:type owl:Class. <uri-for-Amitav-Ghosh> rdf:type owl:Thing; rdf:type owl:Person .
  • 117. 117 Classes contents can be enumerated :£ rdf:type owl:Thing. :€ rdf:type owl:Thing. :¥ rdf:type owl:Thing. :Currency rdf:type owl:Class; owl:oneOf (:€ :£ :¥). • I.e., the class consists of exactly of those individuals
  • 118. 118 Union of classes can be defined :Novel rdf:type owl:Class. :Short_Story rdf:type owl:Class. :Poetry rdf:type owl:Class. :Literature rdf:type owl:Class; owl:unionOf (:Novel :Short_Story :Poetry). • Other possibilities: complementOf, intersectionOf, …
  • 119. 119 For example… If: :Novel rdf:type owl:Class. :Short_Story rdf:type owl:Class. :Poetry rdf:type owl:Class. :Literature rdf:type owl:Class; owl:unionOf (:Novel :Short_Story :Poetry). <myWork> rdf:type :Novel . then the following holds, too: <myWork> rdf:type :Literature .
  • 120. 120 It can be a bit more complicated… If: :Novel rdf:type owl:Class. :Short_Story rdf:type owl:Class. :Poetry rdf:type owl:Class. :Literature rdf:type owlClass; owl:unionOf (:Novel :Short_Story :Poetry). fr:Roman owl:equivalentClass :Novel . <myWork> rdf:type fr:Roman . then, through the combination of different terms, the following still holds: <myWork> rdf:type :Literature .
  • 121. 121 What we have so far… • The OWL features listed so far are already fairly powerful • E.g., various databases can be linked via owl:sameAs, functional or inverse functional properties, etc. • Many inferred relationship can be found using a traditional rule engine
  • 122. 122 However… that may not be enough • Very large vocabularies might require even more complex features • typical usage example: definition of all concepts in a health care environment • a major issue: the way classes (i.e., “concepts”) are defined • OWL includes those extra features but… the inference engines become (much) more complex
  • 123. 123 Property value restrictions • Classes are created by restricting the property values on its individuals • For example: how would I characterize a “listed price”? • it is a price (which may be a general term), but one that is given in one of the “allowed” currencies (say, €, £, or ¥) • more formally: • the value of “p:currency”, when applied to a resource on listed price, must be of one of those values… • …thereby defining the class of “listed price”
  • 124. 124 Restrictions formally • Defines a class of type owl:Restriction with a • reference to the property that is constrained • definition of the constraint itself • One can, e.g., subclass from this node when defining a particular class :Listed_Price rdfs:subClassOf [ rdf:type owl:Restriction; owl:onProperty p:currency; owl:allValuesFrom :Currency. ].
  • 125. 125 Possible usage… If: :Listed_Price rdfs:subClassOf [ rdf:type owl:Restriction; owl:onProperty p:currency; owl:allValuesFrom :Currency. ]. :price rdf:type :Listed_Price . :price p:currency <something> . then the following holds: <something> rdf:type :Currency .
  • 126. 126 Other restrictions • allValuesFrom could be replaced by: • someValuesFrom • e.g., I could have said: there should be a price given in at least one of those currencies • hasValue, when restricted to one specific value • Cardinality restrictions: instead of looking at the values of properties, their number is considered • eg, a specific property should occur exactly once
  • 127. 127 Datatypes in OWL • RDF Literals can have a datatypes, OWL adopts those • But more complex vocabularies require datatypes “restrictions”; eg, numeric intervals • “I am interested in a price range between €5 and €15” • RDF allows any URI to be used as datatypes • ie, one could use XML Schemas to define, eg, numeric intervals • but it is very complex, and reasoners would have to understand a whole different syntax
  • 128. 128 Datatype restrictions (OWL 2) • For each datatype, XML Schema defines possible restriction “facets”: min and max for numeric types, length for strings, etc • OWL uses these facets to define datatype ranges for its own use
  • 129. 129 Definition of a numeric interval in OWL 2 :AllowedPrice rdf:type rdfs:Datatype; owl:onDatatype xsd:float; owl:withRestriction ( [ xsd:minInclusive 5.0 ] [ xsd:maxExclusive 15.0 ] ) . • The possible facets depend on the datatype: xsd:pattern, xsd:length, xsd:maxLength, …
  • 130. 130 Typical usage of OWL 2 datatype restrictions :Affordable_book rdf:type owl:Class; rdfs:subClassOf [ rdf:type owl:Restriction; owl:onProperty p:price_value; owl:allValuesFrom [ rdf:type rdfs:Datatype; owl:onDatatype xsd:float; owl:withRestriction ( [ xsd:minInclusive 5.0 ] [ xsd:maxExclusive 15.0 ] ) ] ]. ie: an affordable book has a price between 5.0 and 15.0
  • 131. 131 But: OWL is hard! • The combination of class constructions with various restrictions is extremely powerful • What we have so far follows the same logic as before • extend the basic RDF and RDFS possibilities with new features • define their semantics, ie, what they “mean” in terms of relationships • expect to infer new relationships based on those • However… a full inference procedure is hard • not implementable with simple rule engines, for example
  • 132. 132 OWL “species” • OWL species comes to the fore: • restricting which terms can be used and under what circumstances (restrictions) • if one abides to those restrictions, then simpler inference engines can be used • They reflect compromises: expressibility vs. implementability
  • 133. 133 Unrestricted OWL (a.k.a. “OWL Full”) • No constraints on any of the constructs • owl:Class is just syntactic sugar for rdfs:Class • owl:Thing is equivalent to rdfs:Resource • this means that: • Class can also be an individual, a URI can denote a property as well as a Class • e.g., it is possible to talk about class of classes, apply properties on them • etc • etc. • Extension of RDFS in all respects • But: no system may exist that infers everything one might expect
  • 134. 134 OWL Full usage • Nevertheless OWL Full is essential • it gives a generic framework to express many things with precise semantics • some application actually just need to express and interchange terms (even with possible scruffiness) • Applications may control what terms are used and how • in fact, they may define their own sub-language via, eg, a vocabulary • thereby ensuring a manageable inference procedure
  • 135. 135 OWL DL • A number of restrictions are defined • classes, individuals, object and datatype properties, etc, are fairly strictly separated • object properties must be used with individuals • i.e., properties are really used to create relationships between individuals • no characterization of datatype properties • … • But: well known inference algorithms exist!
  • 136. 136 Examples for restrictions • The following is not “legal” OWL DL: <q> rdf:type <A>. # A is a class, q is an individual <r> rdf:type <q>. # error: q cannot be used for a class, too <A> ex:something <B>. # error: properties are for individuals only <q> ex:something <s>. # error: same property cannot be used as <p> ex:something “54”. # object and datatype property
  • 137. 137 OWL DL usage • Abiding to the restrictions means that very large ontologies can be developed that require precise procedures • eg, in the medical domain, biological research, energy industry, financial services (eg, XBRL), etc • the number of classes and properties described this way can go up to the many thousands • OWL DL has become a language of choice to define and manage formal ontologies in general • even if their usage is not necessarily on the Web
  • 138. 138 OWL 2 defines further species a.k.a. “profiles” • Further restrictions on how terms can be used and what inferences can be expected
  • 139. 139 OWL 2 profiles: EL • Goal: classification and instance queries in polynomial time • Suitable for • very large number of classes and/or properties • not require complex expressions • eg: SNOMED • Some excluded features • no cardinality restrictions, fewer property restrictions • no inverse, reflexive, disjoint, symmetric, asymmetric, functional or inverse functional properties • class disjunction • …
  • 140. 140 OWL 2 profiles: QL • Goal: conjunctive queries on top of relational databases (essentially: query rewriting to SQL) • Suitable for • lightweight ontologies, but large data • Some excluded features • functional and inverse functional properties, sameAs, keys • fewer property restrictions • no cardinality restrictions • transitive properties, property chains • …
  • 141. 141 OWL 2 profiles: RL • Goal: polynomial reasoning on top of rule engines • Suitable for • relatively lightweight ontologies, but large data • Some excluded features • fewer property restrictions • fewer cardinality restrictions (at most 0/1) • constraints on class expressions (union, intersections, etc) when used in subclass expressions • no datatype restrictions • …
  • 142. 142 Ontology development • The hard work is to create the ontologies • requires a good knowledge of the area to be described • some communities have good expertise already (e.g., librarians) • OWL is just a tool to formalize ontologies • large scale ontologies are often developed in a community process • Ontologies should be shared and reused • can be via the simple namespace mechanisms… • …or via explicit import
  • 143. 143 Must I use large ontologies? • NO!!! • Many applications are possible with RDFS and a just a little bit of OWL • a few terms, whose meaning is defined in OWL, and that application can handle directly • OWL RL is a step to create such a generic OWL level • Big ontologies can be expensive (both in time and money); use them only when really necessary!
  • 144. 144 Ontologies examples • eClassOwl: eBusiness ontology for products and services, 75,000 classes and 5,500 properties • National Cancer Institute’s ontology: about 58,000 classes • Open Biomedical Ontologies Foundry: a collection of ontologies, including the Gene Ontology to describe gene and gene product attributes in any organism or protein sequence and annotation terminology and data (UniProt) • BioPAX: for biological pathway data
  • 145. 145 Example: improved search via ontology • Search results are re-ranked using ontologies • Related terms are highlighted, usable for further search
  • 146. 146 Example: improved search via ontology • Same dataset, different ontology • (ontology is on non-animal experimentation)
  • 147. 147 Eli Lilly’s Target Assessment Tool • Prioritization of drug target, integrating data from different sources and formats • Integration, search via ontologies (proprietary and public) Courtesy of Susie Stephens, Eli Lilly (SWEO Case Study)
  • 148. 148 Help for deep sea drilling operations • Integration of experience and data in the planning of deep sea drilling processes • Discover relevant experiences • uses an ontology backed search engine Courtesy of David Norheim and Roar Fjellheim, Computas AS (SWEO Use Case)
  • 150. 150 Rules • There is a long history of rule languages and rule- based systems • eg: logic programming (Prolog), production rules • Lots of small and large rule systems (from mail filters to expert systems) • Hundreds of niche markets
  • 151. 151 Why rules on the Semantic Web? • There are conditions that ontologies (ie, OWL) cannot express • a well known example is Horn rules: (P1 ∧ P2 ∧ …) → C • (though OWL 2 property chains cover some cases) • A different way of thinking — people may feel more familiar in one or the other
  • 152. 152 Things you may want to express • An example from our bookshop integration: • “a novel with over 500 pages and costing less than €5 is a cheap book” • something like (in an ad-hoc syntax): If { ?x rdf:type p:Novel; p:page_number ?p; p:price [ p:currency p:€; rdf:value ?z ]. ?p > "500"^^xsd:integer. ?z < "5.0"^^xsd:double. } then { ?x rdf:type p:CheapBook }
  • 153. 153 A new requirement: exchange of rules • Applications may want to exchange their rules: • negotiate eBusiness contracts across platforms: supply vendor-neutral representation of your business rules so that others may find you • describe privacy requirements and policies, and let clients “merge” those (e.g., when paying with a credit card) • Hence the name of the working group: Rule Interchange Format • goal is a language that • expresses the rules a bit like a rule language • can be used to exchange rules among engines
  • 154. 154 Notes on RIF (cont) • RIF does not concentrate on RDF only • ie, certain constructions go beyond what RDF can express • But there is a “subset” that is RDF and also OWL related • For the coming few slides, forget about RDF • we will come back to it. Promise!
  • 155. 155 In an ideal World
  • 156. 156 In the real World… • Rule based systems can be very different • different rule semantics (based on various type of model theories, on proof systems, etc) • production rule systems, with procedural references, state transitions, etc • Such universal exchange format is not feasible • The idea is to define “cores” for a family of languages with “variants”
  • 157. 157 RIF “core”: only partial interchange
  • 158. 158 RIF “dialects” • Possible dialects: F-logic, production rules, fuzzy or probabilistic logic, …
  • 163. 163 However… • Even this model does not completely work • The gap between production rules and “traditional” logic systems is too large • A hierarchy of cores is necessary: • a Basic Logic Dialect and Production Rule Dialect as “cores” for families of languages • a common RIF Core binding these two
  • 165. 165 Current status • Candidate Recommendation published in October 2009 • what this means: technical work is done, cross-checked against implementations
  • 166. 166 RIF Core • Core defines • a “presentation syntax”, which is really to… present the constructions (is not necessarily implemented in tools) • a formal XML syntax to encode and exchange the rules • A Core document is • some directives like import, prefix settings for URI-s, etc • a sequence of implications, possibly involving built-in predicates on datatypes
  • 167. 167 RIF Core example Document( Prefix(cpt http://example.com/concepts#) Prefix(ppl http://example.com/people#) Prefix(bks http://example.com/books#) Group ( Forall ?Buyer ?Item ?Seller ( cpt:buy(?Buyer ?Item ?Seller):- cpt:sell(?Seller ?Item ?Buyer) ) cpt:sell(ppl:John bks:LeRif ppl:Mary) ) ) infers the following relationship: cpt:buy(ppl:Mary bks:LeRif ppl:John)
  • 168. 168 Additional RIF Core features • RIF Core includes some extra features • built-in datatypes and predicates • notion of “local names”, a bit like RDF’s blank nodes • “classification”, like typing in RDFS and OWL • p # T
  • 169. 169 What about RDF(S), OWL, and RIF? • Typical scenario: applications exchange rules that refer to RDF data • To make that work: • RDF facts/triples have to be representable in Core • harmonization on the concepts is necessary • the formal semantics of the two worlds should also be aligned • There is a separate document that brings these together
  • 170. 170 Rules vs OWL? • In a SW application, should I use RIF, OWL, or both? • The two approaches are complimentary • there are things that rules cannot really express or infer • eg, inferencing complex relationships among classes • there are things that ontologies cannot really express or in only a very complicated manner • eg, complex Horn rules • Often, applications require both
  • 171. 171 What have we achieved? (putting all this together)
  • 172. 172 Other SW technologies • There are other technologies that we do not have time for here • find RDF data associated with general URI-s: POWDER • bridge to thesauri, glossaries, etc: SKOS
  • 174. 174 Same with what we learned
  • 175. 175 Example: personalized tourist itinerary • Integration of relevant data in Zaragoza (using RDF and ontologies) • Use rules on the RDF data to provide a proper itinerary Courtesy of Jesús Fernández, Mun. of Zaragoza, and Antonio Campos, CTIC (SWEO Use Case)
  • 177. 177 Available specifications: Primers, Guides • The “RDF Primer” or “OWL 2 Primer” give a formal introduction to RDF(S) and OWL • GRDDL and RDFa Primers have also been published • The W3C Semantic Web Activity Homepage has links to all the specifications and guides: • http://www.w3.org/2001/sw/
  • 178. 178 “Core” vocabularies • There are also a number widely used “core vocabularies” • Dublin Core: about information resources, digital libraries, with extensions for rights, permissions, digital right management • FOAF: about people and their organizations • DOAP: on the descriptions of software projects • SIOC: Semantically-Interlinked Online Communities • vCard in RDF • … • One should never forget: ontologies/vocabularies must be shared and reused!
  • 179. 179 Some books • J. Pollock: Semantic Web for Dummies, 2009 • G. Antoniu and F. van Harmelen: Semantic Web Primer, 2nd edition in 2008 • D. Allemang and J. Hendler: Semantic Web for the Working Ontologist, 2008 • P. Hitzler, R. Sebastian, M. Krötzsch: Foundation of Semantic Web Technologies, 2009 • … See the separate Wiki page collecting book references: http://esw.w3.org/topic/SwBooks
  • 180. 180 Further information and Fora • Planet RDF aggregates a number of SW blogs: • http://planetrdf.com/ • Semantic Web Interest Group • a forum developers with archived (and public) mailing list, and a constant IRC presence on freenode.net#swig • anybody can sign up on the list: • http://www.w3.org/2001/sw/interest/ • there are also similar list for Linked Open Data, OWL developers, etc • contact me for details if you cannot find them
  • 181. 181 Lots of Tools (not an exhaustive list!) • Categories: • Some names: • Triple Stores • Jena, AllegroGraph, Mulgara, Sesame, flickurl, … • Inference engines • TopBraid Suite, Virtuoso • Converters environment, Falcon, Drupal 7, Redland, Pellet, … • Search engines • Disco, Oracle 11g, RacerPro, • Middleware IODT, Ontobroker, OWLIM, Tallis Platform, … • CMS • RDF Gateway, RDFLib, Open • Semantic Web browsers Anzo, DartGrid, Zitgist, Ontotext, Protégé, … • Development environments • Thetus publisher, SemanticWorks, • Semantic Wikis SWI-Prolog, RDFStore… • … • …
  • 182. 182 Conclusions • The Semantic Web is about creating a Web of Data • There is a great and very active user and developer community, with new applications
  • 183. 183 By the way: the book is real
  • 184. 184 Thank you for your attention! These slides are also available on the Web: http://www.w3.org/2009/Talks/1030-Philadelphia-IH/

Hinweis der Redaktion

  1. This is just a generic slide set. Should be adapted, reviewed, possibly with slides removed, for a specific event. Rule of thumb: on the average, a slide is a minute…
  2. The use internal ontologies/vocabularies to describe the knowledge areas, and a combination of the RDF data and that ontology to search through the (integrated) databases for a specific knowledge expertise. The dump is from a faceted browser developed by the company to view result data.
  3. The various databases around the country are handled by independent bodies. A visual query generator creates a SPARQL query, this is then decomposed to access the individual databases, on-the-fly transformed into SQL queries, the result are in RDF and recombined for the answer. The system is uses in the Chinese Academy of Sciences&apos; Research institute on traditional Chinese medicine. The university is also working on a nation-wide ontology on traditional Chinese Medicine that can be combined with the search to improve it. Still in development. That ontology might be bound to western medical ontologies, too (eventually).
  4. Various types of databases are accessed having an RDF transformation of (part of the data) on the fly. Some of the data may be simple tables, some are the result of continuous background processing analysing the literature (not directly related to the Semantic Web per se). The integration of the data is done on the RDF level, and is viewed via an off-the-shelf (though experimental) faceted browser (Exhibit). Ie, the Semantic Web portion is very simple but allows for a very quick integration of the data on the screen.
  5. The important point here is that (1) the data becomes available to the World via a unified format (ie, RDF), regardless on how it is stored inside and (2) the various datasets are interlinked together, ie, they are not independent islands. Dbpedia is probably the most important &apos;hub&apos; in the project.
  6. The right hand portion of the wiki side is what is referred to as &apos;infobox&apos;. The left side is the dbpedia content as made available.
  7. This is the important point: this is why this is Linking open data. What the community does (and this is a community project) is to make agreements on how the different datasets can be linked and then the linkage is done automatically by the &apos;bridges&apos; that map the public datasets into RDF. Eg, geonames is a public dataset by geonames.org and dbpedia is, well... wikipedia:-)
  8. The various databases around the country are handled by independent bodies. A visual query generator creates a SPARQL query, this is then decomposed to access the individual databases, on-the-fly transformed into SQL queries, the result are in RDF and recombined for the answer. The system is uses in the Chinese Academy of Sciences&apos; Research institute on traditional Chinese medicine. The university is also working on a nation-wide ontology on traditional Chinese Medicine that can be combined with the search to improve it. Still in development. That ontology might be bound to western medical ontologies, too (eventually).
  9. Pubmed.org is the &apos;google&apos; of the medical profession. The result of a search is re-ranked, a better interface is provided, and related terms are also shown based on public medical ontologies. The left hand side refers to the Gene Ontology and Mesh ontologies; actually (red highlight on the screen) and the user is able to follow up related terms, too. Produced by a German company (transinight)
  10. Pubmed.org is the &apos;google&apos; of the medical profession. The result of a search is re-ranked, a better interface is provided, and related terms are also shown based on public medical ontologies. The left hand side refers to the Gene Ontology and Mesh ontologies; actually (red highlight on the screen) and the user is able to follow up related terms, too. Produced by a German company (transinight)
  11. The important point is that the (subsequent) search is not simply done on a (key)word level, like for a traditional search engine, but through the tree of all related terms, where those relations are determined via internal and public ontologies and vocabularies. The screen snapshot illustrates the user interface of the Target Assessment Tool within Lilly Science Grid. The panels to the left of the screen snapshot show that it is possible to directly search for a term or to navigate the ontology to identify a term of interest. The panel to the right of the screen snapshot demonstrates a graph view of data within the data as it relates to the search term.
  12. The system has been developed and tested for Statoil, which is the largest oil company on the Norwegian Continental Shelf, and covers experiences with over 2,500 drilling operations since the early 90s. The objective of the reuse improvements is to discover relevant experiences that could affect current or planned drilling operations. The shared domain ontology is used for semantic annotation, and for retrieval of information. It is developed collaboratively by the discipline advisors, and covers operations, equipment, events and failure states in drilling operations. It also includes relations between these concepts, for example, to indicate that a particular event may result in a failure state.
  13. Variants are, in fact, an extension mechanism to the core...
  14. Ie: variants can play the role of an exchange &apos;core&apos; within a family of rule systems, but for exchange among families, only the basic core can be applied.
  15. Ie: variants can play the role of an exchange &apos;core&apos; within a family of rule systems, but for exchange among families, only the basic core can be applied.
  16. It is the same model as before but with one more level in the exchange hierarchy. Whether the central core will become feasible is still an open issue at this moment.
  17. The system has been developed and tested for Statoil, which is the largest oil company on the Norwegian Continental Shelf, and covers experiences with over 2,500 drilling operations since the early 90s. The objective of the reuse improvements is to discover relevant experiences that could affect current or planned drilling operations. The shared domain ontology is used for semantic annotation, and for retrieval of information. It is developed collaboratively by the discipline advisors, and covers operations, equipment, events and failure states in drilling operations. It also includes relations between these concepts, for example, to indicate that a particular event may result in a failure state.