تحويل لغة الأسلوب الموسع
{{بطاقة معيار تقانة
| title             = لغة التحويل الأنماط الموسعة
| status            = منشور, مفضل من قبل W3C
| year_started      = 
| editors           =
| base_standards    = 
| related_standards = 
| domain            = لغة النمط، مثل CSS
| abbreviation      = XSLT
| website           =
}}

'''تحويل لغة الأسلوب الموسع''' أو '''لغة تحويل الأنماط الموسعة''' {{إنج|XSLT}} أختصاراَ لـ(eXtensible Stylesheet Language Transformations)، محددة في التوصية "XSL" ل "W3C"،هي لغة وظائفية لتحويل XML.<ref>{{استشهاد بويب| مسار = https://id.loc.gov/authorities/sh2001001708 | عنوان = معلومات عن تحويل لغة الأسلوب الموسع على موقع id.loc.gov | ناشر = id.loc.gov|مسار أرشيف= https://web.archive.org/web/20191214204335/https://id.loc.gov/authorities/sh2001001708|تاريخ أرشيف=2019-12-14}}</ref><ref>{{استشهاد بويب| مسار = https://d-nb.info/gnd/4613222-3 | عنوان = معلومات عن تحويل لغة الأسلوب الموسع على موقع d-nb.info | ناشر = d-nb.info|مسار أرشيف= https://web.archive.org/web/20191214204341/https://portal.dnb.de/opac.htm?method=simpleSearch&cqlMode=true&query=nid%3D4613222-3|تاريخ أرشيف=2019-12-14}}</ref> يسمح بتحويل وثيقة XML إلى شكل آخر، ك PDF أو أيضا HTML ليتم عرضها كصفحة ويب.

== تفصيل ==
[[ملف:TempFrXslt015.svg|تصغير|150px|كيفية التحويل عن طريق XSLT.]]
الهدف الرئيسي هو تحويل وثيقة XML إلى مخطط أو شكل آخر (XHTML، XSL-FO، HTML، الخ). ومع ذلك، XSLT يسمح أيضا بالتغيير إلى أي نوع آخر من الوثائق في شكل نصوص أو في شكل ثنائي binary (على الرغم من أن هذا لم يكن مخطط له في توصيات XSLT).
ليكن لدينا مدخلين: وثيقة XML للتحويل ووثيقة XSLT، فإن نتيجة [[معالج (توضيح)|المعالج]] XSLT Processor) XSLT) هو إنتاج ملف على الشكل المطلوب.

XSLT يستخدم XPATH (جزء آخر من توصيات XSL) لتعيين جزء من شجرة XML. عمليا، يكتب XSLT على شكل وثيقة XML:

<syntaxhighlight lang="xml">
<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="xml" indent="yes"/>

<xsl:template match="person">
    <name username="{@username}">
       <xsl:value-of select="name"/>
    </name>
</xsl:template>

</xsl:stylesheet>
</syntaxhighlight>

== مثال ==
{|class="wikitable"
|
ملف XML 
<syntaxhighlight lang="xml">
<?xml version="1.0" ?>
<persons>
  <person username="JS1">
    <name>John</name>
    <family-name>Smith</family-name>
  </person>
  <person username="MI1">
    <name>Morka</name>
    <family-name>Ismincius</family-name>
  </person>
</persons>
</syntaxhighlight>
| '''+'''
| 
ملف XSLT
<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output method="xml" indent="yes"/>

  <xsl:template match="/persons">
    <root>
      <xsl:apply-templates select="person"/>
    </root>
  </xsl:template>

  <xsl:template match="person">
    <name username="{@username}">
      <xsl:value-of select="name"/>
    </name>
  </xsl:template>
</xsl:stylesheet>
</syntaxhighlight>
|-
|colspan=3 align=center| ''' ⇒ '''
|-
| colspan="3" |
الملف الناتج XML 
<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<root>
  <name username="JS1">John</name>
  <name username="MI1">Morka</name>
</root>
</syntaxhighlight>
|}

== أمثلة من تنفيذات لمحللات XSLT ==
* AltovaXML: من قبل [[ألتوفا]] ALTOVA وتنفيذ الحر ل XSLT 1.0 و 2.0 XSLT
* DIXml: مكتبة دلفي (Deplhi)
* Gestalt : كولن بول آدامز، تنفيذ باستعمال ايفل (Eiffel) من XSLT 2.0
* Libxslt: جنوم، تنفيذ باستعمال C من XSLT 1.0
* php_xsl.dll: المدرجة في PHP 5
* ...

