ΣΗΜΑΣΙΟΛΟΓΙΚΟΣ ΙΣΤΟΣ - XML

Σχετικά έγγραφα
ΔΟΜΗΜΕΝΗ ΑΝΑΠΑΡΑΣΤΑΣΗ ΠΛΗΡΟΦΟΡΙΩΝ

Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών

ΑΝΑΠΑΡΑΣΤΑΣΗ ΓΝΩΣΗΣ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 5: XML. Καθ. Ιωάννης Γαροφαλάκης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head>

ΝΤUA. Τεχνολογία Πολυμέσων

SGML (Standard Generalized Markup Language) HTML (HyperText Markup Language) XML (extensible Markup Language)

ΣΗΜΑΣΙΟΛΟΓΙΚΟΣ ΙΣΤΟΣ - XML

Κείμενο ASCII Unicode - HTML. Κωδικοποίηση ASCII / Unicode HTML

Σημασιολογικός Ιστός (Semantic Web) - XML

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

Δομημένη Αναπαράσταση Πληροφοριών

Σημασιολογικός Ιστός (Semantic Web) - XML

Μαθηματικά Λογισμικά και Γλώσσες Αναπαράστασης Γνώσης

Περιεχόμενα. Γαβαλάς Δαμιανός Τρέχον status της HTML

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7

Γιώργος Χρ. Μακρής. Σύγχρονες Γλώσσες Σήμανσης του Διαδικτύου. Αναπαράσταση Μαθηματικών κειμένων στο διαδίκτυο. Η Γλώσσα MathML

ΝΤUA. Τεχνολογία Πολυμέσων

ΥΠΗΡΕΣΙΑ «TAXISNET» - ΗΛΕΚΤΡΟΝΙΚΗ ΥΠΟΒΟΛΗ ΤΩΝ ΦΟΡΟΛΟΓΙΚΩΝ ΔΗΛΩΣΕΩΝ ΓΙΑ ΤΟ ΤΜΗΜΑ ΕΣΩΤΕΡΙΚΩΝ ΠΡΟΣΟΔΩΝ ΚΑΙ ΤΗΝ ΥΠΗΡΕΣΙΑ ΦΟΡΟΥ ΠΡΟΣΤΙΘΕΜΕΝΗΣ ΑΞΙΑΣ ΤΟΥ

Σημασιολογικός Ιστός (Semantic Web) - XML

Βάσεις ιαδικτύου. Θέματα. Εισαγωγή στην XML. Ευρετήρια για την Ανάκτηση Κειμένων. Ο αλγόριθμος HITS. είναι η XML. Παράδειγμα XML

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΣΧΕΔΙΑΣΜΟΥ ΕΦΑΡΜΟΓΩΝ

BibConvert μετατροπές LOM

Η γλώσσα XHTML: διαφορές με HTML, μετατροπή

της πληροφορίας Λίνα Μπουντούρη Εθνικό Κέντρο Τεκμηρίωσης 13ο ΠανελλήνιοΣυνέδριοΑκαδημαϊκών Βιβλιοθηκών - Κέρκυρα 2004

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I

7-22 Οκτωβρίου Μία γιορτή δημιουργίας με κώδικα. Europe Code Week

Εισαγωγή στον Παγκόσμιο ιστό και στη γλώσσα Html. Χρ. Ηλιούδης

ΕΡΓΑΣΤΗΡΙΟ: ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ ΣΤΟΝ ΤΟΥΡΙΣΜΟ. 1o ΕΡΓΑΣΤΗΡΙΟ ΕΙΣΑΓΩΓΗ ΣΤΗΝ HTML

Βάσεις Δεδομένων ΙΙ. Διάλεξη 5 η XML και ΒΔ στο Διαδίκτυο

SPSS Statistical Package for the Social Sciences

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΔΗ Μ Ι Ο ΥΡ Γ Ι Α W I K I με τ η χρήση τ η ς υπ ηρεσίας h t t p : / id ot.com /

Τεχνολογίες Διαδικτύου - Εργαστήριο 1 ο

ΣΗΜΑΣΙΟΛΟΓΙΚΟΣ ΙΣΤΟΣ - XML

Σήμανση και Μορφοποίηση: HTML και CSS

Τεχνολογίες Διαδικτύου (Εξασκηθείτε στην HTML)

Μαθηματικά Λογισμικά και Γλώσσες Αναπαράστασης Γνώσης

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Όταν αποθηκεύετε μία παρουσίαση, την ονομάζετε και καθορίζετε πού θα την αποθηκεύσετε

Από τον κατάλογο Web επιλέγουμε το Page, οπότε στο κυρίως μέρος της οθόνης εμφανίζονται οι σελίδες τις οποίες έχουμε δικαίωμα να ενημερώσουμε.

<address>αδριανείου 2, Νέο Ψυχικό, 11525, Αθήνα</adderss> <address>

Μοντέλο. για ημι-δομημένα μημ δεδομένα. Ημι-δομημένα δεδομένα XML DTD XML Schema

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

