فهرست سرفصل‌های XML
خانه (XML HOME) مقدمه (XML Introduction) نحوه استفاده (XML How to use) درخت (XML Tree) سینتکس (XML Syntax) عناصر (XML Elements) ویژگی ها (XML Attributes) فضاهای نام (XML Namespaces) نمایش (XML Display) XMLHttpRequest (XML HttpRequest) پارسر (XML Parser) DOM (XML DOM) XPath (XML XPath) XSLT (XML XSLT) XQuery (XML XQuery) XLink (XML XLink) اعتبارسنج (XML Validator) DTD (XML DTD) اسکیما (XML Schema) سرور (XML Server) مقدمه (AJAX Introduction) ساخت XMLHttpRequest (AJAX XMLHttp) ارسال درخواست (AJAX Request) پاسخ (AJAX Response) فایل XML (AJAX XML File) AJAX با PHP (AJAX PHP) AJAX با ASP (AJAX ASP) پایگاه داده (AJAX Database) اپلیکیشن ها (AJAX Applications) مثال ها (AJAX Examples) مقدمه (DOM Introduction) گره ها (DOM Nodes) دسترسی (DOM Accessing) اطلاعات گره (DOM Node Info) فهرست گره ها (DOM Node List) پیمایش (DOM Traversing) ناوبری (DOM Navigating) گرفتن مقادیر (DOM Get Values) تغییر گره ها (DOM Change Nodes) حذف گره ها (DOM Remove Nodes) جایگزینی گره ها (DOM Replace Nodes) ساخت گره ها (DOM Create Nodes) افزودن گره ها (DOM Add Nodes) کلون کردن گره ها (DOM Clone Nodes) مثال ها (DOM Examples) مقدمه (XPath Introduction) گره ها (XPath Nodes) سینتکس (XPath Syntax) محورها (XPath Axes) عملگرها (XPath Operators) مثال ها (XPath Examples) مقدمه (XSLT Introduction) زبان ها (XSL Languages) تبدیل (XSLT Transform) الگو (<template>) (XSLT <template>) value-of (<value-of>) (XSLT <value-of>) for-each (<for-each>) (XSLT <for-each>) مرتب سازی (XSLT <sort>) اگر (<if>) (XSLT <if>) انتخاب (XSLT <choose>) اعمال قالب ها (XSLT Apply) در سمت کلاینت (XSLT on the Client) در سمت سرور (XSLT on the Server) ویرایش XML (XSLT Edit XML) مثال ها (XSLT Examples) مقدمه (XQuery Introduction) مثال (XQuery Example) FLWOR (XQuery FLWOR) HTML (XQuery HTML) اصطلاحات (XQuery Terms) سینتکس (XQuery Syntax) افزودن (XQuery Add) انتخاب (XQuery Select) توابع (XQuery Functions) مقدمه (DTD Introduction) بلوک های سازنده (DTD Building Blocks) عناصر (DTD Elements) ویژگی ها (DTD Attributes) عناصر در برابر ویژگی ها (DTD Elements vs Attr) موجودیت ها (DTD Entities) مثال ها (DTD Examples) مقدمه (XSD Introduction) چگونه (XSD How To) برچسب <schema> (XSD <schema>) عناصر (XSD Elements) ویژگی ها (XSD Attributes) محدودیت ها (XSD Restrictions) عناصر پیچیده (XSD Complex Elements) خالی (XSD Empty) فقط عناصر (XSD Elements-only) فقط متن (XSD Text-only) ترکیبی (XSD Mixed) نشانگرها (XSD Indicators) <any> (XSD <any>) <anyAttribute> (XSD <anyAttribute>) جایگزینی (XSD Substitution) مثال (XSD Example) رشته (XSD String) تاریخ/زمان (XSD Date/Time) عددی (XSD Numeric) متفرقه (XSD Misc) مرجع (XSD Reference) سرویس ها (XML Services) WSDL (XML WSDL) SOAP (XML SOAP) RDF (XML RDF) RSS (XML RSS) مثال ها (XML Examples) آزمون (XML Quiz) سیلابس (XML Syllabus) برنامه مطالعه (XML Study Plan) گواهینامه (XML Certificate) انواع گره (DOM Node Types) گره (DOM Node) NodeList (DOM NodeList) NamedNodeMap (DOM NamedNodeMap) سند (DOM Document) عنصر (DOM Element) ویژگی (DOM Attribute) متن (DOM Text) CDATA (DOM CDATA) کامنت (DOM Comment) XMLHttpRequest (DOM XMLHttpRequest) پارسر (DOM Parser) المان ها (XSLT Elements) توابع (XSLT/XPath Functions)
نتیجه‌ای برای جستجو یافت نشد.
XML

