11
XML Schema XML Schema

XML Schema

  • Upload
    braden

  • View
    21

  • Download
    0

Embed Size (px)

DESCRIPTION

XML Schema. eXtensible Markup Language(XML). Η XML είναι μια γλώσσα ανεξάρτητη από σύστημα και υλικό για την αναπαράσταση δεδομένων και της μορφής τους σε ένα έγγραφο XML . Είναι μια απλή έκδοση της SGML Σταδιακά θα αντικαταστήσει την HTML - PowerPoint PPT Presentation

Citation preview

Page 1: XML Schema

XML SchemaXML Schema

Page 2: XML Schema

eXtensible Markup Language(XML)eXtensible Markup Language(XML)

– Η XML είναι μια γλώσσα ανεξάρτητη από σύστημα και υλικό για την αναπαράσταση δεδομένων και της μορφής τους σε ένα έγγραφο XML.

– Είναι μια απλή έκδοση της SGML

– Σταδιακά θα αντικαταστήσει την HTML

– Ένα έγγραφο XML στην πιο απλή του μορφή είναι ένα αρχείο κειμένου το οποίο περιέχει δεδομένα μαζί με σήμανση η οποία καθορίζει τη δομή των δεδομένων

Page 3: XML Schema

Απλό παράδειγμα Απλό παράδειγμα XML XML εγγράφουεγγράφου

note.xml <?xml version="1.0"?>

<note>  <to>Tove</to>  <from>Jani</from>  <heading>Reminder</heading>  <body>Don't forget me this weekend!</body></note>

Page 4: XML Schema

Document Type Definition (DTD)Document Type Definition (DTD)

Ένα DTD είναι μία προδιαγραφή η οποία μπορεί να ακολουθηθεί όταν δημιουργούμε ένα έγγραφο XML για να εξασφαλίσουμε την ορθότητά του.

Κυριότερα χαρακτηριστικά του DTD:

Το DTD χρησιμοποιείται για να καθορίσει έγκυρα στοιχεία και ιδιότητες που μπορούν να χρησιμοποιηθούν σε ένα έγγραφο XML.

Με ένα DTD μπορούμε να καθορίσουμε μια ιεραρχική δομή στοιχείων.

Page 5: XML Schema

Ένα αρχείο DTDΈνα αρχείο DTD

note.dtd

<!ELEMENT note (to, from, heading, body)><!ELEMENT to (#PCDATA)><!ELEMENT from (#PCDATA)><!ELEMENT heading (#PCDATA)><!ELEMENT body (#PCDATA)>

Page 6: XML Schema

Τι είναι ένα Τι είναι ένα XML Schema;XML Schema;

Το XML Schema είναι μια πιο προηγμένη έκδοση του DTD. Ο σκοπός του είναι να καθοριστούν οι νομικές δομικές μονάδες ενός εγγράφου XML, ακριβώς όπως ένα DTD.

Κύριοι στόχοι του XML Schema:

Να μπορέσουν να εκφραστούν μέσα στο πρότυπο αρχές αντικειμενοστραφούς σχεδιασμού οι οποίες μπορούν να βρεθούν σε όλες τις αντικειμενοστραφείς γλώσσες προγραμματισμού.

Να παρέχεται υποστήριξη για σύνθετους τύπους δεδομένων παρόμοια με την υποστήριξη που υπάρχει στις περισσότερες σχεσιακές βάσεις δεδομένων.

Page 7: XML Schema

Διαφορές Διαφορές DTD – XML SchemaDTD – XML Schema

Το XML Schema υποστηρίζει namespaces ενώ το DTD όχι.

Το XML Schema χρησιμοποιεί σύνταξη XML η οποία είναι εύκολη να την κατανοήσεις ενώ το DTD χρησιμοποιεί ειδική σύνταξη.

Το XML Schema υποστηρίζει πρότυπους τύπους δεδομένων καθώς επίσης και τύπους ορισμένους από το χρήστη (user-defined) ενώ το DTD παρέχει μόνο τύπους κειμένου.

Το XML Schema υποστηρίζει κληρονομικότητα ενώ το DTD όχι.

Page 8: XML Schema

Τα σχήματα Τα σχήματα XMLXML χρησιμοποιούν τη χρησιμοποιούν τη σύνταξη σύνταξη XMLXML

Μια άλλη μεγάλη δύναμη για τα σχήματα XML είναι ότι γράφονται σε XML.

Μερικά οφέλη :

1. Δεν ειναι απαραίτητο να μάθετε μια νέα γλώσσα

2. Μπορείτε να χρησιμοποιήσετε το συντάκτη XML για να εκδώσετε τα αρχεία των XML σχημάτων σας

Page 9: XML Schema

DTD – XML SchemaDTD – XML SchemaΜία οπτική σύγκρισηΜία οπτική σύγκριση

Page 10: XML Schema

Παράδειγμα Παράδειγμα XML XML σχήματοςσχήματος

"note.xsd"

<?xml version="1.0"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"targetNamespace="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>

Page 11: XML Schema

Παραδειγμα αναφοράς εγγράφου XML σε ένα σχήμα XML<?xml version="1.0"?>

<notexmlns: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>