Datenintegration und Datenaustausch mit XML-Techniken

Größe: px
Ab Seite anzeigen:

Download "Datenintegration und Datenaustausch mit XML-Techniken"

Transkript

1 Datenintegration und Datenaustausch mit XML-Techniken Orientation in Objects GmbH Weinheimer Str Mannheim Version: Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände Motivation und Ziele Syntaktische Grundlagen Namensräume 2 1

2 Markup Markup bezeichnet jede Menge von Tags (Auszeichner), die zum Inhalt eines Text-Dokuments hinzugefügt werden, um die Bedeutung oder die Darstellung der Daten anzuzeigen. RTF LaTeX HTML SGML (Standard Generalized Markup Language, ISO, 1970) 3 HTML Tags Physisch: <i>das ist in italics</i> Logisch: <em>das ist wichtig</em> Die Bedeutung (Semantik) wird durch die Spezifikation bestimmt 4 2

3 Probleme mit HTML HTML ist speziell an die Darstellung von Information angepaßt, aber nicht an deren Erfassung HTML hat eine stürmische Entwicklung durchgemacht und ist den Anforderungen nach und nach angepaßt worden Versionen: 2.0 (1995) 3.2 (1997) 4.0 (1998) Die geringe Strenge der Regeln macht automatische Verarbeitung schwierig 5 Unterschiede HTML - XML HTML Flache Struktur Kann nicht erweitert werden Kaum maschinell verarbeitbar Layout steht im Vordergrund XML Hierarchien sind möglich Definition eigener Tags möglich Leichte maschinell Verarbeitung Daten und Struktur stehen im Vordergrund 6 3

4 Semantische Tags Semantische Tags beschreiben den Inhalt eines Elementes <der-darzustellende-text> Hallo </der-darzustellende-text> Semantische Tags sind frei wählbar und können jede Art von Daten beschreiben 7 Semantische Tags Beispiele <artikel>dauerlutscher</artikel> <telefonnummer> </telefonnummer> <komponist>johann Sebastian Bach</komponist> <noten>bach</noten> 8 4

5 XML Definitionen extensible Markup Language ist eine verallgemeinerte Markupsprache ist eine Metasprache zur Beschreibung von Markupsprachen ist eine Untermenge von SGML 9 Design goals XML shall be straightforwardly usable over the Internet. XML shall support a wide variety of applications. XML shall be compatible with SGML. It shall be easy to write programs which process XML documents. The number of optional features in XML is to be kept to the absolute minimum, ideally zero. XML documents should be human-legible and reasonably clear. The XML design should be prepared quickly. The design of XML shall be formal and concise. XML documents shall be easy to create. Terseness in XML markup is of minimal importance. 10 5

6 XML Standards XML-Vokabulare MathML XForms SVG XSL Voice-ML XLink Co-Standards WML SMIL XPath XSLT XML Schema XPointer XBRL XHTML Namespaces SOAP XML-EDI CML DocBook XML 11 W3C Recommendation Track Recommendation Proposed Recommendation Candidate Recommendation Last Call Working Draft Working Draft 12 6

7 Einfachstes XML-Dokument <?xml version="1.0"?> <hallo> Hallo Welt! </hallo> 13 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände Motivation und Ziele Syntaktische Grundlagen Namensräume 14 7

8 Unicode XML unterstützt Unicode: Je nach Kodierung werden bis zu 2 Byte pro Zeichen verwendet Jedes Unicode-Zeichen kann durch eine Ersetzung referenziert werden: &#code; oder &#xhexcode; Beispiel: -Symbol: 15 XML Markup <?...?> Processing Instruction <! > <!... > <... > Kommentar Document Type Definition Element Anfang </... > <... /> Element Ende Leeres Element 16 8

9 NMTOKEN NMTOKEN (name token) sind Kombinationen aus Buchstaben, Zahlen, Punkten, Doppelpunkten, Minuszeichen und Unterstrichen Elementnamen sind NMTOKEN und beginnen mit einem Buchstaben, einem Doppelpunkt oder einem Unterstrich <_hallo> <:hallo> <Mein-Element:Hallo.Welt> 17 Verschachtelung Elemente dürfen verschachtelt werden Die Verschachtelung muß vollständig sein, und es darf keine Überschneidungen geben Richtig: Falsch: <a> <b></b> </a> <a> <b></a> </b> 18 9

10 Baumstruktur Durch die Verschachtelung der Elemente kommt eine Baumstruktur zustande <cdkatalog> <cd> <titel>ray of Light</titel> <interpret>madonna</interpret> </cd> </cdkatalog> cdkatalog cd titel interpret 19 Wohlgeformtheit (Teil) Prolog: <?xml version="1.0"?> Es gibt genau ein Wurzel-Element Elemente müssen vollständig verschachtelt sein Wenn ein Element nicht leer ist, dann gibt es zu jedem Startelement genau ein Endelement und umgekehrt Ist ein Dokument nicht wohlgeformt, ist es nicht XML 20 10

11 Attribute Attribute geben zusätzliche Information zu einem Element Jedes Start-Tag kann beliebig viele Attribute besitzen Für Attribute gelten die selben Namensbeschränkungen wie für Elementnamen Attribute müssen in Anführungszeichen stehen <text farbe="rot" groesse="14pt">hallo</text> <text farbe='rot' groesse='14pt'>hallo</text> 21 Entity References und CDATA Für besondere Zeichen werden Ersetzungen benutzt & & < < > > " " &apos; ' In einem CDATA-Bereich werden keine Ersetzungen vorgenommen <![CDATA[ Hier kann alles stehen & < > " ' ]]> 22 11

12 Attribute Durch Attribute können Varianten von Elementen beschrieben werden <element_a></element_a> <element_b></element_b> <element typ="a"> </element> <element typ="b"> </element> Beispiel: <mitarbeiter geschlecht="weiblich">schmidt</mitarbeiter> 23 Attribute Attribute können Kennzeichner- ( Flag - )Elemente ersetzen <element> <flag/> </element> <element flag="true"> </element> Beispiel: <mitarbeiter wichtig="ja">thorsten Beyer</mitarbeiter> 24 12

13 Einfaches XML-Dokument <?xml version="1.0" encoding="iso " standalone="yes"?> <!-- Dies ist ein einfaches XML Dokument --> <seminar> <titel>xml Einführung</titel> <gebucht/> <dauer einheit="tage">3</dauer> </seminar> 25 Gliederung extensible Markup Language XML Datenbestände Verarbeitung von XML Datenbeständen Aspekte der Integration Web Services The Big Picture Motivation Syntaktische Grundlagen Namensräume 26 13

14 Motivation Jeder kann seine eigenen Elemente definieren Mischen von Elementen aus verschiedenen Anwendungen? <artikel>how to use XML</artikel> <artikel>dauerlutscher</artikel> 27 URI Uniform Resource Identifiers bezeichnen jede adressierbare Resource URIs sind weltweit eindeutig: Sie könnten zur Identifizierung von Vokabularien benutzt werden < Dauerlutscher </

15 XMLNS <?xml version="1.0"?> <katalog xmlns:mc=" xmlns:oio=" </katalog> <mc:artikel>dauerlutscher</mc:artikel> <oio:artikel>how to use XML</oio:artikel> 29 Lokaler Name und QName Man unterscheidet den lokalen Elementnamen vom qualifizierten Elementnamen Der qualifizierte Name (QName) ist durch ein Präfix mit einem Namensraum verbunden qualifizierter Name <oio:artikel> Präfix lokaler Name 30 15

16 Noname-Namespace Es kann auch ein präfixloser "Noname-Namespace" oder "Default- Namespace" definiert werden <?xml version="1.0"?> <katalog xmlns=" <artikel>dauerlutscher</artikel> </katalog> 31 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände DTD W3C XML Schema XML APIs Xpath XSLT 32 16

