SEMANTIC WEB TECHNOLOGIES David Ben-David & Roi Adadi Built on W3C “Tutorial on Semantic Web Technologies” presentation.

Slides:



Advertisements
Similar presentations
CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
Advertisements

RDF Schemata (with apologies to the W3C, the plural is not ‘schemas’) CSCI 7818 – Web Technologies 14 November 2001 Van Lepthien.
Semantic Web Thanks to folks at LAIT lab Sources include :
CS570 Artificial Intelligence Semantic Web & Ontology 2
By Ahmet Can Babaoğlu Abdurrahman Beşinci.  Suppose you want to buy a Star wars DVD having such properties;  wide-screen ( not full-screen )  the extra.
RDF Tutorial.
Of 27 lecture 7: owl - introduction. of 27 ece 627, winter ‘132 OWL a glimpse OWL – Web Ontology Language describes classes, properties and relations.
Dr. Alexandra I. Cristea RDF.
COMP 6703 eScience Project Semantic Web for Museums Student : Lei Junran Client/Technical Supervisor : Tom Worthington Academic Supervisor : Peter Strazdins.
RDF Kitty Turner. Current Situation there is hardly any metadata on the Web search engine sites do the equivalent of going through a library, reading.
More RDF CS 431 – Carl Lagoze – Cornell University Acknowledgements: Eric Miller Dieter Fensel.
RDF: Building Block for the Semantic Web Jim Ellenberger UCCS CS5260 Spring 2011.
From SHIQ and RDF to OWL: The Making of a Web Ontology Language
Samad Paydar Web Technology Laboratory Computer Engineering Department Ferdowsi University of Mashhad 1389/11/20 An Introduction to the Semantic Web.
1 DCS861A-2007 Emerging IT II Rinaldo Di Giorgio Andres Nieto Chris Nwosisi Richard Washington March 17, 2007.
JOSH FLECK Semantic Web. What is Semantic Web? Movement led by W3C that promotes common formats for data on the web Describes things in a way that computer.
Semantic Web Technologies Lecture # 2 Faculty of Computer Science, IBA.
CSE 428 Semantic Web Topics Introduction Jeff Heflin Lehigh University.
Ontologies: Making Computers Smarter to Deal with Data Kei Cheung, PhD Yale Center for Medical Informatics CBB752, February 9, 2015, Yale University.
Logics for Data and Knowledge Representation SPARQL Protocol and RDF Query Language (SPARQL) Feroz Farazi.
Semantic Web Series 1 Mohammad M. R. Cowdhury UniK, Kjeller.
RDF (Resource Description Framework) Why?. XML XML is a metalanguage that allows users to define markup XML separates content and structure from formatting.
Semantic Web Technologies ufiekg-20-2 | data, schemas & applications | lecture 21 original presentation by: Dr Rob Stephens
Chapter 6 Understanding Each Other CSE 431 – Intelligent Agents.
Practical RDF Chapter 1. RDF: An Introduction
The Semantic Web Service Shuying Wang Outline Semantic Web vision Core technologies XML, RDF, Ontology, Agent… Web services DAML-S.
The Need “Most of the Web's content today is designed for humans to read, not for computer programs to manipulate meaningfully.” Berners-Lee,
INF 384 C, Spring 2009 Ontologies Knowledge representation to support computer reasoning.
Logics for Data and Knowledge Representation
The Semantic Web Web Science Systems Development Spring 2015.
RDF and OWL Developing Semantic Web Services by H. Peter Alesso and Craig F. Smith CMPT 455/826 - Week 6, Day Sept-Dec 2009 – w6d21.
Chapter 6 Understanding Each Other CSE 431 – Intelligent Agents.
OWL 2 in use. OWL 2 OWL 2 is a knowledge representation language, designed to formulate, exchange and reason with knowledge about a domain of interest.
Chapter 9. 9 RDFS (RDF Schema) RDFS Part of the Ontological Primitive layer Adds features to RDF Provides standard vocabulary for describing concepts.
Metadata. Generally speaking, metadata are data and information that describe and model data and information For example, a database schema is the metadata.
Towards a semantic web Philip Hider. This talk  The Semantic Web vision  Scenarios  Standards  Semantic Web & RDA.
Coastal Atlas Interoperability - Ontologies (Advanced topics that we did not get to in detail) Luis Bermudez Stephanie Watson Marine Metadata Interoperability.
Semantic Web - an introduction By Daniel Wu (danielwujr)
Turtle – RDF Graph. Turtle – Basic Syntax Triples are terminated with a full stop URLs are encoded in angle brackets ( ) Literals are enclosed by double.
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
EEL 5937 Ontologies EEL 5937 Multi Agent Systems Lecture 5, Jan 23 th, 2003 Lotzi Bölöni.
1 SPARQL A. Emrah Sanön. 2 RDF RDF is quite committed to Semantic Web. Data model Serialization by means of XML Formal semantics Still something is missing!
It’s all semantics! The premises and promises of the semantic web. Tony Ross Centre for Digital Library Research, University of Strathclyde
1 Artificial Intelligence Applications Institute Centre for Intelligent Systems and their Applications Stuart Aitken Artificial Intelligence Applications.
1 Tutorial on the Semantic Web (Last update: 26 May 2009) adapted from (C) Ivan Herman, W3C Given at WE course by Peter Dolog Adapted: October 2010.
Artificial Intelligence 2004 Ontology
The future of the Web: Semantic Web 9/30/2004 Xiangming Mu.
Introduction to the Semantic Web and Linked Data Module 1 - Unit 2 The Semantic Web and Linked Data Concepts 1-1 Library of Congress BIBFRAME Pilot Training.
Introduction to the Semantic Web and Linked Data
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
THE BIBFRAME EDITOR AND THE LC PILOT Module 3 – Unit 1 The Semantic Web and Linked Data : a Recap of the Key Concepts Library of Congress BIBFRAME Pilot.
1cs The Need “Most of the Web's content today is designed for humans to read, not for computer programs to manipulate meaningfully.” Berners-Lee,
EEL 5937 Ontologies EEL 5937 Multi Agent Systems Lotzi Bölöni.
The Semantic Web. What is the Semantic Web? The Semantic Web is an extension of the current Web in which information is given well-defined meaning, enabling.
A Portrait of the Semantic Web in Action Jeff Heflin and James Hendler IEEE Intelligent Systems December 6, 2010 Hyewon Lim.
What is the Semantic Web? 17 th XBRL International Conference Eindhoven, the Netherlands 5 st May, 2008 Ivan Herman, W3C.
Semantic Web. P2 Introduction Information management facilities not keeping pace with the capacity of our information storage. –Information Overload –haphazardly.
Setting the stage: linked data concepts Moving-Away-From-MARC-a-thon.
Overview of the Semantic Web Ralph R. Swick World Wide Web Consortium (W3C) 17 October 2009.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
The Semantic Web By: Maulik Parikh.
Introduction to the Semantic Web (tutorial) 2009 Semantic Technology Conference San Jose, California, USA June 15, 2009 Ivan Herman, W3C
Tutorial on Semantic Web
Overview of the Semantic Web Ralph R
RDF For Semantic Web Dhaval Patel 2nd Year Student School of IT
Logics for Data and Knowledge Representation
ece 720 intelligent web: ontology and beyond
Resource Description Framework (RDF)
Semantic-Web, Triple-Strores, and SPARQL
Presentation transcript:

