عنصر <xsl:output> XSLT
تعریف و استفاده
عنصر <xsl:output> فرمت مستند خروجی را تعریف میکند.
توضیحات:<xsl:output> یک عنصر سطح بالا (top-level element) است و باید فرزند <xsl:stylesheet> یا <xsl:transform> باشد.
زبان
<xsl:output method="xml|html|text|name" version="string" encoding="string" omit-xml-declaration="yes|no" standalone="yes|no" doctype-public="string" doctype-system="string" cdata-section-elements="namelist" indent="yes|no" media-type="string"/>
ویژگی
ویژگی | مقدار | توضیحات |
---|---|---|
method |
|
اختیاری است. فرمت خروجی را تعریف میکند. پیشفرض XML است. Netscape 6 تنها "html" و "xml" را پشتیبانی میکند. |
version | string | اختیاری است. نسخه W3C فرمت خروجی را تنظیم میکند. (فقط در method="html" یا method="xml" استفاده میشود). |
encoding | string | اختیاری است. مقدار ویژگی کدگذاری خروجی را تنظیم میکند. |
omit-xml-declaration |
|
اختیاری است. "yes" تعیین میکند که اعلان XML در خروجی حذف شود (<?xml...?>). "no" تعیین میکند که باید اعلان XML در خروجی شامل شود. پیشفرض "no" است. |
standalone |
|
اختیاری است. تعیین میکند که پردازنده XSLT باید اعلان مستقل مستند را چاپ کند یا خیر؛ این مقدار باید yes یا no باشد. پیشفرض "no" است. Netscape 6 این ویژگی را پشتیبانی نمیکند. |
doctype-public | string | 可选。规定 DTD 中要使用的公共标识符。即输出中 DOCTYPE 声明的 PUBLIC 属性的值。 |
doctype-system | string | 可选。规定 DTD 中要使用的系统标识符。即输出中 DOCTYPE 声明的 SYSTEM 属性的值。 |
cdata-section-elements | namelist | 可选。一个空格分隔的元素列表,这些元素的文本内容应作为 CDATA 部分来输出。 |
indent |
|
可选。在输出结果树时是否要增加空白;该值必须为 yes 或 no。Netscape 6 不支持该属性。 |
media-type | string | 可选。定义输出的 MIME 类型(数据的媒体类型)。默认是 "text/xml"。Netscape 6 不支持该属性。 |
method 属性
标识用于输出结果树的总体方法。如果没有前缀,则标识此文档中指定的方法,必须是 "xml"、"html"、"text" 或不是 NCName 的限定名 之一)。如果有前缀,则展开并标识输出方法。
method 属性的默认值的选择如下所示。如果下列任何条件为真,默认的输出方法为“html”:
نقطهی ریشه در درخت نتیجه شامل زیرعنصر عنصر است.
نام گسترش اولین زیرعنصر عنصر ریشه در درخت نتیجه شامل بخش محلی "html" (هر ترکیب از حروف بزرگ و کوچک) و URI فضای نام خالی است.
هر گونه نقطهی متنی قبل از اولین زیرعنصر اولین عنصر ریشه در درخت نتیجه، فقط شامل کاراکترهای خالی است.
در غیر این صورت، روش خروجی پیشفرض "xml" است. اگر هیچ گونه عنصر <xsl:output> وجود نداشته باشد یا اگر هیچ گونه عنصر <xsl:output> روش attribute attribute method را مشخص نکرده باشد، باید از روش خروجی پیشفرض استفاده کرد.
مثال
مثال 1
در این مثال، خروجی یک مستند XML است، نسخه 1.0. روش کدگذاری حروف به صورت "ISO-8859-1" تنظیم شده است، خروجی با فاصلهگذاری انجام میشود تا خوانایی افزایش یابد:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="iso-8859-1" indent="yes"/> ... ... </xsl:stylesheet>
مثال 2
در این مثال، خروجی یک مستند HTML است، نسخه 4.0. روش کدگذاری حروف به صورت "ISO-8859-1" تنظیم شده است، خروجی با فاصلهگذاری انجام میشود تا خوانایی افزایش یابد:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" version="4.0" encoding="iso-8859-1" indent="yes"/> ... ... </xsl:stylesheet>