Στοιχείο unique του XML Schema
Ορισμός και χρήση
Το στοιχείο unique καθορίζει ότι η τιμή της ιδιότητας ή του στοιχείου (ή η σύνθεση της ιδιότητας ή του στοιχείου) πρέπει να είναι μοναδική στον καθορισμένο ορίζοντα. Η τιμή πρέπει να είναι μοναδική ή να είναι μηδέν.
Το στοιχείο unique πρέπει να περιέχει τα εξής στοιχεία κατά σειρά:
στοιχείο selector
Το στοιχείο selector περιέχει έκφραση XPath, που καθορίζει ένα σύνολο στοιχείων, όπου η τιμή που καθορίζεται από το στοιχείο field πρέπει να είναι μοναδική.
Πρέπει να υπάρχει ένα και μόνο στοιχείο selector.
στοιχείο field
Κάθε στοιχείο field περιέχει μια έκφραση XPath, που καθορίζει την μοναδική τιμή που πρέπει να υπάρχει για το σύνολο των στοιχείων που καθορίζεται από το στοιχείο selector.
Αν υπάρχουν πολλαπλά στοιχεία field, η σύνθεση των στοιχείων field πρέπει να είναι μοναδική. Σε αυτή την περίπτωση, η τιμή του μεμονωμένου στοιχείου field δεν είναι απαραίτητα μοναδική για το επιλεγμένο στοιχείο, αλλά η σύνθεση όλων των πεδίων πρέπει να είναι μοναδική.
Πρέπει να υπάρχει ένα ή περισσότερα στοιχεία field.
Πληροφορίες στοιχείου
Συχνότητα εμφάνισης | Μία φορά |
Γονικό στοιχείο | στοιχείο |
Περιεχόμενο | annotation, field, selector |
Γλώσσα
<unique id=ID name=NCName οποιαδήποτε ιδιότητες > (annotation?,(selector,field+)) </unique>
(? Ο σύμβολος δηλώνεται στο στοιχείο unique και το στοιχείο αυτό μπορεί να εμφανίζεται μηδέν ή μία φορά.)
Ιδιότητες | Περιγραφή |
---|---|
id | Οπション. Καθορίζει το μοναδικό ID του στοιχείου. |
όνομα | Απαιτείται. Καθορίζει το όνομα του στοιχείου. |
οποιαδήποτε ιδιότητες | Οπション. Καθορίζει οποιαδήποτε άλλη ιδιότητα με non-schema ονομαστικό χώρο. |
Παράδειγμα
Παράδειγμα 1
Αυτό είναι ένα απλό τύπος που συνδυάζει δύο απλούς τύπους:
<xs:element name="jeans_size"> <xs:simpleType> <xs:union memberTypes="sizebyno sizebystring" /> </xs:simpleType> </xs:element> <xs:simpleType name="sizebyno"> <xs:restriction base="xs:positiveInteger"> <xs:maxInclusive value="42"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="sizebystring"> <xs:restriction base="xs:string"> <xs:enumeration value="small"/> <xs:enumeration value="medium"/> <xs:enumeration value="large"/> </xs:restriction> </xs:simpleType>