Workshop "Semantic Web" - 23.03.2006 - Benjamin Nowack

Workshop "Semantic Web"

Hamburg, 23.03.2006, EDEKA-Haus, New-York-Ring 6

Inhaltsverzeichnis

Das heutige WWW: Entstehung

Idee:

  • System zur Strukturierung und Verknüpfung verteilter Informationen am CERN
  • Hypertext-basiert
  • Flexibilität bzgl. unterschiedlicher Formate

1990

  • HTTP, HTML

1993

  • CERN verzichtet auf Eigentumsrechte

Das heutige WWW: Stärken und Gründe für den Erfolg

Das heutige WWW: Schwächen

Daten - Information - Wissen

Daten- Information- Wissen, Begriffshierarchie

Das vorherrschende Datenformat im Web (HTML) erlaubt es lediglich Menschen, die darin kodierten Informationen zu erkennen und zu nutzen. Die Verknüpfung von Informationen zum Wissensgewinn (konkrete Problemlösungen) lässt sich nicht zuverlässig von Software durchführen.

Dennoch: Trend zu stärkerer Informationsverarbeitung im Web

Entwicklungen der letzten Jahre, Beispiele

Was fehlt?

Von Maschinen erschließbare Semantik (Bedeutung) von Dokumenten

  • Feinere Granularität jenseits von nur Dokumenten
  • Typisierung von Informationseinheiten
  • Typisierung von Links
  • Standardisierte Zugriffsmöglichkeiten auf Daten
  • Die Möglichkeit, Datenmodelle abzugleichen

Semantic Web: Grundsätzliche Idee

"The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries."
W3C
"If HTML and the Web made all the online documents look like one huge book, RDF, schema, and inference languages will make all the data in the world look like one huge database."
Tim Berners-Lee, Weaving the Web, 1999

Semantic Web: Schichtenmodell und Anwendungsmöglichkeiten

Semantic-Web-Schichtenmodell und potentielle Anwendungen

Semantic Web: Schichtenmodell: IRI, Unicode, Security

Unterbau aus bestehender Technik/Technologie

Semantic Web: Schichtenmodell: RDF Model, technisch

Semantic Web: Schichtenmodell: RDF Model, visuell

3 Tripel

  • Benamte, gerichtete Graphen
  • Die Richtung der Verknüpfung ist allerdings willkürlich (Ausnahme: Literale können nicht als Subjekte verwendet werden)
  • Die Vergabe von IRIs anstelle der Vewendung von bNodes gilt allgemein als "Good practice"

Semantic Web: Schichtenmodell: Syntax: RDF/XML

...
<rdf:Description>
  <foaf:name>Benjamin Nowack</foaf:name>
  <foaf:knows>
    <rdf:Description rdf:about="#bodo">
      <foaf:mbox rdf:resource="mailto:nowack@hanse-dv.com"/>
    </rdf:Description>				
  </foaf:knows>
</rdf:Description>
...
oder auch:
...
<rdf:Description>
  <foaf:name>Benjamin Nowack</foaf:name>
  <foaf:knows rdf:resource="#bodo"/>
</rdf:Description>
  
<rdf:Description rdf:about="#bodo">
  <foaf:mbox rdf:resource="mailto:nowack@hanse-dv.com"/>
</rdf:Description>				
...

RDF/XML ist lediglich ein Datenformat. In welcher Form die Informationen kodiert werden, ist nicht vorgegeben. Herkömmliche XML-Tools können nicht direkt verwendet werden, um z.B. Validierungen oder Transformationen durchzuführen.

Semantic Web: Schichtenmodell: Syntax: N3, Turtle, N-Triples

...
_:bnode1 foaf:name "Benjamin Nowack" ;
         foaf:knows <#bodo> .
<#bodo>  foaf:mbox <mailto:nowack@hanse-dv.com> .
...
Turtle
...
_:bnode1 <http://xmlns.com/foaf/0.1/name> "Benjamin Nowack" .
_:bnode1 <http://xmlns.com/foaf/0.1/knows> <http://...#bodo> .
<http://...#bodo>  <http://xmlns.com/foaf/0.1/mbox> <mailto:nowack@hanse-dv.com> .
...
N-Triples (Turtle-Subset, ohne Abkürzungen und mit ein paar weiteren Einschränkungen)

Semantic Web: Schichtenmodell: Persistence

Verschiedene Möglichkeiten der Datenhaltung

Semantic Web: Schichtenmodell: Ontology/Model

An ontology defines the terms used to describe and represent an area of knowledge.
Ontologie-Beschreibung des W3C

Semantic Web: Schichtenmodell: SPARQL

SPARQL (SPARQL Protocol And RDF Query Language)

Semantic Web: Schichtenmodell: SPARQL: Beispiele

PREFIX foaf:   <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?g ?p2 ?p1_name ?p2_name
WHERE {
  GRAPH ?g { ?p1 foaf:knows ?p2 } .
  ?p1 foaf:name ?p1_name .
  ?p2 foaf:name ?p2_name .
  FILTER(REGEX(?p2_name, "^B")).
}
LIMIT 50
DESCRIBE <http://example.com/data#bodo>

Semantic Web: Schichtenmodell: Rules

PREFIX family: <http://example.com/family/ns#>

CONSTRUCT {
  ?p1_sohn family:onkel ?p1_bruder .
  ?p1_bruder family:neffe ?p1_sohn .
}
WHERE
{
  ?p1 family:sohn ?p1_sohn ;
      family:bruder ?p1_bruder .
}
				

Semantic Web: Schichtenmodell: Logic Framework

Semantic Web: Schichtenmodell: Proof & Trust

Typische Komponenten einer SemWeb-Applikation (Beispiel)

  • Web Reader
  • RDF Parser, evtl. Wrapper
  • RDF Store (oder Dateien)
  • Ontology Store
  • Lokale APIs (OWL, Data)
  • (eigentliche) Applikation (z.B. V und C bei MVC)
  • APIs für externen Zugriff (SPARQL, INSERT/UPDATE/DELETE, ...)

Frameworks und Toolkits: Kriterien

Stand der Technik: Skalierbarkeit

Das Semantic Web ist noch im früh-Hype-Bereich

Gartner Hype Cycle

  • "2-5 Jahre bis zum 'Plateau der Produktivität'" (2005)
  • "Unternehmen sollten von der Beobachter-Position in eine aktivere Rolle wechseln" (2006)

Problembereiche

Sonstiges/Breakouts (Flipchart, Web, ...)