• Keine Ergebnisse gefunden

Warum überhaupt Validatoren?

N/A
N/A
Protected

Academic year: 2022

Aktie "Warum überhaupt Validatoren?"

Copied!
111
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Moderne Web-Technologien

Semantic Web

Editoren & Validatoren

Michal Murawicki Axel Fiebelkorn Eike Starkmann

(2)

Übersicht

Allgemeines

RDF-Validator

Protégé Editor

Pellet Validator

SemanticWorks Editor

SWOOP Editor

WonderWeb Validator

Zusammenfassung

(3)

Allgemeines

Warum überhaupt Validatoren?

Man würde gerne wissen, ob das Dokument korrekt ist

Oder in welcher Syntax ein Dokument geschrieben ist (OWL Lite / DL / Full)

Wo treten die Fehler in einem Dokument

auf?

(4)

Allgemeines

Warum überhaupt Editoren?

Einfachere Erstellung und Bearbeitung von Dokumenten

Zeitersparnis

Angenehmes Arbeiten

>> Editoren besser als Notepad

(5)

Übersicht

Allgemeines

RDF-Validator

Protégé Editor

Pellet Validator

SemanticWorks Editor

SWOOP Editor

WonderWeb Validator

Zusammenfassung

(6)

RDF-Validator

http://www.w3c.org/RDF/Validator

Validierung und Visualisierung von RDF- Dateien

basiert auf dem Another RDF Parser (ARP)

3-Tupel Repräsentation eines Datenmodells sowie graphische Darstellung

Validierung auch per URI

Source-Code frei zugängig

(7)

RDF-Validator

Eingabe: RDF-Datei

<?xml version="1.0"?>

<rdf:RDF

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:bk="http://www.bookstore.fake/bk#">

<rdf:Description rdf:about="http://www.bookstore.fake/bk/RDF Grundlagen">

<bk:ISBN>123456789</bk:ISBN>

<bk:autor>John Smith</bk:autor>

<bk:jahr>2004</bk:jahr>

<bk:preis>20,50</bk:preis>

</rdf:Description>

</rdf:RDF>

(8)

RDF-Validator

Startseite

(9)

RDF-Validator

Ausgabe: Tripels

(10)

RDF-Validator

Ausgabe: Graph

(11)

RDF-Validator

Fehlerbehandlung

<?xml version="1.0"?>

<rdf:RDF

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:bk="http://www.bookstore.fake/bk#">

<rdf:Description rdf:about="http://www.bookstore.fake/bk/RDF Grundlagen">

<bk:ISBN>123456789</bk:ISBN>

<bk:autor>John Smith</bk:autor>

<bk:jahr>2004<bk:jahr>

<bk:preis>20,50</bk:preis>

</rdf:Description>

</rdf:RDF>

(12)

RDF-Validator

Fehlerbehandlung

(13)

Übersicht

Allgemeines

RDF-Validator

Protégé Editor

Pellet Validator

SemanticWorks Editor

SWOOP Editor

WonderWeb Validator

Zusammenfassung

(14)

Protégé

http://protege.stanford.edu/

entwickelt an der Stanford University

open source

geschrieben in Java

Modellierung und Manipulation von Ontologien

Framework für wissensbasierte Tools und Applikationen

graphische Darstellung und Edition von RDF/OWL- Dateien

Protégé-Frames, Protégé-OWL

(15)

Besonderheiten

ständige Weiterentwicklung

flexibel

erweiterbare Umgebung

viele Plug-ins

große Benutzergemeinde

umfangreiche Tutorials

OWL (Lite, DL, Full)

keine Bearbeitung des Codes!

(16)

Modellierung

Protégé -Frames:

(neuste stabile Version: 3.2.1)

Konstruktion von framebasierten Ontologien in einer bestimmten Domäne

kompatibel mit Open Knowledge Base Connectivity Protocol (OKBC)

Programmierschnittstelle für den Zugang zu Wissensbasen

plug-in Architektur

(17)

Modellierung

Protégé-OWL:

Aufbau von Ontologien für Semantic Web

Erweiterung von Protege um OWL-Modellierung

als Plug-In mit eigenem GUI

