EXtensible Markup Language (XML) και XML Schema Γιώργος Θάνος Παρασκευή 31 Οκτωβρίου 2008.

Slides:



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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ PHP. Τι θα μάθουμε;  Να καταλάβουμε τι είναι η PHP και πώς δουλεύουν τα PHP scripts  Τι χρειάζεται για να ξεκινήσουμε με την PHP  Να.
Εισαγωγή στην XML Μάρτιος 2005 Γ. Σ. Σακελλάρης Τ. Α. Κοντογιώργης
ΚΕΙΜΕΝΟ  Ο πρώτος τρόπος απεικόνισης πληροφορίας (και βασικός ως σήμερα).  Αδυναμία πρώτων υπολογιστών να χειριστούν άλλη μορφή πληροφορίας.  Πρόβλημα.
Προγραμματισμός Διαδικτύου Δρ. Παναγιώτης Συμεωνίδης Διεπαφή Εφαρμογής Παγκόσμιου Ιστού (Front End Programming)
Δ.Π.Θ. xml - 1 ΝΕΕΣ ΓΛΩΣΣΕΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ XML Η HTML αποτέλεσε την πρώτη και κύρια γλώσσα δημιουργίας ιστοσελίδων από την έναρξη λειτουργίας.
Κώστας Διαμαντάρας Τμήμα Πληροφορικής ΤΕΙ Θεσσαλονίκης 2011 Υπηρεσίες Web και Συστάδες υπολογιστών.
5η Συνάντηση Εκπαιδευτικών Πληροφορικής στη Δυτική Μακεδονία Πτολεμαΐδα, 29 Σεπτ 2005 Δημιουργία Δυναμικών Ιστοσελίδων με PHP και Dreamweaver MX Στυλιάδης.
Η γλώσσα μορφοποίησης υπερκειμένου HTML
«Τι κρύβεται» πίσω από μια Επιχειρησιακή Αναφορά (report): XML& XSD για αρχάριους Document Modelling.
«Τεχνολογία Web Services» ΣΠΟΥΔΑΣΤΕΣ: Κυριακούλιας Κωνσταντίνος Ντελής Επαμεινώνδας ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ (ΤΕΙ) ΜΕΣΟΛΟΓΓΙΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ.
Semantic Web Technologies
Η γλώσσα XHTML Επιμέλεια: Νικάκη Θεοδώρα Μάθημα: Εισαγωγικά θέματα WWW 2007.
Ακαδημαϊκό έτος Εργαστήριο Προγραμματισμού και Επεξεργασίας Πληροφοριών Εισαγωγή στη γλώσσα MathML Αλεξ Καράκος.
Σχεδιασμός μιας σελίδας HTML
CSS Cascading Style Sheets
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Φροντιστήρια Εισηγητής: Σπύρος Αργυρόπουλος Μέλος ΕΤΕΠ Εργαστήριο Προγραμματισμού & Τεχνολογίας Ευφυών Συστημάτων.
Εισαγωγή στην XML Από την Καραδημητρίου Κρυσταλλένια Καθηγήτρια Πληροφορικής στο Γυμνάσιο και Ενιαίο Λύκειο Φιλώτα Φλώρινας Οκτώβριος 2004.
ΑΝΑΠΑΡΑΣΤΑΣΗ ΓΝΩΣΗΣ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ
Αναπαρασταση Γνώσης στον Παγκόσμιο Ιστό
Web Services Υπηρεσίες διαδικτύου
Κείμενο – ASCII – Unicode - HTML Κωδικοποίηση ASCII / Unicode HTML
Resource Description Framework
Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων.
1 Υπηρεσίες Πληροφόρησης σε Ψηφιακό Περιβάλλον Ιόνιο Πανεπιστήμιο Τμήμα Αρχειονομίας & Βιβλιοθηκονομίας, Κέρκυρα Ηλεκτρονική Δημοσίευση Θέμα: Τεχνολογίες.
Ιόνιο Πανεπιστήμιο ΠΜΣ Επιστήμη της Πληροφορίας Διατύπωση Ερωτημάτων σε XML τεκμήρια με τη γλώσσα XQuery Εργασία για το μάθημα Ηλεκτρονική Δημοσίευση Υπεύθυνος.
E X a M p L e Αξιοποιώντας την τεχνολογία XML στη διαχείριση της πληροφορίας Λίνα Μπουντούρη Εθνικό Κέντρο Τεκμηρίωσης 13ο Πανελλήνιο Συνέδριο Ακαδημαϊκών.
Σημασιολογική Ολοκλήρωση Δεδομένων με τη χρήση Οντολογιών Λίνα Μπουντούρη - Μανόλης Γεργατσούλης Ιόνιο Πανεπιστήμιο 15ο Πανελλήνιο Συνέδριο Ακαδημαϊκών.
PHP/MYSQL ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΠΛΑΙΣΙΑ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΕΠΟΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ-ΜΗΧΑΝΗΣ ΤΥΡΟΛΟΓΟΥ ΓΛΥΚΕΡΙΑ ΑΜ 875 ΡΙΖΟΥ ΔΕΣΠΟΙΝΑ ΑΜ 816.
ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ Information Extraction.
XML. 2 Ο Παγκόσμιος Ιστός Σήμερα Ένα απλό, κοινό πρότυπο για ανταλλαγή και διάδοση πληροφοριών. Η πληροφορία κατατέμνεται σε τμήματα, τα οποία μπορούν.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
Η Γλώσσα Σήμανσης ΥπερΚειμένου HTML
RSS FEEDS Εισαγωγικά θέματα WWW ΠΑΝΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΠΜΣ:ΔΥΝΗΤΙΚΕΣ ΚΟΙΝΟΤΗΤΕΣ, ΚΟΙΝΩΝΙΟΨΥΧΟΛΟΓΙΕΣ ΠΡΟΣΕΓΓΙΣΕΙΣ ΚΑΙ ΤΕΧΝΙΚΕΣ ΕΦΑΡΜΟΓΕΣ ΕΞΑΜΗΝΟ: Α΄
Τεχνολογίες XML. XML και DTD Υποστηρικτικές τεχνολογίες Γλώσσες ερωτήσεων.
Σημασιολογική Ολοκλήρωση Ολοκλήρωση Πληροφορίας Το πρόβλημα της ολοκλήρωσης πληροφορίας (information integration) προκύπτει από την ύπαρξη ετερογενών.
Εισαγωγή στην XML Μ. ΓΑΒΑΛΑΣ.
University of Crete HY566-Semantic Web CS566 – Semantic Web Computer Science Department - UoC Heraklion 1 April, 2003 Παπαγγελής Μάνος, Κοφφινά Ιωάννα,
Tomcat Θ. Βαρβαρίγου Καθηγήτρια ΕΜΠ Τηλ
«Τι κρύβεται» πίσω από μια Επιχειρησιακή Αναφορά (report): XML& XSD για αρχάριους Κατανόηση της χρήσης και του ρόλου της γλώσσας XML στην επικοινωνία των.
Γλωσσική Τεχνολογία HTML/XML Processing – HTTP Services.
Γραφικό Περιβάλλον Συγγραφής Κανόνων στο Σημασιολογικό Διαδίκτυο Διπλωματική Εργασία της Βασιλικής Ζερβάκη Επιβλέπων Καθηγητής: Νικόλαος Βασιλειάδης Θεσσαλονίκη.
WebSevices - XML - SOAP - UDDI - WSDL Θ. Βαρβαρίγου Καθηγ. ΕΜΠ Τηλ
Επαλήθευση κα Βελτιστοποίηση Συστήματος Διαχείρισης XML εγγράφου στη γλώσσα CLIPS Διπλωματική Εργασία της Andoena Balla.
Asynchronous Javascript And XML (AJAX) Γιώργος Θάνος Παρασκευή 21 Νοεμβρίου 2008.
1Κεφάλαιο 4 Κανόνες Σύνταξης HTML Όλες οι ετικέτες εσωκλείονται μεταξύ των χαρακτήρων “ “. Κάθε τι που βρίσκεται μεταξύ των χαρακτήρων “ ”, αποτελεί σχόλιο.
Τεχνολογία ΛογισμικούSlide 1 Εξειδίκευση Βασισμένη σε Μοντέλο u Τυπική εξειδίκευση λογισμικού με ανάπτυξη μαθηματικού μοντέλου για το σύστημα.
XML Parsing Γιώργος Θάνος Παρασκευή 14 Νοεμβρίου 2008.
Βάσεις Δεδομένων ΙΙ Ευαγγελία Πιτουρά 1 Βάσεις Διαδικτύου.
Εφαρμογές Πολυμέσων: Εισαγωγή στην HTML (1)
1 Παγκόσμιος Ιστός. 2 World Wide Web- Ο Παγκόσμιος Ιστός  Ανακαλύφτηκε από τον Tim-Berners Lee, ερευνητή του CERN (Ευρωπαϊκό εργαστήριο Φυσικής Υψηλής.
Προγραμματισμός Εφαρμογών Διαδικτύου Ενότητα 8: Εισαγωγή στην XML Φώτης Κόκκορας, Καθηγητής Εφαρμογών, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας.
HTML/CSS: Εισαγωγή Θερινό Σχολείο, 14 – 20 Ιουλίου 2014 Γιώργος Φουρτούνης Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας.
Βάσεις Δεδομένων και Παγκόσμιος Ιστός Τεχνολογίες XML.
Βάσεις Δεδομένων και Παγκόσμιος Ιστός Βασικές έννοιες του Ιστού.
Μάθημα 1 ΔΙΑΔΙΚΤΥΟ Διευθύνσεις και Πρωτόκολλα. Διευθύνσεις Πως αποκωδικοποιούνται οι διευθύνσεις: Πρωτόκολλο://server.domain.
Το πλαίσιο Διαλειτουργικότητας της Ηλεκτρονικής Διακυβέρνησης
Προγραμματισμός Εφαρμογών Διαδικτύου
Βασικά Web εργαλεία και τεχνολογίες
Προγραμματισμός Εφαρμογών Διαδικτύου
Java DataBase Connectivity
Client Side Προγραμματισμός Javascript
Γιώργος Θάνος Παρασκευή 5 Δεκεμβρίου 2008
Ακούστηκε από τον ουρανό
Σχεδίαση Γραφικών Μάθημα 1ο.
ΕΦΑΡΜΟΓΕΣ ιστου (Web Applications)
Προχωρημένος Προγραμματισμός
ΙΟΝΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΑΡΧΕΙΟΝΟΜΙΑΣ – ΒΙΒΛΙΟΘΗΚΟΝΟΜΙΑΣ Μεταπτυχιακό Πρόγραμμα Σπουδών στην Επιστήμη της Πληροφορίας «Διοίκηση και Οργάνωση Βιβλιοθηκών.
Εννοιολογική Χαρτογράφηση
Τίτλος εκπαιδευτικής παρουσίασης
Μεταγράφημα παρουσίασης:

eXtensible Markup Language (XML) και XML Schema Γιώργος Θάνος Παρασκευή 31 Οκτωβρίου 2008

eXtensible Markup Language  Σχεδιάστηκε για την αποθήκευση και μεταφορά δεδομένων.  Η γλώσσα είναι κατά κανόνα αυτοπεριγραφική.  Δεν υπάρχουν προδιαγεγραμένα tags. Κάθε δημιουργός υποχρεούται να ορίσει τα δικά του.  Στην XML βασίζονται ευρέως γνωστά και χρησιμοποιούμενα standards, όπως :  XHTML  Web Services (SOAP, WSDL)  RSS  SVG (Scalable Vector Graphics)  XBRL Διαφάνεια 2

XML Tree ( παράδειγμα ) Tove Jani Don’t forget! Remember to visit the dentist 2008 January 08 Διαφάνεια 3 Root Element Child Element Attribute

XML – Συντακτικοί κανόνες (1/2)  Όλα τα XML elements πρέπει να κλείνουν σωστά  This is a paragraph  Τα XML tags είναι case sensitive  This is incorrect  But this is correct  Τα XML στοιχεία πρέπει να έχουν τη σωστή σειρά  This text is bold and italic ( ΛΑΘΟΣ !)  This text is bold and italic  Απαραίτητη η ύπαρξη root element  Οι τιμές των attributes πρέπει να περιέχονται σε μονά (‘’) ή διπλά (“”) εισαγωγικά. Διαφάνεια 4

XML – Συντακτικοί κανόνες (2/2)  Χαρακτήρες με ειδική σημασία στην XML είναι αναγκαίο να αντικαθίστανται με ειδικούς συνδυασμούς χαρακτήρων.  Σχόλια  Διαφάνεια 5 Συνδυασμός χαρακτήρων ΣύμβολοΠεριγραφή <<less than >>greater than &&ampersand &apos;'apostrophe ""quotation mark

XML – Συντακτικές και σημασιολογικές απαιτήσεις  Προκειμένου το XML κείμενο να είναι αποδεκτό απαιτείται :  Η XML είναι σωστή συντακτικά με βάση τους κανόνες που προαναφέρθηκαν.  Ένα ορθό κείμενο υπακούει σε συγκεκριμένους σημασιολο - γικούς κανόνες, προκειμένου να έχει νόημα η πληροφορία που απεικονίζει. Οι κανόνες κατά κανόνα απεικονίζονται σε ένα αρχείο XMLSchema ή DTD.  Η επιβεβαίωση της ορθής σύνταξης της XML γίνεται  Φορτώνοντας το αρχείο σε ενα XML capable browser.  Με χρήση online εργαλείων για verification.  Επεξεργαζόμενοι το περιεχόμενο της XML με μία γλώσσα προγραμματισμού ( π. χ PHP, Perl, Java, Python, C++). Διαφάνεια 6

XML Namespaces(1/4)  Συχνά εμφανίζεται σύγχιση σε σχέση με το σημασιο - λογικό περιεχόμενο το tags και των attributes σε ένα XML κείμενο. Διαφάνεια 7 Apples Bananas Bob Dylan The freewheelin Desire  Η σύγχυση μπορεί να αποφευχθεί χρησιμοποιώντας ένα πρόθεμα (prefix) για κάθε attribute. Το συγκεκριμένο πρόθεμα συνδέεται με κάποιο σημασιολογικό περιεχόμενο που είναι το XML Namespace.

XML Namespaces(2/4)  xmlns:h=“  xmlns:n=“urn:catalog:music:gthanos”  Κάθε namespace ορίζει μοναδικά το σημασιολογικό περιεχόμενο των επιμέρους τμημάτων του κειμένου XML.  Στοιχεία (elements) περισσοτέρων του ενός XML name- space μπορούν να συνηπάρχουν σε ένα XML κείμενο. Διαφάνεια 8 Apples Bananas Bob Dylan The freewheelin Desire

XML Namespaces(3/4)  Η ορισμός ενός Namespace ακολουθεί την παρακάτω σύνταξη  xmlns:prefix=“URI”  Το URI ορίζεται ως ένα string που απεικονίζει μοναδικά μία οντότητα στο Internet.  Μπορεί να είναι URL ή URN  URL :  URN: urn:issn: issn  Ένα Namespace μπορεί να ορίζεται είτε στο root element του XML κειμένου, είτε στο αρχικό XML element που χρησιμοποιεί το συγκεκριμένο Namespace. Διαφάνεια 9

XML Namespaces(4/4) Διαφάνεια 10 (α) Ορισμός του Namespace στο root XML element (β) Ορισμός του Namespace στο XML element που χρησι- μοποιεί το συγκεκριμένο Namespace.

XML Schemas in general  Το XML Schema περιγράφει τους περιορισμούς στη δομή ενός κειμένου XML επιπλέον των περιορισμών ορθής σύνταξης που επιβάλει η γλώσσα.  Το XML Schema περιγράφει την δομή ενός κειμένου XML και των περιορισμών που έχει αυτό.  Γλώσσες που περιγράφουν XML Schemata  DTD (Document Type Definition)  RelaxNG (OASIS Standard)  XML Schema (W3C Standard) Διαφάνεια 11

XML Schema (W3C) - Εισαγωγή Πηγή : Διαφάνεια 12 (α) Το αρχικό XML κείμενο. (β) Το XML Schema που περιγράφει το παραπάνω κείμενο

XML Schema (W3C) – element Πηγή : Διαφάνεια 13  xmlns:xs=  Περιγραφή του namespace που χρησιμοποιείται. Πρόκειται για το namespace που ορίζεται από το W3C.  targetNamespace=  Περιγραφή του target namespace, δηλ του default namespace του XML κειμένου που περιγράφει το συγκεκρμένο σχήμα.  xmlns=  Περιγραφή του default namespace για το σχήμα. Κατά κανόνα δεν απουσιάζει  elementFormDefault="qualified“  Όλα τα στοιχεία που περιέχονται στο συγκεκριμένο σχήμα πρέπει να ανήκουν σε συγκεκριμένο namespace.

XML Schema (W3C) – Simple Elements  Elements που περιέχουν μόνο text. Όχι, άλλα nested στοιχεία ή attributes.  Ορισμός ενός Simple XML element   Παραδείγματα   Τα πλέον κοινά datatypes Διαφάνεια 14 xs:stringxs:decimal xs:integerxs:boolean xs:datexs:time

XML Schema (W3C) – XSD Attributes  Τα Simple Elements δεν διαθέτουν attributes.  Κάθε attribute όμως λογίζεται ως Simple Element.  Η σύνταξη για ένα attribute δίνεται παρακάτω :   Παράδειγμα :  Πηγή : Διαφάνεια 15

XML Schema (W3C) – XSD Restrictions  Οι περιορισμοί μπορούν να εκφραστούν με χρήση regular expressions    Περισσότερα σχετικά με XSD Restrictions, θα βρείτε εδώ :  Διαφάνεια 16

XML Schema (W3C) – Complex Elements  empty elements  elements that contain only other elements John Smith  elements that contain only text Ice cream  elements that contain both other elements and text It happened on Πηγή : Διαφάνεια 17

XML Schema (W3C) – Empty Elements and Elements Only Elements Πηγή : Διαφάνεια 18 XML XML Schema XML XML Schema

XML Schema (W3C) – Simple Content and Mixed Content Eements Διαφάνεια 19 XML XML Schema XML XML Schema

XML Schema (W3C) – Simple Content vs. Complex Content (1/2)  Τα simpleContent και complexContent χρησιμοποιού - νται για να ορίσουν extensions ή restrictions σε υπάρχοντες τύπους αντικειμένων.  Τα simpleContent elements δηλώνουν ότι για ένα στοιχείο τύπου Simple Element θα οριστεί κάποια επέκταση ή περιορισμός. Πηγή : Διαφάνεια 20 XML XML Schema

XML Schema (W3C) – Simple Content vs. Complex Content(2/2)  Τα complexContent elements δηλώνουν ότι για ένα στοιχείο τύπου Complex Element θα οριστεί κάποια επέκταση ή περιορισμός. Διαφάνεια 21 XML XML Schema

XML Schema (W3C) – Άσκηση : Δημιουργίας ενός σχήματος.  Φτιάξτε το XML Schema του XML αρχείου που επιστρέφεται από το URL  Η απάντηση δίνεται on-line μαζί με τις παρουσιάσεις του μαθήματος. Πηγή : Διαφάνεια 22

Επιβεβαιώνοντας ένα XML αρχείο σε σχέση με το XML Schema  Use online verification machines όπως     Τα περισσότερα online εργαλεία αναμένουν να βρουν το σχήμα online.  Χρήση γλώσσας προγραμματισμού ( π. χ. java)  Περισσότερα πληροφορίες μπορείτε να βρείτε  path/ ή path/  age-summary.html age-summary.html Διαφάνεια 23

Επιβεβαιώνοντας ένα XML αρχείο σε σχέση με το XML Schema ( χρήση Java) Πηγή : java.sun.com Διαφάνεια 24 // parse an XML document into a DOM tree DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder(); Document document = parser.parse(new File("instance.xml")); // create a SchemaFactory capable of understanding WXS schemas SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); // load a WXS schema, represented by a Schema instance Source schemaFile = new StreamSource(new File("mySchema.xsd")); Schema schema = factory.newSchema(schemaFile); // create a Validator instance, which can be used to validate an instance document Validator validator = schema.newValidator(); // validate the DOM tree try { validator.validate(new DOMSource(document)); } catch (SAXException e) { // instance document is invalid! } XMLConstants.W3C_XML_SCHEMA_NS_URIW3C XML Schema 1.0 XMLConstants.RELAXNG_NS_URIRELAX NG 1.0

eXtensible Markup Language (XML) και XML Schema Ερωτήσεις ; Διαφάνεια 25