Semantic Web (VU)

Semantic Web


Course code: X_400083
Period: Period 1
Credits: 6.0
Language of tuition: English
Faculty: Faculteit der Exacte Wetenschappen
Coordinator: P.T. Groth
Teaching staff: dr. K.S. Schlobach
  • P.T. Groth
  • dr. L. Hollink
Teaching method(s): Lecture
Level: 300
This module exists in the following studies:
    Informatica - [g-k] - Vrije Universiteit Amsterdam
      Lifestyle Informatics - [l-p] - Vrije Universiteit Amsterdam
        Informatie, multimedia en management - Vrije Universiteit Amsterdam

        Course objective

        Doel van dit college is om de student kennis te laten maken met de
        mogelijkheden voor kennis-representatie technieken op het World Wide
        Web, specifiek Semantic Web technieken.

        Course content

        Het WWW biedt grote mogelijkheden voor het gebruik van bestaande en
        nieuwe kennisrepresentatie technieken. Een belangrijk doel hierbij is
        het omvormen van het huidige Web (pagina's die voor menselijke lezers
        bedoeld zijn) tot een Web waarin kennis expliciet is gemodelleerd,
        zodat deze ook voor machinaal gebruik geschikt is. Dit zal een
        belangrijke stap zijn naar de verwezenlijking van intelligentere
        zoek-machines, informatie-filters, adaptieve Web-sites, etc. In dit
        college behandelen we een aantal technieken die aan de basis van deze
        nieuwe generatie van het Web zullen staan: modelleer technieken (bijv.
        ontologieen), standaard web-technieken zoals en kennisrepresenatie talen
        voor gebruik op het Web (RDF, OWL). Het college bespreekt ook een
        aantal toepassingsscenario's, zoals e-commerce, zoeken en navigeren, en
        format-onafhankelijk publiceren.

        Form of tuition

        Hoorcollege met bijbehorend practicum. In het practicum zal een
        toepassing worden gerealiseerd met voornoemde markup talen en systemen.

        Course reading

        A Semantic Web Primer (3rd edition)
        Grigoris Antoniou, Paul Groth, Frank van Harmelen and Rinke Hoekstra,
        MIT Press, September 2012

        Recommended background knowledge

        Gewenst: Kennissystemen (400126).

        Target group

        3I, 3-IMM, 3LI.






        http://bb.vu.nl/webapps/portal/frameset.jsp

        Ontologies: http://semanticweb.org/wiki/Ontology

        The layers of Semantic Web:

        The semantic web comes in layers. This is a quick summary of the ones I think you're interested in.

        Update: Please note that RDFS is used to define the structure of the data, not OWL. OWL describes semantic relationships which normal programming, such as a C struct, isn't fussed about and is closer to AI research & set theory.

        Triples & URIs

        Subject - Predicate - Object
        

        These describe a single fact. Generally URI's are used for the subject and predicate. The object is either another URI or a literal such as a number or string. Literals can have a type (which is also a URI), and they can also have a language. Yes, this means triples can have up to 5 bits of data!

        For example a triple might describe the fact that Charles is Harrys father.

        <http://example.com/person/harry> <http://familyontology.net/1.0#hasFather> <http://example.com/person/charles> .
        

        Triples are database normalisation taken to a logical extreme. The have the advantage that you can load triples from many sources into one database with no reconfiguration.

        RDF and RDFS

        The next layer is RDF - The Resource Description Framework. RDF defines some extra structure to triples. The most important thing RDF defines is a predicate called "rdf:type". This is used to say that things are of certain types. Everyone uses rdf:type which makes it very useful.

        RDFS (RDF Schema) defines some classes which represent the concept of subjects, objects, predicates etc. This means you can start making statements about classes of thing, and types of relationship. A the most simple level you can state things like http://familyontology.net/1.0#hasFather is a relationship between a person and a person. It also allows you to describe in human readable text the meaning of a relationship or a class. This is a schema. It tells you legal uses of various classes and relationships. It is also used to indicate that a class or property is a sub-type of a more general type. For example "HumanParent" is a subclass of "Person". "Loves" is a sub-class of "Knows".

        RDF Serialisations

        RDF can be exported in a number of file formats. The most common is RDF+XML but this has some weaknesses.

        N3 is a non-XML format which is easier to read, and there's some subsets (Turtle and N-Triples) which are stricter.

        It's important to know that RDF is a way of working with triples, NOT the file formats.

        XSD

        XSD is a namespace mostly used to describe property types, like dates, integers and so forth. It's generally seen in RDF data identifying the specific type of a literal. It's also used in XML schemas, which is a slightly different kettle of fish.

        OWL

        OWL (Web Ontology Language) adds semantics to the schema. It allows you to specify far more about the properties and classes. It is also expressed in triples. For example, it can indicate that "If A isMarriedTo B" then this implies "B isMarriedTo A". Or that if "C isAncestorOf D" and "D isAncestorOf E" then "C isAncestorOf B". Another useful thing owl adds is the ability to say two things are the same, this is very helpful for joining up data expressed in different schamas. You can say that relationship "sired" in one schema is owl:sameAs "fathered" in some other schema. You can also use it to say two things are the same, such as the "Elvis Presley" on wikipedia is the same one on the BBC. This is very exciting as it means you can start joining up data from multiple sites (this is "Linked Data").

        You can also use the OWL to start creating new facts, such as C isAncestorOf E".




        Subpages (1): Final assignment
        Ċ
        Attila Csala,
        Sep 7, 2012, 1:55 AM
        Ċ
        Attila Csala,
        Sep 14, 2012, 5:53 AM
        Ċ
        Attila Csala,
        Sep 21, 2012, 6:15 AM
        Ċ
        Attila Csala,
        Sep 14, 2012, 5:54 AM
        Ċ
        Attila Csala,
        Sep 14, 2012, 5:54 AM
        Ċ
        Attila Csala,
        Sep 14, 2012, 5:54 AM
        ċ
        metallica.owl
        (3k)
        Attila Csala,
        Sep 20, 2012, 1:33 PM
        Ċ
        Attila Csala,
        Sep 12, 2012, 9:43 AM
        Comments