Zugang zum DL-Reasoner

Zusammenspiel mit Jena Framework

(http://jena.sourceforge.net/)

(18)

Protégé-OWL - Architektur

(19)

Letzte Konferenz:

9th, 23-26. Juli, Stanford, California Themen u.a.:

Entwicklung von Ontologien (frame, OWL)

Ontologie-basierte Softwareentwicklung

Medizinische Software

Entwicklung von Plug-Ins

Visualisierungs-Tools

Protégé Konferenzen

(20)
(21)

Individuals (Instanzen einer Klasse)

Properties (binäre Relationen auf Instanzen)

Classes (Mengen von Instanzen)

Protégé-OWL - Komponenten

(22)
(23)

Disjunkte Klassen

Klassen in OWL können sich „überlappen“. Man definiert eine Menge von disjunkten Klassen.

Innerhalb der Menge können Instanzen zu höchstens genau einer Klasse gehören.

(24)
(25)

Domain:

Linke Seite einer Relation (analog zum Definitionsbereich in der Mengenlehre)

Range:

Rechte Seite einer Relation (analog zum Wertebereich in der Mengenlehre)

Domain / Range

(26)

Property Restrictions

Eigenschaften-

Einschränkung

(27)

Existential Restrictions

someValuesFrom

(28)

Universal Restrictions

allValuesFrom

(29)

Cardinality Restrictions

hasValue

(30)

Necessary And Sufficient Conditions

(31)
(32)

Schnelle Erstellung von mehreren:

Unterklassen

Properties

Individuals

Restrictions

Wizards

(33)

Beispiel: multiple subclasses

(34)

Project Management

Visualisierung

Import / Export

Reasoning

Semantic Web

Software Engineering

Plugins

(35)

Plug-in: Jambalaya

(36)

DEMO

(37)

Übersicht

Allgemeines

RDF-Validator

Protégé Editor

Pellet Validator

SemanticWorks Editor

SWOOP Editor

WonderWeb Validator

Zusammenfassung

(38)

Übersicht

Pellet Pellet ValidatorValidator

Allgemeines Allgemeines

Features

Funktionsweise

Demo

SemanticWorks

Allgemeines

Features

Demo

(39)

Pellet - Allgemeines

Open Source, auf Java basierender OWL DL (and Full) Validator

Beruht auf „tableaux“ Algorithmen, entwickelt für Description Logic (DL)

Tableaux : Auswertung von Prädikaten, bzw.

Logik

(40)

Pellet - Allgemeines

Pellet ist der einzige zuverlässige und

komplette Validator, der die Ausdrucksstärke von OWL DL behandeln kann

Warum lieber OWL DL als OWL FULL ???

OWL DL entscheidbar, FULL nicht !!!!

(41)

Pellet - Allgemeines

(42)

Übersicht

Pellet

Pellet ValidatorValidator

Allgemeines

Features Features

Funktionsweise

Demo

SemanticWorks

Allgemeines

Features

Demo

(43)

Pellet Features

Beispiel an denen Features gezeigt werden

<?xml version="1.0"?>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:bk="http://www.bookstore.fake/bk#">

<rdf:Description

rdf:about="http://www.bookstore.fake/bk/RDFGrundlagen">

<bk:ISBN>123456789</bk:ISBN>

<bk:autor> John Smith</bk:autor>

<bk:jahr>2004</bk:jahr>

<bk:preis>20,50</bk:preis>

</rdf:Description>

</rdf:RDF>

(44)

Pellet Features

Ontologie – Analyse und “Reparatur“

OWL hat drei Dialekte und zwei “Hauptdialekte”

Pellet verarbeitet einige viele Heuristiken und findet dabei heraus, ob es sich um ein OWL DL oder OWL FULL Dokument handelt. Es wird

geprüft :

ob der Graph Kreise enthält, falls ja OWL FULL

ob eine Klasse Instanz einer anderen ist, falls ja OWL FULL

ob Kardinalitäten > 1 existieren, falls ja OWL FULL

(45)

Pellet Features

(46)

Pellet Features

<?xml version="1.0"?>

<rdf:RDF xml:base="http://www.w3.org/2002/03owlt/I5.26/consistent006"

xmlns:owl="http://www.w3.org/2002/07/owl#"

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

<owl:Class rdf:nodeID="B">

<owl:intersectionOf rdf:parseType="Collection">

<owl:Class rdf:ID="B"/>

<owl:Class>

<owl:unionOf rdf:parseType="Collection">

<rdf:Description rdf:nodeID="B"/>

<owl:Class rdf:ID="C"/>

</owl:unionOf>

</owl:Class>

</owl:intersectionOf>

</owl:Class>

</rdf:RDF>

(47)

Pellet Features

(48)

Pellet Features

ABOX Query

es wurde ein ABOX Anfragemodul mit

eingebunden, so dass es ermöglicht wird,

Datenbank ähnliche Anfragen an eine Ontologie zu stellen.

Die Anfragesprache ist SPARQL (oder RDQL)

(49)

Pellet Features

(50)

Pellet Features

Ontologie Debugging

es werden Erklärungen gegeben, warum tritt ein Fehler auf und wo

Datentyp Urteilsvermögen

Pellet testet die Erfüllbarkeit von Verbindungen von erstellten Datentypen (type checking).

Z.B. eingeschränkte Integer Werte.

(51)

Pellet Features

<?xml version="1.0"?>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:bk="http://www.bookstore.fake/bk#">

<rdf:Description

rdf:about="http://www.bookstore.fake/bk/RDFGrundlagen">

<bk:ISBN>123456789</bk:ISBN>

<bk:autor> John Smith</bk:autor>

<bk:jahr>2004<bk:jahr>

<bk:preis>20,50</bk:preis>

</rdf:Description>

</rdf:RDF>

(52)
(53)

Übersicht

Pellet Pellet ValidatorValidator

Allgemeines

Features

FunktionsweiseFunktionsweise

Demo

SemanticWorks

Allgemeines

Features

Demo

(54)

Pellet - Funktionsweise

(55)

Pellet - Funktionsweise

Zuerst wird geprüft um was für eine Art von Ontologie es sich handelt (DL / FULL)

Danach wird die OWL Ontologie in den Reasoner (logischen Denker) geladen

Während dieser Ladephase werden die Axiome über Klassen in die TBOX Komponente gepackt,

wohingegen die Axiome über die konkreten Daten (Type und Eigenschaft) in die ABOX gespeichert werden

(56)

Pellet - Funktionsweise

TBOX :

Konzept-Axiome, die die Struktur der zu modellierenden Domäne beschreiben (konzeptionelles Schema):

Elephant vAnimal uLarge uGrey

Unterklasse oder Äquivalent

ABOX :

Aussage-Axiome, die konkrete Situationen (Daten) beschreiben:

Happy Father(John)

has Child(John, Mary)

Instanzen, Rollen, Gleichheit, Ungleichheit

(57)

Übersicht

Pellet Pellet ValidatorValidator

Allgemeines

Features

Funktionsweise

DemoDemo

SemanticWorks

Allgemeines

Features

Demo

(58)

Übersicht

Pellet Validator

Allgemeines

Features

Funktionsweise

Demo

SemanticWorksSemanticWorks

AllgemeinesAllgemeines

Features

Demo

(59)

SemanticWorks - Allgemeines

Was ist SemanticWorks ???

SemanticWorks ist ein OWL/RDFS/RDF Editor

Von der Firma Altova und ist seit 2006 erhältlich

Altova ist Marktführer für XML Tools wie XML

Spy, MissionKit, DatabaseSpy

(60)

SemanticWorks - Allgemeines

Was ist SemanticWorks ???

Altova vertreibt SemanticWorks kommerziell (99 Euro)

bieten aber eine Free-Trial Version von 30 Tagen

Anmeldung mit Name, Email, usw.

(61)

Übersicht

Pellet Validator

Allgemeines

Features

Funktionsweise

Demo

SemanticWorksSemanticWorks

Allgemeines

FeaturesFeatures

Demo

(62)
(63)

SemanticWorks - Features

RDF Dokumente können erstellt und editiert werden (graphisch und textbasierend)

Zusätzlich >> Editieren von OWL/RDFS Code

sehr Code naher graphischer Editor

(64)

SemanticWorks - Features

Man kann sich zwischen folgenden Anzeigemöglichkeiten entscheiden :

Classes, listet alle Ontologie Klassen auf. Es werden sogar Blank nodes angezeigt, falls die Option ausgewählt ist

Properties, listet die Beziehungen der Ontologie auf

Instances (a.k.a. individuals), listet alle Instanzen der Klassen einer Ontologie auf.

(65)

SemanticWorks - Features

Man kann sich zwischen folgenden Anzeigemöglichkeiten entscheiden :

All-Different, listet alle owl:AllDifferent Objekte der Ontologie auf

Ontologies, listet alle Ontologien des Dokumentes auf, auch die importierten

(66)

SemanticWorks - Features

(67)

SemanticWorks - Features

Detail View, die bestehenden

Ontologie

Objekte können noch

zusätzlich bearbeitet werden

(68)

SemanticWorks - Features

Overview Fenster, bietet eine Übersicht, wo

man sich in der graphischen Ansicht befindet

(69)

SemanticWorks - Features

Text View, hier wird das Dokument in der Ursprünglichen RDF/XML Syntax angezeigt.

Es gibt zur Erleichterung folgendes :

eine Einfärbung der Syntax,

Zeilennummerierung,

einklappbare Elemente,

drag and drop

bessere Übersicht

(70)

SemanticWorks - Features

(71)

SemanticWorks - Features

Checking documents

Ein RDF, RDF Schema, OWL Lite, OWL DL oder OWL Full Dokument kann auf seine Syntax

geprüft werden.

Zusätzlich, OWL Lite und OWL DL Dokumente können auf ihre korrekte Semantik geprüft werden

(72)

SemanticWorks - Features

Checking documents

Fehler werden im Error-Fenster

angezeigt und sind mit einem Link zum Fehler versehen.

(73)

SemanticWorks - Features

(74)

Übersicht

Pellet Validator

Allgemeines

Features

Funktionsweise

Demo

SemanticWorksSemanticWorks

Allgemeines

Features

DemoDemo

(75)

Übersicht

Allgemeines

RDF-Validator

Protégé Editor

Pellet Validator

SemanticWorks Editor

SWOOP Editor

WonderWeb Validator

Zusammenfassung

(76)

Übersicht

SWOOPSWOOP

Allgemeines Allgemeines

Features

Probleme

Beispiele

WonderWeb Validator

Allgemeines

Zusammenfassung

(77)

SWOOP - Allgemeines

SWOOP ist ein Hypermedia-basierter OWL Ontology Editor

Java basiert und daher Plattformunabhängig

Entwickelt von mindswap, weiterentwicklung als Open Source bei Google Code

MIT Lizenz

http://www.mindswap.org/2004/SWOOP/

(78)

SWOOP - Allgemeines

Architektur

(79)

Übersicht

SWOOPSWOOP

Allgemeines

FeaturesFeatures

Probleme

Beispiele

WonderWeb Validator

Allgemeines

Zusammenfassung

(80)

SWOOP - Features

Web-browser Look & Feel

Direktes öffen von Otologien per eingebauten Browser

Addressleiste, Bookmarks, History

Hypertextual Navigation

Navigation wie bei einem Browser

(81)

SWOOP - Features

(82)

SWOOP - Features

Surfen, Editieren, OWL Einträge in verschiedener Syntax vergleichen

Consise Format(editierbar)

Abstract Syntax

RDF/XML(editierbar)

Turtle

weitere Plugins hinzufügbar

Change Log mit Versionierung

(83)

SWOOP - Features

(84)

SWOOP - Features

Annotea Client für Zusammenarbeit

Nachrichten hinterlassen

Kommunikation erleichtern

Change Sets mit anderen teilen

Jeder bekommt mit was geändert worden ist

Erleichtert Zusammenarbeit

Ontology Debugging mit dem OWL Reasoner:

Pellet

Plugin System

Es können neue Reasoner nachgeladen werden

(85)

SWOOP - Features

(86)

SWOOP - Features

Es werden folgende Ansichten angeboten :

Class Tree, listet alle Ontologie Klassen auf.

Property Tree, listet die Beziehungen der Ontologie(n) auf

List , listet alles alphabetisch auf; ohne Baumstruktur.

(87)

SWOOP - Features

Plugins

Pellet Plugin (Default in SWOOP v2.2)

Graph Visualisierung (noch nicht verfügbar)

Natural Language Entity Renderer (noch nicht verfügbar)

(88)

SWOOP - Features

Hilfe

Generelle Mailingliste:

http://lists.mindswap.org/mailman/listinfo/swoop Developer Mailingliste:

http://lists.mindswap.org/mailman/listinfo/swoop-devel Generelle Dokumentation:

http://www.mindswap.org/papers/SwoopJWS_Revised.pdf Aktuelle Version:

http://code.google.com/p/swoop/

(89)

Übersicht

SWOOP

Allgemeines

Features

ProblemeProbleme

Beispiele

WonderWeb Validator

Allgemeines

Zusammenfassung

(90)

SWOOP - Probleme

Stürzte oft ab (unter Linux)

Dateien mit fehlerhafter Syntax können zum Teil nicht geöffnet werden.

Debuggen von grösseren Otologien ist extrem

langsam, oder geht gar nicht

(91)

Übersicht

SWOOP

Allgemeines

Features

Probleme

BeispieleBeispiele

WonderWeb Validator

Allgemeines

Zusammenfassung

(92)

Übersicht

SWOOP

Allgemeines

Features

Probleme

Beispiele

WonderWeb ValidatorWonderWeb Validator

AllgemeinesAllgemeines

Zusammenfassung

(93)

WonderWeb Validator - Allgemeines

OWL Validator

http://phoebus.cs.man.ac.uk:9999/OWL/Validator

Seite seit längerer Zeit offline.

Sehr wenig Informationen

Die online Version läuft mit SWOOP

OWL Validator Plug-In

Es gibt ein Plug-In für Protege

http://www.co-ode.org/downloads/owlvalidator/co-ode-index.php

(94)

Übersicht

Allgemeines

RDF-Validator

Protégé Editor

Pellet Validator

SemanticWorks Editor

SWOOP Editor

WonderWeb Validator

Zusammenfassung

(95)

Zusammenfassung

RDF-Validator

Vorteile:

open source

tabellarische Ausgabe (3-Tupel)

graphisch ansprechende Baum-Ausgabe

übersichtliche Fehlermeldung (mit Zeilenangabe)

Verbesserungsvorschläge Nachteile:

keine Analyse von Ontologien

(96)

Zusammenfassung

Pellet-Validator

Vorteile:

open source

Ontologieanalyse und Anpassungsvorschläge, um ein OWL DL oder Lite Dokument zu erhalten

SPARQL Anfragen-Verarbeitung

Fehleranalyse

Downloadbar und somit Offline nutzbar

(97)

Zusammenfassung

Pellet-Validator

Nachteile:

Fehlerausgabe ist unübersichtlich und leider teilweise ohne Zeilenangaben

Tree-Ausgabe ähnlich „Konsolengrafik“

(entspricht eher einer Liste)

kaum Verbesserungsvorschläge

(98)

Zusammenfassung

WonderWeb:

Vorteile: unbekannt Nachteile:

Server offline

kaum Dokumentation

Alle Tutorials verweisen auf einen toten Link

(99)

Zusammenfassung

Welchen Validator soll ich benutzen?

Für kleine RDF-Dokumente:

RDF Validator von W3C

Für Ontologien:

Pellet Validator

(100)

Zusammenfassung

Protégé

Vorteile:

open source

ansehnliche graphische Ausgabe

viele Plugins vorinstalliert / gute Dokumentation

große Comunity

Drag&Drop

Layout übersichtlich

Dokumente syntaxunabhängig erstellbar

(101)

Zusammenfassung

Protégé

Nachteile:

Quelltext nicht editierbar

Import von Ontologien scheitert manchmal

Kein Öffnen von RDF-Dateien vom Auswahlmenu aus möglich (nur OWL- Dateien)

Plug-Ins funktionieren manchmal nicht

(102)

Zusammenfassung

SemanticWorks

Vorteile:

Schnelles Editieren von OWL- und RDF-Dateien

Dateien graphisch und textuell editierbar

übersichtliche Fehlermeldung (mit Zeilenangabe)

Gute graphische Ausgabe

Codenah

Drag & Drop

(103)

Zusammenfassung

SemanticWorks

Nachteile:

Kommerziell (kostet 99,- EUR)

Bei größeren Bäumen ist die Grafik unübersichtlich

Probleme bei großen Dateien

(104)

Zusammenfassung

SWOOP

Vorteile:

open source

In Java geschrieben (plattformunabhängig)

Dateien in verschiedener Syntax editierbar (hierarchisch, textbasierend)

Look & Feel

kollaboratives Zusammenarbeiten möglich

(105)

Zusammenfassung

SWOOP

Nachteile:

Weiterentwicklung stagniert momentan

läuft bei größeren Dateien instabil

Dokumente mit Syntax-Fehler werden teilweise nicht geöffnet

Reasoner / Debugger läuft langsam

keine graphische Ausgabe

(106)

Zusammenfassung

Welchen Editor soll ich benutzen?

Für private Zwecke: Protégé (auch ohne Syntaxkenntnisse)

Für gewerbliche Zwecke: SemanticWorks

(wegen Kundendienst)

(107)

Zusammenfassung

Alternativen:

SWeDE 2.0.2 – Eclipse 3.1 Plugin

http://owl-eclipse.projects.semwebcentral.org/

praktisch, da Eclipse viel benutzt wird

RDF Validator von http://www.rdfabout.com/demo/validator/

Ähnlich RDF-Validator von W3C, aber weniger Möglichkeiten

(108)

Zusammenfassung

Alternativen:

SMORE : ermöglicht das einbinden von HTML Dokumenten in OWL

http://www.mindswap.org/2005/SMORE/

Es gibt noch zahlreiche Ontologie-Editoren im Internet zu finden:

http://en.wikipedia.org/wiki/Ontology_editor

(109)

Zusammenfassung

Quellen:

http://protege.stanford.edu/

http://www.mindswap.org/2004/SWOOP/

http://www.altova.com/products/semanticworks/semantic_web_

rdf_owl_editor.html

http://www.w3.org/RDF/Validator/

http://www.mindswap.org/2003/pellet/demo.shtml

http://www.ag-nbi.de/lehre/0607/V_NBI/

http://en.wikipedia.org

(110)

Zusammenfassung

Fragen ???

(111)

Zusammenfassung

Vielen Dank!

Referenzen

ÄHNLICHE DOKUMENTE

Man darf nicht vergessen, dass, wer eine ID braucht, zuerst in der Wohnortsgemeinde eine Bescheinigung holen und dann persönlich im Regierungsstatthalteramt vorstellig werden

Der Käufer verliert das Recht, sich auf eine Vertragswidrigkeit der Ware zu berufen, wer er sie dem Verkäufer nicht innerhalb einer angemessenen Frist nach dem. Zeitpunkt, in dem

In Japan beispielsweise, wo die Zinsen für rund zwei Drittel aller Staatsanleihen im negativen Bereich notieren, bezahlen Sparer für das „Privileg“, einer bankrotten Regierung Geld

Die Befürchtung, dass sich ohne Bedarfsplanung nur noch Ärzte im städtischen Bereich niederlassen könnten, teilt Dr.. Peter Heinz, Vorstandsvorsitzender der KV

Nach dem Bildungs- bericht 2010 haben Kantone und Bund denn auch zum ersten Mal in der Ge- schichte gemeinsame Bildungsziele fest- gelegt, und der Bildungsbericht 2014 gibt

Ein Auslandsaufenthalt ist nieI11als eine verlorene, sondern immer eine gewonnene Zeit, die einem keiner mehr nehmen kann.. Hast du Fragen zu ERASM

Während die lo- kale Umweltperformance nur die Umweltwirkungen, die auf der Ebene des lokalen Ökosystems des Betriebes entstehen, umfasst, ist es notwendig, für die

Vier Schüler nahmen weiterhin an der Bläserklasse teil und zwei davon ließen sich durch unser Projekt dazu motivie- ren, auch außerhalb der Schule Unter- richt an einer Musikschule