SEMANTIC WEB TECHNOLOGIES David Ben-David & Roi Adadi Built on W3C “Tutorial on Semantic Web Technologies” presentation

We all know that, right?  The Semantic Web Artificial Intelligence on the Web  One has to add metadata to all Web pages, convert all relational databases, and XML data to use the Semantic Web  It is just an ugly application of XML  One has to learn formal logic, knowledge representation techniques, description logic, etc  It is, essentially, an academic project, of no interest for industry …

WRONG!!!!  The Semantic Web Artificial Intelligence on the Web  One has to add metadata to all Web pages, convert all relational databases, and XML data to use the Semantic Web  It is just an ugly application of XML  One has to learn formal logic, knowledge representation techniques, description logic, etc  It is, essentially, an academic project, of no interest for industry …

Is the Semantic Web AI on the Web? No! Beware of the hype!!!

So what is the Semantic Web?  Humans can easily “connect the dots” when browsing the Web…  you disregard advertisements  you “know” (from the context) that this link is interesting and goes to my CV; whereas the other one is without interest  etc.  … but machines can’t!  The goal is to have a Web of Data to ensure smooth integration with data, too  Let us see just some application examples…

Example: Searching  The best-known example… Google et al. are great, but there are too many false hits adding (maybe application specific) descriptions to resources should improve this

General search

Example: Semantics of Web Services  If the services are ubiquitous, searching issue comes up, for example: “find me the most elegant Schrödinger equation solver”  but what does it mean to be “elegant”? “most elegant”?  mathematicians ask these questions all the time…  It is necessary to characterize the service not only in terms of input and output parameters…  …but also in terms of its semantics

Example: data(base) integration  Databases are very different in structure & in content  Lots of applications require managing several databases  after company mergers  biochemical, genetic, pharmaceutical research  etc.  Most of these data is accessible on the Web

