<XML استكمال مخطط المرجعي
تعريف واستخدام
يحدد عنصر السمة سمة.
معلومات عنصر
- Parent elements: attributeGroup، مخطط، complexType، تقييد (both simpleContent and complexContent) والإرشاد (سواء simpleContent وcomplexContent)
بناء الجملة
<attribute
default=string
fixed=string
form=qualified|unqualified
id=ID
name=NCName
ref=QName
type=QName
use=optional|prohibited|required
any attributes
>
(annotation?,(simpleType?))
</attribute>
(و؟ علامة يعلن أن العنصر يمكن أن يحدث صفر أو واحد الوقت داخل عنصر السمة)
السمة | وصف |
---|---|
default | اختياري. تحدد قيمة افتراضية للسمة. افتراضي وثابتة الصفات لا يمكن أن يكون كل من الحالي |
fixed | اختياري. تحدد قيمة ثابتة للسمة. افتراضي وثابتة الصفات لا يمكن أن يكون كل من الحالي |
form | اختياري. يحدد شكل للسمة. القيمة الافتراضية هي قيمة attributeFormDefault سمة من عنصر يحتوي على السمة. ويمكن لمجموعة واحدة مما يلي:
|
id | اختياري. يحدد هوية فريدة من نوعها للعنصر |
name | اختياري. يحدد اسم السمة. اسم والمرجع سمات لا يمكن أن يكون كل من الحالي |
ref | اختياري. يحدد إشارة إلى سمة اسمه. اسم والمرجع سمات لا يمكن أن يكون كل هذا. إذا المرجع هو الحاضر، عنصر simpleType، شكل، ونوع لا يمكن أن تكون موجودة |
type | اختياري. يحدد نوع البيانات المضمنة أو نوع بسيط. و type السمة يمكن أن تكون موجودة فقط عندما لا يحتوي على محتوى عنصر simpleType |
use | اختياري. يحدد كيف يتم استخدام السمة. يمكن أن تكون واحدة من القيم التالية:
|
any attributes | اختياري. تحدد أي سمات أخرى مع مساحة غير مخطط |
مثال 1
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
في المثال أعلاه يشير إلى أن "code" سمة لديها قيود. القيمة الوحيدة المقبولة هي اثنين من الأحرف الكبيرة من الألف إلى الياء.
مثال 2
ليعلن سمة باستخدام تعريف سمة موجودة ضمن نوع معقد، استخدم ref السمة:
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:complexType name="someComplexType">
<xs:attribute ref="code"/>
</xs:complexType>
مثال 3
يمكن سمات إما قيمة افتراضية أو قيمة ثابتة محددة. يتم تعيين القيمة الافتراضية تلقائيا إلى السمة عندما يتم تحديد أية قيمة أخرى. في المثال التالي القيمة الافتراضية هي "EN" :
<xs:attribute name="lang" type="xs:string" default="EN"/>
وأيضا تعيين قيمة ثابتة تلقائيا إلى السمة عندما يتم تحديد أية قيمة أخرى. ولكن على عكس القيم الافتراضية. إذا قمت بتحديد قيمة أخرى من الثابتة، ويعتبر وثيقة باطلة. في المثال التالي قيمة ثابتة هي "EN" :
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
مثال 4
كل سمات اختيارية افتراضيا. لتحديد صراحة على أن السمة اختيارية، استخدم "use" سمة:
<xs:attribute name="lang" type="xs:string" use="optional"/>
لجعل سمة المطلوبة:
<xs:attribute name="lang" type="xs:string" use="required"/>
<XML استكمال مخطط المرجعي