Implementierung eines RDF Stores

Slides:



Advertisements
Ähnliche Präsentationen
Business Engineering Philipp Osl, Alexander Schmidt
Advertisements

Prüfung objektorientierter Programme -1
Integrations- und Funktionstests im Rahmen des V-Modelles
Submodell Softwareentwicklung (SE)
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Sortieren I - Bubblesort -
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Informatik 12 | DAES Compilerbau Wintersemester 2010 / 2011 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Lineare Suche Divide-and-Conquer-Suche Kombinationssuche
4. Serverbasierte Programmierung: Perl 4.1Grundlagen 4.1.1HTTP-Server und CGI-Schnittstelle 4.1.2Formulare 4.1.3Ein einfaches Perl Programm 4.2Interaktion.
WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign
Einführung in Berechenbarkeit und Formale Sprachen
Seminar Software-Engineering für softwareintensive Systeme
Anwendungsfalldiagramm
Architektur, Design oder Implementation? Ulrich Schulz, Sebastian Ordyniak.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme LE P MuSofT Erkundungsumgebung Entwicklung eines komponentenbasierten Systems WS 03/04.
Java: Dynamische Datentypen
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
Dateien. Eine Datei wird in C++ als ein Stream, also als ein Objekt einer bestimmten Klasse dargestellt.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 9 Claudio Moraga; Gisbert Dittrich FBI Unido
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Rational Unified Process (RUP) - Definitionen
Modellierung komplexer Realität mit Objekten
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
Vorlesung 9.2: Specification Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Dokumente eines IT-Projektes: - Pflichtenheft & Co -
Software Engineering Seminar Metamodellierung
Programmierung 1 - Repetitorium
RDF-Schema Seminar: „Semantic Web“ André Rosin,
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Wismar Business School
UML Begleitdokumentation des Projekts
UML Sequenzdiagramme Impuls Referat Was ist die Motivation?
Matthias Jauernig Michael Lahl
Objektorientierte Modellierung
Simulation komplexer technischer Anlagen
Spezifikation von Anforderungen
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Weitere Vorgehensmodelle Der Rational Unified Process RUP –bei IBM.
2. Vorlesung Ansätze der Systemanalyse: Strukturierte Analyse (SA)
12. Vorlesung: Aktivitätsdiagramme
10. Vorlesung: Dynamische Konzepte
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
Delphi II - OOP IFB Fortbildung
RDF MT Resource Description Framework Model Theory © 2002 by Emir Blažević
© ISY Informationssysteme GmbHSeite: 1 ISY-Connect Connect Client (Konfiguration) Das obige Bild zeigt das Fenster von ISY Connect-Client im Konfigurationsmodus.
Telecooperation/RBG Technische Universität Darmstadt Copyrighted material; for TUD student use only Grundlagen der Informatik I Thema 14: Schrittweise.
Zusammenfassung der Vorlesung
Unified Modeling Language Repetition / Einführung zu UML
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Künstliches Neuronales Netz nach John Hopfield
NDK Enterprise Technologien Informationen Infrastruktur und Fallstudie Daniel Nydegger Studienleiter Enterprise System Entwicklung.
Innovator Die Komponenten.
Wasserfallmodell und Einzelbegriffe
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Graph Pattern Semantik Michael Schmidt,
Von UML 1.4 zu UML 2.0 InfoPoint vom Mittwoch
22. Oktober 2007Martin Feldmann, 1 Bachelor-Thesis Entwicklung einer automatisierten Dokumentation von LabVIEW Quellcode für das Rahmenwerk.
Linux oder GNU/Linux WS 2013/2014.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Kurze Rekapitulation aus der Einführungsvorlesung Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 20. Oktober 2011.
Informatik in den dualen Studiengängen Prof. Dr. Michael Löwe.
Case Tools Unterstützung für Design Pattern von Vladislav Krasnyanskiy.
© Till Hänisch, 2002 BA Heidenheim Vorgehensmodelle Wie entsteht Software ?
Tutorium Software-Engineering SS14 Florian Manghofer.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
 Präsentation transkript:

Implementierung eines RDF Stores Michael Schmidt, 29.04.2008

Teil I: RDF Speicherung (siehe Handout)

Teil II: RDF Extraktion

Semantik von Basic Graph Patterns (t1, t2, t3), wobei t1 entweder URI oder Variable t2 entweder URI oder Variable t3 entweder URI, Literal oder Variable Beispiele für Graph Patterns (?person, rdf:type, foaf:Person) (lx:Person1, ?y, ?z) (?x,?y,?z) (lx:Person1, foaf:name, „Linus Torvalds“)

