Thuộc tính XSD
Tất cả các thuộc tính được khai báo là kiểu đơ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ó các thuộc tính thì nó được coi là thuộc loại phức tạp. Nhưng bản thân thuộc tính đó luôn được khai báo là một kiểu đơn giản.
Làm thế nào để xác định một thuộc tính?
Cú pháp để xác định một thuộc tính là:
<xs:attribute name="xxx" type="yyy"/>
trong đó xxx là tên của thuộc tính và yyy chỉ định kiểu dữ liệu của thuộc tính.
Lược đồ XML có rất nhiều kiểu dữ liệu tích hợp. Các loại phổ biến nhất là:
- xs:chuỗi
- xs:thập phân
- xs: số nguyên
- xs:boolean
- xs:ngày
- xs: thời gian
Ví dụ
Đây là một phần tử XML có thuộc tính:
<lastname lang="EN">Smith</lastname>
Và đâ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 cho thuộc tính
Các thuộc tính có thể có giá trị mặc định HOẶC giá trị cố định được chỉ định.
Giá trị mặc định được tự động gán cho thuộc tính khi không có giá trị nào khác được chỉ định.
Trong ví dụ sau, giá trị mặc định là "EN":
<xs:attribute name="lang" type="xs:string" default="EN"/>
Một giá trị cố định cũng được tự động gán cho thuộc tính và bạn không thể chỉ đị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
Các thuộc tính là tùy chọn theo mặc định. Để chỉ định rằng thuộc tính này là bắt buộc, hãy sử dụng thuộc tính "use":
<xs:attribute name="lang" type="xs:string" use="required"/>
Hạn chế về nội dung
Khi một phần tử hoặc thuộc tính XML có kiểu dữ liệu được xác định, nó sẽ đặt ra các hạn chế đối với nội dung của phần tử hoặc thuộc tính đó.
Nếu một phần tử XML thuộc loại "xs:date" và chứa một chuỗi như "Hello World" thì phần tử đó sẽ không xác thực.
Với Lược đồ XML, bạn cũng có thể thêm các hạn chế của riêng mình vào các thành phần và thuộc tính XML của mình. Những hạn chế này được gọi là các khía cạnh. Bạn có thể đọc thêm về các khía cạnh trong chương tiếp theo.