Chuyển đổi một tệp XML thành dạng tốt

Tìm hiểu cách viết XML được định dạng và hợp lệ

Đôi khi sẽ dễ hiểu hơn cách viết XML được định dạng tốt bằng cách xem ví dụ. Bản tin Web Writer được viết bằng cách sử dụng một dạng XML - tôi gọi nó là AML hoặc About Markup Language (xem hình!). Trong khi đây là một tài liệu làm việc, nó không thực sự là một tài liệu XML đúng ngữ pháp hoặc hợp lệ.

Hình thành tốt

Có một số quy tắc cụ thể để tạo một tài liệu XML được định dạng tốt:

Chỉ có hai vấn đề với tài liệu khiến tài liệu không được định dạng tốt:

Điều đầu tiên mà tài liệu AML cần là một tuyên bố khai báo XML.

Vấn đề khác là không có một yếu tố nào hoàn toàn bao quanh tất cả các phần tử khác. Để khắc phục điều này, tôi sẽ thêm phần tử vùng chứa bên ngoài:

Làm cho hai thay đổi đơn giản đó (và đảm bảo rằng tất cả các phần tử chứa chỉ CDATA) sẽ biến tài liệu không được định dạng thành một tài liệu được tạo đúng.

Một tài liệu XML hợp lệ được xác nhận hợp lệ đối với Định nghĩa Kiểu Tài liệu (DTD) hoặc Lược đồ XML. Đây là một bộ quy tắc được tạo bởi nhà phát triển hoặc một tổ chức tiêu chuẩn xác định ngữ nghĩa của tài liệu XML. Chúng cho máy tính biết phải làm gì với đánh dấu.

Trong trường hợp của Ngôn ngữ Đánh dấu Giới thiệu, vì đây không phải là một ngôn ngữ XML chuẩn, như XHTML hoặc SMIL, DTD sẽ được tạo bởi nhà phát triển. DTD đó rất có thể sẽ nằm trên cùng một máy chủ với tài liệu XML và được tham chiếu ở đầu tài liệu.

Trước khi bạn bắt đầu phát triển một DTD hoặc Schema cho các tài liệu của bạn, bạn nên nhận ra rằng chỉ đơn giản là thông qua việc được hình thành tốt, một tài liệu XML là tự mô tả, và do đó không cần một DTD.

Ví dụ, với tài liệu AML đúng ngữ pháp của chúng tôi, có các thẻ sau:

Nếu bạn đã quen thuộc với bản tin Web Writer, bạn có thể nhận ra các phần khác nhau của bản tin. Điều này làm cho nó rất dễ dàng để tạo các tài liệu XML mới sử dụng cùng một định dạng chuẩn. Tôi biết rằng tôi sẽ luôn đặt tiêu đề dài đầy đủ vào thẻ và URL phần đầu tiên trong thẻ.

DTD

Nếu bạn được yêu cầu viết một tài liệu XML hợp lệ, hoặc sử dụng dữ liệu hoặc để xử lý nó, bạn sẽ bao gồm nó trong tài liệu của bạn với thẻ. Trong thẻ này, bạn định nghĩa thẻ XML cơ sở trong tài liệu và vị trí của DTD (thường là một URI Web). Ví dụ:

Một điều tốt đẹp về khai báo DTD là bạn có thể khai báo rằng một DTD là cục bộ cho hệ thống mà tài liệu XML là với "SYSTEM". Bạn cũng có thể trỏ đến một DTD công cộng, chẳng hạn như với một tài liệu HTML 4.0:

Khi bạn sử dụng cả hai, bạn đang yêu cầu tài liệu sử dụng một DTD cụ thể (mã định danh công khai) và nơi để tìm nó (mã định danh hệ thống).

Cuối cùng, bạn có thể bao gồm một DTD nội bộ trực tiếp trong tài liệu, trong thẻ DOCTYPE. Ví dụ (đây không phải là một DTD hoàn chỉnh cho tài liệu AML):

< ! ENTITY meta_keywords (#PCDATA)> ]>

Lược đồ XML

Để tạo một tài liệu XML hợp lệ, bạn cũng có thể sử dụng một tài liệu XML Schema để định nghĩa XML của bạn. Lược đồ XML là một tài liệu XML mô tả các tài liệu XML. Tìm hiểu cách viết lược đồ.

chú thích

Chỉ cần trỏ đến một DTD hoặc Lược đồ XML là không đủ. XML có trong tài liệu phải tuân thủ các quy tắc trong DTD hoặc lược đồ. Sử dụng trình phân tích cú pháp xác thực là một cách đơn giản để kiểm tra xem XML của bạn có tuân thủ các quy tắc DTD hay không. Bạn có thể tìm thấy nhiều trình phân tích cú pháp như vậy trực tuyến.