Δημοσίευση στο Διαδίκτυο

Κεφάλαιο 11: Εισαγωγή στην HTML. Εφαρμογές Πληροφορικής Κεφ. 11 Καραμαούνας Πολύκαρπος

Χρήση html editor. Περιεχόμενα. 1. Εισαγωγή/διαμόρφωση κειμένου.

2. ΕΙΣΑΓΩΓΗ ΣΤΗΝ HTML ΓΙΩΡΓΟΣ ΓΙΑΝΝΑΚΑΚΗΣ, ΜΑΝΩΛΗΣ ΤΣΙΚΝΑΚΗΣ

Σενάριο Χρήσης Moodle

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Hyper Text Markup Language (HTML) που σημαίνει γλώσσα σήμανσης υπερκειμένου.

Κεφάλαιο 4 HyperText Markup Language - HTML. Προγραμματιστικά εργαλεία για το διαδίκτυο Φίλιππος Κουτσάκας, Πολύγυρος 2013

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

ΕΙΣΑΓΩΓΗ ΣΤΗΝ HTML. Decode, ISSEL. Θεοδόσης Σουργκούνης Αντώνης Χρυσόπουλος Στέλιος Μόσχογλου

Μπορείτε τα δείτε βιντεάκι με τη διαδικασία εδώ:

Άνοιγμα (και κλείσιμο) της εφαρμογής Εγγράφου Κειμένου

Διαχείριση Έργων Πληροφορικής Εργαστήριο

1. O FrontPage Explorer

Εγχειρίδιο εγκατάστασης και χρήσης περιοδικών etwinning

ΑΣΚΗΣΗ. Δημιουργία Ευρετηρίων Συλλογής Κειμένων

ΕΡΓΑΣΤΗΡΙΟ 1: 1 Εισαγωγή, Χρήσιμες Εφαρμογές

ΟΔΗΓΙΕΣ ΓΙΑ ΤΟ ΠΑΙΧΝΙΔΙ.

Εισαγωγή σε HTML και CSS. Παναγιώτης Τσαρχόπουλος

Προγραμματισμός I (Θ)

Γαβαλάς αµιανός

Σχεδιασμός και Ανάπτυξη Ιστοτόπων. ΕΠΑ.Λ. ΑΛΙΜΟΥ Τομέας Πληροφορικής Κ. Φλώρος

Joomla! with K2 - User Guide

SITEBUILDER ΠΛΑΤΦΟΡΜΑ ΑΥΤΟΝΟΜΗΣ ΚΑΤΑΣΚΕΥΗΣ & ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΑΚΩΝ ΤΟΠΩΝ (WEBSITE) ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ. Version 2.0

Βαρβάκειο Πρότυπο Γυμνάσιο

(3) Να επιλέξουμε Microsoft Access. (2) Να σύρουμε το ποντίκι στην επιλογή All Programs. Δημιουργία Πινάκων στην ACCESS 1

Διαδικτυακές Υπηρεσίες Αναζήτησης, Απεικόνισης και Απευθείας Πρόσβασης στα δεδομένα ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ. Έκδοση 0.1.

Σε παγκόσμιο επίπεδο, οιμηχανέςαναζήτησηςτουinternet αναπτύχθηκαν για να κάνουν αναζήτηση πληροφοριών σε πολλαπλές τοποθεσίες ιστού.

Χρήσιμες οδηγίες για την πορεία δημιουργίας ιστοσελίδων

Σημασιολογικός Ιστός (Semantic Web) - XML

Μεταδεδομένα στο Ψηφιακό περιβάλλον

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΓΕΩΓΡΑΦΙΑΣ ΜΑΘΗΜΑ: ΣΥΣΤΗΜΑΤΑ ΓΕΩΓΡΑΦΙΚΩΝ ΠΛΗΡΟΦΟΡΙΩΝ Ι

ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ.

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

Μια εισαγωγή στην XSL

Εισαγωγή στη Fortran. Μάθημα 1 ο. Ελευθερία Λιούκα

Λογισμικό Reload. Οδηγός. Συγγραφική Ομάδα: Κωνςταντίνοσ Τςακάλογλου, Ιωάννησ Εξηνταρίδησ, Κωνςταντίνοσ Τςιμπάνησ, Σταυροφλα Γεωργιάδη

CSS Εργαστήριο 1. Εισαγωγή - Σύνταξη - Εφαρμογή στην HTML

Εικονικό Εργαστήριο Χωρικής Ανάλυσης. Εγχειρίδιο Χρήστη ΤΕΙ ΑΘΗΝΑΣ

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008

ΕΡΓΑΣΤΗΡΙΟ 1: Εισαγωγή, Χρήσιμες Εφαρμογές

Οδηγίες Χρήσης της MySQL

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Α ΛΥΚΕΙΟΥ - ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΪΟΣ 2019 ΕΝΔΕΙΚΤΙΚΕΣ ΕΡΩΤΗΣΕΙΣ ΚΑΤΑΝΟΗΣΗΣ

