Trong nhiều chi tiết như chúng được hiển thị, hai ví dụ của bạn giống nhau về mặt ngữ nghĩa.
Đó là một sự hiểu lầm phổ biến của XML trong một tài liệu XML đúng ngữ pháp, thứ tự của các phần tử anh chị em là quan trọng. Các XML 1.0 spec xác định rằng các thuộc tính là không có thứ tự, tuy nhiên nó không nói gì về các yếu tố. Do đó một bộ xử lý XML được tự do báo cáo các phần tử anh chị em theo bất kỳ thứ tự nào nó thích.
Điều đó nói rằng, tôi không nghĩ rằng bất kỳ bộ xử lý XML thường được sử dụng nào báo cáo các phần tử theo thứ tự khác với thứ tự chúng xuất hiện trong tài liệu.
Bạn hỏi về tài liệu 'hợp lệ' - điều này ngụ ý rằng DTD hoặc lược đồ đang được sử dụng và do đó có thể (hoặc có thể không) là trường hợp đơn đặt hàng có liên quan. Có các cơ chế cho một DTD hoặc lược đồ để xác định thứ tự phần tử đó có liên quan trong một tài liệu. Tuy nhiên, các ví dụ của bạn không hiển thị việc sử dụng DTD hoặc lược đồ.
Trong thực tế, có một DTD. Cảm ơn. – Segolas
"Đó là một sự hiểu lầm phổ biến của XML trong một tài liệu XML được định dạng tốt, thứ tự của các phần tử là quan trọng." Không có sự hiểu lầm. Xem 3.2.1. Tất nhiên, một bộ xử lý XML có thể có khả năng xử lý ràng buộc trình tự và vẫn trả về các phần tử theo một thứ tự khác. Nó có thể rot13 tất cả các nút văn bản, quá. –
@Robert Rossney - Tôi đã chỉnh sửa để thay đổi thành "các phần tử anh chị em", tuy nhiên, tôi không thấy sự liên quan của 3.2.1 để sắp xếp các phần tử anh chị em trong một tài liệu được tạo đúng. Bạn có thể xây dựng? – philhobgen