Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03

Ähnliche Dokumente
Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03

XML Extensible Markup Language

Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03

Document Type Definitions (DTDs)

XHTML. Lernfragen zu XHTML. Was ist HTML? Überblick

Einführung in die extensible Markup Language

Eine Dokumenttypdefinition lässt sich im Kopfbereich des XML-Dokumentes (interne DTD) oder in einer separaten Datei formulieren (externe DTD).

Document Type Definition (DTD)

Logische Dokumentenstruktur mit SGML und XML

DTD: Syntax-Zusammenfassung

Einführung in XML. Seminarunterlage. Version 3.05 vom

Was ist SGML. - welche Auszeichnungen (Mark up) sind erlaubt? - welche Auszeichnungen sind notwendig?

<B1>Skript</B1> Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016

XML Extensible Markup Language

XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so:

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

XML Extensible Markup Language

Komponenten-basierte Entwicklung Teil 2: Einführung in XML

Kurzeinführung in XML. Was ist XML? Well-formed u. gültiges XML Erste Anwendung in XML Externe DTD Attribute und Entities Datenausgabe mit XSL

2. Einführung in Datenbanken und XML

6 Modellierung von Strukturen 6.1 Kontextfreie Grammatiken. Kontextfreie Grammatik. Vorlesung Modellierung WS 2011/12 / Folie 601

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

Konzeptionelle Modellierung von XML-Dokumenttypen

2 XML-Basiskonzepte. 2.1 XML-Dokumente

Semistrukturierte Daten. Teil 3: Document Type Definitions (DTDs)

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