Semantik von Basic Graph Patterns Auswertung von Graph Patterns Liefert Menge aller möglichen Mappings von Variablen im Pattern zu Elementen im Eingabegraphen Anfragepattern (?person,rdf:type,foaf:Person) Ergebnis {{?person -> ms:Person1}, {?person -> lx:Person2}}

Kombination von Basic Graph Patterns Kombination von Basic Graph Patterns mittels verschiedener Operatoren AND UNION FILTER OPTIONAL Formale Semantik nächste Woche, bis dahin lesen und verstehen (bis incl. Kap. 2.2): Jorge Perez, Marcelo Arenas, and Claudio Gutierrez Semantics and Complexity of SPARQL

Anforderungen Implementierung Einlesen von Graph Patterns aus Datei GraphPattern ::= SimpleGraphPattern | ComposedGraphPattern | FilterGraphPattern SimpleGraphPattern ::= „(„ Subject „,“ Predicate „,“ Object „)“ ComposedGraphPattern ::= SimpleGraphPattern Operator SimpleGraphPattern FilterGraphPattern ::= SimpleGraphPattern „FILTER“ FilterCondition Subject ::= URI | Variable Predicate ::= URI | Variable Object ::= URI | Literal | Variable FilterCondition ::= FilterSubexp FilterOperator FilterSubexp FilterSubExp ::= URI | Literal | Variable Operator ::= „AND“ | „UNION“ | „OPTIONAL“ FilterOperator ::= „<“ | „<=“ | „=“ | „>“ | „>=“ , wobei URI eine URI ist (möglicherweise in Prefix-Notation), Literal ein String in Anführungszeichen, und Variable eine Variable der Form ?[a-zA-Z]* (z.B. ?name, ?x, ?abcD)

Anforderungen Implementierung Auswerten von Basic Graph Patterns p Join zwischen Patterns: p1 AND p2 Union von Patterns: p1 UNION p2 [Optionale Selektion: p1 OPTIONAL p2] Auswerten mit konstantem Speicherverbrauch Ausnutzen von Indizes

Teil III: Spezifikation

Spezifikation Erforderliche Materialien (vollständig bis in zwei Wochen) Pflichtenheft Übersichtsgrafik Systemarchitektur Use Cases UML Klassendiagramm Interaktionsdiagramme Milestones (bis wann sind welche Module fertig) + Aufteilung (Parallelisierung)

Pflichtenheft Viele Materialien im WWW -> Recherche ! Beschreibt Anforderungen durch den Besteller in der Interpretation des Herstellers für sein Produkt Vertraglich bindend  Was wird umgesetzt? Aufbau Zielsetzung: Musskriterien, Sollkriterien, Kannkriterien Produkteinsatz: Anwendungsbereiche, Zielgruppen, Betriebsbedingungen Produktübersicht Produktfunktionen (detaillierte Auflistung aller Funktionen) Produktleistungen Bedienung (Spezifikation der Kommandozeilenparameter) Technische Produktumgebung (z.B. Betriebssystem, Hardware etc.) … Viele Materialien im WWW -> Recherche !

Use Cases Spezifikation von konkreten Anwendungsszenarien mit gewünschtem Resultat Beispiel: Benutzer lädt die Datei „xyz.n3“ (Datei angeben) mit dem Befehl „loadFile –dbname xyz xyz.n3“ Nach dem Laden ist folgendes Szenario gegeben: … Benutzer extrahiert Daten für das Graph Pattern „pattern.bgp“ (Pattern angeben) Ausgabe: … Sollten möglichst viele Komponenten des Systems abdecken Viele Materialien im WWW -> Recherche !

UML Klassendiagramm Viele Materialien im WWW -> Recherche ! Beschreibt das Design der Software Auflistung /aller/ Klassen und deren Zusammenhang (Vererbung, Nutzung, etc.) Auflistung der wichtigsten Methoden inclusive Eingabe- und Rückgabeparameter Sehr viel Arbeit! Viele Materialien im WWW -> Recherche !

UML Klassendiagramm

Interaktionsdiagramm Beschreibt Interaktion zwischen Programmkomponenten (Klassen und Methoden) Typischerweise anhand von Use Cases erzeugt Sollte möglichst große und wichtige Teile des Programms abdecken Viele Materialien im WWW -> Recherche !

Links Dia UML Modeling Tool: http://dia-installer.de/download.html (auch für Linux verfügbar) Vorlesung UML-Modellierung (Universität des Saarlandes) http://graphics.cs.uni-sb.de/Courses/ss02/Sopra/folien/se-2.pdf Vorlesung Testen (Universität des Saarlandes) http://graphics.cs.uni-sb.de/Courses/ss02/Sopra/folien/testen.pdf