Hướng dẫn XML

TRANG CHỦ XML Giới thiệu XML Cách sử dụng XML Cây XML Cú pháp XML Phần tử XML Thuộc tính XML Không gian tên XML Hiển thị XML HttpRequest XML Trình phân tích cú pháp XML DOM XML XPath XML XSLT XML XQuery XML XML XLink Trình xác thực XML DTD XML Lược đồ XML Máy chủ XML Ví dụ về XML Câu đố XML Chứng chỉ XML

XML AJAX

Giới thiệu AJAX AJAX XMLHttp Yêu cầu AJAX Phản hồi AJAX Tệp XML AJAX AJAX PHP AJAX ASP Cơ sở dữ liệu AJAX Ứng dụng AJAX Ví dụ về AJAX

DOM XML

Giới thiệu DOM Nút DOM Truy cập DOM Thông tin về nút DOM Danh sách nút DOM DOM Traversing Điều hướng DOM DOM Nhận giá trị Nút thay đổi DOM DOM Xóa các nút Nút thay thế DOM DOM Tạo nút DOM Thêm nút Nút nhân bản DOM Ví dụ về DOM

Hướng dẫn XPath

Giới thiệu XPath Nút XPath Cú pháp XPath Trục XPath Toán tử XPath Ví dụ về XPath

Hướng dẫn XSLT

Giới thiệu XSLT Ngôn ngữ XSL Chuyển đổi XSLT XSLT <template> XSLT <value-of> XSLT <for-each> XSLT <sắp xếp> XSLT <if> XSLT <chọn> Áp dụng XSLT XSLT trên máy khách XSLT trên Máy chủ XSLT Chỉnh sửa XML Ví dụ về XSLT

Hướng dẫn XQuery

Giới thiệu XQuery Ví dụ về XQuery XQuery FLWOR HTML XQuery Điều khoản XQuery Cú pháp XQuery XQuery Thêm Chọn XQuery Hàm XQuery

DTD XML

Giới thiệu DTD Khối xây dựng DTD Phần tử DTD Các thuộc tính DTD Phần tử DTD so với Attr Thực thể DTD Ví dụ về DTD

Lược đồ XSD

Giới thiệu XSD XSD Cách thực hiện XSD <schema> Phần tử XSD Thuộc tính XSD Hạn chế XSD

XSD Complex

Phần tử XSD XSD trống Chỉ các phần tử XSD Chỉ văn bản XSD XSD hỗn hợp Chỉ báo XSD XSD <nhiều> XSD <anyAttribute> Thay thế XSD Ví dụ về XSD

Dữ liệu XSD

Chuỗi XSD Ngày XSD XSD Numeric XSD Misc Tham chiếu XSD

Dịch vụ web

Dịch vụ XML WSDL XML SOAP XML RDF XML RSS XML

Người giới thiệu

Các loại nút DOM Nút DOM DOM NodeList DOM NamedNodeMap Tài liệu DOM Phần tử DOM Thuộc tính DOM Văn bản DOM DOM CDATA Bình luận DOM DOM XMLHttpRequest Trình phân tích cú pháp DOM Phần tử XSLT Hàm XSLT / XPath

XSLT - Trên máy chủ


Để cung cấp dữ liệu XML cho tất cả các loại trình duyệt, chúng tôi có thể chuyển đổi tài liệu XML trên MÁY CHỦ và gửi nó trở lại trình duyệt dưới dạng XHTML.


Một giải pháp trình duyệt chéo

Trong chương trước, chúng tôi đã giải thích cách XSLT có thể được sử dụng để chuyển đổi một tài liệu từ XML sang XHTML trong trình duyệt. Chúng tôi đã sử dụng JavaScript và trình phân tích cú pháp XML để chuyển đổi. Tuy nhiên, điều này sẽ không hoạt động trong trình duyệt không có trình phân tích cú pháp XML.

Để cung cấp dữ liệu XML cho tất cả các loại trình duyệt, chúng tôi có thể chuyển đổi tài liệu XML trên máy chủ và gửi lại trình duyệt dưới dạng XHTML.

Đó là một vẻ đẹp khác của XSLT. Một trong những mục tiêu thiết kế cho XSLT là làm cho nó có thể chuyển đổi dữ liệu từ định dạng này sang định dạng khác trên máy chủ, trả lại dữ liệu có thể đọc được cho tất cả các loại trình duyệt.


Tệp XML và Tệp XSLT

Nhìn vào tài liệu XML mà bạn đã thấy trong các chương trước:

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
.
.
</catalog>

Xem tệp XML .

Và biểu định kiểu XSL đi kèm:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <h2>My CD Collection</h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th style="text-align:left">Title</th>
      <th style="text-align:left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
      <td><xsl:value-of select="title" /></td>
      <td><xsl:value-of select="artist" /></td>
    </tr>
    </xsl:for-each>
  </table>
</xsl:template>

</xsl:stylesheet>

Xem tệp XSL .

Lưu ý rằng tệp XML không có tham chiếu đến tệp XSL.

QUAN TRỌNG: Câu trên chỉ ra rằng một tệp XML có thể được chuyển đổi bằng cách sử dụng nhiều biểu định kiểu XSL khác nhau.



Mã PHP: Chuyển đổi XML sang XHTML trên Máy chủ

Đây là mã nguồn PHP cần thiết để chuyển đổi tệp XML thành XHTML trên máy chủ:

<?php
// Load XML file
$xml = new DOMDocument;
$xml->load('cdcatalog.xml');

// Load XSL file
$xsl = new DOMDocument;
$xsl->load('cdcatalog.xsl');

// Configure the transformer
$proc = new XSLTProcessor;

// Attach the xsl rules
$proc->importStyleSheet($xsl);

echo $proc->transformToXML($xml);
?>

Mẹo: Nếu bạn không biết cách viết PHP, hãy nghiên cứu hướng dẫn PHP của chúng tôi .

Xem cách nó hoạt động với PHP .


Mã ASP: Chuyển đổi XML sang XHTML trên Máy chủ

Đây là mã nguồn ASP cần thiết để chuyển đổi tệp XML thành XHTML trên máy chủ:

<%
'Load XML file
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("cdcatalog.xml"))

'Load XSL file
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("cdcatalog.xsl"))

'Transform file
Response.Write(xml.transformNode(xsl))
%>

Xem cách nó hoạt động với ASP .