XSD 属性

ทุกคุณสมบัติถูกประกาศในรูปแบบที่ง่ายต่อการใช้งาน。

อะไรคือคุณสมบัติ?

อิเล็กทรอนิกส์เอ็กซ์เอ็มแบบง่าย ไม่สามารถมีคุณสมบัติได้ ถ้าอิเล็กทรอนิกส์มีคุณสมบัติ มันจะถูกมองเป็นชนิดที่ทรงพลัง แต่คุณสมบัติมักถูกประกาศในรูปแบบที่ง่ายต่อการใช้งาน。

แบบฝึกวิธีในการประกาศคุณสมบัติ

การกำหนดความเป็นภาษาของคุณสมบัติคือ:

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

ที่นี่ xxx หมายถึงชื่อคุณสมบัติ yyy กำหนดประเภทของข้อมูลของคุณสมบัติ อิเล็กทรอนิกส์เอ็กซ์เอ็มแชมเปย์มีประเภทข้อมูลที่ถูกกำหนดภายในอยู่มากมาย。

ประเภทที่ใช้บ่อยที่สุดคือ:

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

ตัวอย่าง

นี่คืออิเล็กทรอนิกส์เอ็กซ์เอ็มและได้มีคุณสมบัติ:

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

นี่คือการกำหนดคุณสมบัติที่เท่ากัน:

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

ค่าที่เรียกว่า "default" และ "fixed" ของคุณสมบัติ

คุณสมบัติสามารถมีค่าที่เรียกว่า "default" หรือ "fixed" ที่ถูกกำหนด。

เมื่อไม่มีค่าอื่นๆ ที่ถูกกำหนด ค่าที่เรียกว่า "default" จะถูกแจกจ่ายอัตโนมัติแก่อิเล็กทรอนิกส์。

ในตัวอย่างด้านล่างนี้ ค่าที่เรียกว่า "default" คือ "EN":

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

ค่าที่ถูกกำหนดเป็นค่า "EN" จะถูกแจกจ่ายอัตโนมัติแก่อิเล็กทรอนิกส์ และคุณไม่สามารถกำหนดค่าอื่นๆ ได้。

ในตัวอย่างด้านล่างนี้ ค่าที่ถูกกำหนดเป็นค่า "EN":

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

คุณสมบัติที่เป็นที่เลือกใช้งานและจำเป็น

โดยมาตรฐาน คุณสมบัติเป็นที่เลือกใช้งาน ถ้าต้องการกำหนดให้คุณสมบัติเป็นจำเป็น ใช้คุณสมบัติ "use" ดังนี้:

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

ข้อจำกัดเนื้อหา

เมื่ออิเล็กทรอนิกส์เอ็กซ์เอ็มและคุณสมบัติมีประเภทของข้อมูลที่ถูกกำหนด จะมีการเพิ่มข้อจำกัดที่เกี่ยวกับเนื้อหาของอิเล็กทรอนิกส์หรือคุณสมบัติ。

ถ้าประเภทของอิเล็กทรอนิกส์เอ็กซ์เอ็มแอลเป็น "xs:date" และเนื้อหาที่มีความหมายเป็นตัวอักษรที่คล้ายกับ "Hello World" อิเล็กทรอนิกส์จะไม่ได้รับการตรวจสอบ (ผ่าน)。

ผ่าน XML schema คุณยังสามารถเพิ่มข้อจำกัดของตัวเองใน XML องค์ประกอบและอาทิตย์ของคุณได้ ข้อจำกัดเหล่านี้เรียกว่า facet (หมายเหตุ: หมายถึง(มหาสมบัติ)ด้าน สามารถแปลเป็น ข้อจำกัดด้าน) คุณจะได้รับข้อมูลเกี่ยวกับ facet มากยิ่งขึ้นในบทต่อไป