Στοιχείο schema του XML Schema
Ορισμός και χρήση
Το στοιχείο schema ορίζει το ρίζα στοιχείο του schema.
Πληροφορίες στοιχείου
Συνάρτηση εμφάνισης | μια φορά |
Γονικό στοιχείο | (χωρίς γονικό στοιχείο) |
Περιεχόμενο | include, import, annotation, redefine, attribute, attributeGroup, element, group, notation, simpleType, complexType |
γλώσσα
<schema id=ID attributeFormDefault=qualified|unqualified elementFormDefault=qualified|unqualified blockDefault=(#all|list of (extension|restriction|substitution)) finalDefault=(#all|list of (extension|restriction|list|union))}} targetNamespace=anyURI version=token xmlns=anyURI any attributes > ((include|import|redefine|annotation)*,(((simpleType|complexType| (group|attributeGroup)|element|attribute|notation),annotation*)*) </schema>
attributes
id
Προαιρετικό. Ορίζει το μοναδικό ID του στοιχείου.
attributeFormDefault
Προαιρετικό. Η μορφή των χαρακτηριστικών που δηλώνονται στον στόχο του ονόματος του χώρου του schema. Η τιμή πρέπει να είναι μια από τις εξής συμβολοσειρές: "qualified" ή "unqualified". Η προεπιλεγμένη τιμή είναι "unqualified".
- "unqualified" δείχνει ότι τα χαρακτηριστικά του στόχου του ονόματος του χώρου δεν πρέπει να περιορίζονται από πρόθεμα του ονόματος του χώρου.
- "qualified" δείχνει ότι τα χαρακτηριστικά του στόχου του ονόματος του χώρου πρέπει να περιορίζονται από προεπιλεγμένο πρόθεμα του ονόματος του χώρου.
elementFormDefault
Προαιρετικό. Η μορφή των στοιχείων που δηλώνονται στον στόχο του ονόματος του χώρου του schema. Η τιμή πρέπει να είναι μια από τις εξής συμβολοσειρές: "qualified" ή "unqualified". Η προεπιλεγμένη τιμή είναι "unqualified".
- "unqualified" δείχνει ότι τα στοιχεία του στόχου του ονόματος του χώρου δεν πρέπει να περιορίζονται από πρόθεμα του ονόματος του χώρου.
- "qualified" δείχνει ότι τα στοιχεία του στόχου του ονόματος του χώρου πρέπει να περιορίζονται από προεπιλεγμένο πρόθεμα του ονόματος του χώρου.
blockDefault
Προαιρετικό. Ορίζει την προεπιλεγμένη τιμή του attributes block για τα στοιχεία και τα complexType στο στόχο του ονόματος του χώρου. Το attributes block αποτρέπει την αντικατάσταση του τύπου που αποκτάται από εξαρτώμενους τύπους (ή στοιχεία). Η τιμή μπορεί να περιέχει #all ή μια λίστα που περιλαμβάνει extension, restriction ή substitution:
- extension - Να αποφεύγεται η χρήση εξαρτώμενων τύπων που επεκτείνουν για την αντικατάσταση του τύπου.
- restriction - Να αποφεύγεται η χρήση εξαρτώμενων τύπων που περιορίζονται για την αντικατάσταση του τύπου.
- substitution - Να αποφεύγεται η αντικατάσταση των στοιχείων.
- #all - Να αποφεύγεται η χρήση όλων των εξαρτώμενων τύπων για την αντικατάσταση του τύπου.
finalDefault
Οπション. Καθορίζει την προεπιλεγμένη τιμή της ιδιότητας final για τα στοιχεία element, simpleType και complexType στο στόχο του schema. Η ιδιότητα final αποτρέπει την προκύψεις των τύπων που καθορίζονται για τα στοιχεία element, simpleType ή complexType. Για τα στοιχεία element και complexType, η τιμή μπορεί να περιέχει #all ή μια λίστα που περιλαμβάνει υποσυνοχές extension ή restriction. Για τα στοιχεία simpleType, η τιμή μπορεί επίσης να περιέχει list και union:
- extension - Στα προεπιλεγμένα, τα στοιχεία του schema δεν μπορούν να προκύψουν μέσω της επέκτασης. Απαιτείται μόνο για στοιχεία element και complexType.
- restriction - Προστατεύει από την προκύψεις μέσω της περιορισμού.
- list - Προστατεύει από την προκύψεις μέσω της λίστας. Απαιτείται μόνο για στοιχεία simpleType.
- union - Προστατεύει από την προκύψεις μέσω της ένωσης. Απαιτείται μόνο για στοιχεία simpleType.
- #all - Στα προεπιλεγμένα, τα στοιχεία του schema δεν μπορούν να προκύψουν με οποιονδήποτε τρόπο.
targetNamespace
Η αναφορά URI του χώρου ονομάτων του schema. Μπορεί επίσης να ανατεθεί πρόθεμα στο χώρο ονομάτων. Αν δεν ανατεθεί κανένα πρόθεμα, το στοιχείο schema του χώρου ονομάτων μπορεί να χρησιμοποιηθεί με ανεπιφύλακτες αναφορές.
version
Οπション. Καθορίζει την έκδοση του schema.
xmlns
Καθορίζει μια ή περισσότερες αναφορές URI των χώρων ονομάτων που χρησιμοποιούνται σε αυτό το schema. Αν δεν έχει ανατεθεί πρόθεμα, το στοιχείο schema του χώρου ονομάτων μπορεί να χρησιμοποιηθεί με ανεπιφύλακτες αναφορές.
any attributes
Οπション. Καθορίζει οποιεσδήποτε άλλες ιδιότητες με το non-schema χώρο ονομάτων.
Παράδειγμα
Παράδειγμα 1
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="values" type="xs:string"> </xs:schema>
Παράδειγμα 2
Σε αυτό το παράδειγμα, το στοιχείο schema στο χώρο ονομάτων http://www.w3.org/2001/XMLSchema δεν είναι περιορισμένο, ενώ το http://www.codew3c.com/codew3cschema (mystring) είναι περιορισμένο μέσω του πρόθεμα wsc:
<?xml version="1.0"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsc="http://www.codew3c.com/codew3cschema" <element name="fname" type="wsc:mystring"/> </schema>