عنصر XML Schema group
التعريف والاستخدام
يستخدم عنصر group لتحديد مجموعة العناصر المستخدمة في تعريف النوع المعقد.
معلومات العنصر
مرة الظهور | غير محدود |
العنصر الأب | schema،choice،sequence،complexType،restriction (complexContent)、extension (complexContent) |
المحتوى | التعليق،all،choice،sequence |
النحو
<group id=ID name=NCName ref=QName maxOccurs=nonNegativeInteger|unbounded minOccurs=nonNegativeInteger خصائص أي >> annotation?,(all|choice|sequence)?) </group>
(؟يُعرف رمز السؤال في عنصر المجموعة، يمكن أن يظهر هذا العنصر صفر مرة أو مرة واحدة.)
خصائص
id
اختياري. تحديد هوية العنصر الفريدة.
name
اختياري. تحديد اسم المجموعة. يجب أن يكون الاسم هو اسم غير مسبوق في معيار XML المسمى (NCName).
استخدم الخاصية هذه فقط عندما يكون عنصر schema هو العنصر الأب للعنصر group. في هذه الحالة، تكون المجموعة هي نموذج مجموعة يستخدمه عناصر complexType و choice و sequence.
لا يمكن أن تظهر الخاصية name والخاصية ref في نفس الوقت.
ref
اختياري. مرجع إلى اسم مجموعة أخرى. يجب أن يكون قيمة ref QName. يمكن أن يحتوي ref على بادئة مسمى.
لا يمكن أن تظهر الخاصية name والخاصية ref في نفس الوقت.
maxOccurs
اختياري. تحديد أقصى عدد من مرات ظهور عنصر المجموعة في العنصر الأب. يمكن أن يكون هذا الرقم أكبر أو مساوي لعدد صحيح أكبر أو مساوي لعدد صحيح صفر. إذا لم تكن تريد تحديد أي حد لأقصى عدد المرات، استخدم النص "unbounded". القيمة الافتراضية هي 1.
minOccurs
اختياري. تحديد أقل عدد من مرات ظهور عنصر المجموعة في العنصر الأب. يمكن أن يكون هذا الرقم أكبر أو مساوي لعدد صحيح أكبر أو مساوي لعدد صحيح صفر. القيمة الافتراضية هي 1.
خصائص أي
اختياري. تحديد أي خصائص أخرى بحمل مسمى غير قالب.
مثال
مثال 1
السجلات التالية تعرف مجموعة تحتوي على أربعة عناصر مرتبة في سلسلة، وتستخدم هذه المجموعة في تعريف نوع معقد:
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:group name="custGroup"> <xs:sequence> <xs:element name="customer" type="xs:string"/> <xs:element name="orderdetails" type="xs:string"/> <xs:element name="billto" type="xs:string"/> <xs:element name="shipto" type="xs:string"/> </xs:sequence> </xs:group> <xs:element name="order" type="ordertype"/> <xs:complexType name="ordertype"> <xs:group ref="custGroup"/> <xs:attribute name="status" type="xs:string"/> </xs:complexType> </xs:schema>