Εισαγωγή στην XML Μ. ΓΑΒΑΛΑΣ.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Τεχνολογίες Web Απαραίτητες γνώσεις για την υλοποίηση της άσκησης.
Advertisements

Δημιουργία Ιστοσελίδων σε HTML και FrontPage Πρόγραμμα Αναμόρφωσης Προπτυχιακών Σπουδών Κεντρικό Γραφείο Υποστήριξης Εκπαιδευτικού Έργου Αλέξανδρος Λεκατσάς.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ PHP. Τι θα μάθουμε;  Να καταλάβουμε τι είναι η PHP και πώς δουλεύουν τα PHP scripts  Τι χρειάζεται για να ξεκινήσουμε με την PHP  Να.
Τεχνικές Προγραμματισμού με την JavaScript Στυλιάδης Κων/νος Φλώρινα, Οκτώβριος 2004.
Εισαγωγή στην XML Μάρτιος 2005 Γ. Σ. Σακελλάρης Τ. Α. Κοντογιώργης
ΚΕΙΜΕΝΟ  Ο πρώτος τρόπος απεικόνισης πληροφορίας (και βασικός ως σήμερα).  Αδυναμία πρώτων υπολογιστών να χειριστούν άλλη μορφή πληροφορίας.  Πρόβλημα.
Νέα σειρά εκδόσεων 4.5. Νέα χαρακτηριστικά  Επιφάνεια εργασίας  On Line ενημέρωση Λογιστικής  Διαχείριση σχετικών εγγράφων  Data Center  Γεωγραφικές.
Να περιγράψετε τους 2 τρόπους οργάνωσης Ιστοσελίδων
Δ.Π.Θ. xml - 1 ΝΕΕΣ ΓΛΩΣΣΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ XML Η HTML αποτέλεσε την πρώτη και κύρια γλώσσα δημιουργίας ιστοσελίδων από την έναρξη λειτουργίας.
5η Συνάντηση Εκπαιδευτικών Πληροφορικής στη Δυτική Μακεδονία Πτολεμαΐδα, 29 Σεπτ 2005 Δημιουργία Δυναμικών Ιστοσελίδων με PHP και Dreamweaver MX Στυλιάδης.
Η γλώσσα μορφοποίησης υπερκειμένου HTML
Δ.Π.Θ. Επεξεργασία Κειμένου - 1 Επεξεργασία Κειμένου Ένα πρόγραμμα σε γλώσσα HTML είναι ανεξάρτητο της μηχανής όπου θα εκτελεστεί. Δηλαδή αγνοούνται τα.
Η γλώσσα XHTML Επιμέλεια: Νικάκη Θεοδώρα Μάθημα: Εισαγωγικά θέματα WWW 2007.
The World Wide Web Κεφάλαιο 6.
Βάσεις Δεδομένων 1 T.Manavis– N.Kyritsis.
Ακαδημαϊκό έτος Εργαστήριο Προγραμματισμού και Επεξεργασίας Πληροφοριών Εισαγωγή στη γλώσσα MathML Αλεξ Καράκος.
ΠΡΟΤΥΠΑ ΜΑΘΗΣΙΑΚΩΝ ΤΕΧΝΟΛΟΓΙΩΝ ΠΑΡΟΥΣΙΑΣΗ ΚΑΙ ΔΙΔΑΚΤΙΚΑ ΟΦΕΛΗ Ενότητα 3.7 – Β’ Μέρος.
Εισαγωγή στην XML Από την Καραδημητρίου Κρυσταλλένια Καθηγήτρια Πληροφορικής στο Γυμνάσιο και Ενιαίο Λύκειο Φιλώτα Φλώρινας Οκτώβριος 2004.
Κείμενο – ASCII – Unicode - HTML Κωδικοποίηση ASCII / Unicode HTML
Resource Description Framework
AJAX Asynchronous JavaScript and XML Θ. Βαρβαρίγου Καθηγ. ΕΜΠ Τηλ
Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων.
Στο λειτουργικό σύστημα Windows, υπάρχουν εικονίδια (icons) τα οποία αναπαριστούν τις διάφορες οντότητες (φυλαγμένες πληροφορίες, προγράμματα που κάνουν.
ΕΣΔ 232: Οργάνωση δεδομένων στην Κοινωνία της Πληροφορίας © 2013 Nicolas Tsapatsoulis Φόρμες Δημιουργία Περιεχομένου Ι.
1 Υπηρεσίες Πληροφόρησης σε Ψηφιακό Περιβάλλον Ιόνιο Πανεπιστήμιο Τμήμα Αρχειονομίας & Βιβλιοθηκονομίας, Κέρκυρα Ηλεκτρονική Δημοσίευση Θέμα: Τεχνολογίες.
Ιόνιο Πανεπιστήμιο ΠΜΣ Επιστήμη της Πληροφορίας Διατύπωση Ερωτημάτων σε XML τεκμήρια με τη γλώσσα XQuery Εργασία για το μάθημα Ηλεκτρονική Δημοσίευση Υπεύθυνος.
ΤΗΣ ΦΟΙΤΗΤΡΙΑΣ : ΤΣΑΛΤΑ ΑΝΑΣΤΑΣΙΑ Α.Μ. : 30920
Ιστοσελίδες -- Web-site. Εισαγωγή Στατικές ιστοσελίδες Δυναμικές ή Διαδραστικές ιστοσελίδες:  Ο τρόπος παρουσίασης και τα περιεχόμενά της ιστοσελίδας.
E X a M p L e Αξιοποιώντας την τεχνολογία XML στη διαχείριση της πληροφορίας Λίνα Μπουντούρη Εθνικό Κέντρο Τεκμηρίωσης 13ο Πανελλήνιο Συνέδριο Ακαδημαϊκών.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
XERTE TUTORIAL - ΣΗΜΕΙΩΣΕΙΣ ΕΡΓΑΣΤΗΡΙΟΥ ΘΜΕΛ ΣΤ. ΔΗΜΗΤΡΙΑΔΗΣ Xerte Interaction – Διάδραση Θεωρίες Μάθησης & Εκπαιδευτικό Λογισμικό Σημειώσεις Εργαστηρίου.
Η Γλώσσα Σήμανσης ΥπερΚειμένου HTML
Σημασιολογική Ολοκλήρωση Ολοκλήρωση Πληροφορίας Το πρόβλημα της ολοκλήρωσης πληροφορίας (information integration) προκύπτει από την ύπαρξη ετερογενών.
Γραφικό Περιβάλλον Συγγραφής Κανόνων στο Σημασιολογικό Διαδίκτυο Διπλωματική Εργασία της Βασιλικής Ζερβάκη Επιβλέπων Καθηγητής: Νικόλαος Βασιλειάδης Θεσσαλονίκη.
WebSevices - XML - SOAP - UDDI - WSDL Θ. Βαρβαρίγου Καθηγ. ΕΜΠ Τηλ
EXtensible Markup Language (XML) και XML Schema Γιώργος Θάνος Παρασκευή 31 Οκτωβρίου 2008.
1Κεφάλαιο 4 Κανόνες Σύνταξης HTML Όλες οι ετικέτες εσωκλείονται μεταξύ των χαρακτήρων “ “. Κάθε τι που βρίσκεται μεταξύ των χαρακτήρων “ ”, αποτελεί σχόλιο.
XML Parsing Γιώργος Θάνος Παρασκευή 14 Νοεμβρίου 2008.
Βάσεις Δεδομένων ΙΙ Ευαγγελία Πιτουρά 1 Βάσεις Διαδικτύου.
Βασικά στοιχεία της Java
Εφαρμογές Πολυμέσων: Εισαγωγή στην HTML (1)
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
HTML 3. Στόχος της ώρας Απαιτήσεις XHTML 1.0 Strict Ιδιότητα title HTML Entities Ετικέτα label Favicon «Κακές» ιδιότητες Παραδείγματα.
1 Παγκόσμιος Ιστός. 2 World Wide Web- Ο Παγκόσμιος Ιστός  Ανακαλύφτηκε από τον Tim-Berners Lee, ερευνητή του CERN (Ευρωπαϊκό εργαστήριο Φυσικής Υψηλής.
ΠΡΙΝ ΞΕΚΙΝΗΣΟΥΜΕ Πράγματα που αξιολογείτε θετικά σε σχέση με το μάθημα του προηγούμενου τετραμήνου Πράγματα που θα μπορούσαν να βελτιωθούν.
Προγραμματιστικά Εργαλεία για το Διαδίκτυο Κατασκευή Ιστοσελίδων 3 ο Κεφάλαιο Βελώνης Γεώργιος – Καθηγητής Πληροφορικής ΠΕ20.
Γλώσσες Προγραμματισμού Μεταγλωττιστές Πίνακας Συμβόλων Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου.
Προγραμματισμός Εφαρμογών Διαδικτύου Ενότητα 8: Εισαγωγή στην XML Φώτης Κόκκορας, Καθηγητής Εφαρμογών, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας.
HTML/CSS: Εισαγωγή Θερινό Σχολείο, 14 – 20 Ιουλίου 2014 Γιώργος Φουρτούνης Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας.
Βάσεις Δεδομένων και Παγκόσμιος Ιστός Τεχνολογίες XML.
Αρχές Πληροφορικής Ενότητα # 13: Επεξεργασία κειμένου – LibreOffice #3
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Προγραμματισμός Εφαρμογών Διαδικτύου
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
Θερινό Σχολείο, 14 – 20 Ιουλίου 2014
Java DataBase Connectivity
ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ
Κλάσεις και αντικείμενα
Εργασία στο μάθημα «Προγραμματισμός ΙΙ»
Αρχές Πληροφορικής Ενότητα # 11: Επεξεργασία κειμένου - LibreOffice
Prolog Επεξεργασία και Αναπαράσταση Γνώσης
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Κεφαλαιο 11 ΕΙΣΑΓΩΓΗ ΣΤΗΝ HTML.
Νέα σειρά εκδόσεων 4.5.
HTML.
Εφαρμογές Πληροφορικής Κεφάλαιο 11
Εισαγωγή στην HTML Κεφάλαιο 11.
Javascript – Χειρισμός της σελίδας
Σχεσιακεσ βασεισ δεδομενων
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Μεταγράφημα παρουσίασης:

Εισαγωγή στην XML Μ. ΓΑΒΑΛΑΣ

Περιεχόμενα HTML και XML Σε τι χρησιμεύει η XML Πως γράφουμε XML Έγκυρη XML: DTDs και XML-Schema Παραδείγματα σχημάτων Επεξεργασία της XML  Μοντέλο DOM 13/4/2017 Εισαγωγή στην XML

HTML Hyper Text Markup Language Ένα HTML αρχείο είναι ένα αρχείο κειμένου που περιέχει ετικέτες-markup tags Οι ετικέτες περιγράφουν στο πρόγραμμα πλοήγησης πώς θα εμφανίζει τη σελίδα Τα HTML αρχεία έχουν κατάληξη htm ή html. Μπορούν να δημιουργηθούν σε έναν απλό επεξεργαστή κειμένου. 13/4/2017 Εισαγωγή στην XML

Παράδειγμα <html> <head> <title>Παράδειγμα</title> </head> <body> Το πρώτο μου αρχείο. <b>Κεφάλαιο 1ο</b> </body> </html> 13/4/2017 Εισαγωγή στην XML

Ετικέτες HTML Χρησιμοποιούνται για να δηλώσουν τα στοιχεία (elements) της HTML. Βρίσκονται μεταξύ των < και >. Συνήθως βρίσκονται σε ζεύγη (π.χ. <b>και</b>), όπου η πρώτη ονομάζεται ετικέτα αρχής και η δεύτερη ετικέτα τέλους. Το κείμενο που βρίσκεται ανάμεσα στις ετικέτες αποτελεί το περιεχόμενο του στοιχείου. Δεν παίζουν ρόλο τα κεφαλαία στα ονόματα των ετικετών (δεν είναι case sensitive). Μπορεί να περιέχουν χαρακτηριστικά (attributes) που προσδιορίζουν καλύτερα τα στοιχεία. π.χ. <body bgcolor="red">. 13/4/2017 Εισαγωγή στην XML

Τι είναι η XML EXtensible Markup Language. Είναι δηλωτική γλώσσα όπως η HTML. Είναι επεκτάσιμη. Οι ετικέτες της XML δεν είναι προκαθορισμένες. Καθορίζονται από το χρήστη. Η XML είναι αυτο-περιγραφική. Η XML σχεδιάστηκε για να περιγράφει τα δεδομένα. Χρησιμοποιεί αρχεία (DTDs και XML-Schema) για να περιγράψει τη δομή των δεδομένων. Σχεδιάστηκε για να συμπληρώσει την HTML και όχι να την αντικαταστήσει. 13/4/2017 Εισαγωγή στην XML

Η χρήση της XML Η XML χρησιμοποιείται για να αποθηκεύσουμε και να οργανώσουμε τα δεδομένα όχι για την παρουσίαση των δεδομένων (HTML). Η XML χρησιμοποιείται για ανταλλαγή δεδομένων. H πληροφορία στις ΒΔ έχει συγκεκριμένη δομή. Στην HTML σελίδα, χάνει τη δομή της. Σε ένα XML έγγραφο, διατηρείται μια δομή η οποία μπορεί να ξανα-αποθηκευθεί σε ΒΔ. Η XML χρησιμοποιείται για αποθήκευση δεδομένων. Τα XML αρχεία μπορούν να αντικαταστήσουν τις ΒΔ. Αρκεί να υπάρχουν τρόποι να κάνουμε επερωτήσεις και ενημερώσεις. 13/4/2017 Εισαγωγή στην XML

Παράδειγμα <?xml version="1.0"?> <note> <to>John</to> <from>Bill</from> <heading>Greetings</heading> <body>Hi John!</body> </note> Η πρώτη γραμμή δηλώνει την έκδοση της XML για το συγκεκριμένο έγγραφο. Μπορεί να περιέχει πληροφορίες για την κωδικοποίηση (encoding) του εγγράφου. Η δεύτερη γραμμή ορίζει το πρώτο στοιχείο του εγγράφου (τη ρίζα του) που είναι μοναδικό. Οι υπόλοιπες 4 γραμμές ορίζουν τα στοιχεία που βρίσκονται κάτω από τη ρίζα (to, from, heading, and body). Η τελευταία γραμμή κλείνει το στοιχείο στη ρίζα. (</...> note to heading from body 13/4/2017 Εισαγωγή στην XML

Σύνταξη της XML Όλα τα στοιχεία (elements) της XML πρέπει να έχουν ετικέτα κλεισίματος Στην HTML ορισμένα στοιχεία δεν έχουν τέτοια ετικέτα: <p> Παράγραφος 1 <p> Παράγραφος 2 Στην XML αυτό θα γίνει: <p> Παράγραφος 1</p> <p> Παράγραφος 2</p> Οι ετικέτες της XML είναι case sensitive Η ετικέτα <Message> είναι διαφορετική από την </message>  <Message>Λάθος</message> <message>Σωστό</message>  13/4/2017 Εισαγωγή στην XML

Σύνταξη της XML Τα elements στην XML πρέπει να είναι σωστά φωλιασμένα. Στην HTML η παρακάτω δήλωση είναι σωστή: <b><i>This text is bold and italic</b></i> Στην XML η σωστή σύνταξη είναι: <b><i>This text is bold and italic</i></b> Όλα τα XML έγγραφα πρέπει να έχουν μία ρίζα. Η ρίζα πρέπει να είναι μοναδική. Όλα τα υπόλοιπα στοιχεία θα βρίσκονται φωλιασμένα σ’ αυτήν. Οι τιμές των Attributes πρέπει να βρίσκονται σε εισαγωγικά. Τα elements μπορούν να έχουν attributes όπως στην HTML. <note date=12/11/99> Λάθος</note> <note date="12/11/99">Σωστό</note> 13/4/2017 Εισαγωγή στην XML

XML Attributes Τα attributes χρησιμοποιούνται για να περιγράψουν καλύτερα τα elements της XML. Περιέχονται πάντα στην αρχική ετικέτα του element σε ζευγάρια της μορφής: όνομα="τιμή”. Στην HTML: <IMG SRC="computer.gif"> <a href="demo.asp"> Στην XML: <file type="gif"> <person id="3344"> Συνήθως η πληροφορία που παρέχεται στα attributes εξυπηρετεί τη δομή της XML αλλά και τα προγράμματα που επεξεργάζονται τη δομή των XML αρχείων και όχι τους αναγνώστες. (π.χ. το id στο στοιχείο person) 13/4/2017 Εισαγωγή στην XML

Elements ή Attributes; Τα attributes έχουν περισσότερους περιορισμούς όσο αφορά στον τύπο που πρέπει να έχουν τα δεδομένα που περιέχουν, για το λόγο αυτό τα elements χρησιμοποιούνται συχνότερα Πληροφορία ως Attribute: <person sex="female"> <firstname>Anna</firstname> <lastname>Smith</lastname> </person> Και ως Element: <person> <sex>female</sex> <firstname>Anna</firstname> <lastname>Smith</lastname> 13/4/2017 Εισαγωγή στην XML

Εμφάνιση XML στον browser Ορθή ΧΜL (note.xml) <?xml version="1.0" encoding="ISO8859-1" ?> <note> <to>John</to> <from>Bill</from> <heading>Greetings</heading> <body>Hi John!</body> </note> Λάθος XML (note_error.xml) <?xml version="1.0" encoding="ISO8859-1" ?> <note> <to>John</To> <from>Bill</from> <heading>Greetings</heading> <body>Hi John!</body> </note> 13/4/2017 Εισαγωγή στην XML

Μελέτη περίπτωσης Κάθε υπάλληλος θα είναι ένα employee element. <employee id="..."> <name>…</name> <surname>…</surname> <salary>...</salary> <age>…</age> <married>…</married> </employee> Φτιάξτε ένα xml αρχείο για έναν υπάλληλο. 13/4/2017 Εισαγωγή στην XML

Παραδείγματα Κατάλογος CDs – Κατάλογος φυτών (cd_catalog.xml) <?xml version="1.0" encoding="ISO8859-1" ?> <CATALOG> <CD> <TITLE>Empire Burlesque</TITLE> <ARTIST>Bob Dylan</ARTIST> <COUNTRY>USA</COUNTRY> <COMPANY>Columbia</COMPANY> <PRICE>10.90</PRICE> <YEAR>1985</YEAR> </CD> <TITLE>Hide your heart</TITLE> <ARTIST>Bonnie Tylor</ARTIST> <COUNTRY>UK</COUNTRY> <COMPANY>CBS Records</COMPANY> <PRICE>9.90</PRICE> <YEAR>1988</YEAR> ... (plant_catalog.xml) <?xml version="1.0" encoding="ISO8859-1" ?> <CATALOG> <PLANT> <COMMON>Bloodroot</COMMON> <BOTANICAL>Sanguinaria canadensis</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$2.44</PRICE> <AVAILABILITY>031599</AVAILABILITY> </PLANT> <COMMON>Columbine</COMMON> <BOTANICAL>Aquilegia canadensis</BOTANICAL> <ZONE>3</ZONE> <PRICE>$9.37</PRICE> <AVAILABILITY>030699</AVAILABILITY> ... 13/4/2017 Εισαγωγή στην XML

Μελέτη περίπτωσης Φτιάξτε ένα xml αρχείο με 2 υπαλλήλους Κάθε αρχείο XML πρέπει να έχει υποχρεωτικά ένα μόνο κεντρικό (root) element. Βάλτε τα δύο employee μέσα σε ένα element organization. 13/4/2017 Εισαγωγή στην XML

Έγκυρη XML DTDs – XML Schema

DTD - Document Type Definition Καθορίζει τη δομή των XML εγγράφων. Είτε περιέχεται στο XML έγγραφο, είτε υπάρχει ως αρχείο (.dtd) και καλείται από το XML. Ομάδες ανθρώπων συμφωνούν σε ένα DTD για να ανταλλάσσουν δεδομένα. 13/4/2017 Εισαγωγή στην XML

Εξωτερικό DTD Το DTD αρχείο XML αρχείο με εξωτερικό DTD <?xml version="1.0"?> <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> XML αρχείο με εξωτερικό DTD <?xml version="1.0"?> <!DOCTYPE note SYSTEM "note.dtd"> <note> <to>John</to> <from>Bill</from> <heading>Greetingsr</heading> <body>Hi John!</body> </note> 13/4/2017 Εισαγωγή στην XML

Εσωτερικό DTD !ELEMENT note !ELEMENT to !ELEMENT from XML αρχείο με εσωτ. DTD: <?xml version="1.0"?> <!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>]> <note> <to>John</to> <from>Bill</from> <heading>Greetingsr</heading> <body>Hi John!</body> </note> !ELEMENT note Το στοιχείο "note" περιέχει 4 στοιχεία: "to,from,heading,body". !ELEMENT to Το στοιχείο "to" είναι τύπου "CDATA". Περιέχει δηλαδή κείμενο !ELEMENT from Το στοιχείο "from" είναι επίσης τύπου "CDATA" Το ίδιο τα heading και body. 13/4/2017 Εισαγωγή στην XML

Δομικά στοιχεία του DTD Στοιχεία - Elements. Παραδείγματα HTML elements: "body", "table". Παραδείγματα XML elements: "note", "message". Μπορούν να περιέχουν κείμενο, άλλα elements ή να είναι κενά ( "hr", "br", “img”). Χαρακτηριστικά - Attributes. Παρέχουν επιπλέον πληροφορία για τα στοιχεία. Βρίσκονται στην αρχική ετικέτα των στοιχείων. Έρχονται σε ζεύγη όνομα/τιμή. Παράδειγμα:<img src="computer.gif" /> 13/4/2017 Εισαγωγή στην XML

Δομικά στοιχεία του DTD Δεδομένα - PCDATA PCDATA σημαίνει means parsed character data. Δεδομένα δηλαδή που έχουν εσωτερική δομή και το πρόγραμμα επεξεργασίας μπορεί να τα χρησιμοποιήσει. Αν το κείμενο (PCDATA) έχει ετικέτες αυτές θα διαβαστούν κανονικά.  Κείμενο - CDATA CDATA σημαίνει character data. Δεδομένα που δεν έχουν εσωτερική δομή (απλό κείμενο) Αν το κείμενο (CDATA) έχει ετικέτες, αυτές θα αγνοηθούν από το πρόγραμμα επεξεργασίας που θα τις θεωρήσει κείμενο. Οντότητες - Entities Είναι μεταβλητές που αντιπροσωπεύουν κάποιους ειδικούς χαρακτήρες. < (<), > (>), & (&), " ("), &apos; (‘) 13/4/2017 Εισαγωγή στην XML

DTD - Elements Πώς δηλώνουμε ένα element Κενά elements <!ELEMENT element-name (element-content)> Κενά elements <!ELEMENT element-name (EMPTY)> Elements με δεδομένα. Δηλώνουμε τον τύπο δεδομένων. <!ELEMENT element-name (#CDATA)> <!ELEMENT element-name (#PCDATA)> <!ELEMENT element-name (ANY)> Αν το #PCDATA περιέχει elements πρέπει και αυτά να δηλωθούν. 13/4/2017 Εισαγωγή στην XML

DTD - Elements (2) Elements που περιέχουν άλλα elements. Δηλώνουμε το όνομα των παιδιών μέσα σε παρένθεση: <!ELEMENT element-name (child-element-name)> <!ELEMENT element-name (child-element-name,child-element- name,.....)> Και ακολουθεί η δήλωση των στοιχείων παιδιών. Παράδειγμα: <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#CDATA)> <!ELEMENT from (#CDATA)> <!ELEMENT heading (#CDATA)> <!ELEMENT body (#CDATA)> Τα στοιχεία παιδιά πρέπει να εμφανίζονται στο XML έγγραφο με την ίδια σειρά που εμφανίζονται στην παρένθεση. 13/4/2017 Εισαγωγή στην XML

Το πλήθος των sub-elements <!ELEMENT element-name (child-name)> Παράδειγμα: <!ELEMENT note (message)> Ένα element εμφανίζεται τουλάχιστον μία φορά (+) <!ELEMENT element-name (child-name+)> Παράδειγμα: <!ELEMENT note (message+)> Ένα element εμφανίζεται καμία ή περισσότερες φορές (*) <!ELEMENT element-name (child-name*)> Παράδειγμα: <!ELEMENT note (message*)> Ένα element εμφανίζεται καμία ή μία φορά (?) <!ELEMENT element-name (child-name?)> Παράδειγμα: <!ELEMENT note (message?)> Γενικό παράδειγμα: <!ELEMENT note (to+,from,header,message*,#PCDATA)> 13/4/2017 Εισαγωγή στην XML

DTD - Attributes Στο DTD, τα attributes δηλώνονται σε ένα ATTLIST. Που καθορίζει το element που θα περιέχει τo συγκεκριμένο attribute, το όνομα του attribute, τον τύπο του και μια σταθερή τιμή <!ATTLIST element-name attribute-name attribute-type default-value> Ο τύπος του χαρακτηριστικού (attribute-type) μπορεί να είναι: 13/4/2017 Εισαγωγή στην XML

DTD – Attributes(2) Η σταθερή τιμή (default-value) μπορεί να είναι: 13/4/2017 Εισαγωγή στην XML

DTD – Attributes - Παράδειγμα <!ATTLIST element-name attribute-name CDATA "default- value"> DTD: <!ELEMENT square EMPTY> <!ATTLIST square width CDATA "0"> XML: <square width="100"></square> <!ATTLIST element-name attribute-name attribute-type #IMPLIED> DTD: <!ATTLIST contact CDATA #IMPLIED> XML: <contact="555-667788"> <!ATTLIST element-name attribute_name attribute-type #REQUIRED> DTD: <!ATTLIST personnumber CDATA #REQUIRED> XML: <personnumber="5677"> 13/4/2017 Εισαγωγή στην XML

Μελέτη περίπτωσης Φτιάξτε το αρχείο org.dtd που θα περιγράφει τη δομή των XML αρχείων σας Ένας οργανισμός έχει πολλούς υπαλλήλους 13/4/2017 Εισαγωγή στην XML

XML Schema Το XML Schema χρησιμοποιείται αντί για το DTD. Υποστηρίζει πολλούς τύπους δεδομένων Είναι επεκτάσιμο Τα αρχεία έχουν κατάληξη .xsd Υπάρχει αναφορά από το root element του XML στο xsd <order xmlns:xsi="http://www.w3.org/2001/XMLSchema- instance" xsi:noNamespaceSchemaLocation="order.xsd"> 13/4/2017 Εισαγωγή στην XML

Τα στοιχεία της XML-Schema ComplexType Καθορίζει τον τύπο και το περιεχόμενο ενός στοιχείου, καθώς και τα παιδιά που μπορεί να περιέχει SimpleType Καθορίζει τον τύπο και το περιεχόμενο ενός χαρακτηριστικού. Attribute Δηλώνει ότι ένα στοιχείο μπορεί να περιέχει το συγκεκριμένο χαρακτηριστικό που δηλώθηκε προηγούμενα σε ένα SimpleType. Element Δηλώνει ότι ένα στοιχείο μπορεί να περιέχει το συγκεκριμένο υπο-στοιχείο που δηλώθηκε προηγούμενα σε ένα ComplexType. 13/4/2017 Εισαγωγή στην XML

Ερώτηση – order.xml Ποιο είναι το σχήμα του παρακάτω XML εγγράφου; <?xml version="1.0" encoding="UTF-8"?> <order xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="order.xsd"> <customer> <name>John Dim</name> <phone_number>9987451</phone_number> </customer> <item> <number>1325377</number> <description>book</description> <price>15000</price> </item> <date_of_purchase>2001-05-11</date_of_purchase> <date_of_delivery>2001-05-15</date_of_delivery> </order> 13/4/2017 Εισαγωγή στην XML

Απάντηση - order.xsd <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:element name="order"> <xs:complexType> <xs:sequence> <xs:element name="customer"> <xs:element name="name" type="xs:string"/> <xs:element name="phone_number" type="xs:int"/> </xs:sequence> </xs:complexType> </xs:element> 13/4/2017 Εισαγωγή στην XML

<xs:element name="item"> <xs:complexType> <xs:sequence> <xs:element name="number" type="xs:int"/> <xs:element name="description" type="xs:string"/> <xs:element name="price" type="xs:short"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="date_of_purchase" type="xs:date"/> <xs:element name="date_of_delivery" type="xs:date"/> </xs:schema> 13/4/2017 Εισαγωγή στην XML

DOM Το δέντρο της XML

To Document Object Model Είναι ένα προγραμματιστικό εργαλείο για την επεξεργασία HTML και XML εγγράφων Καθορίζει τους τρόπους πρόσβασης και επεξεργασίας ενός εγγράφου.  Με το DOM, μπορεί κανείς να δημιουργήσει ένα έγγραφο, να περιηγηθεί τη δομή του, να προσθέσει ή να διαγράψει στοιχεία και χαρακτηριστικά. Υποστηρίζεται από τη Microsoft και τον Internet Explorer. Έχει περισσότερες απαιτήσεις σε μνήμη από το SAX καθώς χρειάζεται να φορτώσει όλο το έγγραφο στη μνήμη για να το επεξεργαστεί. Στη συνέχεια η επεξεργασία είναι ευκολότερη καθώς μπορούμε να έχουμε εύκολη μετακίνηση στα επίπεδα της ιεραρχίας του DOM. 13/4/2017 Εισαγωγή στην XML

Οι κόμβοι (Node Interface) Ένα πρόγραμμα που ονομάζεται parser διαβάζει τα περιεχόμενα του αρχείου στη μνήμη. Η πληροφορία στη συνέχεια επεξεργάζεται με το (DOM). Το DOM δημιουργεί μια δενδρική δομή (όψη) για το αρχείο. Η ρίζα του δένδρου είναι το documentElement, και έχει ένα ή περισσότερα childNodes. Το Node Interface χρησιμοποιείται για να διαβάζουμε ή να γράφουμε τα elements του XML δέντρου. Η ιδιότητα childNodes του documentElement χρησιμοποιείται με μια δομή for/each που δημιουργεί μια λίστα με τους κόμβους. 13 τύποι κόμβων υποστηρίζονται από τον Microsoft XML parser. 13/4/2017 Εισαγωγή στην XML

Διαχείριση του DOM Ο XMLDOM parser της Microsoft υποστηρίζει: JavaScript, VBScript, Perl, VB, Java, C++ W3C XML 1.0 και XML DOM DTD και έλεγχο εγκυρότητας Δημιουργία XML εγγράφου: Με JavaScript στον IE 5.0: var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") Με VBScript: set xmlDoc = CreateObject("Microsoft.XMLDOM") Με VBScript και ASP: set xmlDoc = Server.CreateObject("Microsoft.XMLDOM") 13/4/2017 Εισαγωγή στην XML

Φόρτωμα αρχείου Από κείμενο: Από υπάρχον αρχείο: <script language="JavaScript"> var text="<note>" text=text+"<to>John</to> <from>Bill</from>" text=text+"<heading>Greetings</headi ng>" text=text+"<body>Hi John!</body>" text=text+"</note>" var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") xmlDoc.async="false" xmlDoc.loadXML(text) // ... Επεξεργασία </script> Από υπάρχον αρχείο: <script language="JavaScript"> var xmlDoc = new ActiveXObject ("Microsoft.XMLDOM") xmlDoc.async="false" xmlDoc.load("note.xml") // ...επεξεργασία </script> 13/4/2017 Εισαγωγή στην XML

Πρόσβαση στο DOM Παράδειγμα κώδικα JavaScript που διαβάζει τα δεδομένα από XML αρχείο και τα αναθέτει σε μεταβλητές ενός HTML αρχείου: var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") xmlDoc.async="false" xmlDoc.load("note.xml") nodes = xmlDoc.documentElement.childNodes to.innerText = nodes.item(0).text from.innerText = nodes.item(1).text header.innerText = nodes.item(2).text body.innerText = nodes.item(3).text 13/4/2017 Εισαγωγή στην XML

Πρόσβαση στο DOM(3) Παράδειγμα κώδικα JavaScript που καλεί τα elements με το όνομά τους. var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") xmlDoc.async="false" xmlDoc.load("note.xml") document.write (xmlDoc.getElementsByTagName("from").item(0).text) 13/4/2017 Εισαγωγή στην XML