== مقالات ذات صلة ==
* [[إكس كويري]]
* [[لغة التوصيف القابلة للتوسعة|لغة الترميز القابلة للامتداد]]
* [[أكس أس أل|لغة الأسلوب الموسع]] XSL
* [[لغة توصيف النص الفائق|لغة رقم النص الفائق]] HTML

== مراجع ==
{{مراجع}}
{{معايير رابطة الشبكة العالمية}}
{{شريط بوابات|برمجة الحاسوب|علم الحاسوب}}

{{ضبط استنادي}}

{{ بذرة لغة برمجة}}

[[تصنيف:برمجيات 1998]]
[[تصنيف:لغات برمجة]]
[[تصنيف:لغات برمجة أنشئت في 1998]]
[[تصنيف:لغات برمجة تعريفية]]
[[تصنيف:لغات برمجة عالية المستوى]]
[[تصنيف:لغات برمجة وظيفية]]
[[تصنيف:لغات ترميزية]]
[[تصنيف:معايير رابطة الشبكة العالمية]]
تحويل لغة الأسلوب الموسع أو لغة تحويل الأنماط الموسعة  أختصاراَ لـ(eXtensible Stylesheet Language Transformations)، محددة في التوصية "XSL" ل "W3C"،هي لغة وظائفية لتحويل XML. يسمح بتحويل وثيقة XML إلى شكل آخر، ك PDF أو أيضا HTML ليتم عرضها كصفحة ويب.

 تفصيل 
تصغير|150px|كيفية التحويل عن طريق XSLT.
الهدف الرئيسي هو تحويل وثيقة XML إلى مخطط أو شكل آخر (XHTML، XSL-FO، HTML، الخ). ومع ذلك، XSLT يسمح أيضا بالتغيير إلى أي نوع آخر من الوثائق في شكل نصوص أو في شكل ثنائي binary (على الرغم من أن هذا لم يكن مخطط له في توصيات XSLT).
ليكن لدينا مدخلين: وثيقة XML للتحويل ووثيقة XSLT، فإن نتيجة المعالج XSLT Processor) XSLT) هو إنتاج ملف على الشكل المطلوب.

XSLT يستخدم XPATH (جزء آخر من توصيات XSL) لتعيين جزء من شجرة XML. عمليا، يكتب XSLT على شكل وثيقة XML:

<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="xml" indent="yes"/>

<xsl:template match="person">
    <name username="{@username}">
       <xsl:value-of select="name"/>
    </name>
</xsl:template>

</xsl:stylesheet>

 مثال 
ملف XML 
<?xml version="1.0" ?>
<persons>
  <person username="JS1">
    <name>John</name>
    <family-name>Smith</family-name>
  </person>
  <person username="MI1">
    <name>Morka</name>
    <family-name>Ismincius</family-name>
  </person>
</persons> + 
ملف XSLT
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output method="xml" indent="yes"/>

  <xsl:template match="/persons">
    <root>
      <xsl:apply-templates select="person"/>
    </root>
  </xsl:template>

  <xsl:template match="person">
    <name username="{@username}">
      <xsl:value-of select="name"/>
    </name>
  </xsl:template>
</xsl:stylesheet>  ⇒ الملف الناتج XML 
<?xml version="1.0" encoding="UTF-8"?>
<root>
  <name username="JS1">John</name>
  <name username="MI1">Morka</name>
</root>

 أمثلة من تنفيذات لمحللات XSLT 
 AltovaXML: من قبل ألتوفا ALTOVA وتنفيذ الحر ل XSLT 1.0 و 2.0 XSLT
 DIXml: مكتبة دلفي (Deplhi)
 Gestalt : كولن بول آدامز، تنفيذ باستعمال ايفل (Eiffel) من XSLT 2.0
 Libxslt: جنوم، تنفيذ باستعمال C من XSLT 1.0
 php_xsl.dll: المدرجة في PHP 5
 ...

 مقالات ذات صلة 
 إكس كويري
 لغة الترميز القابلة للامتداد
 لغة الأسلوب الموسع XSL
 لغة رقم النص الفائق HTML

 مراجع 

تصنيف:برمجيات 1998
تصنيف:لغات برمجة
تصنيف:لغات برمجة أنشئت في 1998
تصنيف:لغات برمجة تعريفية
تصنيف:لغات برمجة عالية المستوى
تصنيف:لغات برمجة وظيفية
تصنيف:لغات ترميزية
تصنيف:معايير رابطة الشبكة العالمية