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

Σχετικά έγγραφα
Αναπαράςταςθ Γνϊςθσ ςτον Παγκόςμιο Ιςτό Ενότθτα 2: XML Δομθμζνα Ζγγραφα Ιςτοφ, Μζροσ 3 ο XML Schema

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Graphical XML Schema

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

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

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

Εισαγωγή(στη(γλώσσα(XML(

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 9η Διάλεξη: Η γλώσσα XML

Δικτυοκεντρικά Πληροφοριακά Συστήματα

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

ΠΡΟΧΩΡΗΜΔΝΑ ΘΔΜΑΣΑ ΒΑΔΩΝ ΓΔΓΟΜΔΝΩΝ

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

Εισαγωγή στη γλώσσα XML

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

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

ΥΠΗΡΕΣΙΑ ΥΠΟΒΟΛΗΣ ΠΙΣΤΟΠΟΙΗΤΙΚΩΝ ΦΟΡΟΛΟΓΙΚΩΝ ΕΛΕΓΧΩΝ API Επικοινωνίας με ΓΓΠΣ. Γ.Γ.Π.Σ. : Ομάδα Ευέλικτης Ανάπτυξης 5/2012

για το Μεταπτυχιακό Δίπλωμα Ειδίκευσης στην «Επιστήμη και Τεχνολογία Υπολογιστών»

Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών. ΗΥ-561 Διαχείριση Δεδομένων στο Παγκόσμιο Ιστό Ειρήνη Φουντουλάκη Βασίλης Χριστοφίδης

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

Τα web services του παρατηρητηρίου τιμών ακολουθούν λογική REST και απαντούν σε GET requests ως ακολούθως:

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

SEMANTIC INTEROPERABILITY

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ιαχείριση εδομένων στον Παγκόσμιο Ιστό

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

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

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

Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-561 ιαχείριση εδοµένων στο Παγκόσµιο Ιστό Βασίλης Χριστοφίδης

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

WebServices Περιεχόμενα

Αρχείο Απογραφικού Δελτίου & Δήλωσης Μηνιαίων Εισφορών

Εργαστήριο Σημασιολογικού Ιστού

Ενότητα 6 (κεφάλαιο 19) Υπηρεσιοκεντρική Αρχιτεκτονική

Πεπιγπαθή Διαδικηςακών Υπηπεζιών ΟΤΑ

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

ΠροδιαγραφέςWebServices ΚεντρικούΚόµβου ιαλειτουργικότητας Περιεχόµενα

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

extensible Markup Language: XML

Εργαστήριο Σημασιολογικού Ιστού

Προδιαγραθε ς WebServices Κενηρικου Κο μβοσ Διαλειηοσργικο ηηηας Περιετο μενα

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

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

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

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ

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

ασθενών με χρήση XML Web Services και BPEL

Άσκηση 1. Απάντηση Άσκησης 1

Κεφάλαιο 6 ΒΑΣΙΚΕΣ ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΛΕΙΤΟΥΡΓΙΚΟΤΗΤΑΣ ΚΑΙ ΑΝΑΠΤΥΞΗΣ ΣΤHΝ ΠΛΕΥΡΑ ΤΟΥ ΠΕΛΑΤΗ

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Μάθημα: Θέματα Πολυμέσων.

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

3. Επερώτηση XML Εγγράφων: Η Γλώσσα XPath

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

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

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

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

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Βάσεις Δεδομένων

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

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Τα tags μπορούν να εφωλιασθούν δομικά σε οποιοδήποτε βάθος <book> <author> XX </author> </book>

Τα προγράμματα σε ASP που χρησιμοποιήθηκαν για την υλοποίηση της διαχείρισης των μαθημάτων.

5. Επερώτηση XML Εγγράφων: Εισαγωγή στη Γλώσσα XQuery

ΜΕΡΟΣ II: XML DTD XML Namespaces XML Schema

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

Ανάπτυξη Γραφικού Περιβάλλοντος Σύνθεσης Υπηρεσιών Ιστού

Διάγραμμα Κλάσεων. Class Diagram

Ανάπτυξη και Σχεδίαση Λογισμικού

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. «Τεχνολογία Web Services»

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

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

Μητρώο [.gr] Οδηγός ιασύνδεσης. Αξιοποίησης του Εξυπηρετητή EPP. Έκδοση 2.0. [ EPP Server Connection and Use Guide ]

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

Προγραμματιστικές Εφαρμογές στο Διαδίκτυο Εργαστήριο 5

XML Schemas. (Primer) (Structures) (Datatypes)

Μητρώο [.gr] Οδηγός ιασύνδεσης. Αξιοποίησης του Εξυπηρετητή EPP. Έκδοση 3.0. [ EPP Server Connection and Use Guide ]

1. ΚΑΣΑΧΩΡΙΗ ΜΑΘΗΜΑΣΩΝ

Εργαστήριο Σημασιολογικού Ιστού

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

SQL Τύποι Δεδομένων Δημιουργία Πίνακα Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1)

Εισαγωγή στη γλώσσα προγραμματισμού C++14

22782 ΕΦΗΜΕΡΙΣ ΤΗΣ ΚΥΒΕΡΝΗΣΕΩΣ (ΤΕΥΧΟΣ ΕΥΤΕΡΟ) ΠΑΡΑΡΤΗΜΑ. ΕΚΘΕΣΗΣ ΦOPOΛOΓlKHΣ ΣΥΜΜΟΡΦΩΣΗΣ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

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

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

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Τμήμα Διοίκησης Επιχειρήσεων

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Αρχείο Απογραφικού Δελτίου & Δήλωσης Μηνιαίων Εισφορών

Βασικές έννοιες προγραμματισμού

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

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

Ο ΗΓΟΣ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΚΜΗΡΙΩΣΗΣ ΚΑΙ ΙΑΛΕΙΤΟΥΡΓΙΚΟΤΗΤΑΣ

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

Εργαστήριο 8. Προγραμματιστικές Εφαρμογές στο Διαδίκτυο

Κατανεμημένα Συστήματα με Java. Ενότητα # 18: Υπηρεσίες Ιστού Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΚΩΔΙΚΟΠΟΙΗΣΗ ONEGEOLOGY - EUROPE ΔΕΔΟΜΕΝΩΝ ΓΙΑ ΤΗΝ ΠΑΡΟΧΗ WMS WFS ΥΠΗΡΕΣΙΩΝ KATA INSPIRE ΜΕ ΒΑΣΗ ΤΟ ΠΡΟΤΥΠΟ GeoSciML 4.0

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη

Πρόβλημα 29 / σελίδα 28

Transcript:

ΑΝΑΠΑΡΑΣΤΑΣΗ ΓΝΩΣΗΣ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ XML-Schema Ι. Χατζηλυγερούδης

ΕΙΣΑΓΩΓΗ XML Schema vs DTD Πλουσιότερη γλώσσα: περισσότερες δυνατότητες αναπαράστασης δομήςπεριεχομένου εγγράφων Σύνταξη βασισμένη στην XML (: αποφυγή νέων συντακτικών αναλυτών) Δυνατότητα επαναχρησιμοποίησης και βελτίωσης των σχημάτων (schemas)

Ορίζει στοιχεία που μπορούν να εμφανίζονται σ ένα έγγραφο Ορίζει χαρακτηριστικά που μπορούν να εμφανίζονται σ ένα έγγραφο Ορίζει τη σειρά των στοιχείων-παιδιών Ορίζει τον αριθμό των στοιχείων-παιδιών Ορίζει αν ένα στοιχείο είναι κενό ή μπορεί να περιλάβει κείμενο Ορίζει τύπους δεδομένων για στοιχεία και χαρακτηριστικά Ορίζει εξ ορισμού (default) και σταθερές τιμές για στοιχεία και χαρακτηριστικά.

Το στοιχείο <schema> είναι η ρίζα κάθε σε κάθε XML Schema. Μια δήλωση σχήματος έχει ως εξής: <?xml version="1.0"?> <xs:schema>...... </xs:schema>

Το στοιχείο <schema> μπορεί να περιέχει κάποια χαρακτηριστικά: <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema" targetnamespace="http://www.w3schools.com" xmlns="http://www.w3schools.com" elementformdefault="qualified">...... </xs:schema> Τα στοιχεία και οι τύποι δεδομένων που Όλα τα χρησιμοποιούμενα Τα στοιχεία στοιχεία χρησιμοποιούνται που ορίζονται από στο σχήμα προέρχονται από από το XML έγγραφο που Ο αυτό δηλώθηκαν εξ ορισμού το σχήμα χώρος τον προέρχονται ονομάτων είναι χώρο ονομάτων σ αυτό το σχήμα πρέπει ο να από "http://www.w3schools.com" τον χώρο "http://www.w3.org/2001/xmlschema". ονομάτων πιστοποιούνται από τον χώρο http://www.w3schools.com" Τα στοιχεία και οι τύποι δεδομένων από τον ονομάτων παραπάνω χώρο ονομάτων πρέπει να έχουν ως πρόθεμα το xs

Ένα απλό αρχείο XML (note.xml) <?xml version="1.0"?> <!DOCTYPE note SYSTEM "http://www.w3schools.com/dtd/note.dtd"> <note> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note>

Ένα απλό αρχείο XML (note.xml) <?xml version="1.0"?> <!DOCTYPE note SYSTEM "http://www.w3schools.com/dtd/note.dtd"> <note> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note> με αναφορά σε ένα DTD

Το αντίστοιχο αρχείο DTD (note.dtd) <!ELEMENT note (to, from, heading, body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>

Ένα απλό αρχείο XML (note.xml) <?xml version="1.0"?> <note xmlns="http://www.w3schools.com" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://www.w3schools.com note.xsd"> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note>

Ένα απλό αρχείο XML (note.xml) <?xml version="1.0"?> <note xmlns="http://www.w3schools.com" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://www.w3schools.com note.xsd"> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note> με αναφορά σε ένα XML Schema

Το αντίστοιχο αρχείο XML Schema (note.xsd) <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema" targetnamespace="http://www.w3schools.com" xmlns="http://www.w3schools.com" Σύνθετο στοιχείο elementformdefault="qualified"> <xs:element name="note"> <xs:complextype> <xs:sequence> <xs:element name="to" type="xs:string"/> <xs:element name="from" type="xs:string"/> <xs:element name="heading" type="xs:string"/> <xs:element name="body" type="xs:string"/> </xs:sequence> </xs:complextype> </xs:element> Απλό στοιχείο </xs:schema>

-Απλά Στοιχεία Απλά στοιχεία (περιέχουν μόνο κείμενο) <xs:element name= xxx type= yyy > Ενσωματωμένοι τύποι δεδομένων: xs:string, xs:decimal, xs:integer, xs:boolean, xs:date, xs:time Παραδείγματα στοιχείων XML: <lastname>hatzis</lastname> <age>52</age> <dateborn>1956-05-29</dateborn> Αντίστοιχοι ορισμοί XML Schema: <xs:element name="lastname" type="xs:string"/> <xs:element name="age" type="xs:integer"/> <xs:element name="dateborn" type="xs:date"/>

-Απλά Στοιχεία Χρήση Εξ ορισμού και Σταθερών Τιμών <xs:element name="color" type="xs:string" default="red"/> <xs:element name="color" type="xs:string" fixed="red"/>

-Χαρακτηριστικά Χαρακτηριστικά (attributes) Τα χαρακτηριστικά δηλώνονται ως απλοί τύποι. Τα απλά στοιχεία δεν μπορούν να έχουν χαρακτηριστικά. Αν έχουν χαρακτηρίζονται σύνθετα. Σύνταξη: <xs:attribute name="xxx" type="yyy"/> Ενσωματωμένοι τύποι δεδομένων: xs:string, xs:decimal, xs:integer, xs:boolean, xs:date, xs:time Παράδειγμα (στοιχείο XML με χαρακτηριστικό): <lastname lang="en">smith</lastname> Αντίστοιχος ορισμός <xs:attribute name="lang" type="xs:string"/>

-Χαρακτηριστικά Χρήση Εξ ορισμού και Σταθερών Τιμών <xs:attribute name="lang" type="xs:string" default="en"/> <xs:attribute name="lang" type="xs:string" fixed="en"/> Προαιρετικά και Υποχρεωτικά Χαρακτηριστικά Προαιρετικά: Εξ ορισμού Υποχρεωτικά: <xs:attribute name="lang" type="xs:string" use="required"/>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length)

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="age"> <xs:simpletype> <xs:restriction base="xs:integer"> <xs:mininclusive value="0"/> <xs:maxinclusive value="120"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="car"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:enumeration value="audi"/> <xs:enumeration value="golf"/> <xs:enumeration value="bmw"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="car" type="cartype"/> <xs:simpletype name="cartype"> <xs:restriction base="xs:string"> <xs:enumeration value="audi"/> <xs:enumeration value="golf"/> <xs:enumeration value="bmw"/> </xs:restriction> </xs:simpletype> Εδώ ο τύπος cartype μπορεί να χρησιμοποιηθεί και από άλλα στοιχεία, δεδομένου ότι δεν αποτελεί μέρος του στοιχείου car.

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="letter"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="[a-z]"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="initials"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="[a-z][a-z][a-z]"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="initials"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="[a-za-z][a-za-z][a-za-z]"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="choice"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="[xyz]"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="prodid"> <xs:simpletype> <xs:restriction base="xs:integer"> <xs:pattern value="[0-9][0-9][0-9][0-9][0-9]"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="letter"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="([a-z])*"/> </xs:restriction> </xs:simpletype> </xs:element> Αλφαριθμητικά με 0 ή περισσότερα μικρά γράμματα

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="letter"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="([a-z][a-z])+"/> </xs:restriction> </xs:simpletype> </xs:element> Αλφαριθμητικά με 1 ή περισσότερα ζεύγη του τύπου <μικρό><κεφαλαίο>. Π.χ. stop (αλλά όχι STOP, stop stop)

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="gender"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="male female"/> </xs:restriction> </xs:simpletype> </xs:element>

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="password"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:pattern value="[a-za-z0-9]{8}"/> </xs:restriction> </xs:simpletype> </xs:element> Αλφαριθμητικά με ακριβώς 8 χαρακτήρες από μικρά ή κεφαλαία ή αριθμητικά ψηφία.

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="password"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:length value="8"/> </xs:restriction> </xs:simpletype> </xs:element> Αλφαριθμητικά με ακριβώς 8 χαρακτήρες.

Περιορισμοί (σε στοιχεία ή χαρακτηριστικά) Στο περιεχόμενο (τύπος δεδομένων) Σε περιοχές τιμών (mininclusive, maxinclusive) Σε σύνολα τιμών (enumeration) Σε ακολουθίες τιμών (pattern) Στο μήκος (length) Παράδειγμα <xs:element name="password"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:minlength value="5"/> <xs:maxlength value="8"/> </xs:restriction> </xs:simpletype> </xs:element> Αλφαριθμητικά με 5-8 χαρακτήρες.

-Σύνθετα Στοιχεία Σύνθετα στοιχεία (περιέχουν άλλα στοιχεία ή χαρακτηριστικά) Είδη: Κενά στοιχεία Στοιχεία που περιέχουν μόνο άλλα στοιχεία (ή χαρακτηριστικά) Στοιχεία που περιέχουν μόνο κείμενο Στοιχεία που περιέχουν και άλλα στοιχεία/χαρακτηριστικά και κείμενο

-Σύνθετα Στοιχεία Κενό στοιχείο <product pid="1345"/> Με άλλα στοιχεία Παραδείγματα <employee> <firstname>john</firstname> <lastname>smith</lastname> </employee> Με μόνο κείμενο <food type="dessert">ice cream</food> Με στοιχεία και κείμενο <description> It happened on <date lang="norwegian">03.03.99</date>... </description>

-Σύνθετα Στοιχεία Ορισμός-Στοιχείο με άλλα στοιχεία <employee> <firstname>john</firstname> <lastname>smith</lastname> </employee> 1 ος τρόπος (ανώνυμα) Ο ορισθείς σύνθετος τύπος μπορεί να χρησιμοποιηθεί μόνο μέσα στο στοιχείο employee. <xs:element name="employee"> <xs:complextype> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complextype> </xs:element>

-Σύνθετα Στοιχεία Ορισμός-Στοιχείο με άλλα στοιχεία <employee> <firstname>john</firstname> <lastname>smith</lastname> </employee> 2 ος τρόπος (μέσω χαρακτηριστικού) <xs:element name="employee" type="personinfo"/> <xs:complextype name="personinfo"> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complextype> Ο ορισθείς σύνθετος τύπος μπορεί να χρησιμοποιηθεί και σε άλλα στοιχεία.

-Σύνθετα Στοιχεία Π.χ. <xs:element name="employee" type="personinfo"/> <xs:element name="student" type="personinfo"/> <xs:element name="member" type="personinfo"/> <xs:complextype name="personinfo"> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complextype>

-Σύνθετα Στοιχεία Ορισμός μέσω υπάρχοντος σύνθετου στοιχείου <xs:element name="employee" type="fullpersoninfo"/> <xs:complextype name="fullpersoninfo"> <xs:complexcontent> <xs:extension base="personinfo"> <xs:sequence> <xs:element name="address" type="xs:string"/> <xs:element name="city" type="xs:string"/> <xs:element name="country" type="xs:string"/> </xs:sequence> </xs:extension> </xs:complexcontent> </xs:complextype>

-Σύνθετα Στοιχεία Ορισμός-Κενό στοιχείο <product prodid="1345" /> <xs:element name="product"> <xs:complextype> <xs:attribute name="prodid" type="xs:positiveinteger"/> </xs:complextype> </xs:element> <xs:element name="product" type="prodtype"/> <xs:complextype name="prodtype"> <xs:attribute name="prodid" type="xs:positiveinteger"/> </xs:complextype>

-Σύνθετα Στοιχεία Ορισμός-Στοιχείο με μόνο κείμενο (1) <shoesize country="france">35</shoesize> <xs:element name="shoesize"> <xs:complextype> <xs:simplecontent> <xs:extension base="xs:integer"> <xs:attribute name="country" type="xs:string" /> </xs:extension> </xs:simplecontent> </xs:complextype> </xs:element>

-Σύνθετα Στοιχεία Ορισμός-Στοιχείο με μόνο κείμενο (2) <shoesize country="france">35</shoesize> <xs:element name="shoesize" type="shoetype"/> <xs:complextype name="shoetype"> <xs:simplecontent> <xs:extension base="xs:integer"> <xs:attribute name="country" type="xs:string" /> </xs:extension> </xs:simplecontent> </xs:complextype>

-Σύνθετα Στοιχεία Ορισμός-Στοιχείο με κείμενο και στοιχεία (1) <letter> Dear Mr.<name>John Smith</name>. Your order <orderid>1032</orderid> will be shipped on <shipdate>2001-07-13</shipdate>. </letter> <xs:element name="letter"> <xs:complextype mixed="true"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="orderid" type="xs:positiveinteger"/> <xs:element name="shipdate" type="xs:date"/> </xs:sequence> </xs:complextype> </xs:element>

-Σύνθετα Στοιχεία Ορισμός-Στοιχείο με κείμενο και στοιχεία (2) <letter> Dear Mr.<name>John Smith</name>. Your order <orderid>1032</orderid> will be shipped on <shipdate>2001-07-13</shipdate>. </letter> <xs:element name="letter" type="lettertype"/> <xs:complextype name="lettertype" mixed="true"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="orderid" type="xs:positiveinteger"/> <xs:element name="shipdate" type="xs:date"/> </xs:sequence> </xs:complextype>

Χώροι Ονομάτων (Namespaces) <table> <tr> <td>apples</td> <td>bananas</td> </tr> </table> <table> <name>african Coffee Table</name> <width>80</width> <length>120</length> </table> Σύγκρουση ονομάτων

Χώροι Ονομάτων (Namespaces) <h:table> <h:tr> <h:td>apples</h:td> <h:td>bananas</h:td> </h:tr> </h:table> <f:table> <f:name>african Coffee Table</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table> Χρήση προθέματος Ορισμός Χώρου Ονόματος

Χώροι Ονομάτων (Namespaces) Ορισμός : Χρήση χαρακτηριστικού xmlns xmlns:prefix= URI <root> <h:table xmlns:h="http://www.w3.org/tr/html4/"> <h:tr> <h:td>apples</h:td> <h:td>bananas</h:td> </h:tr> </h:table> <f:table xmlns:f="http://www.w3schools.com/furniture"> <f:name>african Coffee Table</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table> </root>

Χώροι Ονομάτων (Namespaces) Όταν ορίζουμε ένα χώρο ονομάτων για ένα στοιχείο, όλα τα στοιχεία-παιδιά του με το ίδιο πρόθεμα συσχετίζονται με τον ίδιο χώρο ονομάτων. Χώροι ονομάτων μπορούν να δηλωθούν στα στοιχεία που χρησιμοποιούνται ή στο στοιχείο root. <root xmlns:h="http://www.w3.org/tr/html4/" xmlns:f="http://www.w3schools.com/furniture"> <h:table> <h:tr> <h:td>apples</h:td> <h:td>bananas</h:td> </h:tr> </h:table> <f:table> <f:name>african Coffee Table</f:name> <f:width>80</f:width> <f:length>120</f:length> </f:table> </root>

Χώροι Ονομάτων (Namespaces) Ο ορισμός ενός εξ ορισμού χώρου ονομάτων αφαιρεί την απαίτηση για προθέματα. xmlns = namespaceuri <table xmlns="http://www.w3.org/tr/html4/"> <tr> <td>apples</td> <td>bananas</td> </tr> </table> <table xmlns="http://www.w3schools.com/furniture"> <name>african Coffee Table</name> <width>80</width> <length>120</length> </table>