XML — ویژگی ها (DTD Attributes)

آخرین بروزرسانی: 1404/08/17

ویژگی ها (DTD Attributes)

اینجا با «ویژگی (Attribute)» در DTD آشنا می شویم. ویژگی، اطلاعات اضافه یک عنصر است؛ مثل برچسب روی دفتر. در DTD با اعلان «ATTLIST!» قانونِ نوع و مقدار ویژگی را تعیین می کنیم.

اعلان ویژگی (ATTLIST)

ساختار کلی اعلان ویژگی در DTD این گونه است. نام عنصر، بعد نام ویژگی، بعد نوع و در پایان مقدار پیش فرض یا قاعده مقدار.

<!ATTLIST element-name attribute-name attribute-type attribute-value>
<!ATTLIST payment type CDATA "check">
<payment type="check" />

مشاهده در ادیتور

نوع ویژگی (attribute-type)

نوع ویژگی مشخص می کند چه چیزی مجاز است. چند نمونه مهم از منبع:

  • CDATA: مقدارْ متن عادی است.
  • (en1|en2|..): مقدار باید یکی از فهرست باشد.
  • ID: مقدارْ شناسه یکتا است.
  • IDREF / IDREFS: ارجاع به شناسه عنصر(ها).
  • NMTOKEN / NMTOKENS: نام(های) معتبر XML.
  • ENTITY / ENTITIES: مقدارْ موجودیت(ها) است.
  • NOTATION: نام یک notation.
  • xml:: مقادیر از پیش تعریف شده xml.

قاعده مقدار (attribute-value)

این بخش می گوید ویژگی الزامی است یا اختیاری یا مقدار ثابت دارد.

  • "value": مقدار پیش فرض ویژگی.
  • #REQUIRED: وجود ویژگی اجباری است.
  • #IMPLIED: ویژگی اختیاری است.
  • #FIXED "value": مقدارْ ثابت و تغییرناپذیر است.

مقدار پیش فرض (Default)

اگر نویسنده مقدار ندهد، مقدار پیش فرض اعمال می شود؛ مثل نمره صفر تا وقتی نمره جدید بیاید.

<!ELEMENT square EMPTY>
<!ATTLIST square width CDATA "0">
<square width="100" />

مشاهده در ادیتور

#REQUIRED (اجباری)

وقتی حتماً باید ویژگی بیاید، از #REQUIRED استفاده کن؛ مثل کارت دانش آموزی.

<!ATTLIST person number CDATA #REQUIRED>
<person number="5677" />
<!-- <person /> نامعتبر است -->

مشاهده در ادیتور

#IMPLIED (اختیاری)

وقتی نویسنده مختار است ویژگی را نیاورد و پیش فرضی هم نداریم.

<!ATTLIST contact fax CDATA #IMPLIED>
<contact fax="555-667788" />
<contact />

مشاهده در ادیتور

#FIXED (ثابت)

می خواهی همیشه یک مقدار خاص باشد؟ با #FIXED قفلش کن.

<!ATTLIST sender company CDATA #FIXED "Microsoft">
<sender company="Microsoft" />
<!-- <sender company="W3Schools" /> نامعتبر است -->

مشاهده در ادیتور

مقادیر شمارشی (Enumerated)

وقتی فقط چند انتخاب مجاز است، فهرست را با | بساز؛ مثل منوی سلف.

<!ATTLIST payment type (check|cash) "cash">
<payment type="check" />
<payment type="cash" />

مشاهده در ادیتور

گام های عملی

  1. عنصر هدف را مشخص کن.
  2. نام ویژگی و نوع مناسب را انتخاب کن.
  3. قاعده مقدار را تعیین کن: پیش فرض، REQUIRED، IMPLIED، یا FIXED.
  4. اگر لازم است، مقادیر شمارشی را لیست کن.

نکته: برای ارجاع بین عناصر از ID و IDREF استفاده کن تا لینک ها معتبر بمانند.

مطالب مرتبط: عناصر DTD · بلوک های سازنده DTD · مقدمه DTD.

جمع بندی سریع

  • ATTLIST قانون ویژگی را تعریف می کند.
  • CDATA متن آزاد است؛ فهرست یعنی انتخاب محدود.
  • #REQUIRED اجباری، #IMPLIED اختیاری، #FIXED ثابت است.
  • ID یکتا است؛ IDREF ارجاع به ID دیگر است.
  • پیش فرض فقط وقتی مقدار نیاید اعمال می شود.