XML Schema attribute 元素

定义和用法

attribute 元素定义一个属性。

元素信息

出现次数 在 schema 元素中定义一次。 在复杂类型或属性组中引用多次。
父元素 attributeGroup、schema、complexType、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent)
内容 annotation、simpleType

语法

کسی دیگر مالیکیت
>
(annotation?,(simpleType?))

(? 符号声明该元素可在 attribute 元素中出现零次或一次。)

属性

default

可选。规定属性的默认值。default 和 fixed 属性不能同时出现。

fixed

可选。规定属性的固定值。default 和 fixed 属性不能同时出现。

form

可选。规定属性的格式。默认值是包含该属性的 schema 元素的 attributeFormDefault 属性的值。可以设置为下列值:

  • qualified - مظاہرتی یہ کہ اس صفت کو نامستعینی پیمانچے کے ساتھ اور اس صفت کا بغیر نیم ناوی نام (NCName) کے ذریعے مخصوص کرنا ضروری ہے۔
  • "unqualified" - اس کا مطلب ہے کہ اس مالیکیت کو نامی فضائی کے پچھلے نہیں لگایا جائے گا، اور اس کا نام (NCName) بغیر ناویس کا نام (prefix) کے مطابق نہیں ہوگا، یعنی مقامی نام ہوگا۔

آئی ڈی

اختیاری۔ اس عنصر کا منفرد آئی ڈی مقرر کرنا۔

نام

اختیاری۔ مالیکیت کا نام مقرر کرنا۔ name اور ref مالیکیت دونوں کو استعمال نہیں کیا جاسکتا۔

حوالہ دینا

اختیاری۔ مقرر مالیکیت کا حوالہ دینا۔ name اور ref مالیکیت دونوں کو استعمال نہیں کیا جاسکتا۔ اگر ref نظر انداز کیا جاتا ہے تو simpleType عنصر، form اور type نظر انداز کئے جائیں گے۔

نوعیت

اختیاری۔ داخلی نوعیت یا سادہ نوعیت مقرر کرنا۔ type مالیکیت صرف جب کسی سادہ نوعیت عنصر کا شامل نہیں کیا جاتا تو نظر انداز کیا جاتا ہے۔

استعمال

اختیاری۔ اس مالیکیت کا استعمال کیسے مقرر کرنا چاہتے ہیں؟ مقرر مقادیر کسی سے درج ذیل میں قائم کریں:

  • اختیاری - مالیکیت اختیاری ہوتی ہے اور کسی بھی مقادیر کو رکھ سکتا ہے (طبیعی طور پر)۔
  • منع شدہ - مالیکیت کو استعمال نہیں کیا جاسکتا۔
  • ضروری - مالیکیت کا ضروری ہونا۔

کسی دیگر مالیکیت

اختیاری۔ کسی غیر اسکیما نامی فضائی کو کسی دیگر مالیکیت کا مقرر کرنا۔

مثال

مثال 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" مالیکیت کو ایک محدودیت ہے۔ قبول شدہ واحد مقادیر بڑی حروف کی دو اور بڑی حروف سے بنتی ہیں جو A سے Z تک کا دائرہ کار رکھتی ہیں۔

مثال 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"/>