XSD - Thuộc tính
- Trang trước Element XSD
- Trang tiếp theo Hạn chế XSD
Tất cả các thuộc tính đều đượcdeclare như một loại đơn giản.
Thuộc tính là gì?
Các phần tử đơn giản không thể có thuộc tính. Nếu một phần tử có thuộc tính, nó sẽ được coi là một loại phức hợp. Tuy nhiên, thuộc tính luôn đượcdeclare như một loại đơn giản.
Làm thế nào đểdeclare thuộc tính?
Cách định nghĩa ngữ pháp thuộc tính là:
<xs:attribute name="xxx" type="yyy"/>
Ở đây, xxx là tên thuộc tính, yyy quy định loại dữ liệu của thuộc tính. XML Schema có rất nhiều loại dữ liệu được xây dựng sẵn.
Loại được sử dụng phổ biến nhất là:
- xs:string
- xs:decimal
- xs:integer
- xs:boolean
- xs:date
- xs:time
Mẫu
Đây là phần tử XML có thuộc tính:
<lastname lang="EN">Smith</lastname>
Đây là định nghĩa thuộc tính tương ứng:
<xs:attribute name="lang" type="xs:string"/>
Giá trị mặc định và cố định của thuộc tính
Thuộc tính có thể có giá trị mặc định hoặc cố định được chỉ định.
Khi không có giá trị nào khác được quy định, giá trị mặc định sẽ được phân phối tự động cho phần tử.
Trong ví dụ sau, giá trị mặc định là "EN":
<xs:attribute name="lang" type="xs:string" default="EN"/>
Giá trị cố định cũng sẽ được phân phối tự động cho phần tử, và bạn không thể quy định giá trị khác.
Trong ví dụ sau, giá trị cố định là "EN":
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
Thuộc tính tùy chọn và bắt buộc
Trong trường hợp mặc định, thuộc tính là tùy chọn. Nếu muốn quy định thuộc tính là bắt buộc, hãy sử dụng thuộc tính "use":
<xs:attribute name="lang" type="xs:string" use="required"/>
Định hạn nội dung
Khi phần tử XML hoặc thuộc tính có loại dữ liệu được định nghĩa, sẽ thêm các限定 vào nội dung của phần tử hoặc thuộc tính.
Nếu loại của phần tử XML là "xs:date" và nội dung của nó là chuỗi tương tự như "Hello World", phần tử sẽ không được (xác thực).
Thông qua XML schema, bạn cũng có thể thêm các hạn chế của riêng mình vào các phần tử và thuộc tính XML của mình. Các hạn chế này được gọi là facet (ghi chú biên tập: có nghĩa là (đa diện体的) mặt, có thể dịch là hạn chế mặt). Bạn sẽ tìm hiểu thêm về facet trong phần tiếp theo.
- Trang trước Element XSD
- Trang tiếp theo Hạn chế XSD