第 1 页
Kiến trúc phân tầng của web ngữ nghĩa BIỂU DIỄN TẦNG DỮ LIỆỆU XML Lê Thanh Hương Hanoi University of Technology – Master 2006 1 2 XML So sánh HTML và XML XML (Extensible Markup Language), là tập con <p><b>Mrs. Mary của SGML – được sử dụng cho các tài liệu điện McGoon</b> tửử. <br><br> 1401 Main Street XML cho phép tạo ra tài liệu có cấu trúc -> <br> máy tính có thể dễ dàng trích thông tin từ tài Anytown, NC 34829</p> liệu HTML được thiết kế như trong ý nghĩ của con người, máy không hiểu được. Các thẻ HTML không chỉ cho trình duyệt thông tin đó là gì XML đưa ý nghĩa vào các thẻ trong văn bản 3 4 goupee.com fb.com/groups/goupee 1
第 2 页
Các phần của một văn bản XML XML thay đổi Web như thế nào Thẻ là phần chữ giữa dấu ngoặc đơn bên trái XML đơn giản hóa việc trao đổi dữ liệu. vì (<) và ngoặc đơn bên phải (>). Có thẻ bắt đầu các tổ chức hiếm khi làm chuẩn hóa trên một (như <name>) vàà thẻẻ kếết thúúc (như </name>) bbộộ công ccông cụụ duy nhduy nhấấtt ÆÆ có thcó thểể ddễễ dàngdàng chuychuyểểnn đổi những định dạng dữ liệu bên trong thành Phần tử là thẻ bắt đầu, thẻ kết thúc, và mọi XML và ngược lại. thứ giữa chúng. VD, phần tử <name> gồm 3 XML cho phép mã hóa thông minh. có thể phần tử con: <title>, <first-name>, và <last- viết chương trình để xử lí văn bản XML mà name>. không cần con người tác động.. ThuThuộộc tínhc tính là mlà mộột ct cặặp giá trp giá trịị tên trong thtên trong thẻẻ bbắắtt XML cho phép tìm kiXML cho phép tìm kiếếm thông minhm thông minh. VDVD, đầu của một phần tử. VD, state là một thuộc tìm người có tên “Nam” tính của phần tử <city> với các trang HTML, sẽ thấy “Việt Nam”, hướng Nam, … với văn bản XML, tìm <first-name> chứa từ Chip, kết quả tốt hơn rất nhiều. 5 6 Các quy tắc văn bản XML Các quy tắc văn bản XML Có ba loại văn bản XML: Phần tử gốc Văn bản khôngg hợợpp lệệ khôngg theo ngguyyên Một văn bản XML phải được chứa trong một tắc cú pháp được quy định bởi đặc tính kỹ phần tử tố đơn gọi là phần tử gốc, nó chứa tất thuật XML hoặc được định nghĩa bởi nhà phát cả các từ ngữ và bất cứ phần tử nào trong văn triển bản. VD: <?xml version="1.0"?> <!-- A well-formed document --> Văn bản hợp lệ tuân theo cả hai nguyên tắc, <greeting> Hello, World! </greeting> nguyên tắc cú pháp XML và nguyên tắc quy Các phần tử XML không thể đan chéo định trong DTD hoặc lược đồ. CCầần thn thẻẻ kkếết thúct thúc Văn bản chuẩn tuân theo quy tắc cú pháp XML nhưng không có DTD hoặc lược đồ. Phân biệt chữ hoa/chữ thường Thuộc tính phải có giá trị. Các giá trị đặt trong dấu trích dẫn (" hoặc ') 7 8 goupee.com fb.com/groups/goupee 2
第 3 页
Các quy tắc văn bản XML Xác định nội dung văn bản Khai báo XML Những yếu tố sử dụng để trình bày dữ liệu <?xml version="1.0" encoding="ISO-8859-1" Document Typype Definition ((Địịnh ngghĩa kiểu standalone="no"?> của Văn bản): DTD xác định các phần tử có thể Không gian tên (Namespaces): để sử dụng xuất hiện trong văn bản, thứ tự chúng xuất không gian tên, dùng tiền tố xmlns và đặt hiện, cách chúng được sắp xếp trong cái khác, chúng trong một chuỗi riêng biệt: và các chi tiết cơ bản trong cấu trúc văn bản <?xml version="1.0"?> XML. <customer_summary Lược đồ XML. xác định tất cả các cấu trúc văn xmlns:addr=xmlns:addr= http://www"http://www xyz com/addresses/.xyz.com/addresses/" xmlns:books="http://www.zyx.com/books/" bản mà bạn có để đặt trong một DTD, nó cũng xmlns:mortgage="http://www.yyz.com/title/" > có thể xác định kiểu dữ liệu và các quy tắc ... <addr:name><title>Mrs.</title> ... </addr:name>... phức tạp hơn DTD có thể làm. ... <books:title>Lord of the Rings</books:title> ... ... <mortgage:title>NC2948-388-1983</mortgage:title>... 9 10 Xác định nội dung văn bản Xác định nội dung văn bản DTD xác định cấu trúc cơ bản của văn bản địa chỉ XML DTDs hạn chế trong việc định nghĩa tài <!-- address.dtd --> liệu – nó chỉ định nghĩa cấu trúc cú pháp bên <!ELEMENT address (name, street, city, state, postal-code)> trongtrong <!ELEMENT name (title? first-name, last-name)> Lược đồ XML (XML schema) có thể mở rộng <!ELEMENT title (#PCDATA)> được, giống như XML <!ELEMENT first-name (#PCDATA)> Lược đồ XML có thể: <!ELEMENT last-name (#PCDATA)> Sử dụng lại lược đồ trong các lược đồ khác <!ELEMENT street (#PCDATA)> Tạo kiểu dữ liệu mới từ các kiểu chuẩn <!ELEMENT city (#PCDATA)> <!ELEMENT state (#PCDATA)> Tham chiTham chiếếu nhiu nhiềều lu lượượcc đồđồ ttừừ cùng mcùng mộột tài lit tài liệệuu <!ELEMENT postal-code (#PCDATA)> 11 12 goupee.com fb.com/groups/goupee 3
第 4 页
Xác định nội dung văn bản Ví dụ Xác định thuộc tính <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="TITLE" type="xs:string"/> <!ELEMENT city (#PCDATA)> <xs:element name=“ARTIST" type="xs:string"/> <!<!ATTLISTATTLIST citity stt tate CDATA #REQUIREDCDATA #REQUIRED post ltal-codde CDATA #REQUIRED>CDATA #REQUIRED> <xs:element name<xs:element name="COUNTRYCOUNTRY" typetype="xs:stringxs:string />"/> Xác định phần tử có trong lược đồ <xs:element name="COMPANY" type="xs:string"/> <xs:element name="PRICE" type="xs:decimal"/> <xsd:element name="address"> <xs:element name=“YEAR" type="xs:positiveInteger"/> <xsd:complexType> -> xác định một loại dữ liệu mới <!-- definition of complex elements --> <xs:element name=“CD"> <xsd:sequence> <xs:complexType><xs:sequence> <xsd:element ref="name"/> <xs:element ref=“TITLE"/> <xsd:element ref="street"/> <xs:element ref=“ARTIST" maxOccurs="unbounded"/> <<xsd:elementxsd:element refref="citycity"/>/> <xs:element refxs:element ref=“COUNTRYCOUNTRY /"/> <xsd:element ref="state"/> <xs:element ref=“COMPANY"/> <xs:element ref=“PRICE"/> <xsd:element ref="postal-code"/> <xs:element ref=“YEAR"/> </xsd:sequence> </xs:sequence> </xs:complexType> </xsd:complexType> </xs:element> </xsd:element> … </xs:schema> 13 14 Các giao diện lập trình XML Ví dụ cây lưu trữ DOM (Document Object Model): định nghĩa cách truy cập và thao tác trên tài liệu. DOM xây dựng một cây lưu trữ của toàn văn bản. Nếu văn bản quá lớn, nó đòi hỏi một số lượng bộ nhớ rất lớn. 15 16 goupee.com fb.com/groups/goupee 4
第 5 页
Các kiểu nút Bài tập 1 Tài liệu (Document) Cho 1 tài liệu XML có chứa thông tin về người Biểu diễn toàn bộ văn bản (nút gốc của cây DOM) với họ là Alan, tên là Turing, nghề là Phầần tửử (Element) computer scientist, mathematician vàà Thuộc tính (Attr) cryptographer. Văn bản (Text) Biểu diễn nội dung của 1 thuộc tính hoặc 1 phần tử Vẽ cây lưu trữ của tài liệu trên. CDATASection Biểu diễn CDATA section trong tài liệu (phần DOM không phân tích)không phân tích) BiBiếếnn đđổổii tàtài lii liệệuu đểđể “firstfirst” andand “lastlast” là cálà cácc EntityReference thuộc tính của phần tử person. Biểu diễn tham chiếu thực thể Các kiểu khác của DTD 17 Bài tập 2 Cho 1 tài liệu XML có chứa các thông tin sau: số bảo hiểm xã hội (123456789A), người có hhọọ làlà JackJack,, têntên làlà TaylorTaylor,, đđịịaa chchỉỉ ggồồm postcodem postcode (0500), thành phố (Boston), phố (Hamilton street), số điện thoại là 12345 và 6789. Vẽ cây lưu trữ của tài liệu trên. Đưa ra DTD của tài liệu trên Đưa ra lược đồ XML của tài liệu trên goupee.com fb.com/groups/goupee 5
评论 (0)
暂无评论。快来抢沙发吧!