Thứ Tư, 30 tháng 7, 2014

Advanced topics of SAX

Các nội dung chính học ở bài này : 

1: Handling Errors :




 Non validating parser :  Khi chúng ta làm việc với XML thường xuyên mắc phải lỗi quét giữ liệu.Handling Errors sẽ kiểm tra xem lỗi này có nghiêm trọng hay không.Nếu nó được coi là nghiêm trọng Handling Errors sẽ tung ra 1 Session rồi tung vào Stack trace.Còn nếu không nó sẽ tung ra một Default Errors rồi cũng gửi vào Stace trace


   Validating parser :  khi chúng ta dùng parsers được config để validate dữ liệu  chúng ta vẫn làm những bước như bình thường,ta phải tạo ra parser,khác biệt ở đây là ta set mode cho validation có report error,và set XML Schema.Để sử lý lỗi ta phải create va register ErrorHandler vào parser tức là ta implement ErrorHandler.Trong quá trình quét dữ liệu thì ErrorHandler sẽ xử lý.

2: DTDHandler :
Ở đây tôi sẽ nói đến việc cách chúng ta sử dụng DTD handler như thế nào : 

Khi chúng ta gặp 1 entities DTDHandler sẽ set DTDhandler methods và thông báo unparsed entities cho ứng dụng

Còn khi  SAX lấy thông tin về notations thì dứng dụng sẽ không overwrite ra DTDHandler nữa mà nó sẽ hiện ra thông báo cho ứng dụng

Chúng ta có thể tham khảo ví dụ ở đường link sau : Demo


3: Lexical Event : 
Được sử dụng để xác định các comment và những thứ liên quan đến parserd entities.
Chúng ta tham khảo demo về Lexical Handler tại đâyLexical Event


Một trong những chủ đề cần nhớ của bài này là Filter:
Định nghĩa : 
Là một interface đóng vai trò là sự kiện từ  SAX driver (thường là một XMLReader) cho các ứng dụng và liên kết các ứng dụng đến với SAX driver
Demo tham khảo : Demo filter

Nhận xét : 
Các công cụ của SAX giúp chung ta kiêm soát được lỗi hơn nhờ Handling Errors
Code trở nên rõ ràng hơn nhiều nhờ  Lexical Event , Filter
Cải tiến hơn nhiều so với công cụ trước 

Không có nhận xét nào:

Đăng nhận xét