Κλιμάκιο Πληροφορικής Σεμινάρια για τα λογισμικά κλειστού τύπου Κύκλος Α

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Πώς να δημιουργήσετε ένα Wiki

Λειτουργικά Συστήματα

Εισαγωγή στην MathML. Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Σχολή Θετικών Επιστηµών Τµήµα Μαθηµατικών

ΣΗΜΑΣΙΟΛΟΓΙΚΟΣ ΙΣΤΟΣ - XML

Δημιουργία ιστοσελίδας με. Wordpress - Βασικές λειτουργίες

Σχεδόν όλες οι ιστοσελίδες βασίζονται σε μεγάλο βαθμό σε πίνακες. Για να εισάγουμε έναν πίνακα επιλέγουμε από το μενού Insert->Table.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Δημιουργία. Ιστολογίου (blog) 7/5/2015. Χρυσάνθη Γιομέλου ΚΔΒΜ ΝΙΚΑΙΑΣ

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΣΗΜΑΣΙΟΛΟΓΙΚΟΣ ΙΣΤΟΣ - XML Εργαστήριο 1 Στουγιάννου Ελευθερία estoug@gmail.com

Περιεχόμενα Εργαστηριακού Μαθήματος Τι είναι η XML Κανόνες της γλώσσας, βασικές έννοιες, παραδείγματα Ορίζοντας διαλέκτους DTDs, schemas, and namespaces XML επεξεργασία Parsers, well-formed XML documents και parser interfaces XML-based εργαλεία επεξεργασίας XML messaging

Περιεχόμενα Πρώτου Εργαστηριακού Μαθήματος Τι είναι η XML Κανόνες της γλώσσας, βασικές έννοιες, παραδείγματα XML επεξεργασία Parsers, well-formed XML documents και parser interfaces XML-based εργαλεία επεξεργασίας XML messaging

extensible Markup Language (XML) H XML είναι μια από τις τεχνολογίες που αναπτύχθηκαν με την εξέλιξη του Διαδικτύου (Internet). Η XML αποτελεί πλέον το πρότυπο (standard) για την αναπαράσταση και αποθήκευση των δεδομένων που κινούνται μέσω του Internet. Ο όρος Markup αναφέρεται σε ένα σύνολο από ενδείξεις/παρατηρήσεις που περιγράφουν τα δεδομένα ενός κειμένου. Μια συλλογή τέτοιων ενδείξεων που ακολουθούν καθορισμένο συντακτικό και γραμματική, μπορεί να θεωρηθεί γλώσσα. Μία Markup γλώσσα προσδίδει πληροφορία για τα περιεχόμενα ενός κειμένου. Οι markup γλώσσες (Markup Languages) είναι μια μέθοδος για να δημιουργούμε μεταδεδομένα (metadata) [ΜΕΤΑΔΕΔΟΜΕΝΑ περιγράφουν τα δεδομένα ή τη γλώσσα].

HyperText Markup Language (HTML) Η HTML είναι γλώσσα για την περιγραφή ιστοσελίδων: Δεν είναι προγραμματιστική, αλλά markup γλώσσα (σύνολο από markup ετικέτες) Η HTML χρησιμοποιεί τις markup ετικέτες για να περιγράψει ιστοσελίδες (HTML Έγγραφα = Ιστοσελίδες). Χρησιμοποιεί browsers (ΙΕ, Firefox.), στόχος των οποίων είναι να διαβάζουν HTML έγγραφα και να τα παρουσιάζουν ως ιστοσελίδες. Έχει συγκεκριμένη δομή κι έναν περιορισμένο αριθμό από ετικέτες (tags) και κατά συνέπεια μπορούμε να αναπαραστήσουμε συγκεκριμένη πληροφορία. Απλή κι εύκολη στην εκμάθηση. Περιορισμένες δυνατότητες στην ανάπτυξη εφαρμογών. ΒΑΣΙΚΗ ΔΙΑΦΟΡΑ ΜΕ ΤΗΝ XML: Ένα XML αρχείο ορίζει αυστηρά που αρχίζει (start tag) και που τελειώνει (end tag) κάθε κομμάτι του κειμένου, δίνοντας έτσι ξεχωριστό νόημα στα περιεχόμενα των tags.