Example: data integration in life sciences

And the problem is real

The Semantic Web Vision " The Semantic Web is not a separate Web but an extension of the current one, in which information is given well-defined meaning, better enabling computers and people to work in cooperation." Tim Berners-Lee, James Hendler and Ora Lassila; Scientific American, May 2001 Scientific American, May 2001

What Is Needed?  (Some) data should be available for machines for further processing  Data should be possibly exchanged, merged, combined on a Web scale  Sometimes, data may describe other data  Machines may also need to reason about that data

What Is Needed (Technically)?  To make data machine process-able, we need:  unambiguous names for resources that may also bind data to real world objects: URI-s  a common data model to access, connect, describe the resources: RDF  access to that data: SPARQL  common vocabularies: RDFS, OWL, SKOS  reasoning logics: OWL, Rules  The “Semantic Web” is an infrastructure for the interchanging and integrating data on the Web  It extends the current Web (and does not replace it)

Statements  The data is a set of statements  Statements can be modeled (mathematically) with: Resources: an element, a URI, a literal, … Properties: directed relations between two resources Statements: “triples” of two resources bound by a property  Common terminology: (s,p,o) for subject, properties, object subject object property

URI-s Play a Fundamental Role  Anybody can create (meta)data on any resource on the Web  e.g., the same Person could be annotated through other terms  semantics is added to existing Web resources via URI-s  Data exist on the Web, because it is accessible through standard Web means  URI-s ground RDF into the Web  information can be retrieved using existing tools  this makes the “Semantic Web”, well… “Semantic Web”

Resource Description Framework The data model of the Semantic Web. A schema-less data model that features unambiguous identifiers and named relations between pairs of resources. A labeled, directed graph of relations between resources and literal values.

RDF is a Graph  An (s,p,o) triple can be viewed as a labeled edge in a graph  i.e., a set of RDF statements is a directed, labeled graph both “objects” and “subjects” are the graph nodes “properties” are the edges  One should “think” in terms of graphs; XML or Turtle syntax are only the tools for practical usage!

Example RDF triples Chart Line

Merging data & data integration  It becomes easy to merge data  Merge can be done because statements refer to the same URI-s  nodes with identical URI-s are considered identical  Merging is a very powerful feature of RDF  metadata may be defined by several (independent) parties…  …and combined by an application  one of the areas where RDF is much handier than pure XML

Data integration example

RDF/XML Principles (cont) Chart Chart The “canonical” way:The “simplified” version : There are lots of other simplification rules

Blank Nodes  Consider the following statement:  “the full slide is a «thing» that consists of axes, legend, and datalines”  Until now, nodes were identified with a URI. But…  …what is the URI of «thing»?

Blank Nodes  Let the System Do It  Blank nodes require attention when merging  blanks nodes in different graphs are different  the implementation must be careful with its naming schemes …

RDF Serialization  Depending on your preference -  RDF/XML  Turtle (not based on XML)  Again: these are all just syntactic sugar!  RDF environments often understand several serialization syntaxes

RDFS -RDF Vocabulary Description Language  officially: “RDF Vocabulary Description Language”; the term “Schema” is retained for historical reasons  Are there (logical) relationships among the terms in the RDF graph?

Classes, Resources, …  Think of well known in traditional ontologies: use the term “mammal” “every dolphin is a mammal” “Flipper is a dolphin” 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”) “mammal”, “dolphin”, …  Relationships are defined among classes/resources: “typing”: an individual belongs to a specific class (“Flipper is a dolphin”) “subclassing”: instance of one is also the instance of the other (“every dolphin is a mammal”)  RDFS formalizes these notions in RDF

Classes, Resources in RDF(S)  RDFS defines rdfs:Resource, rdfs:Class as nodes; rdf:type, rdfs:subClassOf as properties

Typed Nodes  A resource may belong to several classes  rdf:type is just a property…  “Flipper is a mammal, but Flipper is also a TV star…”  i.e., it is not like a datatype in this sense!  The type information may be very important for applications  e.g., it may be used for a categorization of possible nodes

Inferred Properties (#Flipper rdf:type #Mammal)  is not in the original RDF data…  …but can be inferred from the RDFS rules  Better RDF environments will return that triplet, too

Inference: Formal  The RDF Semantics document has a list of (44) entailment rules :  “if such and such triplets are in the graph, add this and this triplet”  do that recursively until the graph does not change  this can be done in polynomial time for a specific graph  Whether those extra triplets are physically added to the graph, or deduced when needed is an implementation issue

Properties (Predicates)  Property is a special class (rdf:Property)  Properties are constrained by their range and domain  Properties are also resources… (have URI’s)  For example, (P rdfs:range C) means: 1. P is a property 2.C is a class instance 3.when using P, the “object” must be an individual in C * this is an RDF statement with subject P, object C, and property rdfs:range

Property Specification Example

Literals  Literal doesn’t contain URI’s  Literals may have a data type (floats, ints, free text, etc) defined in XML Schemas, including full XML Fragments  (Natural) language can also be specified (via xml:lang )

Concluding example (data export)

Concluding example (merged & revisited)

Concluding example (add external data source)

Querying RDF Graphs/Depositories  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)  This is the goal of SPARQL (Query Language for RDF)

