DTD - ویژگیها
- اگر میخواهید مقدار ویژگی یک مجموعه از مقادیر قانونی ثابت باشد، از ویژگیهای لیستی استفاده کنید. صفحه قبلی
- صفحه بعدی موجودیتهای DTD
در DTD، ویژگیها از طریق تعیین ATTLIST انجام میشوند.
تعیین ویژگی
استفاده از این نحو برای تعیین ویژگی:
<!ATTLIST 元素名称 属性名称 属性类型 默认值>
مثال DTD:
<!ATTLIST payment type CDATA "check">
مثال XML:
مثال XML:
در زیر:نوع ویژگیاختیارات:
نوع | توضیح |
---|---|
CDATA | مقدار یک دادهی حروفی (character data) است |
(en1|en2|..) | این مقدار یکی از مقادیر لیست فراگیر است |
ID | مقدار یک id منحصر به فرد است |
IDREF | مقدار id یک عنصر دیگر است |
IDREFS | مقدار یک لیست از idهای دیگر است |
NMTOKEN | مقدار یک نام قانونی XML است |
NMTOKENS | مقدار یک لیست از نامهای قانونی XML است |
ENTITY | مقدار یک شیء است |
ENTITIES | مقدار یک لیست از اشیاء است |
NOTATION | این مقدار نام یک نماد است |
xml: | مقدار یک مقدار پیشفرض XML است |
پارامترهای پیشفرض میتوانند از موارد زیر استفاده شوند:
مقدار | توضیح |
---|---|
مقدار | مقدار پیشفرض ویژگی |
#REQUIRED | مقدار ویژگی ضروری است |
#IMPLIED | ویژگی ضروری نیست |
#FIXED value | مقدار ویژگی ثابت است |
تعیین یک مقدار پیشفرض برای ویژگی
مثال
<!ELEMENT square EMPTY> <!ATTLIST square width CDATA "0">
<!ATTLIST sender company CDATA #FIXED "Microsoft">
<square width="100" />
در مثال بالا، "square" به عنوان یک عنصر خالی با نوع ویژگی CDATA برای ویژگی "width" تعریف شده است. اگر عرض تعیین نشده باشد، مقدار پیشفرض آن 0 است.
#IMPLIED
#FIXED
<!ATTLIST 元素名称 属性名称 属性类型 #IMPLIED>
<!ATTLIST نام_عنصر نام_ویژگی نوع_ویژگی #FIXED "مقدار">
مثال
<!ATTLIST contact fax CDATA #IMPLIED>
<!ATTLIST sender company CDATA #FIXED "Microsoft">
<contact fax="555-667788" />
<!ATTLIST sender company CDATA #FIXED "Microsoft">
<contact />
اگر نمیخواهید نویسنده مجبور به افزودن ویژگی شود و گزینهی پیشفرض ندارید، از کلمهی کلیدی #IMPLIED استفاده کنید.
#REQUIRED
#FIXED
<!ATTLIST 元素名称 属性名称 属性类型 #REQUIRED>
<!ATTLIST نام_عنصر نام_ویژگی نوع_ویژگی #FIXED "مقدار">
مثال
<!ATTLIST sender company CDATA #FIXED "Microsoft">
<!ATTLIST person number CDATA #REQUIRED>
<sender company="Microsoft" />
<person number="5677" />
<person />
اگر گزینه مقدار پیشفرض ندارید اما همچنان میخواهید نویسنده را مجبور به ارسال ویژگی کنید، از کلمه کلیدی #REQUIRED استفاده کنید.
#FIXED
نحوه استفاده:
<!ATTLIST نام_عنصر نام_ویژگی نوع_ویژگی #FIXED "مقدار">
مثال
DTD:
<!ATTLIST sender company CDATA #FIXED "Microsoft">
XML معتبر:
<sender company="Microsoft" />
XML نامشروع:
<sender company="W3School" />
اگر میخواهید ویژگی دارای مقادیر ثابت باشد و نویسنده نتواند آن را تغییر دهد، از کلمه کلیدی #FIXED استفاده کنید. اگر نویسنده از مقادیر مختلف استفاده کند، پردازنده XML خطا خواهد داد.
ویژگیهای لیستی
نحوه استفاده:
<!ATTLIST نام_عنصر نام_ویژگی (en1|en2|..) مقدار پیشفرض>
مثال DTD:
<!ATTLIST payment type (check|cash) "cash">
مثال XML:
<payment type="check" />
یا
<payment type="cash" />
- اگر میخواهید مقدار ویژگی یک مجموعه از مقادیر قانونی ثابت باشد، از ویژگیهای لیستی استفاده کنید. صفحه قبلی
- صفحه بعدی موجودیتهای DTD