XML vs HTML XML Η XML σχεδιάστηκε για να μεταφέρει, να αποθηκεύει και να περιγράφει δεδομένα δίνοντας έμφαση στο τι είδος δεδομένα είναι. HTML Η HTML σχεδιάστηκε για να παρουσιάζει δεδομένα δίνοντας έμφαση στο πώς τα δεδομένα αυτά εμφανίζονται. Τα tags της XML είναι case sensitive και όλα τα tags πρέπει να έχουν αρχή και τέλος. Οι ετικέτες XML (XML tags) δεν είναι προκαθορισμένες, μόνοι μας προσδιορίζουμε τις ετικέτες μας, άρα είναι αυτό-περιγραφική*. *(π.χ. η ετικέτα <p> σε αρχείο XML, δεν είναι απαραίτητα παράγραφος (p = paragraph). Ενδέχεται να είναι τιμή (p = price), παράμετρος (p = parameter), πρόσωπο (p = person) ή οτιδήποτε άλλο ) Τα tags της HTML δεν είναι case sensitive και δεν είναι απαραίτητο όλα τα tags να έχουν αρχή και τέλος. Τα tags της HTML είναι προκαθορισμένα*. *(π.χ. η ετικέτα <p> σε αρχείο XML, είναι απαραίτητα παράγραφος (p = paragraph)). Αν και η XML μοιάζει λοιπόν, με την HTML, δεν την αντικαθιστά και έχει διαφορετικούς στόχους: Η XML ΠΕΡΙΓΡΑΦΕΙΤΟ ΠΕΡΙΕΧΟΜΕΝΟ (CONTENT), ΕΝΩ Η HTML ΠΑΡΟΥΣΙΑΖΕΙΤΗ ΣΕΛΙΔΑ.

Πριν την XML / με την XML HTML έγγραφα Συχνά παράγονται από εφαρμογές Καταναλώνονται (διαβάζονται) μόνο από ανθρώπους. Εύκολη πρόσβαση, ανεξάρτητα από πλατφόρμες ή όρια οργανισμών. Δεν υποστηρίζεται διαλειτουργικότητα διαφορετικών εφαρμογών Η HTML δεν είναι κατανοητή από εφαρμογές. Οι βάσεις δεδομένων στηρίζονται σε αρχιτεκτονική πελάτη-εξυπηρετητή και δεν είναι vendor-independent. Μέσω της XML μεταφερόμαστε Από έγγραφα (HTML) σε δεδομένα (XML). Από ανάκτηση πληροφορίας σε διαχείριση δεδομένων. Στην περίπτωση Βάσεων Δεδομένων από σχεσιακό μοντέλο σε ημιδομημένα δεδομένα (δεδομένα που έχουν προκύψει από ολοκλήρωση ετερογενών πηγών δεδομένων ή από πηγές δεδομένων με «χαλαρή» δομή).

Γιατί XML??? Το Διαδίκτυο αποτελείται από ένα σύνολο εφαρμογών που επικοινωνούν μεταξύ τους. Οι εφαρμογές ανταλλάσσουν δεδομένα με αυθαίρετη δομή και μορφοποίηση, τα οποία πρέπει στη συνέχεια να επεξεργαστούν. Πρόβλημα: Απαιτείται ένα κοινό πρότυπο στην αναπαράσταση των δεδομένων. Πολλές φορές η εφαρμογή ενδιαφέρεται όχι για τα ίδια τα δεδομένα αλλά για τη σημασία τους και που αυτά αναφέρονται (metaknowledge). Πρόβλημα: Απαιτείται μια μέθοδος για δημιουργία μεταδεδομένων.

Τι είναι και τι δεν είναι η XML ΕIΝΑΙ: Συντακτικό για κωδικοποίηση δεδομένων κειμένου (words, phrases, numbers,...). Text-based: H XML γράφεται χρησιμοποιώντας printable χαρακτήρες (όχι binary data). Επεκτάσιμη (Extensible): Η XML επιτρέπει τον ορισμό των δικών μας elements (τα στοιχεία elements είναι το βασικό συστατικό της XML), με βάση ορισμένους συντακτικούς κανόνες. Συγκεκριμένου τύπου έγγραφο με κοινό format: Τα δεδομένα που κωδικοποιούνται σε XML μετατρέπονται σε έναν standard τύπο εγγράφου, τον οποίο μπορεί να διαβάσει και να επεξεργαστεί οποιαδήποτε εφαρμογή που υποστηρίζει XML τεχνολογία. ΔΕΝ ΕΙΝΑΙ: Δεν είναι γλώσσα προγραμματισμού. Δεν είναι λογισμικό. Δεν είναι περιβάλλον ανάπτυξης λογισμικού. Δεν είναι εργαλείο ανάπτυξης ιστοσελίδων.

Η Σύνταξη της XML (Well-Formed XML Docs) Η XML χρησιμοποιεί ένα σύνολο κανόνων για τη δημιουργία σημασιολογικών ετικετών (tags) που χρησιμοποιούνται για να περιγράψουν τα δεδομένα. Ένα XML document με σωστή σύνταξη ονομάζεται "Well Formed". Ένα στοιχείο της XML αποτελείται από μια ετικέτα αρχής και μια ετικέτα τέλους με δεδομένα ενδιάμεσα. Παράδειγμα απλού εγγράφου XML: <?xml version="1.0"?> <contact-info> <name>jane Smith</name> <company>att</company> <phone>(212) 555-4567</phone> </contact-info> Ετικέτα αρχής Ετικέτα τέλους Δήλωση της XML

