Εκμάθηση XML για αρχάριους
Τι είναι το XML;
XML σημαίνει eXέντατος MArkupe Lγλώσσα. Είναι μια γλώσσα (όχι> γλώσσα προγραμματισμού) που χρησιμοποιεί τη σήμανση και μπορεί να επεκταθεί. Προέρχεται από Standard Gενεργοποιημένος MArkupe Lγλώσσα (SGML). Η XML χρησιμοποιεί επίσης DTD (Dκατοχή TΥΠΕ Definitions) για να ορίσετε τη δομή του εγγράφου XML.
Η XML δεν προορίζεται για το χειρισμό υπολογιστικών λειτουργιών και αλγορίθμων. Επομένως, η XML δεν είναι γλώσσα προγραμματισμού. Ο κύριος στόχος είναι η μεταφορά δεδομένων και όχι η εμφάνιση πληροφοριών. Η XML γεφυρώνει το χάσμα μεταξύ της αναγνωσιμότητας από τον άνθρωπο και της αναγνωσιμότητας από μηχανή. Σε αντίθεση με τις ετικέτες HTML, οι ετικέτες XML είναι αυτοπεριγραφικές.
Η XML είναι μια ανοιχτή μορφή. Η επέκταση ονόματος αρχείου της XML είναι .xml
Ιστορία της XML
Η XML ξεκίνησε πολύ πίσω το 1996 και δημοσιεύτηκε για πρώτη φορά το 1998. World Wide Web CΗ onsortium (W3C) είναι ο προγραμματιστής του XML, και έγινε α Σύσταση W3C στο 1998.
Υπάρχουν δύο εκδόσεις XML.
- XML 1.0
- XML 1.1
XML 1.1 είναι η τελευταία έκδοση. Ακόμη, XML 1.0 είναι η πιο χρησιμοποιούμενη έκδοση.
Οι συντάκτες της XML είναι:
- Τιμ Μπρέι,
- Jean Paoli,
- CM Sperberg,
- Eve Maler,
- François Yergeau.
Χαρακτηριστικά XML
Ακολουθούν ορισμένα σημαντικά χαρακτηριστικά της XML:
- Είναι επεκτάσιμο και αναγνώσιμο από τον άνθρωπο.
- Είναι ανεξάρτητο από πλατφόρμα και γλώσσα.
- Διατηρεί λευκό χώρο.
- Συνολική απλότητα.
- Αυτοπεριγραφικός χαρακτήρας.
- Διαχωρίζει τα δεδομένα από την HTML.
- Οι ετικέτες XML δεν είναι προκαθορισμένες. Πρέπει να ορίσετε τις προσαρμοσμένες ετικέτες σας.
- Η XML σχεδιάστηκε για να μεταφέρει δεδομένα, όχι για να εμφανίζει αυτά τα δεδομένα.
- Ο κώδικας σήμανσης της XML είναι εύκολο να κατανοηθεί από έναν άνθρωπο.
- Η καλά δομημένη μορφή είναι εύκολη στην ανάγνωση και εγγραφή από προγράμματα.
- Η XML είναι μια επεκτάσιμη γλώσσα σήμανσης όπως η HTML.
Κωδικοποίηση XML
Κωδικοποίηση είναι η μετατροπή χαρακτήρων Unicode στη δυαδική τους αναπαράσταση. Το UTF χρησιμοποιείται για κωδικοποίηση XML. UTF σημαίνει UCS (UCS σημαίνει Universal CΧαρακτήρας Set) Tμεταμόρφωση Fορμάτ.
Κυρίως, υπάρχουν δύο τύποι κωδικοποίησης UTF.
- UTF-8: Το UTF-8 χρησιμοποιεί 8-bit για να αναπαραστήσει τους χαρακτήρες.
- UTF-16
Παράδειγμα:
<?xml version="1.0" encoding="UTF-8"?>
Χρησιμοποιεί 16-bit για να αναπαραστήσει τους χαρακτήρες.
Παράδειγμα:
<?xml version="1.0" encoding="UTF-16"?>
Μπορείτε να χρησιμοποιήσετε κωδικοποίηση μέσα στη δήλωση XML. Το UTF-8 είναι η προεπιλεγμένη κωδικοποίηση σε XML.
Σύνταξη XML
Το παρακάτω τμήμα κώδικα δείχνει τη βασική σύνταξη XML.
<?xml version = "1.0" encoding = "UTF-8" ?> <root> <child> <subchild>.....</subchild> </child> </root>
Δήλωση XML
Η δήλωση XML αποτελείται από την έκδοση XML, την κωδικοποίηση χαρακτήρων ή/και την αυτόνομη κατάσταση. Η δήλωση είναι προαιρετική.
Σύνταξη για δήλωση XML
Το παρακάτω τμήμα κώδικα δείχνει τη σύνταξη για τη δήλωση XML.
<?xml version="version_number," encoding="character_encoding" standalone="yes_or_no" ?>
Κανόνες δήλωσης XML
Ακολουθούν κανόνες δήλωσης XML.
- Εάν υπάρχει η δήλωση XML, πρέπει να είναι το πρώτο πράγμα που εμφανίζεται.
- Η δήλωση XML κάνει διάκριση πεζών-κεφαλαίων και πρέπει να ξεκινά με πεζά <?xml.
- Δεν έχει ετικέτα κλεισίματος.
Παράδειγμα δήλωσης XML
Το ακόλουθο τμήμα κώδικα δείχνει ένα παράδειγμα δήλωσης XML.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
Σχόλια XML
Τα σχόλια είναι προαιρετικά. Η προσθήκη σχολίων βοηθά στην κατανόηση του περιεχομένου του εγγράφου.
Σύνταξη για σχόλια XML
Ένα σχόλιο ξεκινά με Si al principi no tens èxit, aleshores el paracaigudisme no és per a tu. και τελειώνει με ->.
Το ακόλουθο τμήμα κώδικα δείχνει τη σύνταξη για σχόλια XML.
<!-- Add your comment here -->
Ετικέτες και στοιχεία XML
Οι ετικέτες λειτουργούν ως ζεύγη εκτός από δηλώσεις. Κάθε ζεύγος ετικετών αποτελείται από ένα ετικέτα ανοίγματος (Επίσης γνωστό ως ετικέτα έναρξης) Και ετικέτα κλεισίματος (Επίσης γνωστό ως ετικέτα τέλους).
Τα ονόματα των ετικετών εσωκλείονται <>. Για ένα συγκεκριμένο ζεύγος ετικετών, οι ετικέτες έναρξης και λήξης πρέπει να είναι πανομοιότυπες εκτός από την ετικέτα τέλους / μετά τη <.
<name>...</name>
Οτιδήποτε μεταξύ των ετικετών ανοίγματος και κλεισίματος αναφέρεται ως περιεχόμενο.
Η ετικέτα ανοίγματος, το περιεχόμενο και η ετικέτα κλεισίματος, συνολικά, αναφέρονται ως an στοιχείο.
Opening tag + content + closing tag = an element
Σημείωση: Τα στοιχεία μπορεί επίσης να περιέχουν χαρακτηριστικά. Θα μάθετε τις ιδιότητες πολύ σύντομα.
Ας εξετάσουμε το παρακάτω στοιχείο.
<age>20</age>
Στο παραπάνω στοιχείο,
- την ηλικία του είναι το όνομα του στοιχείου.
Σημείωση: Όνομα ετικέτας αναφέρεται επίσης ως an στοιχείο or όνομα στοιχείου.
- – ετικέτα ανοίγματος
- 25 - περιεχόμενο
- – ετικέτα κλεισίματος.
Εάν δεν υπάρχει περιεχόμενο μεταξύ των ετικετών, όπως φαίνεται παρακάτω, αναφέρεται ως κενές ετικέτες.
<result></result>
Κανόνες ετικετών και στοιχείων XML
Η παρακάτω λίστα εμφανίζει κανόνες ετικέτας XML και στοιχείων.
- Οι ετικέτες κάνουν διάκριση πεζών-κεφαλαίων.
Παράδειγμα:
Σωστός:
<age>20</age>
Λανθασμένος:
<age>20</Age>
Σημείωση: ΗΛΙΚΙΑ, Ηλικία, και την ηλικία του είναι τρία διαφορετικά ονόματα σε XML.
- Όλα τα έγγραφα XML πρέπει να περιέχουν ένα μόνο ριζικό στοιχείο.
- Όλα τα στοιχεία πρέπει να έχουν ετικέτα κλεισίματος (εκτός από τις δηλώσεις).
- Ένα όνομα ετικέτας πρέπει να ξεκινά με ένα γράμμα ή μια υπογράμμιση και δεν μπορεί να ξεκινά με το xml.
- Ένα όνομα ετικέτας μπορεί να περιέχει γράμματα, ψηφία, παύλες, κάτω παύλες και τελείες. Οι παύλες υπογραμμίζουν και οι τελείες είναι τα μόνα σημεία στίξης που επιτρέπονται.
- Ένα όνομα ετικέτας δεν μπορεί να περιέχει κενά.
- Όλα τα στοιχεία πρέπει να τοποθετηθούν σωστά.
Παράδειγμα:
Σωστός:
<b><u>This text is bold and italic</u></b>
Λανθασμένος:
<b><u>This text is bold and italic.</b></u>
Χαρακτηριστικά XML
Το χαρακτηριστικό για ένα στοιχείο τοποθετείται μετά το όνομα της ετικέτας στην ετικέτα έναρξης. Μπορείτε να προσθέσετε περισσότερα από ένα χαρακτηριστικά για ένα μεμονωμένο στοιχείο με διαφορετικά ονόματα χαρακτηριστικών.
Ας εξετάσουμε το παρακάτω έγγραφο XML.
<company name="ABC Holdings" location="London"> <chairman>Mr. John</chairman> <gm>Mr. Wood</gm> </company>
Υπάρχουν δύο ιδιότητες στο εταίρα στοιχείο, δηλ όνομα και τοποθεσία.
Ας μελετήσουμε το όνομα Χαρακτηριστικό,
- όνομα=”ABC Holdings” – μια ιδιότητα
- όνομα – όνομα χαρακτηριστικού
- ABC Holdings – τιμή χαρακτηριστικού
Σημείωση: Μια όνομα χαρακτηριστικού είναι επίσης γνωστό ως an Χαρακτηριστικό.
Επίσης, σημειώστε ότι στο παραπάνω παράδειγμα, το εταίρα είναι το ρίζα στοιχείο.
Κανόνες χαρακτηριστικών XML
Η παρακάτω λίστα δείχνει κανόνες χαρακτηριστικών XML.
- Οι τιμές των χαρακτηριστικών πρέπει να βρίσκονται εντός εισαγωγικών.
- Ένα στοιχείο δεν μπορεί να περιέχει πολλά χαρακτηριστικά με το ίδιο όνομα.
Ιδιότητα έναντι Στοιχείου
Εξακολουθείτε να μπερδεύεστε σχετικά με τη διαφορά μεταξύ ενός χαρακτηριστικού και ενός στοιχείου; Εδώ είναι ένα άλλο παράδειγμα.
Ας εξετάσουμε τα έγγραφα Α και Β που δίνονται παρακάτω.
Έγγραφο Α:
<teacher subject="English"> <name>Mr. John</name>. <qualification>Graduate</qualification> </teacher>
Έγγραφο Β:
<teacher> <subject>English</subject> <name>Mr. John</name> <qualification>Graduate</qualification> </teacher>
Στο έγγραφο Α, το θέμα είναι ένα αποδίδουν.
Στο έγγραφο Β, το θέμα είναι ένα στοιχείο.
Οντότητες XML
Τι είναι οι οντότητες XML;
Με απλά λόγια, οι οντότητες είναι ένας τρόπος αναπαράστασης ειδικών χαρακτήρων. Οι οντότητες είναι επίσης γνωστές ως οντότητα αναφορές.
Γιατί χρειάζεστε οντότητες XML;
Μερικοί χαρακτήρες (όπως π ", & <, και ούτω καθεξής) είναι δεσμευμένα σε XML. Αναφέρονται ως ειδικοί χαρακτήρες και δεν μπορεί να χρησιμοποιηθεί απευθείας για άλλους σκοπούς.
Για παράδειγμα, η < και > σύμβολα που χρησιμοποιούνται για ετικέτες. Δεν μπορείτε να πληκτρολογήσετε απευθείας από το πληκτρολόγιο για μικρότερη και μεγαλύτερη από ό, τι σημάδια. Αντίθετα, πρέπει να χρησιμοποιήσετε οντότητες.
Ο παρακάτω πίνακας δείχνει μερικές από τις δημοφιλείς οντότητες XML.
Χαρακτήρας | Descriptιόν | Ονομα οντότητας | Χρήση |
---|---|---|---|
" | Εισαγωγικό (διπλό εισαγωγικό) | quot | " |
& | Ampersand | amp | & |
» | Απόστροφο (μονό απόσπασμα) | apos | ' |
< | Less παρά σημάδι | lt | < |
> | Μεγαλύτερο από σημάδι | gt | > |
Παράδειγμα:
<friend> <name>My friends are Alice & Jane.</name> </friend>
HTML έναντι XML
Ομοιότητες μεταξύ HTML και XML
Η παρακάτω λίστα δείχνει τις ομοιότητες μεταξύ HTML και XML.
- Και οι δύο είναι ανοιχτές μορφές.
- Και οι δύο είναι γλώσσες σήμανσης.
- Και οι δύο χρησιμοποιούν ετικέτες και χαρακτηριστικά για να περιγράψουν το περιεχόμενο.
Διαφορές μεταξύ HTML και XML
Παρόλο που η XML είναι σαν την HTML, η XML δεν αντικαθιστά την HTML. Υπάρχουν μερικές σημαντικές διαφορές μεταξύ HTML και XML επίσης.
Ο παρακάτω πίνακας λίστας δείχνει μια σύγκριση μεταξύ HTML και XML.
HTML | XML | |
---|---|---|
Σημαίνει | Γλώσσα σήμανσης υπερκειμένου | Επεκτάσιμη γλώσσα σήμανσης |
Τύπος γλώσσας | Μια προκαθορισμένη γλώσσα σήμανσης. | Ένα πλαίσιο για τον καθορισμό γλωσσών σήμανσης. |
Δομικές λεπτομέρειες | Δεν παρέχεται. | Υπό την προϋπόθεση. |
Σκοπός | Χρησιμοποιείται για την εμφάνιση δεδομένων. | Χρησιμοποιείται για τη μεταφορά δεδομένων |
Οδηγείται από | Μορφοποίηση καθοδηγούμενη. | Με γνώμονα το περιεχόμενο. |
Φύση | Έχει στατικό χαρακτήρα. | Έχει δυναμική φύση. |
Τύπος ετικέτας | Προκαθορισμένες ετικέτες. | Ετικέτες που καθορίζονται από το χρήστη. |
Όριο ετικέτας | Διατίθεται περιορισμένος αριθμός ετικετών. | Οι ετικέτες είναι επεκτάσιμες. |
Ετικέτες κλεισίματος | Δεν είναι απαραίτητο να χρησιμοποιείτε ετικέτες κλεισίματος (αλλά συνιστάται η χρήση ετικετών κλεισίματος). | Το κλείσιμο των ετικετών είναι υποχρεωτικό. |
Υποστήριξη χώρου ονομάτων | Δεν υποστηρίζεται. | Υποστηρίζεται. |
Ευαισθησία περίπτωσης | Οι ετικέτες δεν κάνουν διάκριση πεζών-κεφαλαίων. | Οι ετικέτες κάνουν διάκριση πεζών-κεφαλαίων. |
Λευκός χώρος | Το λευκό διάστημα δεν μπορεί να διατηρηθεί (μπορεί να αγνοήσει το λευκό διάστημα). | Διατηρήθηκε ο λευκός χώρος (δεν μπορεί να αγνοηθεί ο λευκός χώρος). |
Ανάλυση JavaΓραφή | Δεν χρειάζεται καμία επιπλέον εφαρμογή. | Χρειάζεται υλοποίηση DOM. |
Ένθεση κώδικα | Δεν χρειάζεται απαραίτητα. | Απαιτείται. |
λάθη | Μπορεί να αγνοήσει μικρά σφάλματα. | Δεν επιτρέπονται σφάλματα. |
Επέκταση ονόματος αρχείου | . Html or Htm. | . Xml |
Μέγεθος | Συγκριτικά μεγάλο. | Συγκριτικά μικρό. |
Αποσπάσματα | Δεν απαιτούνται εισαγωγικά για τιμές χαρακτηριστικών. | Απαιτείται για τιμές χαρακτηριστικών XML. |
Υποστήριξη αντικειμένων | Προσφέρει υποστήριξη εγγενών αντικειμένων. | Τα αντικείμενα πρέπει να εκφράζονται με συμβάσεις. |
Μηδενική υποστήριξη | Εγγενώς αναγνωρίζει τη μηδενική τιμή. | Πρέπει να χρησιμοποιήσετε xsi:nil σε στοιχεία. |
Μορφοποίηση αποφάσεων | Παρέχει απευθείας χαρτογράφηση για τα δεδομένα της εφαρμογής. | Απαιτεί μεγαλύτερη προσπάθεια. |
Καμπύλη εκμάθησης | Less απότομη καμπύλη μάθησης σε σύγκριση με την XML. | Απότομη καμπύλη εκμάθησης. |
Ιστοσελίδα : www.example.gr | https://html.spec.whatwg.org/ | https://www.w3.org/TR/xml11/ |
Βασική σύνταξη HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> </body> </html>
Βασική σύνταξη XML
<?xml version = "1.0" encoding = "UTF-8" ?> <root> <child> <subchild>.....</subchild> </child> </root>
Το ίδιο παράδειγμα με HTML και XML
Με HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <p>Book</p> <p>Name: Anna Karenina</p> <p>Author: Leo Tolstoy</p> <p>Publisher: The Russian Messenger</p> </body> </html>
Με XML
<?xml version = "1.0" encoding = "UTF-8" ?> <book> <name>Anna Karenina</name> <author>Leo Tolstoy</author> <publisher>The Russian Messenger</publisher> </book>
JSON έναντι XML
Ομοιότητες μεταξύ JSON και XML
Η παρακάτω λίστα δείχνει τις ομοιότητες μεταξύ JSON και XML.
- Και οι δύο είναι ανοιχτές μορφές.
- Και οι δύο αυτοπεριγράφονται.
- Και τα δύο έχουν ιεραρχική δομή.
- Και οι δύο μπορούν να αναλύσουν και να χρησιμοποιηθούν από πολλές γλώσσες προγραμματισμού.
Διαφορές μεταξύ JSON και XML
Υπάρχουν επίσης αρκετές διαφορές μεταξύ XML και JSON.
Οι παρακάτω πίνακες δείχνουν μια σύγκριση μεταξύ JSON και XML.
JSON | XML | |
---|---|---|
Σημαίνει | JavaΣημειογραφία αντικειμένου σεναρίου | Επεκτάσιμη γλώσσα σήμανσης |
Επέκταση από | JavaΓραφή | SGML |
Αποθήκευση δεδομένων | Δεδομένα αποθηκευμένα ως ζεύγη κλειδιού-τιμής. | Δεδομένα που αποθηκεύονται ως δομή δέντρου. |
Namespaces | Δεν υπάρχει υποστήριξη για χώρους ονομάτων. | Υποστηρίζει χώρους ονομάτων. |
Σχόλια | Η προσθήκη σχολίων δεν υποστηρίζεται. | Μπορεί να προσθέσει σχόλια. |
Προσβασιμότητα δεδομένων | Εύκολα προσβάσιμο ως αντικείμενα JSON. | Τα δεδομένα πρέπει να αναλυθούν. |
Μεταδεδομένα | Η προσθήκη μεταδεδομένων δεν υποστηρίζεται. | Μπορεί να γράψει μεταδεδομένα. |
Τύποι | Τύποι JSON: συμβολοσειρά, αριθμός, πίνακας, Boolean. | Όλα τα δεδομένα XML πρέπει να είναι χορδές. |
Τύποι δεδομένων υποστήριξης | Υποστηρίζει κείμενο και αριθμός μόνο τύποι δεδομένων. | Υποστήριξη πολλών τύπων δεδομένων (κείμενο, αριθμοί, εικόνες κ.λπ.) |
Υποστήριξη Array | Περισσότερη υποστήριξη για πίνακες σε σύγκριση με XML. | Καμία ή λιγότερη υποστήριξη για πίνακες. |
Υποστήριξη αντικειμένου | Εγγενής υποστήριξη για το αντικείμενο. | Το αντικείμενο πρέπει να εκφράζεται με συμβάσεις. |
Υποστήριξη εργαλειοθήκης AJAX | Υποστηρίζεται. | Δεν υποστηρίζεται πλήρως. |
Ανάκτηση τιμών | Εύκολο. | Δύσκολος. |
Deserializing/serializing | Πλήρως αυτοματοποιημένο. | Οι προγραμματιστές πρέπει να γράφουν JavaΚωδικός σεναρίου. |
Υποστήριξη του προγράμματος περιήγησης | Υποστηρίζεται από τα περισσότερα προγράμματα περιήγησης. | Η ανάλυση XML μεταξύ προγραμμάτων περιήγησης μπορεί να είναι δύσκολη. |
κωδικοποίηση | Υποστηρίζει μόνο κωδικοποίηση UTF-8. | Υποστηρίζει διάφορες κωδικοποιήσεις. |
Δυνατότητες εμφάνισης | Δεν υπάρχουν δυνατότητες προβολής. | Προσφέρετε δυνατότητες προβολής. |
Μέγεθος εγγράφου | Μικρότερο από XML. | Μεγάλο από JSON. |
Επέκταση ονόματος αρχείου | . json | . Xml |
Ασφάλεια | Less ασφαλισμένος. | Πιο ασφαλές από το JSON. |
Εύκολο στην ανάγνωση | Σχετικά εύκολο. | Σχετικά δύσκολο. |
Καμπύλη εκμάθησης | Εύκολο στην εκμάθηση. | Απότομη καμπύλη εκμάθησης. |
Ιστοσελίδα : www.example.gr | https://www.json.org/json-en.html | https://www.w3.org/TR/xml11/ |
Βασική σύνταξη JSON
{string:value, .......}
Το ίδιο παράδειγμα με τα JSON και XML
Με JSON
{"books":[ {"name":"Anna Karenina", "author":"Leo Tolstoy"}, {"name":"One Hundred Years of Solitude", "author":"Gabriel Garcia Marquez"}, {"name":"The Great Gatsby", "author":"Scott Fitzgerald"}, {"name":"Invisible Man", "author":"Ralph Ellison"} ]}
Με XML
<?xml version = "1.0" encoding = "UTF-8" ?> <books> <book> <name>Anna Karenina</name> <author>Leo Tolstoy</author> </book> <book> <name>One Hundred Years of Solitude</name> <author>Gabriel Garcia Marquez</author> </book> <book> <name>The Great Gatsby</name> <author>Scott Fitzgerald</author> </book> <book> <name>Invisible Man</name> <author>Ralph Ellison</author> </book> </books>
XML DTD
Τι είναι το DTD;
Το DTD σημαίνει Dκατοχή TΥΠΕ Dορισμός. Καθορίζει τη δομή ενός εγγράφου XML χρησιμοποιώντας ορισμένα νομικά στοιχεία. Το XML DTD είναι προαιρετικό.
Κανόνες DTD
Η παρακάτω λίστα δείχνει τους κανόνες DTD.
- Εάν υπάρχει DTD, πρέπει να εμφανίζεται στην αρχή του εγγράφου (μόνο η δήλωση XML μπορεί να εμφανιστεί πάνω από το DTD).
- Η δήλωση στοιχείου πρέπει να ξεκινά με ένα ! σημάδι.
- Το όνομα DTD και ο τύπος στοιχείου του ριζικού στοιχείου πρέπει να είναι τα ίδια.
Παραδείγματα DTD
Παράδειγμα εσωτερικού DTD:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE student [ <!ELEMENT student (firstname,lastname,school)> <!ELEMENT firstname (#PCDATA)> <!ELEMENT lastname (#PCDATA)> <!ELEMENT school (#PCDATA)> ]> <student> <firstname>Mark</firstname> <lastname>Wood</lastname> <school>Hills College</school> </student>
Στο παραπάνω παράδειγμα,
- !DOCTYPE μαθητής υποδηλώνει την αρχή της δήλωσης DTD. Και το φοιτητής είναι το ριζικό στοιχείο του εγγράφου XML.
- !ΣΤΟΙΧΕΙΟ μαθητής δείχνει το φοιτητής στοιχείο πρέπει να περιέχει όνομα επίθετο και σχολείο στοιχεία.
- !ΣΤΟΙΧΕΙΟ μικρό όνομα δείχνει το firstname το στοιχείο είναι τύπου #PCDATA (Pπασχαλινός CΧαρακτήρας ημερομηνία).
- !ELEMENT επώνυμο δείχνει το Επίθετο το στοιχείο είναι τύπου #PCDATA.
- !ELEMENT σχολείο δείχνει το σχολείο το στοιχείο είναι τύπου #PCDATA.
Παράδειγμα εξωτερικού DTD:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE student SYSTEM "student.dtd"> <student> <firstname>Mark</firstname> <lastname>Wood</lastname> <school>Hills College</school> </student>
Το περιεχόμενο του αρχείου DTD (student.dtd) ως εξής.
<!ELEMENT student (firstname,lastname,school)> <!ELEMENT firstname (#PCDATA)> <!ELEMENT lastname (#PCDATA)> <!ELEMENT school (#PCDATA)>
XML DOM
Τι είναι το DOM;
Το DOM σημαίνει Dκατοχή Oεκτοξεύω Model. Ορίζει έναν τυπικό τρόπο πρόσβασης και χειρισμού εγγράφων XML. Το DOM έχει μια (ιεραρχική) δομή δέντρου.
Παράδειγμα DOM
Ας εξετάσουμε το παρακάτω έγγραφο XML.
<?xml version="1.0" encoding="UTF-8" ?> <school> <student> <name> <first_name>Alex</first_name> <last_name>Clarke</last_name> </name> <age>14</age> <address>No. 35, Flower Road, Leeds</address> </student> </school>
Η δενδρική δομή του παραπάνω αρχείου XML θα μοιάζει με την παρακάτω εικόνα.
Επικύρωση XML
Τι είναι τα καλά διαμορφωμένα έγγραφα XML;
Καλοσχηματισμένο Τα έγγραφα XML είναι έγγραφα XML με σωστή σύνταξη.
Τι είναι τα Έγκυρα Έγγραφα XML;
Ισχύει Τα έγγραφα XML είναι καλά διαμορφωμένα και συμμορφώνονται επίσης με τους κανόνες DTD.
Χώροι ονομάτων XML
Γιατί Χώροι ονομάτων;
Οι χώροι ονομάτων βοηθούν στην αποφυγή διενέξεων ονομάτων στοιχείων.
Δήλωση χώρου ονομάτων
Ακολουθεί η σύνταξη για τη δήλωση χώρου ονομάτων.
<element xmlns:name="URL">
Στην παραπάνω δήλωση,
- Τα Διαχωριστικά xmlns λέξη-κλειδί υποδηλώνει την αρχή του χώρου ονομάτων.
- Τα Διαχωριστικά όνομα είναι το πρόθεμα του χώρου ονομάτων.
- Τα Διαχωριστικά URL είναι το αναγνωριστικό χώρου ονομάτων.
Παραδείγματα Χώρων Ονομάτων
Το ακόλουθο τμήμα κώδικα δείχνει ένα παράδειγμα χώρων ονομάτων.
<?xml version="1.0" encoding="UTF-8" ?> <abt:about xmlns:abt="https://www.guru99.com/about-us.html"> <abt:founder>Krishna</abt:founder> <abt:vision>Fun and Free Education for ALL</abt:vision> </abt:about>
XML Editors
Υπάρχουν πολλοί διαθέσιμοι επεξεργαστές XML. Οποιοσδήποτε επεξεργαστής κειμένου (όπως το σημειωματάριο και ούτω καθεξής) μπορεί να χρησιμοποιηθεί ως επεξεργαστής XML.
Η παρακάτω λίστα δείχνει μερικούς από τους δημοφιλείς επεξεργαστές XML το 2021.
1) Σημειωματάριο XML
Το XML Notepad είναι ένα πρόγραμμα επεξεργασίας ανοιχτού κώδικα για XML. Διαθέτει προβολή δέντρου και έξοδο XSL στο αριστερό παράθυρο και κείμενο κόμβου στα δεξιά. Έχει ένα παράθυρο εντοπισμού σφαλμάτων στο κάτω μέρος.
Βασικά στατιστικά στοιχεία:
- Τύπος – Επεξεργαστής XML
- Προγραμματιστής - Microsoft
- Υποστηριζόμενο λειτουργικό σύστημα – Microsoft Windows.
- Τιμή – Δωρεάν
Σύνδεσμος: http://microsoft.github.io/XmlNotepad/
2) Stylus Studio
Το Stylus Studio είναι ένα IDE γραμμένο σε C++ για επεκτάσιμη γλώσσα σήμανσης (XML). Επιτρέπει στον χρήστη να επεξεργάζεται και να μετασχηματίζει έγγραφα XML, δεδομένα όπως ηλεκτρονική ανταλλαγή δεδομένων (EDI), CSV και σχεσιακά δεδομένα.
Βασικά στατιστικά στοιχεία:
- Τύπος – Ενσωματωμένο περιβάλλον ανάπτυξης (IDE) για XML
- Προγραμματιστής – Progress Software Corporation
- Υποστηριζόμενο λειτουργικό σύστημα – Microsoft Windows.
- Τιμή – Πληρωμή (Παρακαλούμε ανατρέξτε στον ιστότοπο που δίνεται παρακάτω για την πιο πρόσφατη τιμή), Διατίθεται δωρεάν δοκιμή.
Σύνδεσμος: http://www.stylusstudio.com/
3) Altova XMLSpy
Το XMLSpy διατίθεται κυρίως ως επεξεργαστής JSON και XML. Διαθέτει ενσωματωμένο σχεδιαστή και επεξεργαστή σχήματος. Περιλαμβάνει Visual Studio And Eclipse ενσωμάτωση.
Βασικά στατιστικά στοιχεία:
- Τύπος – Επεξεργαστής XML
- Προγραμματιστής - Altova
- Υποστηριζόμενο λειτουργικό σύστημα – Microsoft Windows.
- Τιμή – Πληρωμή (Παρακαλούμε ανατρέξτε στον ιστότοπο που δίνεται παρακάτω για την πιο πρόσφατη τιμή), Διατίθεται δωρεάν δοκιμή.
Σύνδεσμος:https://www.altova.com/xmlspy-xml-editor
4) Επεξεργαστής XML Oxygen
Το Oxygen XML είναι ένα πρόγραμμα επεξεργασίας πολλαπλών πλατφορμών που αναπτύχθηκε σε Java. Βοηθά στην επικύρωση σχημάτων όπως σχήματα DTD, W3C XML Schema, RELAX NG, Schematron, NRL και NVDL.
Βασικά στατιστικά στοιχεία:
- Τύπος – Επεξεργαστής XML
- Προγραμματιστής - SyncRO Soft Ltd
- Υποστηριζόμενο λειτουργικό σύστημα – Windows, Linux και Mac OS X
- Τιμή – Πληρωμένη (Παρακαλούμε ανατρέξτε στον ιστότοπο που δίνεται παρακάτω για την πιο πρόσφατη τιμή
Σύνδεσμος:https://www.oxygenxml.com/
5) Xmplify
Το Xmplify XML Editor παρέχει ένα περιβάλλον επεξεργασίας με πλήρη επίγνωση XML με αυτόματη επικύρωση εγγράφων, αυτόματη επικύρωση εγγράφων κ.λπ. βάσει DTD και XML Schema.
Βασικά στατιστικά στοιχεία:
- Τύπος – Επεξεργαστής XML
- Προγραμματιστής – MOSO Corporation
- Υποστηριζόμενο λειτουργικό σύστημα – Mac OS.
- Τιμή – Πληρωμένη (Παρακαλούμε ανατρέξτε στον ιστότοπο που δίνεται παρακάτω για την πιο πρόσφατη τιμή
Σύνδεσμος: http://xmplifyapp.com/
XML Parsers
Ένας αναλυτής XML είναι μια βιβλιοθήκη λογισμικού που παρέχει μια διεπαφή για εργασία με έγγραφα XML. Ελέγχει εάν η μορφή του εγγράφου XML είναι σωστή. Ορισμένοι αναλυτές μπορούν επίσης να επικυρώσουν τα έγγραφα XML. Τα σύγχρονα προγράμματα περιήγησης διαθέτουν αναλυτές XML.
ΣΑΞ
ΣΑΞ σημαίνει Sεφαρμογή API για XML. Είναι ένα aΕφαρμογή program iδιεπαφή (API) για την ανάλυση εγγράφων XML. Συμπεριφέρονται παρόμοια με τους χειριστές συμβάντων Java.
Σε αντίθεση με το DOM, το SAX είναι ένα παράδειγμα ανάλυσης XML που βασίζεται σε συμβάντα.
Ακολουθούν ορισμένες σημαντικές διαφορές μεταξύ του SAX και του DOM.
ΣΑΞ | DOM | |
---|---|---|
Σημαίνει | Απλό API για XML | Μοντέλο αντικειμένου εγγράφου |
Τύπος αναλυτή | Βασισμένο σε εκδηλώσεις | Βασισμένο σε αντικείμενα |
Διαβάστε και γράψτε XML | Μόνο για ανάγνωση | Και οι δύο διαβάζουν και γράφουν |
Εισαγωγή/ενημέρωση/διαγραφή κόμβων | Δεν είναι δυνατή η εισαγωγή/ενημέρωση/διαγραφή κόμβων | Δυνατότητα εισαγωγής/ενημέρωσης/διαγραφής κόμβων |
Αποδοτικότητα μνήμης | Καλή απόδοση μνήμης | Ποικίλλει |
Ταχύτητα | Πιο αργό από το DOM Parser | Ταχύτερο από το SAX Parser |
Κατάλληλο για | Αρχεία μικρού μεγέθους | Αρχεία μεγάλου μεγέθους |
XML Data Binding
Η σύνδεση δεδομένων XML είναι η αναπαράσταση δεδομένων σε ένα έγγραφο XML ως επιχειρηματικό αντικείμενο στη μνήμη ενός υπολογιστή.
Υπάρχουν τρεις προσεγγίσεις για τη σύνδεση δεδομένων XML.
- Σύνδεση δεδομένων που βασίζεται σε σχήμα XML: Οι αντίστοιχες κλάσεις XML δημιουργούνται με βάση το σχήμα.
- Σύνδεση δεδομένων βάσει κλάσεων: Ένα αντίστοιχο σχήμα XML δημιουργείται με βάση τις κλάσεις.
- Σύνδεση δεδομένων βάσει χαρτογράφησης: Περιγράφει πώς ένα υπάρχον σχήμα XML αντιστοιχίζεται σε ένα σύνολο κλάσεων (και αντίστροφα).
Υπάρχουν επίσης πλαίσια σύνδεσης δεδομένων XML.
Παραδείγματα:
Η σύνδεση δεδομένων XML είναι εύκολη με τα πλαίσια. Το πλαίσιο δέσμευσης δεδομένων δημιουργεί έναν μεγάλο αριθμό κώδικα για εσάς. Πρέπει να τροφοδοτήσετε ένα σχήμα DTD ή XML.
Σχήματα XML
XML σχέδιο (Επίσης γνωστή ως Ορισμός σχήματος XML or XSD) χρησιμοποιείται για να περιγράψει τη δομή του εγγράφου XML. Είναι μια εναλλακτική λύση στο DTD.
Γιατί είναι σημαντικό το σχήμα;
Το DTD δεν είναι ισχυρό ως σχήμα καθώς δεν είναι επεκτάσιμο και αρκετά ευέλικτο. Έτσι, μπορεί να μην είναι κατάλληλο για ορισμένες καταστάσεις. Σε μια τέτοια κατάσταση το σχήμα είναι σημαντικό. Ο κύριος σκοπός της χρήσης του σχήματος XML είναι να καθοριστούν τα στοιχεία και τα χαρακτηριστικά ενός εγγράφου XML.
Σε τι διαφέρει το σχήμα XML από το DTD;
Η ακόλουθη σύγκριση δείχνει πώς το XSD (Σχήμα XML) είναι διαφορετικό από το DTD.
DTD | XSD | |
---|---|---|
Σημαίνει | Ορισμός τύπου εγγράφου | Ορισμός σχήματος XML |
Εκτατο | Μη επεκτάσιμο | Extensible |
Έλεγχος στη δομή XML | Less έλεγχος | Περισσότερος έλεγχος |
Τύποι δεδομένων υποστήριξης | Δεν υποστηρίζεται | υποστηριζόνται! |
Υποστήριξη χώρου ονομάτων | Δεν υποστηρίζεται | υποστηριζόνται! |
Το ακόλουθο τμήμα κώδικα δείχνει ένα παράδειγμα σχήματος XML.
xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema"> <xs:element name = "employee"> <xs:complexType> <xs:sequence> <xs:element name = "firstname" type = "xs:string" /> <xs:element name = "lastname" type = "xs:string" /> <xs:element name = "phone" type = "xs:int" /> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Πλεονεκτήματα της XML
Εδώ, τα πλεονεκτήματα/πλεονεκτήματα της XML:
- Διευκόλυνε τη μεταφορά και την κοινή χρήση δεδομένων.
- Η XML βελτιώνει την ανταλλαγή δεδομένων μεταξύ διαφόρων πλατφορμών.
- Είναι μια γλώσσα σήμανσης, η οποία είναι ένα σύνολο χαρακτήρων ή/και συμβόλων που τοποθετούνται σε ένα έγγραφο κειμένου.
- Το XML υποδεικνύει πώς πρέπει να φροντίζει το έγγραφο XML μετά την εμφάνισή του.
- Απλοποιεί τη διαδικασία αλλαγής πλατφόρμας.
- Βελτιώνει τη διαθεσιμότητα δεδομένων.
- Υποστηρίζει πολύγλωσσα έγγραφα και Unicode.
- Παρέχετε σχετικά εύκολο στην εκμάθηση και τον κώδικα.
- Είναι μια γλώσσα σήμανσης, η οποία είναι ένα σύνολο χαρακτήρων ή/και συμβόλων που τοποθετούνται σε ένα έγγραφο κειμένου.
- Εκτελεί επικύρωση χρησιμοποιώντας DTD και Schema.
- Κάνει τα έγγραφα μεταφερόμενα σε συστήματα και εφαρμογές. Με τη βοήθεια της XML, μπορείτε να ανταλλάσσετε δεδομένα γρήγορα μεταξύ διαφορετικών πλατφορμών.
- Η XML διαχωρίζει τα δεδομένα από την HTML.
Μειονεκτήματα της XML
Ακολουθούν τα μειονεκτήματα/μειονεκτήματα της χρήσης XML:
- Η XML απαιτεί μια εφαρμογή επεξεργασίας.
- Η σύνταξη XML είναι παρόμοια με άλλες εναλλακτικές μορφές μετάδοσης δεδομένων «βασισμένες σε κείμενο», που μερικές φορές προκαλεί σύγχυση.
- Δεν υπάρχει υποστήριξη εγγενών τύπων δεδομένων
- Η σύνταξη XML είναι περιττή.
- Δεν επιτρέπει στον χρήστη να δημιουργήσει τις ετικέτες του.
Σύνοψη
- Το XML σημαίνει επεκτάσιμη γλώσσα σήμανσης. Η XML είναι μια γλώσσα (όχι μια γλώσσα προγραμματισμού) που χρησιμοποιεί τη σήμανση και μπορεί να επεκταθεί.
- Ο κύριος στόχος είναι η μεταφορά δεδομένων, όχι η εμφάνιση δεδομένων.
- Η XML 1.1 είναι η πιο πρόσφατη έκδοση. Ωστόσο, η XML 1.0 είναι η πιο χρησιμοποιούμενη έκδοση.
- Οι ετικέτες λειτουργούν ως ζεύγη εκτός από δηλώσεις.
- Ετικέτα ανοίγματος + περιεχόμενο + ετικέτα κλεισίματος = ένα στοιχείο
- Οι οντότητες είναι ένας τρόπος αναπαράστασης ειδικών χαρακτήρων.
- Το DTD σημαίνει Document Type Definition. Καθορίζει τη δομή ενός εγγράφου XML χρησιμοποιώντας ορισμένα νομικά στοιχεία. Το XML DTD είναι προαιρετικό.
- Το DOM σημαίνει Document Object Model. Ορίζει έναν τυπικό τρόπο πρόσβασης και χειρισμού εγγράφων XML.
- Τα καλά διαμορφωμένα έγγραφα XML είναι έγγραφα XML με σωστή σύνταξη.
- Τα έγκυρα έγγραφα XML είναι καλά διαμορφωμένα και συμμορφώνονται επίσης με τους κανόνες DTD.
- Οι χώροι ονομάτων βοηθούν στην αποφυγή διενέξεων ονομάτων στοιχείων.