XSD - Phần tử <schema>
Phần tử <schema> là phần tử gốc của mọi Lược đồ XML.
Phần tử <schema>
Phần tử <schema> là phần tử gốc của mọi Lược đồ XML:
<?xml version="1.0"?>
<xs:schema>
...
...
</xs:schema>
Phần tử <schema> có thể chứa một số thuộc tính. Một khai báo lược đồ thường trông giống như sau:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="https://www.w3schools.com"
xmlns="https://www.w3schools.com"
elementFormDefault="qualified">
...
...
</xs:schema>
Đoạn sau:
xmlns:xs="http://www.w3.org/2001/XMLSchema"
chỉ ra rằng các phần tử và kiểu dữ liệu được sử dụng trong lược đồ đến từ không gian tên "http://www.w3.org/2001/XMLSchema". Nó cũng chỉ định rằng các phần tử và kiểu dữ liệu đến từ không gian tên "http://www.w3.org/2001/XMLSchema" phải được đặt trước bằng xs:
Đoạn này:
targetNamespace="https://www.w3schools.com"
cho biết rằng các phần tử được lược đồ này xác định (ghi chú, đến, từ, tiêu đề, nội dung.) đến từ không gian tên "https://www.w3schools.com".
Đoạn này:
xmlns="https://www.w3schools.com"
cho biết rằng không gian tên mặc định là "https://www.w3schools.com".
Đoạn này:
elementFormDefault="qualified"
chỉ ra rằng bất kỳ phần tử nào được sử dụng bởi tài liệu cá thể XML đã được khai báo trong lược đồ này phải đủ điều kiện không gian tên.
Tham chiếu một lược đồ trong một tài liệu XML
Tài liệu XML này có tham chiếu đến một Lược đồ XML:
<?xml version="1.0"?>
<note xmlns="https://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.w3schools.com note.xsd">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Đoạn sau:
xmlns="https://www.w3schools.com"
chỉ định khai báo không gian tên mặc định. Khai báo này cho trình xác thực lược đồ biết rằng tất cả các phần tử được sử dụng trong tài liệu XML này được khai báo trong không gian tên "https://www.w3schools.com".
Khi bạn có sẵn không gian tên Phiên bản lược đồ XML:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
bạn có thể sử dụng thuộc tính schemaLocation. Thuộc tính này có hai giá trị, được phân tách bằng dấu cách. Giá trị đầu tiên là không gian tên để sử dụng. Giá trị thứ hai là vị trí của lược đồ XML để sử dụng cho không gian tên đó:
xsi:schemaLocation="https://www.w3schools.com note.xsd"