Η Σύνταξη της XML XML Έγγραφο Τα XML έγγραφα είναι αυστηρά δομημένα: Το πρώτο στοιχείο του εγγράφου, το οποίο περικλείει και όλα τα άλλα, ονομάζεται «ρίζα» (root). Κάθε στοιχείο που περιέχει στοιχεία ή δεδομένα ονομάζεται «πατέρας» (parent), ενώ κάθε στοιχείο ή δεδομένο το οποίο περιέχεται σε κάποιο άλλο στοιχείο ονομάζεται «παιδί» (child). Κάθε στοιχείο ή δεδομένο πρέπει να ανήκει σε κάποιο άλλο ή να είναι παιδί της ρίζας. XML Έγγραφο Παράδειγμα: Root element Attribute of <book> Parent of <title>, <author>, <year>, <price> Child of <book> Siblings

Η Σύνταξη της XML Πρόλογος Πρόλογος της XML: Οι πληροφορίες που περιέχονται στην κορυφή κάθε XML εγγράφου και αφορούν αυτό καθ αυτό το έγγραφο. ΟΝΟΜΑ ΠΙΘΑΝΗ ΙΔΙΟΤΗΤ ΤΙΜΗ ΑΣ ΙΔΙΟΤΗΤΑΣ Δήλωση της XML: <?xml version="1.0" encoding="utf-8" standalone="no"?> ΠΕΡΙΓΡΑΦΗ version 1.0 Ορίζει τον αριθμό της XML έκδοσης που χρησιμοποιείται για την σήμανση του εγγράφου. Δήλωση τύπου εγγράφου: <!DOCTYPE root-element uri-of-dtd [ internal-subset ]> encoding Standalone UTF-8, UTF- 16, ISO- 8859-1 to ISO-8859-9, etc. yes, no Ορίζει το είδος της κωδικοποίησης των χαρακτήρων του εγγράφου. Αν η τιμή είναι 'yes τότε το ΧΜL έγγραφο είναι ανεξάρτητο αρχείο. Αν η τιμή είναι 'no τότε το ΧΜL έγγραφο συνοδεύεται από κάποιο εξωτερικό αρχείο που πρέπει να φορτωθεί. Στη συνέχεια, ακολουθεί το στοιχείο ρίζα (root) που περιέχει το υπόλοιπο έγγραφο.

Η σύνταξη της XML XML Elements (1/4) Ένα XML έγγραφο περιέχει XML Elements. Ένα XML element είναι ότι περικλείεται από την αρχική ετικέτα του element ως την τελική του, συμπεριλαμβανομένων και των δύο αυτών ετικετών. Οι ετικέτες της XML είναι case sensitive. H ετικέτα <Year> είναι διαφορετική από την <year> Ένα element μπορεί να περιλαμβάνει άλλα elements, απλό κείμενο ή συνδυασμό και των δύο, ή είναι κενό. Επίσης, μπορεί να περιλαμβάνει και attributes. Παραδείγματα: <fullname>john Doe</fullname> <fullname>john <surname>doe</surname></fullname> <fullname><firstname>john</firstname> <surname>doe</surname></fullname> <image width= 300 height= 350 /> Όλα τα XML έγγραφα πρέπει να έχουν μία ρίζα που είναι και μοναδική.

Η σύνταξη της XML XML Elements (2/4) Όλα τα XML έγγραφα πρέπει να έχουν μία ρίζα που είναι και μοναδική. Στο διπλανό παράδειγμα, τα <bookstore> και <book> έχουν ως περιεχόμενο elements. To <author> έχει ως περιεχόμενο κείμενο, και μόνο το <book> έχει attribute (category="children"). Ποια είναι η ρίζα του παραπάνω xml εγγράφου? <bookstore>

Η σύνταξη της XML XML Elements (3/4) -- XML Κανόνες Ονομασίας (XML Naming Rules) -- Τα XML elements πρέπει να ακολουθούν τους ακόλουθους κανόνες ονομασίας: Τα ονόματα μπορούν να περιλαμβάνουν γράμματα, αριθμούς και άλλους χαρακτήρες. Τα ονόματα δεν γίνεται να αρχίζουν με έναν αριθμό ή σημεία στίξης. Τα ονόματα δεν γίνεται να αρχίζουν με τα γράμματα xml (ή XML, ή Xml, κτλ). Τα ονόματα δεν γίνεται να περιέχουν κενά. Οι καλύτερες πρακτικές ονομασίας: Κάνουμε τα ονόματα περιγραφικά. Ονόματα με χαρακτήρα underscore (_) είναι μια καλή επιλογή, π.χ. <first_name>, <last_name> Τα ονόματα πρέπει να είναι μικρά και απλά, π.χ. <book_title> Αποφεύγουμε τον χαρακτήρα "-". Αν ονομάσουμε κάτι "first-name, μπορεί κάποιο λογισμικό να θεωρήσει ότι θέλουμε να αφαιρέσουμε το name από τον first. Αποφεύγουμε τον χαρακτήρα "." Αν ονομάσουμε κάτι "first.name" κάποιο λογισμικό μπορεί να θεωρήσει ότι το name είναι μια ιδιότητα του αντικειμένου first. Αποφεύγουμε τον χαρακτήρα ":".

