Αναπαράςταςθ Γνϊςθσ ςτον Παγκόςμιο Ιςτό Ενότθτα 2: XML Δομθμζνα Ζγγραφα Ιςτοφ, Μζροσ 1 ο Ιωάννθσ Χατηθλυγεροφδθσ Πολυτεχνικι Σχολι Τμιμα Μθχ/κϊν Η/Υπολογιςτϊν & Πλθροφορικισ
Περιεχόμενα ενότθτασ Μζροσ 1 ο 1. Ειςαγωγι 2. Η Γλϊςςα XML 3. Δενδρικό Μοντζλο Δόμθςθσ 2/27
Ειςαγωγι
Ειςαγωγι SGML (Standard Generalized Markup Language) Διεκνζσ πρότυπο οριςμοφ μεκόδων αναπαράςταςθσ πλθροφοριϊν ανεξάρτθτα από ςυςκευι/ςφςτθμα και χριςθ/ανάγνωςθ Εφαρμογζσ SGML: Γλϊςςεσ που υπακοφουν ςτο πρότυπο αυτό. Π.χ. HTML XML 4/27
XML vs HTML (1 από 3) <H2> Context-Dependent Reasoning</H2> <i>by <b>v. Marek</b> and <b>m. Truszczynski</b></i> <br> Springer 1993<br> ISBN 0387976892 <book> <title>context-dependentreasoning</title> <author>v. Marek</author> <author>m. Truszczynski</author> <publisher>springer</publisher> <year>1993</year> <ISBN>0387976892</ISBN> </book> 5/27
XML vs HTML (2 από 3) Ομοιότθτεσ o Είναι γλϊςςεσ ςιμανςθσ (markup) o Χρθςιμοποιοφν ετικζτεσ (tags) o Εφκολα αναγνϊςιμεσ από άνκρωπο Διαφορζσ o Όλεσ οι ετικζτεσ ςτθν XML πρζπει να κλείνουν (ςτθν HTML όχι: π.χ. <br>) o Η HTML είναι δφςκολα αναγνϊςιμθ από μθχανζσ o Η HTML δεν περιζχει δομικι πλθροφορία (οντότθτεσ-ςχζςεισ) o Η XML επιτρζπει οριςμό περιοριςμϊν ςε τιμζσ (π.χ. ζτοσ) 6/27
XML vs HTML (3 από 3) Διαφορζσ (ςυν.) o Οι ετικζτεσ ςτθν HTML είναι προκακοριςμζνεσ (αφοροφν μορφοποίθςθ κειμζνου) o Η XML ξεχωρίηει το περιεχόμενο από τθν μορφοποίθςθ o Η XML είναι μια μετα-γλϊςςα για ςιμανςθ-οι ετικζτεσ δεν είναι προκακοριςμζνεσ, αλλά ορίηονται από τουσ χριςτεσ επεκτάςιμθ (MathML, BSML, HRML, AML, NewsML, IRML κλπ) XML 7/27
Η Γλϊςςα XML
Γλϊςςα XML Πρόλογοσ Στοιχεία (XML elements) Χαρακτθριςτικά (XML attributes) Σχόλια Οδθγίεσ επεξεργαςίασ 9/27
Γλϊςςα XML - Πρόλογοσ Διλωςθ XML (XML declaration) <?xml version="1.0" [encoding="uft-16"?]> <?xml version="1.0" [encoding="uft-16"? standalone = "no"]> Αναφορά ςε εξωτερικά ζγγραφα <!DOCTYPE book SYSTEM "book.dtd"> (οι δομικζσ πλθροφορίεσ βρίςκονται ςτο τοπικό αρχείο book.dtd) 10/27
Γλϊςςα XML - Στοιχεία (1) Αναφζρονται ςτισ κφριεσ ζννοιεσ (οντότθτεσ) ενόσ εγγράφου XML Στοιχείο: <tag-name>content</tag-name> Π.χ. <lecturer> Ioannis Chatzis </lecturer> Τα ονόματα ετικετϊν (tag-names) ορίηονται από τον χριςτθ o Πρϊτοσ χαρακτιρασ γράμμα/underscore/ : o Δεν μπορεί να αρχίηει με xml ι παραλλαγζσ του XML 11/27
Γλϊςςα XML - Στοιχεία (2) Το περιεχόμενο (content) ενόσ ςτοιχείου μπορεί να είναι κείμενο ι άλλα ςτοιχεία ι τίποτα. Π.χ. <lecturer> <name>ioannis Chatzis</name> <phone>+302610994555</phone> </lecturer> Αν δεν υπάρχει περιεχόμενο (content), τότε το ςτοιχείο αποκαλείται κενό (empty). Π.χ. <lecturer></lecturer> ι <lecturer/> XML 12/27
Γλϊςςα XML - Χαρακτθριςτικά (1) Ζνα κενό ςτοιχείο μπορεί να περιζχει οριςμζνεσ ιδιότθτεσ με τθ μορφι «χαρακτθριςτικϊν» Χαρακτθριςτικό: <όνομα>=<τιμή> ςτθν ετικζτα ανοίγματοσ ενόσ ςτοιχείου (κενοφ ι μθ). Π.χ. name="ioannis Chatzis", phone="+302610994555"/> Παραδείγματα: Κενό ςτοιχείο <lecturer name="ioannis Chatzis", phone="+302610994555"/> <order orderno="23456" customer= " John Doe" date= "May 02, 2015"> <item itemno="a528" quantity="1"/> <item itemno="c817" quantity="3"/> </order> Μθ κενό ςτοιχείο 13/27
Γλϊςςα XML - Χαρακτθριςτικά (2) Το προθγοφμενο μπορεί να γραφεί και ωσ εξισ (χωρίσ χριςθ χαρακτθριςτικϊν, με ζνκετα ςτοιχεία): <order> <orderno>23456</orderno> <customer>john Doe</customer> <date>march 25, 2015</date> <item> <itemno>a528</itemno> <quantity>1</quantity> </item> <item> <itemno>c817</itemno> <quantity>3</quantity> </item> </order> Τα χαρακτθριςτικά δεν μποροφν να είναι ζνκετα. 14/27
Γλϊςςα XML - Σχόλια Είναι κομμάτι κειμζνου που αγνοείται από τον ςυντακτικό αναλυτι. <! Αυτό είναι ένα σχόλιο --> 15/27
Γλϊςςα XML - Οδθγίεσ Επεξεργαςίασ Παρζχουν ζνα μθχανιςμό μεταβίβαςθσ πλθροφοριϊν ςε μια εφαρμογι ςχετικά με το χειριςμό ςτοιχείων από αυτι. Γενικι μορφι: <?target instruction?> Π.χ. <?stylesheet type="text/css" href="mystyle.css"?> 16/27
Κανόνεσ Δόμθςθσ Εγγράφου XML Μόνο ζνα εξωτερικό ςτοιχείο (ςτοιχείο ρίζα) Κάκε ςτοιχείο περιζχει μια ετικζτα ανοίγματοσ και μια αντίςτοιχθ κλειςίματοσ Δεν υπάρχουν επικαλφψεισ ετικετϊν: <author><name>ioannis Chatzis</author></name> Τα χαρακτθριςτικά ς ζνα ςτοιχείο ζχουν μοναδικά ονόματα Τα ονόματα των ςτοιχείων και των ετικετϊν πρζπει να είναι επιτρεπτά 17/27
Δενδρικό Μοντζλο Δόμθςθσ (1) Είναι εφικτό να αναπαριςτοφμε ςωςτά δομθμζνα ζγγραφα XML ςαν δζνδρα Κανόνεσ: o Υπάρχει ακριβϊσ μια ρίηα o Δεν υπάρχουν κφκλοι o Κάκε κόμβοσ ζχει ακριβϊσ ζνα γονζα (πλθν τθσ ρίηασ) o Κάκε κόμβοσ ζχει μια ετικζτα o Η ςειρά των ςτοιχείων είναι ςθμαντικι (όχι όμωσ των χαρακτθριςτικϊν) 18/27
Δενδρικό Μοντζλο Δόμθςθσ (2) <?xml version="1.0" encoding="utf-16"?> <!DOCTYPE email SYSTEM "email.dtd"> <email> <head> <from name="ioannis Chatzis" address="ioannis@aigroup.gr"/> <to name="nikos Ioannou" address="nick@upat.gr"/> <subject>deadline Extension</subject> </head> <body> Hello Nick, the new deadline for the project submission is 25/12/2022, Cheers </body> </email> 19/27
Δενδρικό Μοντζλο Δόμθςθσ (3) Root ρίηα (root) email Στοιχείο-ρίηα (root element) head body from to subject name address name address Ioannis Chatzis ioannis@aigrou p.gr Nikos Ioannou nick@upat.g Deadline Extension Hello Nick, the new deadline 20/27
Δενδρικό Μοντζλο Δόμθςθσ (4) Κάποια προβλιματα o Δεν αναπαρίςταται το γεγονόσ ότι θ ςειρά των ςτοιχείων είναι ςθμαντικι ενϊ των χαρακτθριςτικϊν όχι. Π.χ. τα <person lastname= "Doe" firstname= "John"/> <person firstname= "John" lastname= "Doe" /> είναι ιςοδφναμα. o Δεν υπάρχει διάκριςθ τφπων κόμβων (ςτοιχείων, χαρακτθριςτικϊν κλπ). 21/27
Χρθματοδότθςθ Το παρόν εκπαιδευτικό υλικό ζχει αναπτυχκεί ςτo πλαίςιo του εκπαιδευτικοφ ζργου του διδάςκοντα. Το ζργο «Ανοικτά Ακαδθμαϊκά Μακιματα ςτο Πανεπιςτιμιο Ακθνών» ζχει χρθματοδοτιςει μόνο τθν αναδιαμόρφωςθ του εκπαιδευτικοφ υλικοφ. Το ζργο υλοποιείται ςτο πλαίςιο του Επιχειρθςιακοφ Προγράμματοσ «Εκπαίδευςθ και Δια Βίου Μάκθςθ» και ςυγχρθματοδοτείται από τθν Ευρωπαϊκι Ζνωςθ (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εκνικοφσ πόρουσ. 22/27
Σθμείωμα Ιςτορικοφ Εκδόςεων Ζργου Το παρόν ζργο αποτελεί τθν ζκδοςθ 1.0. 23/27
Σθμείωμα Αναφοράσ Copyright: Πανεπιςτιμιον Πατρϊν, Ιωάννθσ Χατηθλυγεροφδθσ, 2015. «Αναπαράςταςθ Γνϊςθσ ςτον Παγκόςμιο Ιςτό. XML». Ζκδοςθ: 1.0. Πάτρα 2015. Διακζςιμο από τθ δικτυακι διεφκυνςθ: https://eclass.upatras.gr/courses/ceid1098/ 24/27
Σθμείωμα Αδειοδότθςθσ Το παρόν υλικό διατίκεται με τουσ όρουσ τθσ άδειασ χριςθσ Creative Commons Αναφορά, Μθ Εμπορικι Χριςθ Παρόμοια Διανομι 4.0 *1+ ι μεταγενζςτερθ, Διεκνισ Ζκδοςθ. Εξαιροφνται τα αυτοτελι ζργα τρίτων π.χ. φωτογραφίεσ, διαγράμματα κ.λ.π., τα οποία εμπεριζχονται ςε αυτό και τα οποία αναφζρονται μαηί με τουσ όρουσ χριςθσ τουσ ςτο «Σθμείωμα Χριςθσ Ζργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-sa/4.0/ Ωσ Μθ Εμπορικι ορίηεται θ χριςθ: που δεν περιλαμβάνει άμεςο ι ζμμεςο οικονομικό όφελοσ από τθν χριςθ του ζργου, για το διανομζα του ζργου και αδειοδόχο που δεν περιλαμβάνει οικονομικι ςυναλλαγι ωσ προχπόκεςθ για τθ χριςθ ι πρόςβαςθ ςτο ζργο που δεν προςπορίηει ςτο διανομζα του ζργου και αδειοδόχο ζμμεςο οικονομικό όφελοσ (π.χ. διαφθμίςεισ) από τθν προβολι του ζργου ςε διαδικτυακό τόπο Ο δικαιοφχοσ μπορεί να παρζχει ςτον αδειοδόχο ξεχωριςτι άδεια να χρθςιμοποιεί το ζργο για εμπορικι χριςθ, εφόςον αυτό του ηθτθκεί.
Διατιρθςθ Σθμειωμάτων Οποιαδιποτε αναπαραγωγι ι διαςκευι του υλικοφ κα πρζπει να ςυμπεριλαμβάνει: το Σθμείωμα Αναφοράσ το Σθμείωμα Αδειοδότθςθσ τθ διλωςθ Διατιρθςθσ Σθμειωμάτων το Σθμείωμα Χριςθσ Ζργων Τρίτων (εφόςον υπάρχει) μαηί με τουσ ςυνοδευόμενουσ υπερςυνδζςμουσ. 26/27
Σθμείωμα Χριςθσ Ζργων Τρίτων Οι διαφάνειεσ είναι κατά μεγάλο μζροσ βαςιςμζνεσ ςτο βιβλίο "Ειςαγωγι ςτον Σθμαςιολογικό Ιςτό", των Grigoris Antoniou και Frank van Harmelen, Β' ΖΚδοςθ, 2009 (Ελλθνικι Ζκδοςθ). 27/27