Σύνθετα στοιχεία XSD
- Προηγούμενη Σελίδα Διακρίσεις XSD
- Επόμενη Σελίδα Κενό στοιχείο XSD
Το συνδυασμένο στοιχείο περιέχει άλλα στοιχεία και/ή ιδιότητες.
Τι είναι το συνδυασμένο στοιχείο;
Το συνδυασμένο στοιχείο αναφέρεται σε στοιχεία XML που περιέχουν άλλα στοιχεία και/ή ιδιότητες.
Υπάρχουν τέσσερα τύποι συνδυασμένων στοιχείων:
- Κενά στοιχεία
- Στοιχεία που περιέχουν άλλα στοιχεία
- Στοιχεία που περιέχουν μόνο κείμενο
- Στοιχεία που περιέχουν στοιχεία και κείμενο
Σημείωση:Τα παραπάνω στοιχεία μπορούν να περιέχουν ιδιότητες!
Παράδειγμα συνδυασμένου στοιχείου
Το συνδυασμένο στοιχείο, "product", είναι κενό:
<product pid="1345"/>
Το συνδυασμένο στοιχείο, "employee", περιέχει μόνο άλλα στοιχεία:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
Το συνδυασμένο στοιχείο, "food", περιέχει μόνο κείμενο:
<food type="dessert">Ice cream</food>
Το συνδυασμένο στοιχείο, "description", περιέχει στοιχεία και κείμενο:
<description> Αυτό συνέβη στις <date lang="norwegian">03.03.99</date> .... </description>
Πώς ορίζεται ένας συνδυασμένος στοιχείο;
Δείτε αυτό το συνδυασμένο στοιχείο XML, "employee", το οποίο περιέχει μόνο άλλα στοιχεία:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
Στο XML Schema, έχουμε δύο τρόπους να ορίσουμε συνδυασμένα στοιχεία:
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" και "lastname", περιλαμβάνονται μέσα στο δείκτη <sequence>. Αυτό σημαίνει ότι τα υποστοιχεία πρέπει να εμφανίζονται στην τάξη που αναφέρονται. Δείκτες XSD Αυτό το κεφάλαιο μάθετε περισσότερα για τους δείκτες.
2. Ο τύπος στοιχείου "employee" μπορεί να χρησιμοποιήσει την ιδιότητα type, η οποία αναφέρεται στο όνομα του τύπου συνδυασμένου στοιχείου που χρησιμοποιείται:
<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="personinfo"> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complexType> <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>
- Προηγούμενη Σελίδα Διακρίσεις XSD
- Επόμενη Σελίδα Κενό στοιχείο XSD