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