Η σύνταξη της XML XML Elements (4/4) Τα XML Elements είναι επεκτάσιμα, προκειμένου να μεταφέρουν περισσότερες πληροφορίες. Έχουμε το ακόλουθο XML παράδειγμα: Ας υποθέσουμε ότι ο συγγραφέας του XML εγγράφου προσέθεσε επιπλέον πληροφορία σε αυτό: Η εφαρμογή θα διακοπεί ή θα καταστραφεί? Όχι, η εφαρμογή θα πρέπει να μπορεί να βρει τα <to>, <from>, and <body> elements στο XML έγγραφο και να παράγει την ίδια έξοδο. Ένα από τα προτερήματα της XML είναι ότι μπορεί να επεκταθεί χωρίς καταστροφικές συνέπειες.

Η σύνταξη της XML XML Attributes (1/3) Τα XML elements μπορεί να έχουν attributes, όπως και στην HTML. Οι ιδιότητες (attributes) παρέχουν επιπλέον πληροφορία για ένα element, πέρα από το όνομά του ή το περιεχόμενό του. Τα attributes χρησιμοποιούνται για να περιγράψουν τα χαρακτηριστικά των στοιχείων (elements) της XML. Κάθε element μπορεί να έχει μηδέν ή περισσότερα attributes, όπου καθένα εμφανίζεται πάντα με τη μορφή όνομα = τιμή ή όνομα= τιμή. Παραδείγματα: <book color= blue pages= 300 ISBN= 20047-32 > <book color= blue pages= 300 ISBN= 20047-32 > <library book= title1 book= title2 > <library books= title1 title2 > <library book1= title1 book2= title2 > <library><book>title1</book><book>title2</book></library> Εάν η ίδια η τιμή του attribute περιέχει διπλά εισαγωγικά, μπορούμε να χρησιμοποιήσουμε μονά εισαγωγικά, όπως στο ακόλουθο παράδειγμα: <gangster name='george "Shotgun" Ziegler'>, ή μπορούμε να γράψουμε: <gangster name="george "Shotgun" Ziegler">

Η σύνταξη της XML XML Attributes (2/3) XΜL Elements vs. Attributes Στο πρώτο παράδειγμα το φύλο (sex) είναι ένα χαρακτηριστικό (attribute), ενώ στο δεύτερο είναι ένα στοιχείο (element). Και τα δύο παραδείγματα παρέχουν την ίδια πληροφορία. Γενικότερα, δεν υπάρχει κανόνας για το πότε να χρησιμοποιούμε attributes και πότε elements. Ωστόσο, είναι καλύτερο στην XML να προτιμάμε τα στοιχεία (elements) από τα χαρακτηριστικά (attributes).

Η σύνταξη της XML XML Attributes (3/3) Ένα attribute πρέπει να εμφανίζεται μόνο μια φορά μέσα σε ένα στοιχείο. Π.χ. <team person= sue person= joe person= jane > -> Είναι -> Σωστό ΛΑΘΟΣ ή Λάθος? Το παραπάνω μπορεί να αποφευχθεί: είτε με τη χρήση ενός attribute που περιέχει και τις τρεις τιμές: <team persons= sue joe jane > είτε με χρήση τριών διαφορετικών attributes: <team person1= sue person2= joe person3= jane > ή με τη χρήση elements: <team> <person>sue</person> <person>joe</person> <person>jane</person> </team>

Η σύνταξη της XML Σχόλια Τα σχόλια είναι σημειώσεις μέσα στο έγγραφο που δεν μεταφράζονται από τον αναλυτή. <!-- Κείμενο --> Τα σχόλια μπορούν να μπουν σε οποιοδήποτε σημείο του εγγράφου, εκτός πριν από τη δήλωση της XML και μέσα σε ετικέτες, όπου ο αναλυτής θα τα αγνοήσει εντελώς. Παραδείγματα: <!--==============--> <!-- --> <!-- - - - - - - - --> <!-------------------> <!-- -- Λάθος -- -->

Η Σύνταξη της XML Κανόνες (1/5) Τα καλά ορισμένα έγγραφα εκτός από την δήλωση της XML που πρέπει να περιέχουν στην αρχή πρέπει να ακολουθούν και ορισμένους άλλους κανόνες: 1) Στην αρχή του κώδικα βάζουμε πάντα την XML Δήλωση και συγκεκριμένα γράφουμε: <?xml version= "1.0" encoding= "UTF-8"?> Αποτελείται από μια ιεραρχία από ετικέτες (tags) οριζόμενες από το χρήστη, που ονομάζονται στοιχεία (elements) και έχουν γνωρίσματα (attributes) και δεδομένα (data). 2) Τα XML στοιχεία πρέπει να περιέχουν οπωσδήποτε μία ετικέτα τέλους. Στην HTML η παράγραφος <p> δεν χρειάζεται ετικέτα τέλους. Στην XML η ετικέτα <p> πρέπει να ακολουθείται οπωσδήποτε από την ετικέτα τέλους </p>. Στην XML το <p> δεν σημαίνει αλλαγή παραγράφου.

