عنصر <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". |
إصدار | media-type | اختياري. تعيين إصدار W3C للتنسيق الصادر. (يستخدم فقط عند method="html" أو method="xml"). |
encoding | media-type | encoding |
اختياري. تعيين قيمة الخاصية الترميز في الناتج. |
|
omit-xml-declaration اختياري. "yes" يحدد أن يجب تجنب إعلان XML في الناتج (<?xml...?>). |
"no" يحدد أن يجب أن يتم تضمين إعلان XML في الناتج. الافتراضي هو "no". |
|
standalone |
اختياري. تحديد ما إذا كان يجب على معالج XSLT أن ينشئ إعلان مستقل للمستند؛ يجب أن تكون القيمة yes أو no. الافتراضي هو "no". لا يدعم Netscape 6 هذه الخاصية. | media-type | doctype-public |
اختياري. تحديد معرف الجمهور الذي يجب استخدامه في DTD. وهو قيمة الخاصية PUBLIC في إعلان DOCTYPE في الناتج. | media-type | doctype-system |
اختياري. تحديد معرف النظام الذي يجب استخدامه في DTD. وهو قيمة الخاصية SYSTEM في إعلان DOCTYPE في الناتج. | cdata-section-elements | namelist |
اختياري. قائمة من العناصر المفصولة بالفضاءات،والنص الموجود في هذه العناصر يجب أن يتم عرضه كجزء من CDATA. |
|
no |
اختياري. تحديد ما إذا كان يجب إضافة فجوات عند ناتج شجرة النص. يجب أن تكون القيمة yes أو no. لا يدعم Netscape 6 هذه الخاصية. | media-type | string |
اختياري. يُحدد نوع البيانات MIME (نوع البيانات الإعلامي). الافتراضي هو "text/xml". لا يدعم Netscape 6 هذه الخاصية.
خصائص method
يُستخدم العلامة لتحديد الطريقة العامة لتحديد الناتج للشجرة. إذا لم يكن هناك بادئة،فإن العلامة تشير إلى الطريقة المحددة في هذا المستند،وكانت يجب أن تكون "xml" أو "html" أو "text" أو غير اسم NCName المحدد. إذا كانت هناك بادئة،فسيتم توسيعها وتحديد الطريقة الناتجة.
يتم اختيار القيمة الافتراضية الخاصية method كالتالي. إذا كان أي من الشروط التالية صحيحة،فإن طريقة الناتج الافتراضية هي "html":
يحتوي العنصر الجذر في شجرة الناتج على عناصر فرعية.
كل نقاط النص التي تسبق أول عنصر فرعي للعنصر الجذر في شجرة الناتج تحتوي فقط على أحرف بيضاء.
إذا لم يكن هناك عنصر <xsl:output> أو لم يتم تحديد قيمة الخاصية method لعنصر <xsl:output>،فينبغي استخدام طريقة الناتج الافتراضية.
مثال
مثال 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>