Ngữ pháp quy tắc XML
- Trang trước Cấu trúc cây XML
- Trang tiếp theo Các phần tử XML
Ngữ pháp của XML rất đơn giản và logic. Các quy tắc này rất dễ học và dễ sử dụng.
Tài liệu XML phải có phần tử gốc
Tài liệu XML phải chứa mộtPhần tử gốc,phần tử này là phần tử của tất cả các phần tử khácPhần tử cha:
<root> <child> <subchild>.....</subchild> </child> </root>
Trong ví dụ này,<note>
là phần tử gốc:
<?xml version="1.0" encoding="UTF-8"?> <note> <to>George</to> <from>John</from> <heading>Giải thích</heading> <body>Đừng quên cuộc họp!</body> </note>
XML prolog (XML Prolog)
Dòng này được gọi là XML Prolog:
<?xml version="1.0" encoding="UTF-8"?>
XML prolog là tùy chọn. Nếu có, thì phải nằm ở dòng đầu tiên của tài liệu.
Tài liệu XML có thể chứa ký tự quốc tế, chẳng hạn như tiếng Na Uy øæå hoặc tiếng Pháp êèé.
Để tránh lỗi, bạn nên chỉ định mã định dạng đang sử dụng và lưu tệp XML dưới định dạng UTF-8.
UTF-8 là mã định dạng ký tự mặc định của tài liệu XML.
Bạn có thể trongHướng dẫn mã định dạng ký tựđể học mã định dạng ký tự.
Lưu ý:UTF-8 cũng là mã định dạng mặc định của HTML5, CSS, JavaScript, PHP và SQL.
Tất cả các phần tử XML đều phải có thẻ kết thúc
Trong XML, việc bỏ qua thẻ kết thúc là bất hợp pháp. Tất cả các phần tử đềuPhảiCó thẻ kết thúc:
<p>Đây là một đoạn văn.</p> <br />
Lưu ý:XML prolog không có thẻ kết thúc! Điều này không phải là lỗi. Prolog không phải là phần của XML. Nó không phải là phần tử XML và không cần thẻ kết thúc.
Thẻ XML phân biệt chữ hoa/thuộc tính
Thẻ XML phân biệt chữ hoa/thuộc tính. Thẻ <Letter> khác với thẻ <letter>.
Thẻ bắt đầu và kết thúc phải sử dụng cùng một cách viết hoa/thuộc tính:
<message>Đúng rồi</message>
Chú thích:Mở và đóng thẻ thường được gọi là thẻ bắt đầu và thẻ kết thúc. Dù bạn thích từ nào, ý nghĩa của chúng đều là như nhau.
Các phần tử XML phải được nhúng đúng
Trong HTML, bạn có thể thấy các phần tử không được nhúng đúng:
<b><i>This text is bold and italic</b></i>
Trong XML, tất cả các phần tửPhảiNhúng đúng
<b><i>This text is bold and italic</i></b>
Trong ví dụ trên, ý nghĩa chính xác của việc nhúng đúng là: vì phần tử <i> được mở trong phần tử <b>, nó phải được đóng trong phần tử <b>.
Giá trị thuộc tính của XML phải được đặt trong dấu ngoặc kép
Giá trị thuộc tính của XML phải được đặt trong dấu ngoặc kép:
Tương tự như HTML, XML cũng có thể có thuộc tính (đối với tên/giá trị).
<note date="12/11/2007"> <to>George</to> <from>John</from> </note>
Tham chiếu thực thể
Trong XML, một số ký tự có ý nghĩa đặc biệt.
Nếu bạn đặt ký tự "<" trong phần tử XML, sẽ xảy ra lỗi vì trình phân tích sẽ coi nó là bắt đầu của phần tử mới.
Điều này sẽ tạo ra lỗi XML:
<message>if salary < 1000 then</message>
Để tránh lỗi này, hãy sử dụngTham chiếu thực thểđể thay thế ký tự "<":
<message>if salary < 1000 then</message>
Trong XML, có 5 tham chiếu thực thể predefined:
< | < | Nhỏ hơn |
> | > | Đại hơn |
& | & | Và |
' | ' | ' |
" | " | " |
Chú thích:Trong XML, chỉ ký tự "<" và "&"" thực sự là không hợp lệ. ">" là hợp lệ, nhưng thói quen sử dụng ">" để thay thế nó là một thói quen tốt.
Ghi chú trong XML
Cú pháp ghi chú trong XML rất tương tự với HTML:
<!-- This is a comment -->
Không được phép có hai dấu gạch chéo liên tiếp trong chú thích:
<!-- This is an invalid -- comment -->
XML giữ lại khoảng trống
HTML sẽ giảm bớt (hoặc hợp nhất) nhiều ký tự khoảng trống liên tiếp thành một, trong XML, khoảng trống trong tài liệu sẽ không bị xóa bỏ:
XML: Chào George HTML: Chào George
XML lưu dòng mới bằng LF
Trong các ứng dụng Windows, dòng mới thường được lưu trữ bằng một cặp ký tự: ký tự cuộn lại (CR) và ký tự xuống dòng (LF). Cặp ký tự này có sự tương tự với hành động đặt dòng mới của máy đánh chữ.
Unix và Mac OSX sử dụng LF.
Hệ thống Mac cũ sử dụng CR.
XML lưu lại dòng mới dưới dạng LF.
XML đủ tiêu chuẩn
Tài liệu XML tuân thủ ngữ pháp trên được gọi là tài liệu XML 'đủ tiêu chuẩn'.
- Trang trước Cấu trúc cây XML
- Trang tiếp theo Các phần tử XML