17 Document Type Definition (DTD) Die Document Type Definition beschreibt die Struktur des Dokuments mit Hilfe einer eigenen Syntax Die DTD definiert nicht die Semantik der Elemente, sondern nur, welche Elemente und Attribute wo vorkommen (Struktur bzw. Grammatik) <?xml version="1.0"?> <!DOCTYPE hallo [ <!ELEMENT hallo (#PCDATA)> ]> <hallo>hallo Welt!</hallo> 33 Beispiel <?xml version="1.0"?> <!DOCTYPE goodbye [ <!ELEMENT goodbye (text)> <!ELEMENT text (#PCDATA)> ]> <goodbye> </goodbye> <text>tschuess!</text> 34 17

18 Deklaration von Elementen <!ELEMENT Name Inhalt> Der Inhalt kann zusammengesetzt werden (a, b) a gefolgt von b (a b) a oder b (a?) optionales a (a+) mindestens ein a (a*) kein, ein oder mehrere a <!ELEMENT name (vorname+, nachname)> 35 Inhaltsmodelle Ein Element kann folgende Inhaltsmodelle haben: andere Elemente Text ("parsed character data") nichts beliebig "mixed content" (vorname+, nachname) (#PCDATA) EMPTY ANY (#PCDATA fett)* <!ELEMENT text (#PCDATA)> <!ELEMENT leer EMPTY> 36 18

19 Deklaration von Attributen <!ATTLIST elem_name att_name att_type default> <!ATTLIST person typ CDATA "non grata" geschlecht (mann frau) #REQUIRED> <person typ="gratissima" geschlecht="mann" > Weihnachtsmann </person> 37 Attributtypen Für Attribute gibt es eine beschränkte Zahl von Typen CDATA ID IDREF IDREFS NMTOKEN NMTOKENS ENTITY ENTITIES Text Im Dokument eindeutiger Schlüssel Referenz auf eine ID Liste von ID-Referenzen Nametoken Liste von Nametokens Entität Liste von Entitäten Aufzählung von Nametokens: (mann frau) 38 19

20 Attribut-Default Für ein Attribut kann ein Default-Wert angegeben werden Das Attribut kann weiter eingeschränkt werden #REQUIRED #FIXED #IMPLIED Der Wert muß angegeben werden Das Attribut hat einen festen Wert Der Wert ist implizit <!ATTLIST katalog id ID #REQUIRED jahr CDATA #IMPLIED besitzer CDATA "Orientation in Objects" version CDATA #FIXED "1.0"> 39 Externe DTD Eine DTD kann in eine externe Datei ausgelagert werden Dazu wird das Schlüsselwort SYSTEM verwendet <?xml version="1.0"?> <!DOCTYPE hallo SYSTEM "hallo.dtd"> <hallo>hallo Welt!</hallo> 40 20

21 PUBLIC DTD Mit einer PUBLIC-DTD wird auf ein Standard verwiesen DTD muß erreichbar oder aber bekannt sein Vergleiche EntityResolver und OASIS XML Catalog <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" " 41 Entitäten Entity DTD: Parameter % XML: General & extern / intern Parsed extern / intern Unparsed nur extern 42 21

22 Pseudotypen Parameterentitäten können dazu benutzt werden, Pseudotypen zu definieren <!ENTITY % string "#PCDATA"> <!ENTITY % date "#PCDATA"> <!ELEMENT name (%string;)> <!ELEMENT ankunft (%date;)> 43 Einfache Ersetzung Mit generellen Entitäten können einfache Textersetzungen vorgenommen werden <!ENTITY text "Hallo Welt!"> <hallo> &text; </hallo> <hallo> Hallo Welt! </hallo> 44 22

23 Externe Ersetzung Mit Entitäten können auch ganze Dateien eingebaut werden <!ENTITY text SYSTEM "botschaft.txt"> <hallo> &text; </hallo> <hallo> Hallo aus einer anderen Welt! </hallo> 45 Notation Nicht-XML kann über Notationen referenziert werden <!NOTATION gif PUBLIC "image/gif"> <!ENTITY myimage SYSTEM "myimagefile.gif" NDATA gif> <!ELEMENT image (#PCDATA)> <!ATTLIST image source ENTITY #REQUIRED> <image source="myimage">dies ist mein Bild</image> 46 23

24 Namensräume und DTD DTDs unterstützen Namespaces nicht, da es in DTDs keine Unterscheidung zwischen lokalen und qualifizierten Namen gibt Workaround: <!ELEMENT oio:katalog (...)> <!ATTLIST oio:katalog xmlns:oio #FIXED " 47 Nachteile von DTD Unhandliche (auf Maschinenlesbarkeit gerichtete) Syntax Reine Strukturbeschreibung "Flacher" Aufbau Keine Typen Keine Objektorientierung 48 24

25 Eigenschaften von XML-Dokumenten Wohlgeformtheit Dokument syntaktisch korrekt? Konformität Dokument entspricht der DTD? Gültigkeit Wohlgeformtheit und Konformität gegeben? 49 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände DTD W3C XML Schema XML APIs Xpath XSLT 50 25

26 Motivation Überwinden der Schwächen von DTD XML Syntax Datentypen Objektorientierung 51 W3C XML Schema Umfangreiche und komplexe XML-Anwendung Große Zahl an Datentypen Verschiedene Mechanismen zur Erstellung eigener Typen: Beschränkung von einfachen Typen Ableitung von komplexen Typen durch Erweiterung, Beschränkung Polymorphie durch Ersetzungsgruppen 52 26

27 Hierarchie der Datentypen 53 Hallo-Welt-Schema <?xml version="1.0"?> <hallo>hallo Welt!</hallo> <?xml version="1.0"?> <xsd:schema xmlns:xsd=" <xsd:element name="hallo" type="xsd:string"/> </xsd:schema> 54 27

28 Schema-Instance <?xml version="1.0"?> <hallo xmlns:xsi= " xsi:nonamespaceschemalocation="hallo.xsd"> Hallo Welt! </hallo> 55 Komplexe Typen <!ELEMENT Adresse (Vorname,Nachname,Strasse,Wohnort,PLZ)> <xsd:element name="adresse"> <xsd:complextype> <xsd:sequence> <xsd:element name="vorname" type="xsd:string"/> <xsd:element name="nachname" type="xsd:string"/> <xsd:element name="strasse" type="xsd:string"/> <xsd:element name="wohnort" type="xsd:string"/> <xsd:element name="plz" type="xsd:integer"/> </xsd:sequence> </xsd:complextype> </xsd:element> 56 28

29 Einfache Typen <= PLZ < <xsd:element name="plz"> <xsd:simpletype> <xsd:restriction base="xsd:positiveinteger"> <xsd:mininclusive value="10000"/> <xsd:maxexclusive value="99999"/> </xsd:restriction> </xsd:simpletype> </xsd:element> Komplexe vs. Einfache Typen Einfache Typen: beschreiben den Inhalt von Textknoten und Attributwerten (? Primitive) Beispiel: xsd:string oder Postleitzahl Komplexe Typen: beschreiben den Inhalt von Elementen (? Klassen) Beispiel: Adresse 58 29

30 Anonyme vs. Benannte Typen Benannte Typen: "flacher Entwurf" Aufbau wie DTD: Elementname? Inhaltsmodell erlauben Wiederverwendung von Modellen Anonyme Typen: "Puppe in der Puppe" erlauben kontextabhängige Inhaltsmodelle: person name vorname nachname firma name Text 59 Attributdeklaration <!ATTLIST adresse art CDATA #REQUIRED> <xsd:element name="adresse"> <xsd:complextyp> <xsd:sequence> <xsd:element name="vorname" type="xsd:string"/> </xsd:sequence> <xsd:attribute name="art" use="required" type="xsd:string"/> </xsd:complextype> </xsd:element> 60 30

31 Attributdeklaration <!ATTLIST adresse art (geschäftlich privat) #REQUIRED> <xsd:attribute name="art" use="required"> <xsd:simpletype> <xsd:restriction base="xsd:string"> <xsd:enumeration value="geschäftlich"/> <xsd:enumeration value="privat"/> </xsd:restriction> </xsd:simpletype> </xsd:attribute> 61 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände DTD W3C XML Schema XML APIs Xpath XSLT 62 31

32 XML - Databinding Schema Klasse Dokument Objekt 63 Was ist SAX? (1) Simple API for XML (SAX2) aktuelle Version ist SAX2 defacto Standard der XML-DEV Mailingliste ursprünglich reine Java API Event basierte Parser API Events lösen bestimmte Callback Methoden aus Parser pusht (drückt) Events in die Callback Methoden der Handler Parser kann dabei auch Validierung durchführen Dokumente werden einmal (!) von Anfang bis Ende durchlaufen Schnell und ohne großen Speicherverbrauch Kein Random Access auf XML - Dokumente 64 32

33 Was ist SAX? (2) Verarbeitung geschieht über Handler Handler für Content- und Fehlerverarbeitung Aufbauen von Verarbeitungspipelines mittels Filterketten möglich Integration in Java durch Sun Teil der Java API for XML Processing (JAXP) Fester Teil von J2SE seit JDK 1.4 Homepage und Informationen Übersicht JAXP Architektur JAXP SAX Implementierung (Crimson, Xerces,...) 66 33

34 Gesamtübersicht SAX2 inklusive JAXP SAXParser Factory Content Handler Error Handler SAXParser XML Reader DTD Handler Default Handler XML Entity Resolver 67 Simple API for XML <warenkorb> <kunde>5873</kunde> <position nr="1 > <artikel nr="4501"> <beschreibung>ltscher</beschreibung> </artikel> </position> <position nr="2" menge="2"> <artikel nr="5860"> <beschreibung>earl Grey</beschreibung> </artikel> </position> </warenkorb> startelement( kunde ) endelement( kunde ) Handler 68 34

35 Selbst XML Dokumente erzeugen Zum Erzeugen von eigenen XML Dokumenten bietet sich eine Baum Struktur an Document DocumentType Element Element Element Attribut Text Text EntityReference Text Attribut Attribut Element Comment Element Text 69 Composite Design Pattern 70 35

36 Document Object Model 71 Was ist DOM? (1) Document Object Model (DOM) aktuelle Version ist DOM Level 2 (DOM Level 3 ist in Arbeit) Standard des W3C (World Wide Web Consortium) Interface Definition Language (IDL) Standard Baum basierte Document API Schwerpunkt liegt auf Erzeugung und Manipulation des Inhalt und der Struktur von Dokumenten Dokumente stehen vollständig zur Verfügung Random Access auf sämtlich Dokument Teile Erhöhter Speicherbedarf und eventuell Performancenachteile 72 36

37 Was ist DOM? (2) DOM ist aufgeteilt in verschiedene Module Kernfunktionalität im DOM Level 2 Core Weitere Module verfügbar (Events, Traversal, etc.) Integration in Java durch Sun Teil der Java API for XML Processing (JAXP) Fester Teil von J2SE seit JDK 1.4 Homepage und Informationen 73 Übersicht Architektur TrAX JAXP DOM SAX Implementierung (Crimson, Xerces, Xalan,...) 74 37

38 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände DTD W3C XML Schema XML APIs XPath XSLT 75 XPath Spezifiziert Adressierung eines XML-Dokumentes Enthält 13 Achsenbezeichner (AxisName) Es existieren Kurz- und Langformen zur Adressierung W3C Recommendation seit 16. November

39 Axis Names - eine kleine Baumschule <cdliste> <erstelldatum> </erstelldatum> <listentitel>oio CD-Liste</listentitel> <beschreibung>diese CD-Liste ist... </beschreibung> <cd id="65" jahr="2000"> <titel>music</titel> <interpret>madonna</interpret> <hersteller>bmg</hersteller> <preis>19.99</preis> <track id="01 > <titel>music</titel> <laenge>4:35</laenge> </track>... </cd> Achsen (Auszug) cdliste parent preceding-sibling following-sibling cd cd cd tracks child titel titel interpret preis track track track 78 39

40 Location step 1 Ein Step besteht aus Achsennamen und Knotentest AxisName::NodeTest cdliste parent::cdliste parent::node() cd cd cd tracks titel titel interpret preis track track track 79 Location step 2 Ein Step besteht aus Achsennamen und Knotentest AxisName::NodeTest cdliste following-sibling::cd following-sibling::node() cd dvd cd tracks titel titel interpret preis track track track 80 40

41 Location step und Location path Location step Location path Location step <xsl:value-of select="/cdliste/cd/hersteller"/> <xsl:value-of select="/cdliste/child::cd/child::hersteller"/> <xsl:value-of select="/descendant::hersteller"/> 81 Location Paths Relative Location Paths Geht vom Context Node aus Besteht aus einer oder mehreren Teilwegbeschreibungen (Location Step) Location Steps werden mit / getrennt Absolute Location Paths Geht vom Root-Knoten aus Wird mit / eingeleitet Darauf folgt ein relativer Location-Path ausgehend vom Root-Knoten 82 41

42 NodeSet Eine Menge von Knoten des Dokumentes Listet Knoten eines XPath-Ausdruckes auf node set <xsl:for-each select="cd"> 83 Context Node Node Namespace Text Attribute1 Attribute2 Attribute3 <seminar von="1" bis="2" mit="3">das Sem...</seminar> 84 42

43 Prädikate Gefiltertes Node Set cd[interpret= Madonna ] Menge aller CD Elemente mit Interpret Madonna Menge aller CD Elemente Node Set des NodeTestes 85 Kontext in einem Prädikat //cd[interpret= Madonna ] Context = gesamter Baum Context = aktuelle cd 86 43

44 Kurzschreibweisen Short Version Long Version // /descendant-or-self::node()/ ElementName attribute::attname. self::node().. parent::node() [n] [position()=n] 87 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände DTD W3C XML Schema XML APIs XPath XSLT 88 44

45 Motivation XSL Trennung von Daten und ihrer Darstellung Austausch zwischen XML Anwendungen Viele andere Standards: HTML, CSV, PostScript, PDF Gibt es eine Möglichkeit all dies miteinander zu verbinden? 89 Von XSL zu XSLT XSL XSL Formatierung XSL 1.0 XSL XSLT Transformation XSLT 1.0 Rec => XSLT 2.0 WD => XSLT XPATH Selektion: XPATH 1.0 Rec => XPATH 2.0 WD => XQuery Selektion: XQuery 1.0 WD =>

46 Von XSL zu XSLT Durch neue Working Draft im April 1999 erfolgt Aufgliederung: XSLT spezifiziert den Transformationsmechanismus XSL spezifiziert die reinen Formatierungsobjekte Adressierung im XML-Baum muß möglich sein: XPath beschreibt Syntax zur Adressierung eines XML-Dokument XSLT beschreibt die Transformationsanweisungen Status der Spezifikationen: XSLT 1.0 und XPath seit November 1999 als Recommendation XSL seit final Recommendation Neu: XSLT 2.0, XPath 2.0 und XQuery 1.0 kurz vor der Verabschiedung? 91 XSL Familie Spezifikationen: 3 Teile: Transformationssprache XSLT Ändern der Struktur Hinzufügen von Formatierungsanweisungen Navigationssprache XPATH Adressieren von XML-Elementen Präsentationssprache XSL-Fo auf den Millimeter genaue Formatierung von Dokumenten XSLT XSL XPATH Quellbaum XSL Transformation (Xalan, Saxon, MSXML) Zielbaum XSL Formatierer PDF (FOP, RenderX)

47 XSLT extensible Stylesheet Language: Transformations ist eine XML-Anwendung ist eine Sprache zur Transformation von XML-Dokumenten Da ein XML-Dokumente ein Baum darstellt, ist XSLT eine Sprache zur Transformation von Bäumen Die Transformation geschieht durch einen XSLT-Prozessor 93 XSLT im Detail Was ist XSLT (nicht)? XSLT ist eine funktionale Sprache, um XML-Dokumente zu transformieren XSLT ist erweiterbar XSLT makes XML useful for non-programmers (James Clark) Ein XSLT-Dokument ist selbst ein XML-Dokument Eine Anleitung (Stylesheet), wie ein XML-Quelldokument in ein Ergebnisdokument zu transformieren ist 94 47

48 XSLT Processoren (1) SAXON von Michael Kay The XSLT and XQuery Processor Unterstützt XSLT 2.0 und XPath 2.0 Autor von XSLT 2nd Edition (Wrox Press) Maßgeblich beteiligt an XSLT, XPath, XQuery... saxon.sourceforge.net 2 Versionen Basic XSLT Processor (frei) Schema Aware XSLT Processor (kommerziell) 95 XSLT Processoren (2) XML Spy (Altowa) Eingebaut im XML Spy XSLT Prozessor auch einzeln und kostenlos erhältlich Unterstützt XSLT 2.0 und XPath 2.0 (Version 2005) Xalan XSLT 1.0 frei Der populärste Prozessor (Verbreitung) 96 48

49 XSLT Baumtransformation Stylesheet Stylesheet Serialisierung XML Dokument Source XSLT Processor Result Output File 97 XSLT Transformations-Pipeline news.xml include.xsl page.xsl news.htm kontakt.xml XSLT Processor site.xml XSLT Processor kontakt.htm *.xml *.htm sitemap.xml 98 49

50 Das Grundgerüst von XSLT <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <!-- Hier stehen die Regeln bzw. Templates --> </xsl:stylesheet> 99 XSLT Namespace Deklariert einen Namensraum für Elemente Wird durch URI gekennzeichnet (ausschlaggebend) Dienen der Zuordnung Element => Anwendung XSLT-Prozessor wertet nur Elemente diesen Namespaces aus <... xmlns:xsl=" Der Präfix (hier xsl) spielt keine Rolle, die URI ist ausschlaggebend

51 Regelbasiert Verarbeitung basiert auf Regeln, so genannte Templates Beispielregel: Triffst du auf Element XYZ erzeuge ein FOO Block Element mit den angegebenen Attributen und fahre mit der Bearbeitung aller Kindknoten fort. <xsl:template match="xyz"> <fo:block font-family="arial" font-size="24pt" break-after="page"> </fo:block> </xsl:template> <xsl:apply-templates/> 101 Muster + Schablone <xsl:template match= [Muster]"> <fo:block </fo:block> font-family="arial" font-size= 48pt" break-after="page"> Hello Formatting Objects! Schablone </xsl:template>

52 Transformationsmodel Der Prozessor geht den Eingabebaum durch und sucht für alle Knoten eine passende Regel Bei mehreren passenden Regeln wird die "am besten passende" Regel ausgesucht Ist eine Regel gefunden, wird sie ausgeführt 103 Ablauf des Processing Model Liste von Knoten wird der Reihenfolge nach verarbeitet Für den Knoten werden passende Template Rules gesucht Die beste (genaueste) Regel wird ausgewählt Stichwort Prädikate Der entsprechende Knoten wird zum Context Knoten Schablone wird instanziiert und Bearbeitung wird an den Kind-Knoten fort gesetzt

53 <xsl:template match= xyz > Kindelement von <xsl:stylesheet> auf Besteht aus zwei Bestandteilen Ein Pattern, ein Muster, welches auf Knoten des Sourcetrees angewandt wird Ein Template, eine Schablone, welches instanziiert werden kann, damit es Bestandteil des Resulttrees wird Matchpattern <xsl:template match= /"> <b>cd-liste</b> </xsl:template> Ausgabe 105 <xsl:template match="foo bar"> Sollen mehrere Elemente genau gleich verarbeitet werden? Eine Regel kann auch auf mehrere Elemente angewandt werden Die Trennung erfolgt durch das Pipe-Symbol Matchpattern <xsl:template match= interpret titel"> <b> <xsl:value-of select="."/> </b> </xsl:template> Ausgabe

54 Vordefinierte Regeln <xsl:template match="* /"> <xsl:apply-templates/> </xsl:template> <xsl:template <xsl:value-of select="."/> </xsl:template> 107 Build-In Template Rules Eher lästig: / <xsl:template match="* /"> <xsl:apply-templates/> </xsl:template> Ganz nett: <xsl:template <xsl:value-of select="."/> </xsl:template>

55 Build In Template Rules überschreiben Den XSLT Prozessor unter Kontrolle bringen: Die Main -Methode: <xsl:template match="/"> <xsl:apply-templates/> </xsl:template> Die Bearbeitung aller anderen Knoten stoppen <xsl:template match="*"/> Text und Attributwerte weiterhin ausgeben <xsl:template match= <xsl:value-of select=."/> </xsl:template> 109 Document Order - Leserichtung /

56 <xsl:value-of select= xyz > Gibt den Wert eines Knoten zurück <xsl:template match="cd"> <p> <xsl:value-of select="interpret"/> </p> </xsl:template> 111 <xsl:apply-templates/> Anweisung für Prozessor mit Transformation bei den Kindelementen fortzufahren Alle Regeln für Kindelemente werden gesucht und abgearbeitet Keine Regel = Keine Verarbeitung <xsl:template match="cd"> <p> <xsl:apply-templates/> </p> </xsl:template> / <xsl:template match="hersteller"> <b>ein Hersteller</b> </xsl:template>

57 <xsl:apply-templates select="foo"/> Problem: Immer alle Kind-Knoten bearbeiten?! Wie steuere ich den XSLT Prozessor? Anweisung für Prozessor mit Transformation fortzufahren Attribut select=... wählt die Child-Knoten aus <xsl:template match= cdliste"> <h1> <xsl:apply-templates select= interpret"/> </h1> <xsl:apply-templates select= tracks"/> </xsl:template> 113 <xsl:value-of select= xyz > <xsl:value-of select="..."/> gibt den Wert (value) eines Knotens zurück Wert = alle Text-Knoten des Elements Mit dem Attribut select wird der Knoten ausgewählt text() => => Jeden Attribut-Knoten. => Der aktuelle Knoten <xsl:template match= <xsl:value-of select=."/> </xsl:template> Text

58 <xsl:for-each select= xyz > Über Mengen von Knoten kann mit for-each iteriert werden <xsl:for-each select="cd"> mach dies mach das </xsl:for-each> 115 <xsl:if test= xyz > <xsl:if> ist analog zum if-ausdruck in Programmiersprachen <xsl:if test="position()=last()"> mach dies mach das </xsl:if>

59 <xsl:choose> Mehrere Bedingungen können mit choose abgefragt werden <xsl:choose> <xsl:when test="test1"> mach dies </xsl:when> <xsl:when test="test2"> mach das </xsl:when> <xsl:otherwise> mach was anderes </xsl:otherwise> </xsl:choose> 117 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände Architekturelles Umfeld Datenexport Datenimport

60 XML Dateien als DBMS? Pro: Speicherung von Daten im XML-Format XML-Schemas Abfragesprachen APIs Contra: Indizierung Sicherheit Transaktionen und Integrität Multi-user Zugriff 119 XML als Datenformat Vorteile: selbstbeschreibend Portabilität (Unicode) Daten liegen als Baumstruktur vor Nachteile: sehr textlastig langsamer Zugriff (Parsen und Textumwandlung)

61 XML Dateien als DBMS? Schlussfolgerung: In Umgebungen mit kleinen Datenmengen, wenigen Benutzern und geringern Anforderungen an die Performance ist der Einsatz von XML als DBMS sinnvoll.? Warum soll man dann überhaupt XML als Datenbasis in Betracht ziehen? 121 Sinnvoller Einsatz von XML XML als Austauschformat für e-commerce Anwendungen Struktur der Daten sehr regelmäßig Entities und Encodings von Bedeutung? Herkömmliche DB sind hier deutlich unterlegen

62 Sinnvoller Einsatz von XML Vorteile gegenüber herkömmlichen DB: Bewahrung der physischen Struktur des Dokuments Transaktionen auf Dokumentebene Spezielle Abfragesprache für XML-Daten 123 Typen von XML Dokumenten Es gibt zwei Typen von XML-Dokumenten: data-centric document-centric

63 Beispiel: Data-centric document <SalesOrder SONumber= 42 > <Customer CNumber= 42-2 > <Name>Adams</Name> <Street>Nostreet 10</Street>... </Customer> <OrderDate> </OrderDate> <Item number= 1 > <Part number= 2802 >... </SalesOrder> 125 Beispiel: Document-centric document <Product> <Name>Turkey Wrench</Name> <Developer>Full Fabrication Labs, Inc.</Developer> <Summary>Like a monkey wrench, but not as big.</summary> <Description> <Para>The turkey wrench,... </Para> <Para>You can:</para> <List>... <Item><Link URL="Order.html">Order your own turkey wrench</link></item> </List>... </Product>

64 Unterscheidung der Dokumenttypen Unterscheidung zwischen den beiden Dokumenttypen ist nicht immer klar und eindeutig Data-centric Dokumente können auch grobkörnige Daten (z.b. Bauteilbeschreibungen) Document-centric Dokumente können auch strukturierte Daten enthalten (z.b. die Autor- oder Erscheinungsdaten eines Buches) Unterscheidung der Dokumenttypen hilft bei der Auswahl der Datenbank 127 XML Datenbanken Unterscheidung: Native XML Datenbanken XML - aware / enabled Datenbanken Beide werden als XML Datenbanken bezeichnet, aber nicht immer ist die zu Grunde liegende Struktur XML

65 Definitionsversuch: native XML Datenbank Zu Grunde liegende logische Einheit ist ein XML Dokument (bei traditionellen DB sind das Spalten) Definition eines logischen Modells für XML Dokumente sowie Speicherung und Abfrage von Dokumenten diesem Modell entsprechend 129 Definitionsversuch: XML-enabled Datenbank Zu Grunde liegt eine relationale Datenbank wie MS SQL Server, Oracle oder IBM DB/2 Erweiterung um die Fähigkeit, XML Dokumente einzulesen und zu speichern ( eigene Funktionen und Datentypen ) Geschieht durch sogenanntes Mapping von XML Dateien Teilweise auch die Möglichkeit der Abfrage über gespeicherte XML Dokumente

66 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände Architekturelles Umfeld Datenexport Datenimport 131 Interorganisationaler Datentransfer mit XML XML-Struktur DTD DTD-Austausch DTD XML-Struktur DBMS DBMS Datenexport validieren XML XML validieren validieren Datenexport Datenimport XML output TRANSFORMATOR XSL

67 XML Generationstechniken Generierung aus RDBMS Vollständiger DB-inhalt Anfrageinhalte Individuelle Transformation 133 Vollständiger DB-Inhalt Artikel-Nr Artikelname Lieferant Kategorie Liefereinheit Einzelpreis Lagerbestand Bestellte EinheitenMindestbestand Auslaufartikel 1 Chai 2 Chang 3 Aniseed Syrup Exotic Liquids Exotic Liquids Exotic Liquids Getränke Getränke Gewürze 10 Kartons x 20 Beutel 18,00 DM FALSCH 24 x 12-oz- Flaschen 19,00 DM FALSCH 12 x 550-ml- Flaschen 10,00 DM FALSCH Chef Anton's New Orleans Cajun Cajun 4 Seasoning Delights Gewürze 48 x 6-oz- Gläser 22,00 DM FALSCH New Orleans Chef Anton's Cajun 5 Gumbo Mix Delights Gewürze 36 Kartons 21,35 DM WAHR Grandma's Grandma Boysenberry Kelly's 12 x 8-oz- 6 Spread Homestead Gewürze Gläser 25,00 DM FALSCH <Import> - <Row> Datenbank: betrachtet als dreistufige Hierarchie von <Artikel-Nr>1</Artikel-Nr> Datenbank - Relation - Attributen <Artikelname>Chai</Artikelname> <Lieferanten-Nr>1</Lieferanten-Nr> Darstellung im XML-Dokument <Kategorie-Nr>1</Kategorie-Nr> <Liefereinheit>10 Kartons x 20 Beutel</Liefereinheit> durch Elemente und Attribute <Einzelpreis>18</Einzelpreis> <Lagerbestand>39</Lagerbestand> <BestellteEinheiten>0</BestellteEinheiten> <Mindestbestand>10</Mindestbestand> <Auslaufartikel>0</Auslaufartikel> </Row> - <Row> <Artikel-Nr>2</Artikel-Nr> <Artikelname>Chang</Artikelname>

68 Anfrage-inhalte 1 0 Chai Chang Aniseed Syrup Chef Anton&apos;s Cajun Seasoning Chef Anton&apos;s Gumbo Mix 21, Grandma&apos;s Boysenberry Spread Uncle Bob&apos;s Organic Dried Pears Northwoods Cranberry Sauce Mishi Kobe Niku Ikura Queso Cabrales Queso Manchego La Pastora Konbu Tofu 23, Genen Shouyu 15, Pavlova 17, Alice Mutton 39 <Import> <Artikel> <Einzelpreis>18</Einzelpreis> <Artikelname>Chai</Artikelname> </Artikel> <Artikel> <Einzelpreis>19</Einzelpreis> <Artikelname>Chang</Artikelname> </Artikel> <Artikel> <Einzelpreis>10</Einzelpreis> <Artikelname>Aniseed Syrup</Artikelname> </Artikel>... SELECT Einzelpreis,Artikelname FROM [Artikel] 135 Individuelle Transformation 1 0 Chai Chang Aniseed Syrup Chef Anton&apos;s Cajun Seasoning Chef Anton&apos;s Gumbo Mix 21, Grandma&apos;s Boysenberry Spread Uncle Bob&apos;s Organic Dried Pears Northwoods Cranberry Sauce Mishi Kobe Niku Ikura Queso Cabrales Queso Manchego La Pastora Konbu Tofu 23, Genen Shouyu 15, Pavlova 17, Alice Mutton 39 <Import> <Artikel> <Einzelpreis>18</Einzelpreis> <Artikelname>Chai</Artikelname> </Artikel> <Artikel> <Einzelpreis>19</Einzelpreis> <Artikelname>Chang</Artikelname> </Artikel> <Artikel> <Einzelpreis>10</Einzelpreis> <Artikelname>Aniseed Syrup</Artikelname> </Artikel>... Diese meist zweigeteilt: SQL-Anfrage zur Auswahl der dazustellenden Daten (=relevanten Anteile) XML-QL oder X-Query-ähnliche Darstellung zur Bestimmung der Syntax des Zielformates (CONSTRUCT) Spezifikation der Syntax des entstehenden XML-Dokumentes

69 Comma Separated Values CSV CSV Export Nr;Bezeichnung;Menge;Preis 1;Dauerlutscher;10;1,99 2;Kaffee;2;3,8 3;Kuli;100;0,8 137 Konverter (XMLSpy)

70 Gliederung extensible Markup Language Verarbeitung von XML Datenbeständen XML Datenbestände Architekturelles Umfeld Datenexport Datenimport 139 XML Persistenztechniken Files/CLOB Datenbanken Volltextindizierung Volltext und XML - Indizierung Strukturelles Mapping Verwendung der Baumstruktur Graphen DOM-Modell Vollständig individuell

71 Volltextindizierung TERM REFERENZ cdliste erstelldatum cd Madonna Music preis track <cdliste> <erstelldatum> </erstelldatum> <listentitel>oio CD-Liste</listentitel> <beschreibung>diese CD-Liste ist... </beschreibung> <cd id="65" jahr="2000"> <titel>music</titel> <interpret>madonna</interpret> <hersteller>bmg</hersteller> <preis>19.99</preis> <track id="01 > <titel>music</titel> <laenge>4:35</laenge> </track>... </cd> Volltext und XML-Indizierung TERM REFERENZ cdliste erstelldatum cd Madonna Music preis track ELEMENT REFERENZ PARENT cdliste / erstelldatum cdliste cd cdliste preis cd track cd interpret cd titel track <cdliste> <erstelldatum> </erstelldatum> <listentitel>oio CD-Liste</listentitel> <beschreibung>diese CD-Liste ist... </beschreibung> <cd id="65" jahr="2000"> <titel>music</titel> <interpret>madonna</interpret> <hersteller>bmg</hersteller> <preis>19.99</preis> <track id="01 > <titel>music</titel> <laenge>4:35</laenge> </track>... </cd>

72 Vollständiges Mapping RDBMS pk fk beschreibung erstelldatum tistentitel 1 0 Diese CD-Liste ist OIO CD-Liste pk fk id jahr hersteller interpret preis titel BMG Madonna Music BMG U The Best Of BMG R.E.M Green cd_fk tracks_fk pk fk number laenge titel :35 Music :10 Impressive Instant :20 Runaway Lover :50 I Deserve It :15 Amazing :56 Nobody's Perfect :57 Don't Tell Me :20 What It Feels Like For A Girl :25 Paradise (Not For Me) :47 Gone :29 American Pie :15 Pride (In The Name Of Love) :01 New Year's Day :58 With Or Without You :45 With Or Without You <cdliste> <erstelldatum> </erstelldatum> <listentitel>oio CD-Liste</listentitel> <beschreibung>diese CD-Liste ist... </beschreibung> <cd id="65" jahr="2000"> <titel>music</titel> <interpret>madonna</interpret> <hersteller>bmg</hersteller> <preis>19.99</preis> <track id="01 > <titel>music</titel> <laenge>4:35</laenge> </track>... </cd> Vollständiges Mapping OODBMS listentitel erstelldatum beschreibung cd id jahr titel interpret hersteller preis tracks track number titel laenge

73 Individuelles Mapping id interpret titel 65 Madonna Music 215 U2 The Best Of R.E.M Green cd_id number laenge titel :35 Music :10 Impressive Instant :20 Runaway Lover <cdliste> <erstelldatum> </erstelldatum> <listentitel>oio CD-Liste</listentitel> <beschreibung>diese CD-Liste ist... </beschreibung> <cd id="65" jahr="2000"> <titel>music</titel> <interpret>madonna</interpret> <hersteller>bmg</hersteller> <preis>19.99</preis> <track id="01 > <titel>music</titel> <laenge>4:35</laenge> </track>... </cd> Baumstruktur als Graphen I ELEMENT Type VALUE PARENT cdliste erstelldatum cd preis String track interpret String Madonna titel String Music ELEMENT ATTRIBUTE VALUE id 65 jahr 2000 id 1 <cdliste> <erstelldatum> </erstelldatum> <listentitel>oio CD-Liste</listentitel> <beschreibung>diese CD-Liste ist... </beschreibung> <cd id="65" jahr="2000"> <titel>music</titel> <interpret>madonna</interpret> <hersteller>bmg</hersteller> <preis>19.99</preis> <track id="01 > <titel>music</titel> <laenge>4:35</laenge> </track>... </cd>

74 Baumstruktur als Graphen II ELEMENT Type VALUE String String String Madonna String Music ELEMENT PARENT cdliste erstelldatum cd preis track interpret titel ELEMENT ATTRIBUTE VALUE id 65 jahr 2000 id 1 <cdliste> <erstelldatum> </erstelldatum> <listentitel>oio CD-Liste</listentitel> <beschreibung>diese CD-Liste ist... </beschreibung> <cd id="65" jahr="2000"> <titel>music</titel> <interpret>madonna</interpret> <hersteller>bmg</hersteller> <preis>19.99</preis> <track id="01 > <titel>music</titel> <laenge>4:35</laenge> </track>... </cd> XML Persistenztechniken Files/CLOB Datenbanken Volltextindizierung Volltext und XML - Indizierung Strukturelles Mapping Verwendung der Baumstruktur Graphen DOM-Modell Vollständig Unvollständig Dokumentenzentriert Datenzentriert

75 Datentypen XML unterstützt keine Datentypen Sämtliche Daten eines XML Dokumentes, ausgenommen unparsed entities, sind Text Datenübertragungssoftware konvertiert Daten von Text zu anderen Datentypen und umgekehrt 149 Binärdaten Zwei Möglichkeiten Binärdaten zu speichern: unparsed Entities Base64 encoding Regeln für das Senden von Binärdaten an und Empfangen aus Datenbanken sind sehr strikt Es gibt keine XML Notation, die anzeigt, dass Base64 encoded Data enthalten ist im Dokument? Probleme mit der Software sind vorprogrammiert

76 Character Sets XML Dokumente können jeglichen Unicode darstellen mit Ausnahme einiger Kontrollzeichen Viele DB bieten keine oder nur ungenügende Unterstützung bei der Behandlung von nicht-ascii Zeichen 151 Processing Instructions und Kommentare Nicht Teil der XML Daten Werden von Datentransfersoftware meistens nicht behandelt Nur schwer in ein Tabellenschema zu mappen

77 Markup - Entities Beim Speichern von mixed content wird markup mitspeichert Wie unterscheidet man markup von nicht-markup? Nicht-Markup wird gespeichert durch lt, gt, amp, quot und apos Entitäten nicht XML-Abfragesprachen (SQL) können nicht zwischen markup und Entities unterscheiden 153 Orientation in Objects GmbH Weinheimer Str Mannheim????? Fragen??? Version: info@oio.de 77

78 Vielen Dank für Ihre Aufmerksamkeit! Orientation in Objects GmbH Weinheimer Str Mannheim Version:

... 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

XSL und XSLT. Inhalt. Mathias Heilig email: mathias.heilig@gmx.de. XSL Übersicht. Formatierungsprozess. Sprachbeschreibung. Vorführung Resümee

XSL und XSLT. Inhalt. Mathias Heilig email: mathias.heilig@gmx.de. XSL Übersicht. Formatierungsprozess. Sprachbeschreibung. Vorführung Resümee Mathias Heilig email: mathias.heilig@gmx.de Inhalt XSL Übersicht XSL im XML- Umfeld XSLT XPath XSL- FO Was können wir mit XSLT heute machen? Formatierungsprozess XSLT im XML- Formatierungsprozess Transformation

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

XML 1. Einführung, oxygen. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz

XML 1. Einführung, oxygen. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz XML 1 Einführung, oxygen Ulrike Henny ulrike.henny@uni-koeln.de XML extensible Markup Language Was ist XML? XML-Grundlagen XML-Editoren, oxygen HTML + CSS XPath Übungen Literatur Folie 2 Was ist XML? extensible

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

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

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

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

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 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

XML Extensible Markup Language

XML Extensible Markup Language XML-Praxis XML Extensible Markup Language Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Woher? Wohin? Warum? Bestandteile von XML XML-Dokumente erstellen und bearbeiten XML-Praxis XML Extensible

Mehr

DTD: Syntax-Zusammenfassung

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

Mehr

IT-Zertifikat: Daten- und Metadatenstandards. Transformation von XML-Dokumenten mit XSLT (und XPATH) XSLT kurz und knackig. XSLT und die Praxis

IT-Zertifikat: Daten- und Metadatenstandards. Transformation von XML-Dokumenten mit XSLT (und XPATH) XSLT kurz und knackig. XSLT und die Praxis IT-Zertifikat: Daten- und Metadatenstandards Transformation von XML-Dokumenten mit XSLT (und XPATH) XSLT kurz und knackig I. Was ist XSLT? XSL Transformation (XSLT) ist eine Programmiersprache zur Transformation

Mehr

Einführung in XML. Seminarunterlage. Version 3.05 vom

Einführung in XML. Seminarunterlage. Version 3.05 vom Seminarunterlage Version: 3.05 Version 3.05 vom 8. März 2017 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen oder

Mehr

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5. www.hanser.de

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5. www.hanser.de CARL HANSER VERLAG Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5 www.hanser.de 1 1.1 Einleitung... 2 Über dieses Buch... 3 1.2 Für wen ist das Buch gedacht?...

Mehr

XML-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel 25.-29.6.2012.

XML-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel 25.-29.6.2012. XML-Verarbeitung XPath XSL die extensible Stylesheet Language Folie 1 Was ist XSL? - Mehrere Komponenten: - XSLT Transformations - XSL-FO Formatting Objects - XPath - (XML-Schema) - Ausgabeformate: - XML,

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

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

Mehr

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester 2015. Fachbereich MNI Technische Hochschule Mittelhessen

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester 2015. Fachbereich MNI Technische Hochschule Mittelhessen Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Übersicht Semistrukturierte Daten Dokumenttypdefinition XML-Schema XML aus Datenbank konstruieren XML in Datenbank speichern Merkmale

Mehr

Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB

Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB Jörg Liedtke, Oracle Consulting Vortrag zum Praxis-Seminar B bei der KIS-Fachtagung 2007, Ludwigshafen Agenda

Mehr

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis HANSER r 1 Einleitung 2 1.1 Über dieses Buch 3 1.2 Für wen ist das Buch gedacht? 4 1.3 Wie ist das Buch aufgebaut? 5 1.4 Konventionen

Mehr

XML Grundlagen Teil I

XML Grundlagen Teil I XML Vorlesung FH Aargau, SS 2006 XML Grundlagen Teil I Erik Wilde 20.3.2006 http://dret.net/lectures/xml-fhnw-ss06/ 20.3.2006 XML Vorlesung FHA SS 2006 1 Übersicht Aufbau von XML XML Dokumenten-Syntax

Mehr

Document Type Definition (DTD)

Document Type Definition (DTD) Document Type Definition (DTD) 1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken Inhalt des Moduls: Grundlagen Elemente, Attribute Komplexe

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

XML Extensible Markup Language

XML Extensible Markup Language XML-Praxis XML Extensible Markup Language Jörn Clausen joern@techfak.uni-bielefeld.de XML? Das sind doch bloß spitze Klammern! XML-Praxis XML Extensible Markup Language 2/22 XML? Das sind doch bloß spitze

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

Klaus Schild, XML Clearinghouse 2003. Transformation von XML-Dokumenten

Klaus Schild, XML Clearinghouse 2003. Transformation von XML-Dokumenten Transformation von XML-Dokumenten Lernziele Warum kann es sinnvoll sein XML-Dokumente zu transformieren? Wie funktioniert XSLT (Extensible Stylesheet Language Transformations)? Was ist XPath? Was sind

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

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

XINDICE. The Apache XML Project 3.12.09. Name: J acqueline Langhorst E-Mail: blackyuriko@hotmail.de

XINDICE. The Apache XML Project 3.12.09. Name: J acqueline Langhorst E-Mail: blackyuriko@hotmail.de Name: J acqueline Langhorst E-Mail: blackyuriko@hotmail.de 3.12.09 HKInformationsverarbeitung Kurs: Datenbanken vs. MarkUp WS 09/10 Dozent: Prof. Dr. M. Thaller XINDICE The Apache XML Project Inhalt Native

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

XSLT Vortrag. 2. Beispiel XML. 3. Anwendungsmöglichkeiten von XSLT 4. XHTML

XSLT Vortrag. 2. Beispiel XML. 3. Anwendungsmöglichkeiten von XSLT 4. XHTML XSLT Vortrag 1. Was ist XSLT? XSLT ist eine Transformationssprache für XML Dokumente. XSLT war wahrscheinlich die erste XML basierte Programmiersprache. XSLT ist von der Struktur her Template-Matching,

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

FileMaker Konferenz 2010 XML / XSLT. Ein Workshop mit [x] cross solution Armin Egginger

FileMaker Konferenz 2010 XML / XSLT. Ein Workshop mit [x] cross solution Armin Egginger XML / XSLT Ein Workshop mit [x] cross solution Armin Egginger [x] cross solution Armin Egginger - Zertifizierter FileMaker Entwickler Urheber von CrossCheck Netzwerk von Datenbankprogrammierern Kunden

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

1 Was ist XML? Hallo XML! Kommentare in XML 52

1 Was ist XML? Hallo XML! Kommentare in XML 52 Inhalt Vorwort 13 Einleitung und Ziel des Buches 15 1 Was ist XML? 21 1.1 XML ein Definitionsversuch 21 1.2 XML und HTML wo sind die Unterschiede? 22 1.3 XSLT 24 1.4 Einsatzgebiete von XML und XSLT 25

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

XML Extensible Markup Language

XML Extensible Markup Language XML-Praxis XML Extensible Markup Language Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Woher? Wohin? Warum? Bestandteile von XML XML-Dokumente erstellen und bearbeiten XML-Praxis XML Extensible

Mehr

Transformation von XML-Dokumenten. IDE SummerSchool 2013, Chemnitz

Transformation von XML-Dokumenten. IDE SummerSchool 2013, Chemnitz Transformation von XML-Dokumenten Folie 1 Was ist XSL politisch? XSL ist eine eigene Technik. Zum Publizieren (Transformieren) von Dokumenten. Früher gab es dafür Verlage und Schriftsetzer, um gute Inhalte

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

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

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

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

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.1-21.02.2014 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

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

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

XML Informationsmodelle

XML Informationsmodelle XML Vorlesung ETHZ, Sommersemester 2006 XML Informationsmodelle Erik Wilde 25.4.2006 http://dret.net/lectures/xml-ss06/ 25.4.2006 XML Vorlesung ETHZ SS 2006 1 Übersicht XML Namespaces für Schema-Kombination

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

XML-Technologien. Tutorium im Sommersemester Mai 2014

XML-Technologien. Tutorium im Sommersemester Mai 2014 XML-Technologien Tutorium im Sommersemester 2014 niels.hoppe@fu-berlin.de 6. Mai 2014 XML Grundlagen URIs, URNs, URLs, IRIs,... Namensräume Document Type Definitions Elemente deklarieren Attribute deklarieren

Mehr

ASN.1 <-> XML TRANSLATION

ASN.1 <-> XML TRANSLATION ASN.1 XML TRANSLATION Management Verteilter Systeme Patrick Gerdsmeier, Pierre Smits Wintersemester 2003/2004 Lehrstuhl für Systeme Prof. Dr. Kraemer BTU Cottbus ASN.1 XML TRANSLATION Gliederung

Mehr

Buchstabensuppe. Standards für die Präsentation von XML-Instanzen

Buchstabensuppe. Standards für die Präsentation von XML-Instanzen W. Schubert, Siemens ICM N IS P23-1- Buchstabensuppe Standards für die Präsentation von XML-Instanzen Walther Schubert Siemens ICM N IS P23 und Manfred Krüger MID/Information Logistics Group GmbH XML Name

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

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 120 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren 1. XML Grundbegriffe XML = extensible Markup Language Metasprache um Dokumenttypen zu definieren XML Baum

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.0-09.05.2011 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

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

Verteilte Systeme: Übung 4

Verteilte Systeme: Übung 4 Verteilte Systeme: Übung 4 WSDL und SOAP Oliver Kleine Institut für Telematik https://www.itm.uni-luebeck.de/people/kleine SOAP Nachrichten Serialisierung in XML Root-Element einer SOAP Nachricht ist

Mehr

XML - Extensible Markup Language. Agenda - Oracle XML DB

XML - Extensible Markup Language. Agenda - Oracle XML DB Architektur und Funktionalitäten der Oracle XML DB - ein Überblick mit ausgewählten praktischen Beispielen - im Rahmen des 17. Workshop Grundlagen von Datenbanken 2005 in Wörlitz Annegret Warnecke Senior

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

X-Technologien. Ein Überblick. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz

X-Technologien. Ein Überblick. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz X-Technologien Ein Überblick Ulrike Henny ulrike.henny@uni-koeln.de X-Technologien Das X-Universum XML im Zentrum Woher kommt XML? Einsatz von XML X-Technologien Datenhaltung Datenzugriff Umwandlung Ausgabe

Mehr

Projektseminar "Texttechnologische Informationsmodellierung"

Projektseminar Texttechnologische Informationsmodellierung Projektseminar "Texttechnologische Informationsmodellierung" Formatierung und Transformation http://www.text-technology.de/projects/sekimo.html Ziel dieser Sitzung Nach dieser Sitzung sollten Sie: XPath

Mehr

Web (Site) Engineering (WebSE)

Web (Site) Engineering (WebSE) 1 / 22 Web (Site) Engineering (WebSE) Vorlesung 6: Tools und Programmierung B. Schiemann, P. Reiß Lehrstuhl für Informatik 8 Universität Erlangen-Nürnberg 29.11.2005 2 / 22 Übersicht XML-Beispiel Zugriff

Mehr

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79 XML exemplarisch nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79 Wohlgeformte XML-Dokumente bestehen aus Prolog genau einem Element Beispiel-Prolog.

Mehr

Strukturierung von Inhalten

Strukturierung von Inhalten Strukturierung von Inhalten extensible Markup Language Metasprache erlaubt die Definition eigener Markupsprachen zur Strukturierung von Informationen World Wide Web Consortium (W3C) Standard Basiert auf

Mehr

Projektseminar Texttechnologische Informationsmodellierung

Projektseminar Texttechnologische Informationsmodellierung Projektseminar Texttechnologische Informationsmodellierung XQuery Ziele der Sitzung Nach dieser Sitzung sollten Sie: XQuery als wesentlichen Standard zur Abfrage von in XML kodierten Daten kennen Mit Hilfe

Mehr

Softwareentwicklung mit Komponenten

Softwareentwicklung mit Komponenten Softwareentwicklung mit Komponenten XML Extensible Markup Language TU Berlin im Wintersemester 2000/2001 Von Akin Kurdoglu Betreuer M.Bittner, W. Koch, Prof. Dr. S. Jähnichen 1 Gliderung - Definition von

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken. In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht

Mehr

Allgemeines zu Datenbanken

Allgemeines zu Datenbanken Allgemeines zu Datenbanken Was ist eine Datenbank? Datensatz Zusammenfassung von Datenelementen mit fester Struktur Z.B.: Kunde Alois Müller, Hegenheimerstr. 28, Basel Datenbank Sammlung von strukturierten,

Mehr

XML. Teil 3: Namensräume. Abteilung Informatik WS 02/03

XML. Teil 3: Namensräume. Abteilung Informatik WS 02/03 XML Teil 3: Namensräume Abteilung Informatik WS 02/03 Namensräume: Motivation Namensräume erlauben: Gleichnamige Elemente und Attribute verschiedener XML-Applikationen zu unterscheiden Beispiel: Mit dem

Mehr

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur

Mehr

Ressourcen-Beschreibung im Semantic Web

Ressourcen-Beschreibung im Semantic Web Ressourcen-Beschreibung im Semantic Web Cristina Vertan Inhaltsübersicht Wie sollen die Ressourcen für Semantic Web annotiert werden? Was ist und wie funktioniert RDF? Wie kodiert man RDF-Statements in

Mehr

Daten- und Metadatenstandards Wintersemester 2011/2012 26. März 2012 Text / XML: Erste Schritte

Daten- und Metadatenstandards Wintersemester 2011/2012 26. März 2012 Text / XML: Erste Schritte Daten- und Metadatenstandards Wintersemester 2011/2012 26. März 2012 Text / XML: Erste Schritte Themenüberblick Text / XML: Erste Schritte Text Inhalt Struktur Äußeres Erscheinungsbild: Layout Extensible

Mehr

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 12 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

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

Source Code Konverter... 2. Online: (VB.net <-> C#)... 3. Kommerzielle Produkte (VB, C#, C++, Java)... 3. Code Nachbearbeitung in der Praxis...

Source Code Konverter... 2. Online: (VB.net <-> C#)... 3. Kommerzielle Produkte (VB, C#, C++, Java)... 3. Code Nachbearbeitung in der Praxis... Autor: Thomas Reinwart 2008-05-05 office@reinwart.com Inhalt Source Code Konverter... 2 Online: (VB.net C#)... 3 Kommerzielle Produkte (VB, C#, C++, Java)... 3 Code Nachbearbeitung in der Praxis...

Mehr

Metadateneditoren für ArcGIS

Metadateneditoren für ArcGIS Metadateneditoren für ArcGIS Matthias Schenker Geoinformatik AG Zürich, Schweiz Inhalt Metadaten in ArcGIS Erweiterung des bestehenden ISO-Editors Einbinden eigener Editoren Import und Export von bestehenden

Mehr

XSL Transformation. Eine praxisorientierte Einführung Philip Heck

XSL Transformation. Eine praxisorientierte Einführung Philip Heck XSL Transformation Eine praxisorientierte Einführung Philip Heck Agenda Motivation Hello World - Getting Started with XSLT XSLT Verarbeitung im Detail XPath 2 Motivation datenzentriertes XML als Standard

Mehr

In S-Firm wird nur angeboten die Datei auf Diskette zu exportieren; die Einstellung für HBCI ist ausgegraut.

In S-Firm wird nur angeboten die Datei auf Diskette zu exportieren; die Einstellung für HBCI ist ausgegraut. S-Firm/StarMoney/StarMoney Business mehrere Stapel über HBCI Problembeschreibung: Die oben genannten Produkte der Star Finanz GmbH, Hamburg nachfolgend Banking Software genannt, erlauben in der aktuellen

Mehr

6. XML-Verarbeitung. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. XML Design Goals

6. XML-Verarbeitung. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. XML Design Goals 5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 6 6. XML-Verarbeitung XML Design Goals XML shall be straightforwardly usable over the Internet. XML shall support a

Mehr

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP) Enterprise Applikation Integration und Service-orientierte Architekturen 09 Simple Object Access Protocol (SOAP) Anwendungsintegration ein Beispiel Messages Warenwirtschaftssystem Auktionssystem thats

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 13 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

Mehr

Datenbanken Kapitel 2

Datenbanken Kapitel 2 Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,

Mehr

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen Datenbanksysteme XML und Datenbanken Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2019 Übersicht Semistrukturierte Daten Datendefinition in XML Dokumenttypdefinition

Mehr

Das Einsteigerseminar

Das Einsteigerseminar Michael Seeboerger-Weichselbaum Das Einsteigerseminar XML Inhalt Vorwort Einleitung und Ziel des Buches 1 Was ist XML 1.1 HTML 1.2 XML 1.3 XSLT 1.4 XML und HTML - wo sind die Unterschiede? 1.5 Einsatzgebiete

Mehr

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter 2 Inhaltsverzeichnis 1 Web-Kürzel 4 1.1 Einführung.......................................... 4 1.2 Web-Kürzel.........................................

Mehr

XML-Schema Datentypen

XML-Schema Datentypen Datentypen Data Types Simple Types Complex Types User-derived Built-in Atomic (restriction) Non-atomic (list, union) Primitive Derived WT:III-1 XML Schema Reference Lettmann 2014 Datentypen anytype anysimpletype

Mehr

Gemeinsam mit Book Industry Study Group, New York, und Book Industry Communication, London. ONIX for Books Supply Update Nachricht Überblick

Gemeinsam mit Book Industry Study Group, New York, und Book Industry Communication, London. ONIX for Books Supply Update Nachricht Überblick Gemeinsam mit Book Industry Study Group, New York, und Book Industry Communication, London ONIX for Books Supply Update Nachricht Überblick Version 1.0 August 2006 Copyright 2006 EDItEUR Limited. Alle

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Versand von Newslettern aus Sage CRM mit MailChimp

Versand von Newslettern aus Sage CRM mit MailChimp Versand von Newslettern aus Sage CRM mit MailChimp Autor: Robert Cwicinski letzte Änderung: 06.05.2015 Inhaltsverzeichnis 1 Ausgangssituation... 3 2 Zielsetzung... 3 3 MailChimp Konto... 4 3.1 Account

Mehr

Duale Zustellung. Standardprofile. Version 1.0.0, 14.08.2007. DI Arne Tauber arne.tauber@egiz.gv.at

Duale Zustellung. Standardprofile. Version 1.0.0, 14.08.2007. DI Arne Tauber arne.tauber@egiz.gv.at www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Duale Zustellung Version 1.0.0, 14.08.2007 DI Arne Tauber arne.tauber@egiz.gv.at

Mehr

PRESman. Presentation Manager. Reduzieren Sie nachhaltig die Kosten für das. Erstellen, Verwalten und Verteilen Ihrer

PRESman. Presentation Manager. Reduzieren Sie nachhaltig die Kosten für das. Erstellen, Verwalten und Verteilen Ihrer Reduzieren Sie nachhaltig die Kosten für das Erstellen, Verwalten und Verteilen Ihrer Präsentationen durch eine effiziente Folienverwaltung Sie kennen die Situation Ein Vortrag muss kurzfristig vorbereitet

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

Mehr

Web-Programmierung (WPR)

Web-Programmierung (WPR) Web-Programmierung (WPR) Vorlesung II. XML Manfred Gruner mailto:wpr@gruner.org 4.2 XML XML extensible Markup Language Universelles Format für strukturierte Dokumente und Daten Web: XML = Querschnittstechnologie

Mehr

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte

Mehr

XML Verarbeitung mit einer in Haskell eingebetteten DSL. Manuel Ohlendorf (xi2079)

XML Verarbeitung mit einer in Haskell eingebetteten DSL. Manuel Ohlendorf (xi2079) XML Verarbeitung mit einer in Haskell eingebetteten DSL Manuel Ohlendorf (xi2079) 2.0.200 Manuel Ohlendorf Übersicht 1 2 Einführung Datenstruktur Verarbeitung Vergleich mit anderen Verfahren Fazit 2 Übersicht

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