ویژگی ها (XML Attributes)
در XML، «ویژگی (Attribute)» داده توصیفی یک عنصر است. ویژگی ها مثل برچسب روی دفترند؛ اطلاعات اضافی می دهند، اما متن اصلی داخل خود عنصر می ماند.
ویژگی ها باید داخل کوتیشن باشند
مقدار ویژگی همیشه داخل کوتیشن می آید. می توانید از دوتایی یا تکی استفاده کنید.
<person gender="female">
<person gender='female'>
نکته: اگر مقدار شامل " باشد، از ' استفاده کنید. یا از موجودیت ها کمک بگیرید.
<gangster name='George "Shotgun" Ziegler'>
<gangster name="George "Shotgun" Ziegler">
عنصر یا ویژگی؟
اطلاعات یکسان را می توان به صورت ویژگی یا عنصر نوشت. انتخاب، وابسته به نیاز است.
<person gender="female">
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
<person>
<gender>female</gender>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
سه شکل برای یک داده
تاریخ می تواند ویژگی باشد، عنصر ساده باشد، یا عنصرِ چندبخشی باشد.
<note date="2008-01-10">
<to>Tove</to>
<from>Jani</from>
</note>
<note>
<date>2008-01-10</date>
<to>Tove</to>
<from>Jani</from>
</note>
<note>
<date>
<year>2008</year>
<month>01</month>
<day>10</day>
</date>
<to>Tove</to>
<from>Jani</from>
</note>
نکته: ساختارِ چندبخشی خواناتر است و توسعه پذیری بهتری دارد.
چه زمانی از ویژگی کمتر استفاده کنیم؟
ویژگی ها چند مقدار را سخت نگه می دارند. ساختار درختی ندارند. پس توسعه سخت می شود.
<note day="10" month="01" year="2008" to="Tove" from="Jani" heading="Reminder" body="Don't forget me this weekend!">
</note>
هشدار: زیاده روی در ویژگی ها خوانایی و تغییرپذیری را کاهش می دهد.
ویژگی ها برای متادیتا
«متادیتا (Metadata)» یعنی داده درباره داده. شناسه ها نمونه خوب متادیتا هستند.
<messages>
<note id="501">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
<note id="502">
<to>Jani</to>
<from>Tove</from>
<heading>Re: Reminder</heading>
<body>I will not</body>
</note>
</messages>
گام های عملی
- یک ویژگی با کوتیشن درست بنویس.
- همان داده را عنصر کن.
- برای متادیتا، از ویژگی id استفاده کن.
برای ادامه مسیر، صفحه عناصر XML و فضاهای نام XML را هم ببین. همچنین قواعد را در سینتکس XML مرور کن.
جمع بندی سریع
- ویژگی ها همیشه داخل کوتیشن اند.
- عنصر برای داده اصلی مناسب تر است.
- ویژگی برای متادیتا عالی است.
- از ویژگی های زیاد پرهیز کن.
- ساختار چندبخشی خوانایی را افزایش می دهد.