Η Σύνταξη της XML Κανόνες (2/5) 3) Η XML επιτρέπει την χρήση κενών στοιχείων (άδεια elements, χωρίς δεδομένα και tag τέλους). <book> </book> (κανονική σύνταξη) <book/> (σύνταξη με σύντμηση) 4) Οι ετικέτες πρέπει να είναι κατάλληλα εμφωλευμένες. <book><title>java</title></book> <book><title>java</book></title> 5) Οι XML ετικέτες είναι case sensitive, δηλαδή τα μικρά από τα κεφαλαία γράμματα είναι διαφορετικά. <BOOK>Java</BOOK> <book>java</book>

Η Σύνταξη της XML Κανόνες (3/5) 6) Τα XML έγγραφα πρέπει να έχουν ένα μόνο στοιχείο ρίζας (root element). <root-element> <child-element> <subchild-element> </subchild-element> </child-element> </root-element> 7) Τα δεδομένα δεν πρέπει να περιέχουν δεσμευμένους χαρακτήρες σήμανσης. Οι δεσμευμένοι χαρακτήρες σήμανσης θα πρέπει να αντικαθίστανται από τις αντίστοιχες οντότητες (π.χ. Το < με <).

Η Σύνταξη της XML Κανόνες (4/5) ENTITY REFERENCES: κάποιοι χαρακτήρες έχουν ένα ιδιαίτερο νόημα στην XML -> αν βάλουμε μέσα σε ένα XML element έναν χαρακτήρα τύπου "<" θα δημιουργηθεί σφάλμα, καθώς ο parser θα το μεταφράσει ως την αρχή ενός καινούριου element. Παράδειγμα τέτοιου σφάλματος είναι το ακόλουθο: <message>if salary < 1000 then</message> Για να αποφύγουμε αυτό το σφάλμα, αντικαθιστούμε τον χαρακτήρα "<" με ένα entity reference: Το παραπάνω παράδειγμα με την προσθήκη ενός entity reference, γίνεται ως εξής: <message>if salary < 1000 then</message>

Η Σύνταξη της XML Κανόνες (5/5) 8) Οι τιμές των ιδιοτήτων πρέπει να βρίσκονται πάντα σε εισαγωγικά. Συντάξτε σωστά ένα element book που να έχει ως ιδιότητα τον αριθμό των σελίδων του (pages) και συγκεκριμένα να έχει τιμή 400 η ιδιότητα αυτή. <book pages= 300 >Java</book> <book pages=300>java</book> Μπορούν να χρησιμοποιηθούν τα μονά εισαγωγικά (ή απόστροφος), εάν η τιμή της ιδιότητας περιέχει έναν χαρακτήρα διπλού εισαγωγικού, και αντίστροφα. 9) Τα XML δεδομένα είναι οποιαδήποτε πληροφορία βρίσκεται μεταξύ ενός tag αρχής και ενός tag τέλους. Μεταξύ ενός tag αρχής και ενός tag τέλους μπορούμε να εισάγουμε δεδομένα, elements και συνδυασμό δεδομένων και elements. Π.χ. Αναφέρατε ορισμένα elements και ορισμένα δεδομένα από το παράδειγμα.

Βασικά Συνθετικά του Συντακτικού της XML

XML Παράδειγμα (1/8) Δίνεται ένα παράδειγμα ενός XML εγγράφου: <?xml version="1.0" encoding="utf-8"?> <note> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note> Η πρώτη γραμμή είναι η XML δήλωση (XML declaration). Η επόμενη γραμμή περιγράφει το root element του: <note> Οι επόμενες 4 γραμμές περιγράφουν 4 child elements του root (to, from, heading, and body) και η τελευταία γραμμή δηλώνει το τέλος του root element: </note> Άρα, το XML έγγραφο αναφέρει ένα μήνυμα από τον Tove στην Jani. Χρησιμοποιούμε τον editor XML Notepad 2007 για να δημιουργήσουμε το xml έγγραφο. Μπορούμε εναλλακτικά να χρησιμοποιήσουμε οποιοδήποτε editor εμείς επιθυμούμε, είτε το Notepad ή Notepad++ (plugin xml validator).

XML Παράδειγμα (2/8) Ανοίγουμε τον editor: Start -> Programs -> XML Notepad 2007 Για να δημιουργήσουμε το root element, κάνουμε δεξί κλικ σε ένα κενό σημείο στο Tree View κι επιλέγουμε Element -> Before.

XML Παράδειγμα (3/8) Δίνουμε όνομα στο root element, στο συγκεκριμένο παράδειγμα το ονομάζουμε note.

XML Παράδειγμα (4/8) Για να δημιουργήσουμε τα 4 child elements του root (to, from, heading, and body), κάνουμε δεξί κλικ στο root element note κι επιλέγουμε Element -> Child.

XML Παράδειγμα (5/8) Επαναλαμβάνουμε 4 φορές τη διαδικασία για να δημιουργήσουμε τα 4 child elements.

