تبدیل XSLT

مطالعه موردی: چگونه از XSLT برای تبدیل XML به XHTML استفاده کنیم.

ما در بخش بعدی جزئیات این مثال را توضیح خواهیم داد.

اعلام صحیح استایل‌شده

اعلام مستند به عنوان ریشه استایل‌شده XSL با <xsl:stylesheet> یا <xsl:transform> انجام می‌شود.

نکته: <xsl:stylesheet> و <xsl:transform> کاملاً معادل هستند و می‌توانند مورد استفاده قرار گیرند!

بر اساس استاندارد XSLT W3C، روش صحیح برای اعلام XSL استایل‌شده این است:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

یا:

<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

برای دسترسی به عناصر، ویژگی‌ها و ویژگی‌های XSLT، باید در بالای مستند XSLT نام فضای نام را اعلام کنیم.

xmlns:xsl="http://www.w3.org/1999/XSL/Transform" به فضای نام رسمی W3C XSLT اشاره دارد. اگر از این فضای نام استفاده کنید، باید ویژگی version="1.0" را شامل شوید.

از یک مستند XML اصلی شروع کنید

ما در حال حاضر این مستند XML را ("cdcatalog.xml") به XHTML تبدیل می‌کنیم:

<?xml version="1.0" encoding="ISO-8859-1"?>
<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>

در Internet Explorer و Firefox فایل XML را مشاهده کنید:

فایل XML را باز کنید (معمولاً با کلیک بر روی یک لینک) - مستند XML به صورت کد رنگ‌آمیزی شده به نمایش گذاشته می‌شود. برای باز کردن ساختار عناصر، روی علامت '+' یا '-' سمت چپ عناصر کلیک کنید. برای مشاهده منبع اصلی فایل XML (بدون '+' و '-'), در منوی مرورگر گزینه «منبع صفحه نمایش داده شده» را انتخاب کنید.

در Netscape 6 فایل XML را مشاهده کنید:

فایل XML را باز کنید، سپس در فایل XML راست کلیک کرده و "مشاهده کد منبع صفحه" را انتخاب کنید. مستند XML به صورت کد رنگ‌آمیزی شده نمایش داده می‌شود.

فایل XML را در Opera 7 مشاهده کنید:

فایل XML را باز کنید، سپس در فایل XML راست کلیک کرده و "مشاهده کد منبع" را انتخاب کنید. مستند XML به صورت متن نمایش داده می‌شود.

صفحه "cdcatalog.xml" را مشاهده کنید.

قالب استایل XSL ایجاد کنید

سپس یک قالب استایل XSL با قالب تغییردهنده ایجاد کنید ("cdcatalog.xsl"):

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2>
    <table border="1">
    <tr bgcolor="#9acd32">
      <th align="left">Title</th>
      <th 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>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

صفحه "cdcatalog.xsl" را مشاهده کنید

قالب استایل XSL را به سند XML متصل کنید

XML سند ("cdcatalog.xml") را با قالب استایل XSL اضافه کنید:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<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>

اگر مرورگر شما با XSLT سازگار باشد، به راحتی XML شما را تبدیل می‌کند تبدیل به XHTML.

نتیجه را مشاهده کنید.

ما در بخش بعدی توضیح خواهیم داد که جزئیات مثال بالا چگونه توضیح داده می‌شوند.