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 في القسم التالي.