XML Παράδειγμα (6/8) Για να προσθέσουμε κείμενο σε κάθε ένα child element, πατάμε αριστερό κλικ σε κάθε ένα child element, πάμε στο δεξί τμήμα της οθόνης και γράφουμε το κείμενο.

XML Παράδειγμα (7/8) Βλέπουμε στην προηγούμενη εικόνα το σύμβολο + σε κάθε ένα από τα child elements, αν τα κάνουμε expand, τότε βλέπουμε ότι σε αυτά τα child elements αντιστοιχούν από ένα text στο καθένα.

XML Παράδειγμα (8/8) Ο editor μας δίνει τη δυνατότητα να δούμε το XSL Output, δηλαδή το HTML που προκύπτει από το XSLT transformation.

Παράδειγμα XML Μουσικό Κατάστημα Δημιουργείστε ένα XML έγγραφο για ένα μουσικό κατάστημα. Για κάθε cd να αναφέρεται ο τίτλος, η χρονολογία κυκλοφορίας, ο καλλιτέχνης, η τιμή και το είδος μουσικής.

Χρήση Ερευνητικής Πλατφόρμας elab Για να ελέγξετε αρχικά το συντακτικό του xml εγγράφου σας: (Α Τρόπος) Μπορείτε να χρησιμοποιήσετε τον xml validator μέσω της πλατφόρμας elab: http://cdiakos.xyz/xml/ (Your elearning Menu: XML Validator) Εγγραφείτε στην πλατφόρμα για να χρησιμοποιήσετε τον xml validator, για να δείτε υλικό (θεωρία, παραδείγματα για well-formed & validation of xml documents), καθώς και για να τρέξουμε κάποιες ασκήσεις quizzes. (B Τρόπος) Μπορείτε να χρησιμοποιήσετε τον xml validator μέσω της σελίδας: http://www.xmlvalidation.com/ ΠΑΡΑΤΗΡΗΣΗ: Και με τους δύο παραπάνω τρόπους, δουλεύουμε είτε με upload του xml εγγράφου είτε με εισαγωγή του μέσα στο ειδικό πλαίσιο για το κείμενο που περιλαμβάνουν οι σελίδες αυτές.

Παράδειγμα XML Λίστα Ζώων (1/2) Έχουμε μια λίστα με τα ζώα της γειτονιάς μας. Η λίστα περιλαμβάνει ανά στήλη τα εξής: Όνομα ζώου Ηλικία Τύπος Χρώμα Να δημιουργήσετε το αντίστοιχο XML έγγραφο και να το ελέγξετε στον xml validator αν είναι σωστά το συντακτικό του.

Παράδειγμα XML Λίστα Ζώων (2/2)

Παράδειγμα XML Συλλογή Από Φυτά (1/2) Έχουμε έναν κατάλογο με φυτά σε ένα ανθοκήπιο. Η λίστα περιλαμβάνει ανά στήλη τα εξής: Κοινή ονομασία φυτού Βοτανολογική Ονομασία φυτού Ζώνη Ανάπτυξης του φυτού Φώς Ανάπτυξης του φυτού Τιμή Διαθεσιμότητα Φυτού Bloodroot Sanguinaria canadensis 4 Mostly Shady $2.44 031599 Columbine Aquilegia canadensis 3 Mostly Shady $9.37 030699 Να δημιουργήσετε το αντίστοιχο XML έγγραφο και να το ελέγξετε στον xml validator αν είναι σωστά το συντακτικό του.

Παράδειγμα XML Συλλογή Από Φυτά (2/2)

Παράδειγμα XML Συλλογή Από Μενού Πρωϊνού (1/2) Έχουμε έναν μενού πρωϊνού ενός ξενοδοχείου. Το μενού περιλαμβάνει φαγητά με τις εξής πληροφορίες για το καθένα: Ονομασία Φαγητού Τιμή Φαγητού Περιγραφή Θερμίδες Belgian Waffles $5.95 two of famousbelgian Waffles with plently of real maple syrup 650 Strawberry Belgian Waffles $7.95 light Belgian waffles covered with strawberries and whipped cream 900 Να δημιουργήσετε το αντίστοιχο XML έγγραφο και να το ελέγξετε στον xml validator αν είναι σωστά το συντακτικό του. Πως θα πρέπει να διαμορφωθεί το έγγραφο, αν θέλουμε να προσθέσουμε επιπλέον την πληροφορία ότι για κάθε φαγητό που έχει πάνω από 700 θερμίδες, το φαγητό αυτό θα πρέπει να χαρακτηρίζεται «high-calorie»?

Παράδειγμα XML Συλλογή Από Μενού Πρωϊνού (2/2) high-calorie= yes

XML Editors XML Spy XML editor http://www.xmlspy.com/download.html XML Notepad Microsoft XML Notepad http://msdn.microsoft.com/xml/notepad/download.asp XML Pro XML editor http://www.vervet.com/demo.html

Ερωτήσεις??