Diese neuen Gestaltungsmöglichkeiten können nun auf den Web-Anzeigenmarkt angewandt werden: Wissensbaustein»Anzeigenmarkt: CSS-Einsatz«(S.

Strukturierung von Inhalten

IN A NUTSHELL. Elliotte Rusty Harold & W, Scott Means. Deutsche Übersetzung von Kathrin Lichtenberg & Jochen Wiedmann O'REILLY*

XML Extensible Markup Language

XML, XHTML und MathML

XML-Technologien. Tutorium im Sommersemester Mai 2014

XML Schema 2016 S h_da S Seite 1

Datenaustauschformate. Datenaustauschformate - FLV

Textauszeichnung mit XML

5 XML und Analyse von XML-Dokumenten

Information und Struktur Einführung in XML

DTDs und XML- Schemata

Einführung in XML Extensible Markup Language

XML Schema 2012/2013 S Seite 1 h_da W

- Kapselung der Syntax/Semantik Definition. - Wiederverwendung, Standardisierung. - Vereinfachung der Festlegung von Datenstrukturen

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

... MathML XHTML RDF

IT-Zertifikat: Daten- und Metadatenstandards

03 XML Grundlagen. Manuel Burghardt Lehrstuhl für Medieninformatik

XML RSS. 1. Einführung 2. Syntax 3. Eigenschaften 4. Validierung 5. Fazit. 1. Einführung 2. Struktur 3. Fazit. Seite 2

Semistrukturierte Daten

DTDs und XML-Schema. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009

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

XML-Technologie: Grundlegende Syntax


Literatur. VA SS Teil 12/XML

Document Type Definitions (DTDs) Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

Verteilte Anwendungen. Teil 12: XML-Einführung

Android will doch nur spielen XML

Repräsentation von Struktur

Musterlösung des Übungsblattes 1

Seminar Document Engineering

<XML und XSLT Eine Einführung/> Katharina Hemmeter, Claus Ludewig SQ: Digitale Dokumente

Beschreibung von Dokumenten mit DTDs

Textkodierung mit XML

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

Agenda GRUNDKURS INFORMATIK 8 BESCHREIBUNG VON DATEN XML. Von SGML zu XML. Grundbegriffe XML Dokument. XML Beispiel

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

XML-Einführung. Entwicklung Begriffe Vorteile/Möglichkeiten von XML Adressen Beispiele. Fachhochschule Nordwestschweiz FHNW Martin Hüsler

XML Grundlagen Teil I

Textkodierung mit XML

Java und XML 2. Java und XML

Auszeichnungssprachen. Auszeichnungssprachen

<XML/> Eine kleine Einführung Sascha Kohlmann <XML/> Eine kleine Einführung

XML-Praxis. XML-Grammatiken. Jörn Clausen

Klaus Schild, XML Clearinghouse Aufbau von XML- Dokumenten

Kurze Einführung in XML

XML Extensible Markup Language

XML Eine Einführung XML Dokumente Erstellen

Wirtschaftsinformatik (PWIN) 5. Mentorium. Wirtschaftsinformatik (PWIN), SS2010, Professur für Mobile Business & Multilateral Security 1

Vorlesung Einführung in Web-bezogene Sprachen WS 2006 / Folie 801

Kritik von HTML. Multimedia-Technik XML. Syntax von XML-Dokumenten. Extensible Markup Language (XML) reine Strukturbeschreibung

XML-Übersicht. Von HTML zu XML

XML-Übersicht. Von HTML zu XML. Nutzen von XML. Geschichte von XML. Eigenschaften von XML. Nutzen von XML (extensible Markup Language)

GRUNDKURS INFORMATIK. Marcel Götze

XML. XML: Extensible Markup Language. Vorlesung und Übung Universität Paderborn Wintersemester 2016/2017 Dr. Peter Pfahler

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

Programmieren I. Formale Sprachen. Institut für Angewandte Informatik

XML. Steffen Staab ISWeb Informationssysteme & Semantic Web

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Formale Sprachen Grundlagen und Anwendungen. Dr. Wolfgang Süß

Inhaltsverzeichnis. Vorwort... 15

3.1 Sinn und Zweck von Namensräumen

ASN.1 <-> XML TRANSLATION

Informationsmodellierung in XML und SGML

Dokumente und Auszeichnungssprachen

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis

V by WBR1/BFH-TI 2011 by MOU2/BFH-TI

Transkript:

Seminar: XML in der Bioinformatik WS 2002/03

Überblick Entwicklung von XML Regeln und Eigenschaften von XML Document Type Definition (DTD) Vor- und Nachteile von XML XML in der Bioinformatik Zusammenfassung 1

Motivation Praxis: WWW dient als Oberfläche für viele Informationssysteme (Datenbanken, Warenkataloge, Mail-Archive) reiche innere Struktur von Dokumenten geht jedoch durch Darstellung mit HTML verloren Nutzung der Daten ist nicht mehr möglich, höchstens noch Cut & Paste des Textes Dies verhindert die Verwendung des Web als Plattform für den Informationsaustausch im großen Rahmen. 2

Allgemeines Name: Extensible Markup Language (Erweiterbare Auszeichnungssprache) Universalkonzept zur Datenspeicherung Aufteilung von Daten in Inhalt, Struktur und Layout Entwicklung des W3C (World Wide Web Consortium) 3

XML und SGML Teilmenge von SGML (Standard Generalized Markup Language), eine Sprache zur Dokumentenrepräsentation, die Struktur von Dokumenten beschreibt (ISO-8879) XML ist weniger umfangreich, aber ähnlich leistungsfähig abschreckende SGML-Syntax wurde vereinfacht, komplexe und selten verwendete Eigenschaften von SGML entfernt zum Vergleich: XML auf 33 Seiten formal definiert, SGML auf mehr als 500 4

Entwicklung von XML 1994 Tim Berners Lee gründet am MIT ein Entwickler-Forum unter Leitung von Jon Bosak, um Definitionssprache für Auszeichnungssprachen zu entwickeln. Zunächst gab es Konzepte, die SGML außer Acht ließen, später wurde XML selbst in SGML definiert 1996 auf der SGML 96 Conference (Boston) wird ein Erstentwurf für XML vorgestellt 1998 erste sog. Empfehlung (Recommendation) des W3C für XML; danach Bemühungen, XML zu etablieren und wichtige, bestehende Auszeichnungssprachen (z. B. HTML) in XML zu definieren 5

Bekannte XML-Anwendungen XHTML: Neudefinition von HTML (ursprünglich in SGML definiert) <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <html><head> <title>einfache (X)HTML-Seite</title> </head><body> <h1>überschrift</h1> <img alt="bild" src="bild.png" /> <hr /> </body></html> 6

Bekannte XML-Anwendungen MathML: Mathematische Formelsprache (1998: MathML 1.0, 2001: MathML 2.0) <msup> <mfenced> <mi>a</mi> <mo>+</mo> <mi>b</mi> </mfenced> <mn>2</mn> </msup> entspricht der Formel: (a + b) 2 7

Bekannte XML-Anwendungen CML: Chemical Markup Language BSML: Bioinformatic Sequence Markup Language Speicherung von Sequenzdaten (DNA, RNA, Proteine), Struktur und Informationsgehalt ähnlich zu EMBL, GenBank oder DDBJ BioML: Biopolymer Markup Language 8

Regeln und Eigenschaften: Allgemeines XML-Dokument besteht immer aus einer Instanz und u. U. einer DTD (Document Type Definition) DTD: eine Definition, in der Tags und ihre erlaubte Schachtelung vereinbart werden Instanz: eine XML-Datei, die sich an die vereinbarten Regeln hält 9

Regeln und Eigenschaften: Allgemeines XML-Datei beginnt mit einer processing instruction, der XML- Deklaration (zur Unterscheidung von XML- und SGML-Instanzen) zur Verwendung einer DTD benötigt man eine document type declaration <?xml version="1.0"?> <!DOCTYPE dtdname SYSTEM "dtdname.dtd"> 10

Regeln und Eigenschaften: Tags Tags werden als benannte Klammern verwendet, um den Inhalt in Elemente zu gliedern <name>hans Müller</name> Starttag (<name>) kennzeichnet den Beginn, ein Endtag (</name>) das Ende eines Elements. 11

Regeln und Eigenschaften: Tags jedes öffnende Tag muss auch wieder mit einem Endtag geschlossen werden: <tag>inhalt</tag> Alternative Syntax für Tags ohne Inhalt: <tag/> oder <tag /> Elementnamen dürfen nicht mit der Zeichenfolge xml und nicht mit Ziffern beginnen; sie dürfen keine =-Zeichen und keine Leerzeichen enthalten 12

Regeln und Eigenschaften: Tags durch Schachtelung von Elementen ergibt sich eine Baumstruktur innere Knoten drücken die Struktur aus, Blätter den Inhalt und Elemente mit leerem Inhaltsmodell <person> <name>hans Müller</name> <email>hans@mueller.de</email> <birthday> <day>21</day><month>03</month><year>1970</year> </birthday> </person> 13

Regeln und Eigenschaften: Tags 14

Regeln und Eigenschaften: Kommentare Kommentare können beliebigen Text enthalten beginnen mit der Zeichenfolge <!-- und enden mit --> Kommentar dürfen nicht geschachtelt werden <!-- Kommentar --> <!-- mehrzeiliger Kommentar... --> 15

Regeln und Eigenschaften: Attribute Tags können mit Attributen versehen werden, durch die sich die Funktion des Tags in der Dokumentinstanz weiter spezialisieren lässt Attribute sind Name-/Wert-Paare Werte müssen in Anführungszeichen stehen ( oder ") 16

Regeln und Eigenschaften: Beispiel <?xml version="1.0"?> <!DOCTYPE contacts SYSTEM "contacts.dtd"> <contacts type="private" desc="persönliches Addressbuch"> <person id="42"> <name>hans Müller</name> <email>hans@mueller.de</email> <birthday> <day>21</day><month>03</month><year>1970</year> </birthday> </person> </contacts> 17

Regeln und Eigenschaften: Zeichensätze Groß- und Kleinschreibung werden unterschieden Internationalisierung: alle Zeichen des Unicode-Standards (offizielle Implementierung von ISO-10646) sind erlaubt dadurch ist XML z. B. auch für asiatische Sprachen geeignet 18

Regeln und Eigenschaften: Sonderzeichen XML-Sonderzeichen müssen zur Verwendung im normalen Text maskiert werden: < < > > & & " " &apos; 19

Regeln und Eigenschaften: Bezeichnungen well formed: Regeln für XML werden eingehalten: XML-Deklaration (processing instruction) mindestens ein Datenelement genau ein äußerstes Element valid: Dokument ist wohlgeformt und genügt zusätzlich den Regeln einer DTD Dokumente ohne DTD sind möglich 20

DTD: Allgemeines Document Type Definition formale Grammatik, die eine bestimmte XML-Sprache definiert definiert werden Namen der in Dokumentinstanzen erlaubten Attribute, Entitäten sowie Tags und ihre mögliche Schachtelung (Inhaltsmodell) nur Syntax, keine semantische Aussage besonderer Tag: Dokumenttyp; trägt den selben Namen wie die Sprache und dient als Startsymbol 21

DTD: Inhaltsmodell Bestandteile der Grammatik: andere Tags ( Baumstruktur) #PCDATA (parseable character data, d. h. die gültigen Zeichen des Alphabets) EMPTY: leeres Inhaltsmodell ANY: beliebiges Inhaltsmodell Verknüpfung dieser Elemente durch Operatoren 22

DTD: Inhaltsmodell-Operatoren, notwendig Elemente in fester Reihenfolge alternative Elemente? optionale Elemente + 1... n Wiederholungen * 0... n Wiederholungen () Klammerung von Ausdrücken 23

DTD: Einfaches Beispiel <!ELEMENT contacts (person*)> <!ELEMENT person (name, email*, birthday?)> <!ELEMENT name (#PCDATA)> <!ELEMENT email (#PCDATA)> <!ELEMENT birthday (year, month, day)> <!ELEMENT year (#PCDATA)> <!ELEMENT month (#PCDATA)> <!ELEMENT day (#PCDATA)> 24

DTD: Attribute für jedes Element lassen sich erlaubte Attribute angeben jedem Attribut ist ein Typ zugeordnet: CDATA, ID, IDREF/IDREFS, Liste von Werten Attribute sind optional, obligatorisch oder konstant: #IMPLIED, #REQUIRED, #FIXED Wert, Standardwert 25

DTD: Beispiel mit Attributen <!ELEMENT contacts (person*)> <!ATTLIST contacts type (private work) #IMPLIED desc CDATA> <!ELEMENT person (name, email*, birthday?)> <!ATTLIST person id ID #REQUIRED> <!ELEMENT name <!ELEMENT email <!ELEMENT birthday <!ELEMENT year <!ELEMENT month <!ELEMENT day (#PCDATA)> (#PCDATA)> (year, month, day)> (#PCDATA)> (#PCDATA)> (#PCDATA)> 26

DTD: Entitäten mit Entitäten (entities) lassen sich Kürzel definieren, die später in der DTD oder der XML-Instanz verwendet werden können Entitäten als Textbausteine: Makros zur Verwendung im XML- Dokument mit &entityname; (z. B. Umlaute in XHTML) parameter entities: Makros zur Verwendung in der DTD 27

DTD: Beispiel für Entitäten <!ENTITY xml "Extensible Markup Language"> <!ENTITY auml "ä"> <!ENTITY % bool "(true false)"> <!ELEMENT person (name, email*, birthday?)> <!ATTLIST person id ID #REQUIRED premiumcustomer %bool; "false" > <!ELEMENT birthday (year, month, day)> <!ATTLIST birthday sendgreeting %bool; #IMPLIED > 28

Vorteile Standardisierung: wichtiger Schritt durch Standardisierung von XML selbst bisherige Datenformate in der Bioinformatik sind proprietär Offenheit: es entstehen leicht durchschaubare Auszeichnungssprachen, die von vielen genutzt werden können DTD definiert Syntax 29

Vorteile Einfachheit: schnelle Validierung durch einfache aber strenge Syntax einfache Transformation in anderes Zielformat (XSL-FO, XSLT) einfache Änderungen durch lesbares Textformat (content scalability) Standardisierte Verarbeitungsmodelle: SAX-Parser: ereignis-basierter Parser DOM-Parser: Operationen auf dem XML-Baum 30

Vorteile Internet-Orientierung: reichhalte Fähigkeiten zur Verlinkung von Daten sind möglich (Entities, XLL) direkte Einbettung von Daten an anderen Adressen 31

Nachteile Daten-Overhead: durch textbasiertes Format größerer Speicherbedarf (25% bis 70%) höhere Übertragungsmenge Fehlende Skalierbarkeit: schlechte Performance bei Datenhaltung mögliche Abhilfe durch Kombination mit Datenbanken (XML als Input/Output) 32

Nachteile Limitierte Modellierungsfähigkeiten: beschränkte Datentypisierung: fast nur Strings, keine Zahlen, Tabellen, Matrizen,... kein Mechanismus zur Beschreibung von Beziehungen zwischen Elementen (Nachbildung durch ID und IDREF möglich) mögliche Abhilfe mit XML Schema 33

XML in der Bioinformatik Daten benötigen eine komplexe Modellierung und es gibt viele verschiedene Datentypen es entstehen häufig neue Arten von Daten Daten werden häufig aktualisiert und von Wissenschaftlern stark übers Internet verbreitet 34

XML in der Bioinformatik verschiedene Typen von Benutzern (Biologen, Programmierer,... ) brauchen Zugriff auf die Daten momentane Situation: bestehende Datenbanken mit uneinheitlichem Format; Daten sind mehrfach vorhanden und nur schwach oder gar nicht miteinander verknüpft Vorteile von XML decken diese Aspekte ab, die meisten genannten Nachteile lassen sich umgehen 35

Vergleich von Lösungen XML-Format Feld/Wert (OO)DBMS Ausdruckskraft ** * **** Modellierungsfähigkeit ** * **** Selbstbeschreibbarkeit ja nein ja Abfragesprache ja nein ja Flexibilität **** * **** Einfachheit **** **** ** Skalierbarkeit ** * **** Kompatibilität **** * *** (OO)DBMS zur Datenverwaltung, XML als Schnittstelle 36

Zusammenfassung benötigt werden einheitliche XML-Formate für biologische Zwecke XML als Schnittstelle geeignet (z. B. standardisierter Austausch zwischen Programmen) zur Datenverwaltung zu langsam und wenig skalierbar Problem der Modellierungsfähigkeit bleibt bestehen, lässt sich aber möglicherweise durch XML Schema lösen 37