ویژگی‌های XSD

تمام ویژگی‌ها به عنوان نوع ساده اعلام می‌شوند.

ویژگی چیست؟

عناصر ساده نمی‌توانند ویژگی داشته باشند. اگر عنصری ویژگی داشته باشد، آن عنصر به عنوان نوع پیچیده در نظر گرفته می‌شود. اما ویژگی‌ها همیشه به عنوان نوع ساده اعلام می‌شوند.

چگونه ویژگی را اعلام می‌کنیم؟

جملات تعریف ویژگی چگونه است؟

<xs:attribute name="xxx" type="yyy"/>

در اینجا، xxx نام ویژگی است، yyy نوع داده ویژگی را مشخص می‌کند. XML Schema دارای تعداد زیادی نوع داده داخلی است.

مقدارهای معمولی عبارتند از:

  • xs:string
  • xs:decimal
  • xs:integer
  • xs:boolean
  • xs:date
  • xs:time

مثال

این یک عنصر XML با ویژگی است:

<lastname lang="EN">Smith</lastname>

این تعریف ویژگی است:

<xs:attribute name="lang" type="xs:string"/>

مقدار پیش‌فرض و ثابت ویژگی‌ها

ویژگی‌ها می‌توانند دارای مقدار پیش‌فرض یا ثابت باشند.

وقتی که هیچ مقدار دیگری تعیین نشده باشد، مقدار پیش‌فرض به طور خودکار به عناصر تخصیص داده می‌شود.

در مثال‌های زیر، مقدار پیش‌فرض "EN" است:

<xs:attribute name="lang" type="xs:string" default="EN"/>

مقدار ثابت نیز به طور خودکار به عناصر تخصیص داده می‌شود و شما نمی‌توانید مقدار دیگری تعیین کنید.

در مثال‌های زیر، مقدار ثابت "EN" است:

<xs:attribute name="lang" type="xs:string" fixed="EN"/>

ویژگی‌های اختیاری و اجباری

مقصد پیش‌فرض، ویژگی‌ها اجباری نیستند. اگر بخواهید ویژگی‌ها را اجباری کنید، از ویژگی "use" استفاده کنید:

<xs:attribute name="lang" type="xs:string" use="required"/>

محدودیت محتوا

وقتی عنصر یا ویژگی XML نوع داده‌ای تعریف شده دارد، محدودیت‌ها به محتوای عنصر یا ویژگی اضافه می‌شود.

اگر نوع XML عنصر "xs:date" باشد و محتوای آن شبیه به رشته "Hello World" باشد، عنصر تأیید نمی‌شود.

با استفاده از XML schema، شما می‌توانید محدودیت‌های خود را به عناصر و ویژگی‌های XML خود اضافه کنید. این محدودیت‌ها به عنوان facet (توضیح نویسنده: به معنای (مولد چندوجهی) وجه، می‌تواند به عنوان محدودیت ترجمه شود). شما در بخش بعدی بیشتر درباره facet یاد خواهید گرفت.