SPARQL  Stands for…? SPARQL Protocol and RDF Query Language  Is based on similar systems that already existed in some environments  Is a programming language-independent query language  The fundamental idea: generalize the approach of graph patterns

Example Returns: ["Total Members", 100, Members",20, ]

Other SPARQL Features  Limit the number of returned results; remove duplicates, sort them, …  Return the full subgraph (instead of a list of bound variables)  Construct a graph combining a separate pattern and the query results  Use datatypes and/or language tags when matching a pattern

Programming Practice - Jena  RDF toolkit in Java from HP’s Bristol lab; it has  a large number of classes/methods listing, removing associated properties, objects, comparing full RDF graphs manage typed literals, mapping Seq, Alt, etc. to Java constructs  an “RDFS Reasoner”  a full SPARQL implementation  a layer (Joseki) for remote access of triples (essentially, and triple database)  and more…  Probably the most widely used RDF environment in Java today

Ontologies (OWL)  RDFS is useful, but does not solve all the issues  Can a program reason about some terms? E.g.: “ if «A» is left of «B» and «B» is left of «C», is «A» left of «C»? ”  programs should be able to deduce such statements  if somebody else defines a set of terms: are they the same?

How to speak Ontology?  We need a Web Ontologies Language to define: more constraints on properties logical characterization of properties etc.  W3C’s Ontology Language (OWL) - A layer on top of RDFS with additional possibilities  “OWL is now the most used ontology language in the history of AI…” (Jim Hendler)

Why “OWL” and not “WOL”?  Some urban legends… e.g., reference to Owl from Winie the Pooh, who misspelled his name as “WOL”  A reference to an AI project at MIT of the mid 70’s by Bill Martin, called “One World Language”… an early attempt for a ontology language and associated ontology, intended to be a universal language for encoding meaning for computers

Property Restrictions in OWL  Restriction may be by: value constraints (i.e., further restrictions on the range) all values must be from a class at least one value must be from a class  cardinality constraints (i.e., how many times the property can be used on an instance?) minimum cardinality maximum cardinality exact cardinality

Property Restriction Example “A dolphin is a mammal living in the sea or in the Amazonas”

More OWL preferences  Property Characterization In OWL, one can characterize the behavior of properties (symmetric, transitive, …)  Term Equivalence/Relations For classes (owl:equivalentClass, owl:disjointWith) For properties (owl:equivalentProperty, owl:inverseOf) For individuals (owl:sameAs, owl:differentFrom)  Special class owl:Ontology with special properties: owl:imports, owl:versionInfo, owl:priorVersion owl:backwardCompatibleWith, owl:incompatibleWith rdfs:label, rdfs:comment can also be used

OWL and Logic  OWL expresses a small subset of First Order Logic it has a “structure” (class hierarchies, properties, datatypes…), and “axioms” can be stated within that structure only.  Inference based on OWL is within this framework only

However: Ontologies are Hard!  A full ontology-based application is Complex system Hard to implement Heavy to run And not all application may need it  Three layers of OWL are defined: Lite, DL(Description Logic), and Full decreasing level of complexity and expressiveness

FOAF - The way to describe yourseft  Stands for "Friend Of A Friend"  Provides structured links  Information distributed & extensible  Name ( foaf:name )  ( Foaf:mbox )  Representing picture ( Foaf:img )  Your publications ( Foaf:publications )  Your online account ( Foaf:holdsAccount )

Creating FOAF  Several types of FOAF authoring tools are available:  Do it by hand  Web-based tools  Dedicated tools  Using a Wiki

DC – Dublin core  The mission:To make it easier to find resources using the Internet through the following activities Developing metadata standards for discovery across domains Defining frameworks for the interoperation of metadata sets Facilitating the development of community- or discipline- specific metadata sets that are consistent with the above items

DC - Core Metadata Element Set  Title ( dc:title )  Subject ( dc:subject )  Description ( dc:description )  Creator  Publisher ( dc:publisher )  Contributor  Date  Type  Format  Identifier ( dc:identifier )  Source  Language  Relation ( dcterms:isPartOf )  Coverage  Rights