Sự khác biệt giữa SAX và DOM

Anonim

SAX vs DOM

API đơn giản cho XML (còn gọi là SAX) là một API phân tích cú pháp truy xuất nối tiếp cho XML (nghĩa là một API thu thập dữ liệu và phân tích văn bản từ đó tài liệu đặc biệt trong các trang web được tạo động, hoặc các trang web có nội dung tương tác) Nó hoạt động như một trong những lựa chọn thay thế phổ biến hơn cho Document Object Model (còn gọi là DOM)

> DOM là một quy ước hoàn toàn độc lập với một ngôn ngữ cụ thể Nó là một quy ước tương thích với nhiều nền tảng Nó được sử dụng để đại diện và tương tác với các đối tượng trong các tài liệu HTML, XML và XHTML Trong cú pháp của ngôn ngữ a DOM sử dụng, nhiều khía cạnh của DOM có thể được giải quyết và thao tác.

Một trình phân tích cú pháp SAX như những gì được gọi là dòng suối arser (có nghĩa là nó có được và phân tích văn bản đang phát trực tuyến từ vị trí của nó). Nó chứa một sự kiện API (đó là một API phụ thuộc vào các sự kiện xảy ra trong một môi trường nhất định). Người dùng có quyền kiểm soát để xác định số lượng các phương pháp gọi lại (tức là các phương pháp theo dõi lại nguồn của dữ liệu yêu cầu). Các phương pháp này sẽ được gọi khi các sự kiện xảy ra trong quá trình phân tích cú pháp. Có bốn sự kiện chính có thể xảy ra trong quá trình phân tích cú pháp: các nút kiểm tra XML, các nút phần tử XML, các hướng dẫn Xử lý XML và các nhận xét XML. Khi gặp phải các đặc tính XML này, các sự kiện được đưa vào để chơi. Các sự kiện cũng xảy ra khi các tính năng này đã kết thúc. Như vậy, SAX là unidirectional (có nghĩa là di chuyển theo một hướng), và dữ liệu đã được phân tích cú pháp trước đây không thể được đọc lại mà không cần bắt đầu hoạt động phân tích cú pháp sao lưu.

DOM là cách chơi tốt nhất cho các ứng dụng, trong đó tài liệu phải được truy cập nhiều lần, hoặc nếu tài liệu xảy ra theo thứ tự trình tự của nó. Nếu ứng dụng nằm trong một dãy nghiêm ngặt và một lần vượt qua (có nghĩa là không thể truy cập được mà không bắt đầu một chuỗi phân tích cú pháp nữa) thì SAX sẽ được phát. Hầu hết các trình duyệt web không sử dụng DOM cho mục đích hiển thị tài liệu HTML. Tuy nhiên, DOM là một điều cần thiết cho các tập lệnh JavaScript muốn phân tích động hoặc thay đổi bất cứ điều gì liên quan đến một trang web. Về cơ bản, DOM là cách JavaScript có thể hình dung trang HTML và trạng thái trình duyệt trong đó nó chứa (nghĩa là khám phá môi trường của nó).

Tóm tắt:

1. SAX là một API phân tích cú pháp truy cập nối tiếp cho các trang web động; DOM là một quy ước không có ngôn ngữ hoặc phụ thuộc vào ngôn ngữ.

2. Bộ phân tích cú pháp SAX cho phép người dùng kiểm soát số lượng các phương pháp gọi lại; DOM hoạt động độc lập để cho phép các tập lệnh JavaScript truy cập, thay đổi hoặc phân tích bất cứ điều gì liên quan đến các trang web động, cho phép JavaScript để "thể chất" khám phá môi trường của nó.