Polymorphe Typen in OEM (1) OEM. Polymorphe Typen in OEM (2) Object Exchange Model (OEM)

Größe: px
Ab Seite anzeigen:

Download "Polymorphe Typen in OEM (1) OEM. Polymorphe Typen in OEM (2) Object Exchange Model (OEM)"

Transkript

1 Polymorphe Typen in (1) Object Exchange Model (). Motivation: Historische Entwicklung, alternatives semistrukturiertes Datenmodell. Manche Ansätze im Folgenden basieren auf. Thema der folgenden Folien. Atomare Typen string Polymorphe Typen Obj ::= sel: Typ Set ::= {Obj Typ Atomarer Typ oder Obj. Objekt: Sammlung atomarer oder zusammengesetzter Datenelemente. Selektor (Attribut) identifiziert jede Komponente nicht-eindeutig. Set: Menge von Objekten. Datenbankeinsatz: Semistrukturierte Datenmodelle 1 Datenbankeinsatz: Semistrukturierte Datenmodelle 2 Polymorphe Typen in (2) Object Exchange Model () Objekt-Typ: Wiederholtes Vorkommen des gleichen Selektors möglich. Verweise von unterschiedlichen Positionen aufs gleiche Objekt möglich. Objekt-Identifier. Veranschaulichung von Objekten als gerichtete Graphen. complex object paper bib &o1 paper references &o12 &o24 &o29 references references year title http title publisher title object identifier pages &o43 &o96 &o25 firstname lastname 1997 atomic object firstname lastname first last Serge Abiteboul &o243 Victor &o206 Vianu Datenbankeinsatz: Semistrukturierte Datenmodelle 3 Datenbankeinsatz: Semistrukturierte Datenmodelle 4

2 bib: &o1 { paper: &o12 {, : &o24 {, paper: &o29object Exchange Model () { : &o52 Abiteboul, : &o96 { firstname: &o243 Victor, lastname: &o206 Vianu, title: &o93 Regular path queries with constraints, references: &o12, references: &o24, Bib pages: &o25 { first: &o64 122, last: &o &o1 firstname Serge &o43 Abiteboul 1997 paper paper references &o12 &o24 &o29 references references year title http title publisher title lastname &o243 Victor &o96 &o206 Vianu pages &o25 firstname lastname first last Object Exchange Model () Textuelle Darstellung bib: &o1 { paper: &o12 {, : &o24 {, paper: &o29 { : &o52 Abiteboul, : &o96 { firstname: &o243 Victor, lastname: &o206 Vianu, title: &o93 Regular path queries with constraints, references: &o12, references: &o24, pages: &o25 { first: &o64 122, last: &o Datenbankeinsatz: Semistrukturierte Datenmodelle 5 Datenbankeinsatz: Semistrukturierte Datenmodelle 6 Object Exchange Model () Bewertung Textuelle Darstellung bib: &o1 { paper: &o12 {, : &o24 {, paper: &o29 { : &o52 Abiteboul, : &o96 { firstname: &o243 Victor, lastname: &o206 Vianu, title: &o93 Regular path queries with constraints, references: &o12, references: &o24, pages: &o25 { first: { paper: &o64{ : 122, last: Abiteboul, &o : { firstname: Victor, lastname: Vianu, title: Regular path queries, pages: { first: 122, last: 133 ohne Ordnung! Set Obj Atomarer Typ Strukturelle Mächtigkeit gering. Beschränkte, aber mächtige strukturelle Orthogonalität. Datenbankeinsatz: Semistrukturierte Datenmodelle 7 Datenbankeinsatz: Semistrukturierte Datenmodelle 8

3 Unterschiede zu Dokumenttypdefinition Reihenfolge, kein, Markierung der Kanten, nur ein atomarer Typ, Objekt-Identifier. Dokumenttypdefinition (DTD) ist im wesentlichen Menge von Regeln/Grammatik, DTD gibt vor, was für Markup (an welcher Stelle genau im Dokument des Typs) vorkommen darf. z Datenbankeinsatz: Semistrukturierte Datenmodelle 9 Datenbankeinsatz: Semistrukturierte Datenmodelle 10 Beispiel: Bookstore DTD Well-Formed vs. Valid <!ELEMENT store ()*> <!ELEMENT (title,+,price?)> <!ATTLIST genre CDATA #REQUIRED> <!ELEMENT title (#PCDATA)> <!ELEMENT ( name (firstname,lastname))> <!ELEMENT price (#PCDATA)> <!ELEMENT name (#PCDATA)> wohlgeformt (well-formed) ein Dokument besitzt geordnete syntaktische Eigenschaften, gültig (valid) Ein Dokument ist wohlgeformt und folgt einem a priori gegebenen, formalisiert in einer Dokumenttypdefinition (DTD). Datenbankeinsatz: Semistrukturierte Datenmodelle 11 Datenbankeinsatz: Semistrukturierte Datenmodelle 12

4 -ta I: DTD Eine DTD definiert kontextfreie Grammatik für -Dokumente. Einschränkung von Elementen und Attributen auf definierte Auswahl und Struktur. <bib> <paper id= o12 > <title> Foundations of Databases </title> <> <firstname> Serge </firstname> <lastname> Abiteboul </lastname> </> <year> 1997 </year> <publisher> Addison Wesley </publisher> </paper> </bib> <!ELEMENT paper (title, +, year, publisher?)> ]> DTD DTD Deklaration von Elementen Beschreibt die Einschränkungen des Inhalts eines Elements <!ELEMENT Name (Definition)> Einziger atomarer Typ: #PCDATA (Parsed Character DATA) (a,b,c): Liste von Unterelementen (a b c): Alternativen Kardinalitäten: * keinmal oder beliebig oft + einmal oder beliebig oft? kein- oder einmal (optional) (ohne Angabe): genau einmal EMPTY: Erzwingen von leerem Element. <!ELEMENT paper (+, year, publisher?)> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 13 Datenbankeinsatz: Semistrukturierte Datenmodelle 14 DTD Deklaration von Elementen (2) Beschreibt die Einschränkungen des Inhalts eines Elements <!ELEMENT Name (Definition)> Einziger atomarer Typ: #PCDATA (Parsed Character DATA) (a,b,c): Liste von Unterelementen (a b c): Alternativen Kardinalitäten: * keinmal oder beliebig oft + einmal oder beliebig oft? kein- oder einmal (optional) (ohne Angabe): genau einmal EMPTY: Erzwingen von leerem Element. Einleitung und Festlegung des Wurzelelements bib <!ELEMENT paper (+, year, publisher?)> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 15 DTD Deklaration von Elementen (3) Beschreibt die Einschränkungen des Inhalts eines Elements <!ELEMENT Name (Definition)> Einziger atomarer Typ: #PCDATA (Parsed Character DATA) (a,b,c): Liste von Unterelementen (a b c): Alternativen Kardinalitäten: * keinmal oder beliebig oft + einmal oder beliebig oft? kein- oder einmal (optional) (ohne Angabe): genau einmal EMPTY: Erzwingen von leerem Element. bib kann beliebig viele Elemente vomtyp paper enthalten <!ELEMENT paper (+, year, publisher?)> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 16

5 DTD Deklaration von Elementen (4) Beschreibt die Einschränkungen des Inhalts eines Elements <!ELEMENT Name (Definition)> Einziger atomarer Typ: #PCDATA (Parsed Character DATA) (a,b,c): Liste von Unterelementen (a b c): Alternativen Kardinalitäten: * keinmal oder beliebig oft + einmal oder beliebig oft? kein- oder einmal (optional) (ohne Angabe): genau einmal EMPTY: Erzwingen von leerem Element. paper besteht aus mindestens einem, genau einem year und einem optionalen publisher in genau dieser Reihenfolge. <!ELEMENT paper (+, year, publisher?)> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 17 DTD Deklaration von Elementen (5) Beschreibt die Einschränkungen des Inhalts eines Elements <!ELEMENT Name (Definition)> Einziger atomarer Typ: #PCDATA (Parsed Character DATA) (a,b,c): Liste von Unterelementen (a b c): Alternativen Kardinalitäten: * keinmal oder beliebig oft + einmal oder beliebig oft? kein- oder einmal (optional) (ohne Angabe): genau einmal EMPTY: Erzwingen von leerem Element. firstname ist vom Typ Zeichenkette <!ELEMENT paper (+, year, publisher?)> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 18 DTD Deklaration von Attributen Name-Zeichenkettenwert-Paar Assoziiert mit einem Element <!ATTLIST Element Attributname1 Typ1 Zusatz1 Attributname2 > Typ: CDATA Zeichenkette ID OID IDREF Referenz IDREFS Menge von Referenzen Zusatz: REQUIRED zwingend IMPLIED optional (Initialwert) <!ELEMENT paper (+, year, publisher?)> DTD Deklaration von Attributen (2) Name-Zeichenkettenwert-Paar Assoziiert mit einem Element <!ATTLIST Element Attributname1 Typ1 Zusatz1 Attributname2 > Typ: CDATA Zeichenkette ID OID IDREF Referenz IDREFS Menge von Referenzen Zusatz: REQUIRED zwingend IMPLIED optional (Initialwert) paper besitzt ein Attribut id, eine OID, die zwingend mit einem eindeutigen Wert belegt werden muß. <!ELEMENT paper (+, year, publisher?)> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 19 Datenbankeinsatz: Semistrukturierte Datenmodelle 20 ]> DTD

6 DTD Deklaration von Attributen (3) Name-Zeichenkettenwert-Paar Assoziiert mit einem Element <!ATTLIST Element Attributname1 Typ1 Zusatz1 Attributname2 > Typ: CDATA Zeichenkette ID OID IDREF Referenz IDREFS Menge von Referenzen Zusatz: REQUIRED zwingend IMPLIED optional (Initialwert) Ein hat ein Attribut age, mitdem ihm eine Zeichenkette mit dem Wert für sein Alter zugewiesen werden kann (aber nicht muß). <!ELEMENT paper (+, year, publisher?)> DTD OIDs und Referenzen (1) erlauben die Deklaration von OIDs, Referenzen und Referenzmengen als Attribute. Beispiel: <family> <person id= jane mother= mary father= john > <name> Jane Doe </name> </person> <person id= john children= jane jack > <name> John Doe </name> </person> <person id= mary children= jane jack > <name> Mary Smith </name> </person> <person id= jack mother= mary father= john > <name> Jack Smith </name> </person> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 21 </family> Datenbankeinsatz: Semistrukturierte Datenmodelle 22 <!DOCTYPE family [ <!ELEMENT family (person*)> <!ELEMENT person (name)> <!ELEMENT name (#PCDATA)> <!ATTLIST person id ID #REQUIRED mother IDREF #IMPLIED father IDREF #IMPLIED children IDREFS #IMPLIED> ]> DTD DTD OIDs und Referenzen (2) Keine Konsistenzbedingungen à la Person kann nicht gleichzeitig Vater und Mutter sein. father-attribut kann nur auf Männer verweisen. Primär- vs. Sekundärstruktur Attribut vom Typ ID ist innerhalb eines Dokuments eindeutig, IDREF ist eine Referenz auf eine ID, Parser prüft referentielle Integrität, keine Einschränkung des Typs. Datenbankeinsatz: Semistrukturierte Datenmodelle 23 Datenbankeinsatz: Semistrukturierte Datenmodelle 24

7 Rekursion in definieren kontextfreie Grammatiken. Rekursive Definitionen sind möglich. <!DOCTYPE paper [ <!ELEMENT paper (section*)> <!ELEMENT section ((title, section*) text)> <!ELEMENT title (#PCDATA)> <!ELEMENT text (#PCDATA)> ]> DTD Datenbankeinsatz: Semistrukturierte Datenmodelle 25 Datenbankeinsatz: Semistrukturierte Datenmodelle 26 Werkzeuge (2) Datenbankeinsatz: Semistrukturierte Datenmodelle 27 Datenbankeinsatz: Semistrukturierte Datenmodelle 28

8 Werkzeuge (4) Datenbankeinsatz: Semistrukturierte Datenmodelle 29 Datenbankeinsatz: Semistrukturierte Datenmodelle 30 Datenbankeinsatz: Semistrukturierte Datenmodelle 31 Datenbankeinsatz: Semistrukturierte Datenmodelle 32

9 Datenbankeinsatz: Semistrukturierte Datenmodelle 33 Datenbankeinsatz: Semistrukturierte Datenmodelle 34 Bewertung von weisen bei der Definition eines s jedoch einige Schwächen auf: Ungewollte Festlegung der Reihenfolge: <!ELEMENT person (name, phone) > Workaround: <!ELEMENT person ((name, phone) (phone, name)) > Kann teilweise zu vage werden: <!ELEMENT person ((name phone )*) > Referenzen können nicht eingeschränkt (typisiert) werden. Alle Elementnamen sind global in einem Namensraum. Datenbankeinsatz: Semistrukturierte Datenmodelle 35 Datenbankeinsatz: Semistrukturierte Datenmodelle 36 z

10 Anwendungen (1) Anwendungen (2) Bis jetzt: Herangehensweise eher kontemplativ, Modellierung stand im Vordergrund. Jetzt: Arbeiten mit -Dokumenten. Es muß leicht möglich sein, -basierte Anwendungen zu entwickeln. Standards, die auf aufbauen. Fortsetzung des Kochrezept-Beispiels: Anwendungsunabhängig: Wieviele Zutaten enthält das aktuelle Kochrezept? Anwendungsspezifisch: System, das Rezept vorschlägt, Dialogstruktur, Abbildung von Präferenzen auf Rezeptauswahl. Anwendungsspezifisch erfordert Programmierung, erfordert Anwendungswissen. Datenbankeinsatz: Semistrukturierte Datenmodelle 37 Datenbankeinsatz: Semistrukturierte Datenmodelle 38 Anwendungs Processor, Application Prozedurale Mechanismen; zwei Schnittstellen: DOM ( Document Object Model ) objektorientierte Sicht auf -Dokumente. SAX-API ( Simple API for ) Callback-Mechanismus. XSLT ( Extensible Stylesheet Language ), Querysprachen wie z. B. XQuery Query- und Transformationsmechanismen für -Dokumente, deklarativ. Aufruf für -Dok. -Processor (-Engine) Application Callback- Methoden DOM- Methoden -Engine validiert auch. DOM: Anwendung hält Kontrolle über den Ablauf. Callback-Methoden: -Processor hält Kontrolle. Datenbankeinsatz: Semistrukturierte Datenmodelle 39 Datenbankeinsatz: Semistrukturierte Datenmodelle 40

11 DOM: Document Object Model Objektorientierte Sicht auf -Dokumente und Dokumentbestandteile, Baumstruktur. Alle Dokumentbestandteile, nicht nur Elemente. Methoden erlauben das Navigieren im Baum und das Manipulieren des Baums. Keine Aussagen über die konkrete Implementation der Objekte, nur Methodeninterface wird spezifiziert. DOM-Anwender muß sich Klassenbibliothek besorgen, die er verwenden kann. lastname title The Autobiography of Benjamin DOM Illustration store price title price 8.99 firstname Franklin The Gorgias Plato name 9.99 Datenbankeinsatz: Semistrukturierte Datenmodelle 41 Datenbankeinsatz: Semistrukturierte Datenmodelle 42 DOM Illustration (Forts.) store-element sei gegeben. Verwendung von DOM-Methoden Programmiersprache Java im folgenden Beispiel: Node store = ; Nodelist s = store.getelementsbytagname( ) int i = 0; Node n = s.item(i); lastname DOM weitere Klassen Illustration The Autobiography of store title price < nationality= firstname U.S. inventory nationality =U.S. <first-name>benjamin</first-name> > 8.99 <last-name>franklin</last-name> </> Datenbankeinsatz: Semistrukturierte Datenmodelle 43 Datenbankeinsatz: Semistrukturierte Datenmodelle 44

12 DOM weitere Klassen Attribute und Methoden von Node Beispiele: Document inventory; inventory = ; Nodelist s = inventory.getelementsbytagname( ); Element a = (Element) s.item(0); AttributeList al = a.attributes(); Attribute attr = al.item(0); String av = (String) attr.getvalue(); previoussibling attributes nodename nodetype nodevalue parentnode haschildnodes childnodes firstchild childnodes.item(0) lastchild ownerdocument nextsibling length Datenbankeinsatz: Semistrukturierte Datenmodelle 45 Datenbankeinsatz: Semistrukturierte Datenmodelle 46 DOM Manipulationsmethoden Manipulationsmethoden von Node store insertbefore 8.99 lastname title The Autobiography of price title price firstname Benjamin Franklin The Gorgias Plato name 9.99 Node Plato = ; Node Franklin = ; n = removechild(plato); n2 = insertbefore(n, Franklin); replacechild appendchild removechild Datenbankeinsatz: Semistrukturierte Datenmodelle 47 Datenbankeinsatz: Semistrukturierte Datenmodelle 48

13 DOM Zusammenfassung DOM Ausblick Objektorientierte Sicht auf -Dokumente, Unterschiedliche Objekttypen entsprechen unterschiedlichen -Konzepten (z. B. Elemente, Attribute), Methoden zur Traversierung und Manipulation des Dokument-Baums. (Proprietäre) Methoden, die zusätzliche Funktionalität bieten, z. B. Anwendung von (XSL-)Stylesheets. Es gibt zahlreihe Implementierungen, d. h. Möglichkeiten, wie man mit DOM arbeiten kann, z. B.: Java (+ -Parser), JavaScript und Web-Browser. Datenbankeinsatz: Semistrukturierte Datenmodelle 49 Datenbankeinsatz: Semistrukturierte Datenmodelle 50 Event-basiertes Vorgehen (SAX) (1) SAX = Simple API for. -Engine geht durch das Dokument. Immer wenn dabei bestimmtes Ereignis eintritt, z. B. Anfang eines neuen Elements wird erkannt, wird entsprechende Callback-Methode aufgerufen (falls vorhanden). D. h. -Engine hat Kontrolle über den Ablauf lastname Illustration Event-basierter Ansatz The Autobiography of store title price firstname Benjamin Franklin startelement( store, ) startelement( ) startelement( title ) characterdata( The Auto, ) endelement( title, ) startelement(, ) Datenbankeinsatz: Semistrukturierte Datenmodelle 51 Datenbankeinsatz: Semistrukturierte Datenmodelle 52

14 8.99 lastname Illustration Event-basierter Ansatz The Autobiography of store title price firstname Benjamin Franklin startelement( store, ) startelement( ) startelement( title ) characterdata( The Auto, ) endelement( title, ) startelement(, ) Erläuterung der Illustration Events sind das Vorkommen der -spezifischen Konstrukte, z. B. Elemente, Text-Bestandteile, Kommentare. <item/> äquivalent zu <item></item>. Datenbankeinsatz: Semistrukturierte Datenmodelle 53 Datenbankeinsatz: Semistrukturierte Datenmodelle 54 Beispiel (1) Zählen der -Elemente. Beispiel-Code: int count = 0; void zaehlen(void *userdata, const char *name, const char **atts) { if (!strcmp(name, )) // String-Vergleich in C++ count++; void donothing( ) { return; Beispiel-Code (Forts.): Beispiel (2) int main() { _SetElementHandler (parser, zaehlen, donothing); if (!_Parse(parser, buf, len, done)) cout << count; Datenbankeinsatz: Semistrukturierte Datenmodelle 55 Datenbankeinsatz: Semistrukturierte Datenmodelle 56

15 Event-basiertes Vorgehen (SAX) (2) Event-basiertes Vorgehen (SAX) (3) Schnittstelle der Callback-Methoden ist standardisiert, Implementierung ist anwendungsspezifisch. Anwendungsprogrammierer schreibt und läßt nur Callback-Methoden registrieren für Ereignisse, an denen er interessiert ist. Reihenfolge der Events ist fest vorgegeben, wir können nicht z. B. auf Breitensuche umschalten. Datenbankeinsatz: Semistrukturierte Datenmodelle 57 Datenbankeinsatz: Semistrukturierte Datenmodelle 58 SAX Verhalten im Fehlerfall Ausblick Werden Events trotzdem ausgelöst, wenn Dokument fehlerhaft? Ja. Implementierung, die das abfängt, aber recht einfach zu realisieren. auf hinteren Teil des Kapitels. Bis hierhin: Übersicht /Wiederholung von Mechanismen für Anwendungs prozedural. Deklarativer Zugriff Mittel der Wahl; Datenunabhängigkeit. z Datenbankeinsatz: Semistrukturierte Datenmodelle 59 Datenbankeinsatz: Semistrukturierte Datenmodelle 60

Kapitel 8: Semistrukturierte Datenmodelle

Kapitel 8: Semistrukturierte Datenmodelle Kapitel 8: Semistrukturierte Datenmodelle Datenmodell Beschreibung der zulässigen Zustände der Datenbasis. (Was ist ein im jeweiligen Modell? RDBMS-, in NF 2, -DTD). Beschreibung der zulässigen Zustandsübergänge,

Mehr

IT-Zertifikat: Daten- und Metadatenstandards

IT-Zertifikat: Daten- und Metadatenstandards IT-Zertifikat: Daten- und Metadatenstandards DTD - Document Type Definition / Dokumenttypdefinition Das (bislang) Wichtigste auf einen Blick Externe DTD einbinden:

Mehr

XML Schema vs. Relax NG

XML Schema vs. Relax NG XML Schema vs. Relax NG p. 1/2 XML Schema vs. Relax NG Semistrukturierten Daten 1 Präsentation der Gruppe 2 XML Schema vs. Relax NG p. 2/2 Wozu XML Schema? W3C Empfehlung zur Definition von XML-Dokumentstrukturen

Mehr

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

... MathML XHTML RDF

... MathML XHTML RDF RDF in wissenschaftlichen Bibliotheken (LQI KUXQJLQ;0/ Die extensible Markup Language [XML] ist eine Metasprache für die Definition von Markup Sprachen. Sie unterscheidet sich durch ihre Fähigkeit, Markup

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen

Mehr

Datenaustauschformate. Datenaustauschformate - FLV

Datenaustauschformate. Datenaustauschformate - FLV Datenaustauschformate FLV-Dateien CSV-Dateien XML-Dateien Excel-Dateien Access- Backupdateien Günter M. Goetz 108 Datenaustauschformate - FLV Fixed Length Values Repräsentation einer Tabelle als 'Flat-File'

Mehr

2004-2006, Rainer Schmidberger, ISTE. XML und Java. Rainer Schmidberger Rainer.Schmidberger@informatik.uni-stuttgart.de

2004-2006, Rainer Schmidberger, ISTE. XML und Java. Rainer Schmidberger Rainer.Schmidberger@informatik.uni-stuttgart.de XML und Java Rainer Schmidberger Rainer.Schmidberger@informatik.uni-stuttgart.de Was ist XML? Müller Hans Ulmenweg 22 70565

Mehr

2. Einführung in Datenbanken und XML

2. Einführung in Datenbanken und XML 2. Einführung in Datenbanken und XML Was ist XML? 2. Einführung in Datenbanken und XML XML steht für extensible Markup Language durch das W3C entwickeltes Dokumentenformat einfach, flexibel, von SGML abgeleitet

Mehr

DTD: Syntax-Zusammenfassung

DTD: Syntax-Zusammenfassung DTD: Syntax-Zusammenfassung Dokumenttyp-Deklarationen Interne Teilmenge ]> Externe

Mehr

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren: 4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie

Mehr

XML Grundlagen. Andreas Rottmann,Sebastian Riedl. 27. August 2002. Quit Full Screen Previous Page Next Page GoTo Page Go Forward Go Back

XML Grundlagen. Andreas Rottmann,Sebastian Riedl. 27. August 2002. Quit Full Screen Previous Page Next Page GoTo Page Go Forward Go Back XML Grundlagen Andreas Rottmann,Sebastian Riedl 27. August 2002 Rottmann, Riedl: XML Grundlagen 1 Überblick Hintergründe und Geschichte Aufbau von XML-Dokumenten DTD Schemata Erweiterungen XML APIs Rottmann,

Mehr

HTML5. Wie funktioniert HTML5? Tags: Attribute:

HTML5. Wie funktioniert HTML5? Tags: Attribute: HTML5 HTML bedeutet Hypertext Markup Language und liegt aktuell in der fünften Fassung, also HTML5 vor. HTML5 ist eine Auszeichnungssprache mit der Webseiten geschrieben werden. In HTML5 wird festgelegt,

Mehr

Ruhr.pm XML-Daten verarbeiten mit XML::LibXML Autor: EMail: Datum: http://ruhr.pm.org/

Ruhr.pm XML-Daten verarbeiten mit XML::LibXML Autor: EMail: Datum: http://ruhr.pm.org/ XML-Daten verarbeiten mit XML::LibXML Autor: EMail: Datum: Simon Wilper simon AT ruhr.pm.org http://ruhr.pm.org/ Template Version 0.1 The use of a camel image in association with Perl is a trademark of

Mehr

Multimedia Technologie II

Multimedia Technologie II Vorlesung / Übungen Multimedia Technologie II Prof. Dr. Michael Frank / Prof. Dr. Klaus Hering Sommersemester 2004 HTWK Leipzig, FB IMN Für die externe Vorhaltung der DTD werden sämtliche zwischen den

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel. Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Multimediale Web-Anwendungen. JavaScript. Einführung. MWA JavaScript-Einführung Dr. E. Schön Sommersemester 2015 Folie 1.

Multimediale Web-Anwendungen. JavaScript. Einführung. MWA JavaScript-Einführung Dr. E. Schön Sommersemester 2015 Folie 1. Multimediale Web-Anwendungen JavaScript Einführung MWA JavaScript-Einführung Dr. E. Schön Sommersemester 2015 Folie 1 Entstehungsgeschichte: JavaScript 1995 Netscape Communications Corp. (Brendan Eich)

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java Kurs für Anfänger Einheit 4 Klassen und Objekte Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse

Mehr

X-Technologien. XML and Friends. Jörn Clausen joern@techfak.uni-bielefeld.de. 9. Juli 2001

X-Technologien. XML and Friends. Jörn Clausen joern@techfak.uni-bielefeld.de. 9. Juli 2001 X-Technologien XML and Friends 9. Juli 2001 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht XML SAX DOM XSL XPath XSLT XSL FO Extensible Markup Language Simple API for XML Document Object Model Extensible

Mehr

Java: Kapitel 9. Java und XML. Programmentwicklung WS 2008/2009. Holger Röder holger.roeder@informatik.uni-stuttgart.de.

Java: Kapitel 9. Java und XML. Programmentwicklung WS 2008/2009. Holger Röder holger.roeder@informatik.uni-stuttgart.de. Java: Kapitel 9 Java und XML Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Überblick über Kapitel 9 Einführung in XML XML-Verarbeitung in Java Document Object

Mehr

XSL Templates. Mit Templates arbeiten. XSL Templates

XSL Templates. Mit Templates arbeiten. XSL Templates XSL Templates Mit Templates arbeiten Innerhalb von XSLT werden Templates verwendet. Ein Template ist eine Vorlage für die Transformation bestimmter Knoten. Diese Knoten können Elemente, Attribute oder

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

1 Software Engineering 1

1 Software Engineering 1 1 Software Engineering 1 XML 1.1 XML Extensible Markup Language Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten in Form von Textdaten Wird für den Datenaustausch/Speicherung benutzt

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

XML-Austauschformat für Sicherheitsdatenblätter

XML-Austauschformat für Sicherheitsdatenblätter XML-Austauschformat für Sicherheitsdatenblätter Version 2.0 / 15. Dezember 2008 www.edas.org 1 XML-Austauschformat für Sicherheitsdatenblätter Der Austausch der Sicherheitsdatenblätter erfolgt als XML-Datei.

Mehr

Online-Publishing mit HTML und CSS für Einsteigerinnen

Online-Publishing mit HTML und CSS für Einsteigerinnen mit HTML und CSS für Einsteigerinnen Dipl.-Math. Eva Dyllong Universität Duisburg Dipl.-Math. Maria Oelinger spirito GmbH IF MYT 07-2002 Web-Technologien Überblick HTML und CSS, XML und DTD, JavaScript

Mehr

Präsentation Von Laura Baake und Janina Schwemer

Präsentation Von Laura Baake und Janina Schwemer Präsentation Von Laura Baake und Janina Schwemer Gliederung Einleitung Verschiedene Betriebssysteme Was ist ein Framework? App-Entwicklung App-Arten Möglichkeiten und Einschränkungen der App-Entwicklung

Mehr

Semistrukturierte Datenmodelle. XML Datenmodelle. XML Infoset. OEM Beispielbaum. Document InfoItem. Beispiel

Semistrukturierte Datenmodelle. XML Datenmodelle. XML Infoset. OEM Beispielbaum. Document InfoItem. Beispiel XML Datenmodelle Web Informationssysteme Wintersemester 2002/2003 Donald Kossmann Semistrukturierte Datenmodelle Beispiel: OEM (Objekt Exchange Model) Repräsentiere Dokument als annotierten Baum Knoten

Mehr

Programmiersprachen und Übersetzer

Programmiersprachen und Übersetzer Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch

Mehr

Semantic Web Technologies I

Semantic Web Technologies I www.semantic-web-grundlagen.de Semantic Web Technologies I Lehrveranstaltung im WS07/08 M.Sc. Markus Krötzsch PD Dr. Pascal Hitzler Dr. Sebastian Rudolph entspricht Kapitel 2 des Buches Semantic Web -

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Vortrag im Rahmen des IFC-Seminars am 06.12.2000. Performance Messungen mit XML bei der empolis GmbH

Vortrag im Rahmen des IFC-Seminars am 06.12.2000. Performance Messungen mit XML bei der empolis GmbH Vortrag im Rahmen des IFC-Seminars am 06.12.2000 von Stefan Rauch Diplomarbeit zum Thema: Performance Messungen mit XML bei der empolis GmbH Übersicht / Agenda Einleitung Die Firma empolis GmbH XML, SAX,

Mehr

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!. 040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl

Mehr

WEBSEITEN ENTWICKELN MIT ASP.NET

WEBSEITEN ENTWICKELN MIT ASP.NET jamal BAYDAOUI WEBSEITEN ENTWICKELN MIT ASP.NET EINE EINFÜHRUNG MIT UMFANGREICHEM BEISPIELPROJEKT ALLE CODES IN VISUAL BASIC UND C# 3.2 Installation 11 Bild 3.2 Der Webplattform-Installer Bild 3.3 IDE-Startbildschirm

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 4 Die Datenbank Kuchenbestellung In diesem Kapitel werde ich die Theorie aus Kapitel 2 Die Datenbank Buchausleihe an Hand einer weiteren Datenbank Kuchenbestellung

Mehr

Präsentation zum Thema XML Datenaustausch und Integration

Präsentation zum Thema XML Datenaustausch und Integration Sebastian Land Präsentation zum Thema XML Datenaustausch und Integration oder Warum eigentlich XML? Gliederung der Präsentation 1. Erläuterung des Themas 2. Anwendungsbeispiel 3. Situation 1: Homogene

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

XML-Programmierschnittstellen: SAX, DOM

XML-Programmierschnittstellen: SAX, DOM XML-Programmiershnittstellen: SAX, DOM SAX: The Simple API for XML Event-Based Doument Objet Model (DOM) Baumdarstellung APIs zum Parsen, Bearbeiten und Serialisieren von XML-Dokumenten. (Weitgehend) sprahunabhängig

Mehr

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,

Mehr

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22 Kapitel 19 Vererbung, UML Seite 1 von 22 Vererbung - Neben der Datenabstraktion und der Datenkapselung ist die Vererbung ein weiteres Merkmal der OOP. - Durch Vererbung werden die Methoden und die Eigenschaften

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r )

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r ) Definition B : Menge der binären Bäume, rekursiv definiert durch die Regeln: ist ein binärer Baum sind t l, t r binäre Bäume, so ist auch t =, t l, t r ein binärer Baum nur das, was durch die beiden vorigen

Mehr

2. XML 2.1 XML 1.0 und XML Schema. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit

2. XML 2.1 XML 1.0 und XML Schema. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit XML- und Webservice- Sicherheit 2. XML 2.1 XML 1.0 und XML Schema Gliederung 1. XML 1.0 2. XML Namespaces: URI, URL und URN 3. XML Schema Literatur: A. Tanenbaum, Computer Networks. E. R. Harold and W.

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

AK Medientechnologien 05 Delegation

AK Medientechnologien 05 Delegation AK Medientechnologien 05 Delegation TableViews, XML Parser, Application Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Allgemeines zum Delegation Pattern Theoretische

Mehr

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert

Mehr

Programmieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Einleitende Bemerkungen

Programmieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Einleitende Bemerkungen Einleitende Bemerkungen Einleitende Bemerkungen Ideen hinter der objektorientierten Programmierung Objekte (/* Instanzen einer Klasse */) im Mittelpunkt Objekte bilden Einheit aus Daten (/* Attributen,

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für für Medientechnologen Dr. E. Schön Wintersemester 2015/16 Seite 146 Notwendigkeit: Programmierschnittstelle Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

Übungsaufgaben zu XML:

Übungsaufgaben zu XML: Übungsaufgaben zu XML: Aufgabe 1 Allgemeine Fragen zu XML: (Benutzen Sie zum Lösen der Aufgaben die Online-Hilfen, welche wir erwähnt haben.) a) Was ist eine DTD? DTD steht für Document Type Definition.

Mehr

Lernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.

Lernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können. 6. Bäume Lernziele 6. Bäume Lernziele: Definition und Eigenschaften binärer Bäume kennen, Traversierungsalgorithmen für binäre Bäume implementieren können, die Bedeutung von Suchbäumen für die effiziente

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

An integrated total solution for automatic job scheduling without user interaction

An integrated total solution for automatic job scheduling without user interaction An integrated total solution for automatic job scheduling without user interaction Multifunktional Der Job-Scheduler ist ein multifunktionaler Taskplaner welcher die Steuerzentrale zur regelmässigen Ausführung

Mehr

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Anmerkungen zur Übergangsprüfung

Anmerkungen zur Übergangsprüfung DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

Mehr

SDD System Design Document

SDD System Design Document SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen

Mehr

XML und SOAP Einführung und Grundlagen

XML und SOAP Einführung und Grundlagen XML und SOAP Einführung und Grundlagen Matthias Böhmer 16.12.2005 Agenda 1. XML 2. SOAP 3. Seife im Buchladen?! E-Commerce :: XML und SOAP Matthias Böhmer 16.12.2005 2 XML :: Einführung (1) extensible

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen

Mehr

C# im Vergleich zu Java

C# im Vergleich zu Java C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung

Mehr

Delegatesund Ereignisse

Delegatesund Ereignisse Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses

Mehr

RDF und RDF Schema. Einführung in die Problematik Von HTML über XML zu RDF

RDF und RDF Schema. Einführung in die Problematik Von HTML über XML zu RDF RDF und RDF Schema Einführung in die Problematik Von HTML über XML zu RDF Kirsten Albrecht Roland Illig Probleme des HTML-basierten

Mehr

SEP 114. Design by Contract

SEP 114. Design by Contract Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Assoziation und Aggregation

Assoziation und Aggregation Assoziation und Aggregation Martin Wirsing in Zusammenarbeit mit Matthias Hölzl, Nora Koch 05/03 2 Ziele Verstehen der Begriffe Assoziation und Aggregation Implementierung von Assoziationen in Java schreiben

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für Grundlagen Dr. E. Schön FH Erfurt Sommersemester 2015 Seite 135 Programmierschnittstelle Notwendigkeit: Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof Bedienungsanleitung für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof Matthias Haasler Version 0.4 Webadministrator, email: webadmin@rundkirche.de Inhaltsverzeichnis 1 Einführung

Mehr

XML-Namensräume. Marc Monecke monecke@informatik.uni-siegen.de

XML-Namensräume. Marc Monecke monecke@informatik.uni-siegen.de XML-Namensräume Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068 Siegen 19. Mai 2003 Inhaltsverzeichnis 1 Motivation

Mehr

Formale Sprachen und Grammatiken

Formale Sprachen und Grammatiken Formale Sprachen und Grammatiken Jede Sprache besitzt die Aspekte Semantik (Bedeutung) und Syntax (formaler Aufbau). Die zulässige und korrekte Form der Wörter und Sätze einer Sprache wird durch die Syntax

Mehr

KURZANLEITUNG CLOUD OBJECT STORAGE

KURZANLEITUNG CLOUD OBJECT STORAGE KURZANLEITUNG CLOUD OBJECT STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung... Seite 03 2. Anmelden am Cloud&Heat Dashboard... Seite 04 3. Anlegen eines Containers... Seite 05

Mehr

PROSTEP AG: Anmelden für eine mehrtägige Schulung für Opel-Zulieferer

PROSTEP AG: Anmelden für eine mehrtägige Schulung für Opel-Zulieferer PROSTEP AG: Anmelden für eine mehrtägige Schulung für Opel-Zulieferer Für eine reibungslose Zusammenarbeit fordert Opel von jedem seiner Zulieferunternehmen, dass es für das General Motors-Zulieferer-Portal

Mehr

Breiten- und Tiefensuche in Graphen

Breiten- und Tiefensuche in Graphen Breiten- und Tiefensuche in Graphen Inhalt Theorie. Graphen. Die Breitensuche in der Theorie am Beispiel eines ungerichteten Graphen. Die Tiefensuche in der Theorie am Beispiel eines gerichteten Graphen

Mehr

Benutzerhandbuch - Elterliche Kontrolle

Benutzerhandbuch - Elterliche Kontrolle Benutzerhandbuch - Elterliche Kontrolle Verzeichnis Was ist die mymaga-startseite? 1. erste Anmeldung - Administrator 2. schnittstelle 2.1 Administrator - Hautbildschirm 2.2 Administrator - rechtes Menü

Mehr

Zusatzmodul Lagerverwaltung

Zusatzmodul Lagerverwaltung P.A.P.A. die kaufmännische Softwarelösung Zusatzmodul Inhalt Einleitung... 2 Definieren der Lager... 3 Zuteilen des Lagerorts... 3 Einzelartikel... 4 Drucken... 4 Zusammenfassung... 5 Es gelten ausschließlich

Mehr

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {

Mehr

Webseite in XML Kurzeinführung

Webseite in XML Kurzeinführung Webseite in XML Kurzeinführung 1. Entwicklung... 1 2. Erste Webpage in XML... 2 2.1 Erstes Beispiel... 2 2.2 Tags definieren... 4 2.3 Kommentare in XML... 5 2.4 XML mittels CSS im Browser ansehen... 5

Mehr

Zur Konfiguration werden hierbei das Setup-Tool und die Shell verwendet.

Zur Konfiguration werden hierbei das Setup-Tool und die Shell verwendet. 1. Konfiguration von Event Scheduler 1.1 Einleitung Im Folgenden wird die Konfiguration von Event Scheduler beschrieben. Sie erlauben den Zugriff auf das Internet werktags von 8-17:00 Uhr. Da Sie eine

Mehr

Binäre Bäume Darstellung und Traversierung

Binäre Bäume Darstellung und Traversierung Binäre Bäume Darstellung und Traversierung Name Frank Bollwig Matrikel-Nr. 2770085 E-Mail fb641378@inf.tu-dresden.de Datum 15. November 2001 0. Vorbemerkungen... 3 1. Terminologie binärer Bäume... 4 2.

Mehr

Klaus Schild, XML Clearinghouse 2003. Namensräume

Klaus Schild, XML Clearinghouse 2003. Namensräume Namensräume Lernziele Namenskonflikte Warum lösen im World Wide Web einfache Präfixe dieses Problem nicht? Wie lösen globale Namensräume das Problem? Wie werden sie in XML-Dokumenten benutzt? Was sind

Mehr

GRS SIGNUM Product-Lifecycle-Management

GRS SIGNUM Product-Lifecycle-Management GRS SIGNUM Product-Lifecycle-Management Das optionale Modul Product-Lifecycle-Management stellt eine mächtige Ergänzung zum Modul Forschung & Entwicklung dar. Folgende Punkte werden dabei abgedeckt: Definition

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg. Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert

Mehr