Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
71 KB
Nội dung
XSLT • XSLT (eXtensible Style Sheet Transformations) là một ngôn ngữ dựa trên XML dùng để biến đổi các tài liệu XML thành tài liệu khác như: HTML, WML, XML khác, PDF, … • Một trang XSL: chứa những chỉ dẫn để bảo một XML parser làm cách nào phát sinh ra một tài liệu khác từ những dữ liệu trong một tài liệu XML • Bản thân XSL style sheet cũng là một XML well- formed nhưng nó chứa những lệnh XSL và những thẻ HTML, text dùng y nguyên cho output. Ví dụ File dữ liệu XML f.xml <?xml version="1.0" encoding="utf-8"?> <data> <page> 4 </page> <books> <book> <bookid>t01</bookid> <name>Toán </name> <price>10</price> <active>1</active> </book> <book> <bookid>t02</bookid> <name>Tin</name> <price>15</price> <active>0</active> </book> </books> </data> Ví dụ File chuyển đổi xsl: f.xsl <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/data"> <html> <body> <xsl:value-of select="page"></xsl:value-of> </body> </html> </xsl:template> </xsl:stylesheet> Thêm dòng chỉ thị vào sau dòng khai báo xml của file xml: <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href=“f.xsl"?> Chạy file xml trên trình duyệt web. Kết quả hiển thị là html. (Hãy viết kết quả kết xuất file html tương ứng khi chạy file xml) Cấu trúc một file xsl Tên file: .xsl Nội dung: <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> Các thẻ HTML, Các lệnh ngôn ngữ xslt </xsl:template> </xsl:stylesheet> . Cấu trúc một file xsl Dòng lệnh đầu: Khai báo một file xml <xsl:stylesheet version="1.0“ …>: Thẻ gốc, Khai báo không gian tên để XML parser nhận diện được các lệnh trong một XSL. Có 2 giá trị (có thể chọn một trong 2): <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> (Mới) <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl> (Cũ) <xsl:template match="/">: Mẫu xác định vùng nội dung trình chuyển đổi cần lấy data xác định trong thuộc tính match từ tài liệu XML(“/”: lấy data được xác định từ thư mục gốc của file xml). Các mẫu template trong xsl Một template: Tập các Tags HTML sẽ hiện ra trong hồ sơ kết quả kết hợp các dữ liệu trong XML và một số câu lệnh truy xuât data trong XML. Một template có thể chia thành nhiều thành phần template nhỏ và có chức năng giống như một hàm trong các ngôn ngữ lập trình thông dụng. Tạo và Gọi một sub template Tạo một subtemplate: Đặt sau tag đóng </xsl:template> của template chính <xsl:template name=“name_subtem"> Nội dung </xsl:template> Gọi một template đã tạo: <xsl:call-template name=“name_subtem”> </ xsl:call-template> Một số lệnh trong xsl Cú pháp một câu lệnh: <xsl:lệnh …></xsl:lệnh> Lệnh value-of: Sử dụng thuộc tính select để trích ra một node từ đường dẫn đã cho. • Select=“Path”: Trích ra giá trị của node • Select =“Path/@attr”: Lấy ra giá trị của thuộc tính attr trong path. • Cú pháp:<xsl:value-of select=“…”></xsl:value-of> for-each: Lệnh lặp, sử dụng để duyệt qua từng Element trong nhóm được xác định bởi thuộc tính select. . Cú pháp:<xsl:for-each select=“path”> …</xsl:for-each> Một số lệnh trong xsl Lệnh Attribute: Thêm một thuộc tính cho tag html trước lệnh. Lệnh này thường kết hợp với các lệnh khác để có thể lấy ra các giá trị từ file xml hoặc theo một điều kiện cho trước. • Cú pháp: <html_tag> <xsl:attribute name=“html_attribute”> value for attribute </xsl:attribute> Các lệnh điều kiện (lựa chọn) Lệnh if: Chọn xử lý kết quả giống như cấu trúc if (not else) trong các ngôn ngữ lập trình. – Cú pháp: <xsl:if test=“biểu thức”> </xsl:if> – Biểu thức: Kết quả trả về cho thuộc tính test. Nếu test = true, nội dung giữa tag mở và đóng <xsl:if> được thi hành. Biểu thức là một:phép so sánh, biểu thức Xpath. Kết quả true trả về khi kêt quả biểu thức là: khác 0, có các node, một chuỗi khác rỗng. . XSLT • XSLT (eXtensible Style Sheet Transformations) là một ngôn ngữ dựa trên XML dùng để biến đổi các tài liệu XML thành tài liệu khác như: HTML, WML, XML khác, PDF, … • Một. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> Các thẻ HTML, Các lệnh ngôn ngữ xslt </xsl:template> </xsl:stylesheet> . Cấu trúc một file xsl Dòng lệnh đầu: Khai