Кіріспе
XML стильдік кесте тілі
Информатикада, XML құжаттарын түрлендіру және көрсету үшін қолданылатын тілдер отбасына сілтеме жасау үшін Көрсетілімді стильдік кесте тілі (XSL) термині қолданылады. Тарихи тұрғыдан алғанда, W3C XSL жұмыс тобы "XSL" деген атпен жобалық спецификацияны жасады, ол ақырында үш бөлікке бөлінді:
languages used to transform and render XML documents. Historically, the W3C XSL Working Group produced a draft specification under the name "XSL", which eventually split into three parts:
XSL түрлендіру (XSLT): XML құжаттарын түрлендіруге арналған XML тілі
XSL пішімдеу объектілері (XSL FO): XML құжатының визуальды пішімдеуін анықтауға арналған XML тілі
XML жол тілі (XPath): XSLT-де қолданылатын, сондай-ақ XSLT емес контексттерде де қолдануға болатын, XML құжатының бөліктеріне жүгінуге арналған XML емес тіл. Осының салдарынан, "XSL" термині қазір түрлі мағыналарда қолданылады:
XSL Formatting Objects (XSL FO): an XML language for specifying the visual formatting of an XML document
XML Path Language (XPath): a non XML language used by XSLT, and also available for use in non XSLT contexts, for addressing the parts of an XML document. As a result, the term "XSL" is now used with a number of different meanings:
Кейде ол XSLT-ге сілтеме жасайды: мұндай қолданудан аулақ болу қажет. Дегенмен, "xsl" XSLT атау кеңістігінің стандартты префиксі ретінде де, XSLT стильдік кесте модульдерін қамтитын файлдар үшін стандартты файл атауы қосымшасы ретінде де қолданылады.
Кейде ол XSL FO-ға сілтеме жасайды: мұндай қолданыс XSL FO спецификациясының Көрсетілімді стильдік кесте тілі (XSL) деген атауын алып жүруімен негізделуі мүмкін; алайда, XSL FO термині қате түсінілмейтін жағдайлар көбірек.
Кейде ол екі тілді бірге қарастырған, немесе екі тілді де әзірлеген жұмыс тобына сілтеме жасайды.
Кейде, әсіресе Microsoft ортасында, ол Microsoft-тың MSXML құрамында әзірлеген және W3C спецификациясы аяқталмас бұрын шығарған, қазір ескірген XSLT нұсқасына сілтеме жасайды.
Sometimes it refers to XSL FO: this usage can be justified by the fact that the XSL FO specification carries the title Extensible Stylesheet Language (XSL); however, the term XSL FO is less likely to be misunderstood
Sometimes it refers to both languages considered together, or to the working group that developed both languages
Sometimes, especially in the Microsoft world, it refers to a now obsolete variant of XSLT developed and shipped by Microsoft as part of MSXML before the W3C specification was finalized
Тарих
XSL, әсіресе баспа және жоғары сапалы беттік жинақтау саласындағы DSSSL функционалдығын XML-ге енгізу мақсатымен басталды. Arbortext, Inso және Microsoft компанияларының ұсынысы бойынша 1997 жылдың желтоқсанында W3C XSL жұмыс тобы құрылды. Оған Шарон Адлер мен Стив Зильлес тең төрағалық етті, Джеймс Кларк редактор (және ресми емес бас дизайнер) рөлін атқарды, ал Крис Лилли W3C қызметкері ретінде байланыс жасады. Топ 1998 жылдың 18 тамызында алғашқы жұмыс жобасын жариялады. XSLT және XPath 1999 жылдың 16 қарашасында W3C ұсынымдары болды, ал XSL FO 2001 жылдың 15 қазанында ұсыным статусына ие болды.
XSL түрлендірулері
XSLT (1.0) бастапқы нұсқасы 1999 жылдың қараша айында жарияланды және кеңінен қолданысқа енді. Алғашқы іске асырылымдардың кейбіреулері қолданыстан шығып қалды, бірақ 2023 жылы белсенді пайдаланылатын атақты іске асырылымдарға негізгі веб-браузерлерге енгізілгендері, сондай-ақ Altova RaptorXML, libxslt, Saxon, Microsoft .NET жүйесінің System.Xml.Xsl іске асырылымы және Oracle JVM-ге енгізілген Xalan жатады. Бұл өнімдердің бәрі спецификацияға жоғары деңгейде сәйкес келеді, бірақ олар сонымен қатар өндірушілердің қосымша мүмкіндіктерін ұсынады, ал кейбіреулері шығыс экранилеуін өшіру сияқты міндетті емес мүмкіндіктерді қолдамайды. XSLT-нің келесі нұсқалары XSLT 2.0 (2007 жылғы қаңтар) және XSLT 3.0 (2017 жылғы маусым) болып табылады; 4.0 нұсқасы бойынша жұмыс жалғасуда. Бұл нұсқалар 1.0 нұсқасымен салыстырғанда кеңінен қолданысқа енбеді: 2023 жылы кеңінен қолданылатын негізгі іске асырылымдар Saxon (әртүрлі платформалар үшін әртүрлі нұсқаларда, соның ішінде веб-браузерлер үшін қол жетімді) және Altova RaptorXML болып табылады.
actively used in 2023 include those integrated into the mainstream web browsers, as well as Altova's RaptorXML, libxslt, Saxon, the Microsoft NET implementation System. Xml. Xsl, and Xalan which is integrated into the Oracle JVM. These products all have a high level of conformance to the specification, though they also offer proprietary vendor extensions, and some of them omit support for optional features such as disable output escaping. Subsequent versions of XSLT include XSLT 2.0 (January 2007) and XSLT 3.0 (June 2017); there is work in progress on a version 4.0. These versions have not been as widely implemented as 1.0: the main implementations in widespread use in 2023 are Saxon (available in various versions for different platforms, including web browsers), and Altova's RaptorXML.
XPath
XML Path Language (XPath) өзі XSL отбасының бір бөлігі болып, XSLT ішінде XML құжатын шарлауға мүмкіндік береді. W3C жобасының тағы бірі – XQuery, XPath-ты пайдаланып XML құжаттарын сұрау үшін ұқсас қабілеттерді ұсынуды көздейді.