Tài liệu này dành cho sinh viên, giáo viên khối ngành công nghệ thông tin tham khảo và có những bài học bổ ích hơn, bổ trợ cho việc tìm kiếm tài liệu, giáo án, giáo trình, bài giảng các môn học khối ngành công nghệ thông tin
Trang 1XSL (Extension Style Language)
Trang 2Giới thiệu
đổi dữ liệu của tài liệu XML để hiển thị phía người dùng.
còn gọi là XSL FO (Formating Object) XSL FO cung cấp các thuộc tính thiết lập font chữ, màu sắc, hình ảnh…
Trang 3Giới thiệu
pháp và hợp khuôn dạng với quy tắc XML.
Trang 4Tài liệu XSLT
Có 7 loại node mà XSL có thể nhận dạng chuyển dịch:
Trang 5Tạo tài liệu XSLT
thực hiện hai thao tác:
ứng.
sẽ được duyệt bắt đầu từ phần tử gốc.
Trang 6Tạo tài liệu XSLT
Trang 7Chỉ định mẫu so khớp
một thẻ lệnh thực hiện theo một điều kiện dữ liệu thỏa mãn nào đó.
Trang 10So khớp các phần tử con
đến các node con trong tài liệu XML.
Trang 12So khớp định danh ID của phần tử
một thuộc tính là định danh duy nhất Ta có thể dựa vào định danh này để xác định và chọn phần tử
<h3> <xsl:value-of select=“.”/> </h3>
</xsl:template>
Trang 13<title>Tai lieu XML </title>
<author> aaa </author>
<COMMENT> Day la sach XML</COMMENT>
Trang 14<title>Tai lieu XML </title>
<author> aaa </author>
<xsl:template match=“ /processing-instruction() ”>
<COMMENT> <xsl:value-of select=“.”/> </COMMENT>
</xsl:template>
Kết quả:
type="text/xsl" href="LayChuThich.xsl"
Tai lieu XML aaa
Trang 15Sử dụng toán tử OR
Dùng toán tử OR để chỉ điều kiện hợp
Ví dụ: Để so khớp phần tử mang tên CUSTOMER hoặc BUYER ta dùng toán tử OR như sau:
Trang 16Kiểm tra so khớp bằng biểu thức []
true hay false.
Giá trị thuộc tính trong một chuỗi.
Trang 17Thuộc tính Select
Phần tử <xsl:value-of > dùng để lấy ra nội dung một mục dữ liệu
trong tài liệu XML.
Trang 18Thay đổi cấu trúc tài liệu
dữ liệu từ các node <title> và <author> gán thành thuộc tính ta làm như sau:
<xsl:template match=“book”>
<book title=“{title}” author=“{author}”/>
</xsl:template>
Khi đó chuyển dịch sau cùng của tài liệu:
Trang 19Thay đổi cấu trúc tài liệu
Tạo một phần tử mới: ta có thể dùng phần tử <xsl:element> để tạo một phần tử mới cho dữ liệu đầu vào.
Trang 20Thay đổi cấu trúc tài liệu
Tạo thuộc tính mới: tương tự như phần tử <xsl:element>, thuộc tính
<xsl:attribute> dùng tạo thuộc tính mới cho phần tử nào đó.
Ví dụ:
<book NAME=“ aaa ”>
<author> TacGia </author>
<book TacGia=“aaa” > </book>
<book Writer=“ccc” > </book>
Trang 21Thay đổi cấu trúc tài liệu
<xsl:text> để kết xuất dữ liệu văn bản thô.
Trường hợp bạn muốn xuất tài liệu có các kí tự đặc biệt <, > Thông thường trình diễn dịch sẽ đổi các kí tự đặc biệt thành tham chiếu thực thể (≶, >…), khi đó muốn kết xuất kí tự đúng đắn trong tài liệu ta dùng thuộc tính disable-output-
Trang 22Thay đổi cấu trúc tài liệu
phép ta sao chép dữ liệu của một nút trong tài liệu đầu vào.
cách sao chép toàn bộ các nút của tài liệu XML đầu vào.
<xsl:template match=“* | text()”>
<xsl:copy>
<xsl:apply-template select=“* | text()”/>
</xsl:copy>
</xsl:template>
Trang 23Thay đổi cấu trúc tài liệu XML
Sắp xếp các phần tử dữ liệu: ta dùng <xsl:sort> cho phép chọn một mục dữ liệu để sắp xếp thông qua thuộc tính select.
Trang 24Thay đổi cấu trúc tài liệu
Để phát biểu một điều kiện lựa chọn ta sử dụng xsl:if Để sử dụng xsl:if, ta đặt thuộc tính test của nó bằng một biểu thức kiểm tra có giá trị true hoặc false
Trang 25Thay đổi cấu trúc tài liệu
XSL còn cung cấp cho ta phần tử điều khiển lựa chọn <xsl:choose> tương tự như lệnh switch Case trong lập trình C
Trang 26Bài tập
theo họ tên sinh viên
chính quy (thuộc tính Loai của sinh viên là chính quy).
Xuất thông tin theo định dạng như sau:
Trang 28Bài tập
đăng kí học phần theo dạng như sau: