3. яРХКЕБШЕ РЮАКХЖШ XSL

б ОПЕДШДСЫЕЛ ПЮГДЕКЕ ДКЪ БШБНДЮ ЩКЕЛЕМРНБ XML- ДНЙСЛЕМРЮ МЮ ЩЙПЮМ АПНСГЕПЮ ЛШ ОПХЛЕМЪКХ Java Script-ЯЖЕМЮПХХ нДМЮЙН, ЙЮЙ СФЕ НРЛЕВЮКНЯЭ, ДКЪ ЩРХУ ЖЕКЕИ ОПЕДОНВРХРЕКЭМЕИ ХЯОНКЭГНБЮМХЕ ЯОЕЖХЮКЭМН ОПЕДМЮГМЮВЕММНЦН ДКЪ ЩРНЦН ЯПЕДЯРБЮ - ЯРХКЕБШУ РЮАКХЖ XSL(Extensible Stylesheet Language).

яРХКЕБШЛХ РЮАКХЖЮЛХ (ЯРХКЕБШЛХ КХЯРЮЛХ) ОПХМЪРН МЮГШБЮРЭ ЯОЕЖХЮКЭМШЕ ХМЯРПСЙЖХХ, СОПЮБКЪЧЫХЕ ОПНЖЕЯЯНЛ НРНАПЮФЕМХЪ ЩКЕЛЕМРЮ Б НЙМЕ ОПНЦПЮЛЛШ-ЙКХЕМРЮ(МЮОПХЛЕП, Б НЙМЕ АПНСГЕПЮ). оПЕДКНФЕММШЕ Б ЙЮВЕЯРБЕ ПЕЙНЛЕМДЮЖХЪ W3C, ЙЮЯЙЮДМШЕ ЯРХКЕБШЕ РЮАКХЖШ(CSS- Cascading Style Sheets [7]) СФЕ АНКЭЬЕ ЦНДЮ ХЯОНКЭГСЧРЯЪ Web- ПЮГПЮАНРВХЙЮЛХ ДКЪ НТНПЛКЕМХЪ Web- ЯРПЮМХЖ. оНДДЕПФЙЮ CSS МЮХАНКЕЕ ХГБЕЯРМШЛХ МЮ ЯЕЦНДМЪЬМХИ ДЕМЭ АПНСГЕПЮЛХ Netscape Navigator(МЮВХМЮЪ Я БЕПЯХХ 4.0) Х Microsoft Explorer(МЮВХМЮЪ Я БЕПЯХХ 3.0), ОНГБНКХКЮ ХЯОНКЭГНБЮРЭ ЯРХКЕБШЕ РЮАКХЖШ ДКЪ ПЕЬЕМХЪ ЯЮЛНЦН ЬХПНЙНЦН ЯОЕЙРПЮ ГЮДЮВ - НР НТНПЛКЕМХЪ ДНЛЮЬМЕИ ЯРПЮМХВЙХ ДН ЯНГДЮМХЪ ЙПСОМНЦН ЙНПОНПЮРХБМНЦН Web-СГКЮ. яКНБН ЙЮЯЙЮДМШЕ Б НОПЕДЕКЕМХХ CSS НГМЮВЮЕР БНГЛНФМНЯРЭ НАЗЕДХМЕМХЪ НРДЕКЭМШУ ЩКЕЛЕМРНБ ТНПЛЮРХПНБЮМХЪ ОСРЕЛ БКНФЕММШУ НОХЯЮМХИ ЯРХКЪ. мЮОПХЛЕП, ЮРПХАСРШ РЕЙЯРЮ, ГЮДЮММШЕ Б РЩЦЕ <body>, АСДСР ПЮЯОПНЯРПЮМЪРЭЯЪ МЮ БКНФЕММШЕ РЩЦХ ДН РЕУ ОНП, ОНЙЮ Б МХУ МЕ БЯРПЕРЪРЯЪ ЯРХКЕБШЕ НОХЯЮМХЪ, НРЛЕМЪЧЫХЕ ХКХ ДНОНКМЪЧЫХЕ РЕЙСЫХЕ ОЮПЮЛЕРПШ. рЮЙХЛ НАПЮГНЛ, ХЯОНКЭГНБЮМХЕ РЮАКХЖ CSS Б HTML АШКН БЕЯЭЛЮ ЩТТЕЙРХБМН - НРОЮДЮКЮ МЕНАУНДХЛНЯРЭ ЪБМНЦН ГЮДЮМХЪ РЩЦНБ ТНПЛЮРХПНБЮМХЪ ДКЪ ЙЮФДНЦН ХГ ЩКЕЛЕМРНБ ДНЙСЛЕМРЮ.

ъБКЪЪЯЭ НВЕМЭ ЛНЫМШЛ ЯПЕДЯРБНЛ НТНПЛКЕМХЪ HTML- ЯРПЮМХЖ, CSS- РЮАКХЖШ, РЕЛ МЕ ЛЕМЕЕ, МЕ ЛНЦСР ОПХЛЕМЪРЭЯЪ Б XML-ДНЙСЛЕМРЮУ, Р.Й. МЮАНП РЩЦНБ Б ЩРНЛ ЪГШЙЕ МЕ НЦПЮМХВЕМ Х ХЯОНКЭГНБЮМХЕ ЯРЮРХВЕЯЙХУ ЯЯШКНЙ МЮ ТНПЛЮРХПСЕЛШЕ НАЗЕЙРШ ДНЙСЛЕМРЮ Б ЩРНЛ ЯКСВЮЕ МЕБНГЛНФМН.

оНЩРНЛС ДКЪ ТНПЛЮРХПНБЮМХЪ XML- ЩКЕЛЕМРНБ АШК ПЮГПЮАНРЮМ МНБШИ ЪГШЙ ПЮГЛЕРЙХ, ЪБКЪЧЫХИЯЪ ОНДЛМНФЕЯРБНЛ XML, Х ЯОЕЖХЮКЭМН АШК ОПЕДМЮГМЮВЕМ ДКЪ ТНПЛЮРХПНБЮМХЪ XML- ЩКЕЛЕМРНБ.

мЕЙНРНПШЕ ЕЦН НРКХВХЪ НР CSS:
бН-ОЕПБШУ, ЯРХКЕБШЕ РЮАКХЖШ XSL ОНГБНКЪЧР НОПЕДЕКЪРЭ НТНПЛКЕМХЕ ЩКЕЛЕМРЮ Б ГЮБХЯХЛНЯРХ НР ЕЦН ЛЕЯРНПЮЯОНКНФЕМХЪ БМСРПХ ДНЙСЛЕМРЮ, Р.Е. Й ДБСЛ ЩКЕЛЕМРЮЛ Я НДХМЮЙНБШЛ МЮГБЮМХЕЛ ЛНЦСР ОПХЛЕМЪРЭЯЪ ПЮГКХВМШЕ ОПЮБХКЮ ТНПЛЮРХПНБЮМХЪ.
бН-БРНПШУ, ЪГШЙНЛ, КЕФЮЫЕЛ Б НЯМНБЕ XSL, ЪБКЪЕРЯЪ XML, Ю ЩРН НГМЮВЮЕР, ВРН XSL АНКЕЕ ЦХАНЙ, СМХБЕПЯЮКЕМ Х С ПЮГПЮАНРВХЙНБ ОНЪБКЪЕРЯЪ БНГЛНФМНЯРЭ ХЯОНКЭГНБЮМХЪ ЯПЕДЯРБЮ ДКЪ ЙНМРПНКЪ ГЮ ЙНППЕЙРМНЯРЭЧ ЯНЯРЮБКЕМХЪ РЮЙХУ ЯРХКЕБШУ ЯОХЯЙНБ(ХЯОНКЭГСЪ DTD ХКХ ЯУЕЛШ ДЮММШУ)
б-РПЕРЭХУ, РЮАКХЖШ XSL МЕ ЪБКЪЧРЯЪ ЙЮЯЙЮДМШЛХ, ОНДНАМН CSS, Р.Й. ВПЕГБШВЮИМН ЯКНФМН НАЕЯОЕВХРЭ "ЙЮЯЙЮДХПСЕЛНЯРЭ" ЯРХКЕБШУ НОХЯЮМХИ, ХКХ, ДПСЦХЛХ ЯКНБЮЛХ, БНГЛНФМНЯРЭ НАЗЕДХМЕМХЪ НРДЕКЭМШУ ЩКЕЛЕМРНБ ТНПЛЮРХПНБЮМХЪ ОСРЕЛ БКНФЕММШУ НОХЯЮМХИ ЯРХКЪ, Б ЯХРСЮЖХХ, ЙНЦДЮ ЯРПСЙРСПЮ БШУНДМНЦН ДНЙСЛЕМРЮ ГЮПЮМЕЕ МЕХГБЕЯРМЮ Х НМ ЯНГДЮЕРЯЪ Б ОПНЖЕЯЯЕ ЯЮЛНЦН ПЮГАНПЮ. нДМЮЙН Б XSL ЯСЫЕЯРБСЕР БНГЛНФМНЯРЭ ГЮДЮБЮРЭ ОПЮБХКЮ ДКЪ ЯРХКЕИ, ОПХ ОНЛНЫХ ЙНРНПШУ ЛНФМН ХГЛЕМЪРЭ ЯБНИЯРБЮ ЯРХКЕБНЦН НТНПЛКЕМХЪ, ВРН ОНГБНКЪЕР ХЯОНКЭГНБЮРЭ ДНБНКЭМН ЯКНФМШЕ ОПХЕЛШ ТНПЛЮРХПНБЮМХЪ

б МЮЯРНЪЫХИ ЛНЛЕМР ЪГШЙ XSL МЮУНДХРЯЪ МЮ ЯРЮДХХ ПЮГПЮАНРЙХ Б W3C[3] Х Б АСДСЫЕЛ, БХДХЛН, ЯРЮМЕР ВЮЯРЭЧ ЯРЮМДЮПРЮ XML. щРН НГМЮВЮЕР, ВРН ХЯОНКЭГНБЮМХЕ ЩРНЦН ЛЕУЮМХГЛЮ ЪБКЪЕРЯЪ МЮХАНКЕЕ ОЕПЯОЕЙРХБМШЛ ЯОНЯНАНЛ НТНПЛКЕМХЪ XML- ДНЙСЛЕМРНБ. б РЕЙСЫЕЛ ПЮАНВЕЛ БЮПХЮМРЕ W3C, XSL ПЮЯЯЛЮРПХБЮЕРЯЪ МЕ РНКЭЙН ЙЮЙ ЪГШЙ ПЮГЛЕРЙХ, НОПЕДЕКЪЧЫХИ ЯРХКЕБШЕ РЮАКХЖШ - Б МЕЦН ГЮКНФЕМШ ЯПЕДЯРБЮ, МЕНАУНДХЛШЕ ДКЪ БШОНКМЕМХЪ ДЕИЯРБХИ ОН ТХКЭРПЮЖХХ ХМТНПЛЮЖХХ, БШБНДХЛНИ Б НЙМН ЙКХЕМРЮ, ОНХЯЙЮ ЩКЕЛЕМРНБ, ЯКНФМНЦН ОНХЯЙЮ, НЯМНБЮММНЦН МЮ ГЮБХЯХЛНЯРЪУ ЛЕФДС ЩКЕЛЕМРЮЛХ Х Р.Д. мЮ ЯЕЦНДМЪЬМХИ ДЕМЭ ЕДХМЯРБЕММШЛ АПНСГЕПНЛ, ОНДДЕПФХБЮЧЫХЛ МЕЙНРНПШЕ ХГ ЩРХУ БНГЛНФМНЯРЕИ, ЪБКЪЕРЯЪ АЩРЮ-БЕПЯХЪ Internet Explorer 5.0, НДМЮЙН Б ЯЮЛНЛ АКХФЮИЬЕЛ АСДСЫЕЛ, АЕГСЯКНБМН, XSL АСДЕР ХЯОНКЭГНБЮРЭЯЪ РЮЙФЕ ЬХПНЙН, ЙЮЙ ЯЕЦНДМЪ ЯРЮМДЮПРМШЕ РЩЦХ HTML

б ЩРНЛ ПЮГДЕКЕ ЛШ ПЮЯЯЛНРПХЛ СОПНЫЕММСЧ НАЗЕЙРМСЧ ЛНДЕКЭ XSL- ДНЙСЛЕМРЮ, ХЯОНКЭГСЕЛСЧ Б РЕЙСЫЕИ БЕПЯХХ XSL-ЙНМБЕПРНПЮ Microsoft msxsl, Х ОНЩРНЛС ХМТНПЛЮЖХЧ, ХГКНФЕММСЧ ДЮКЕЕ, МЕКЭГЪ ЯВХРЮРЭ НОХЯЮМХЕЛ ЯРЮМДЮПРЮ ЪГШЙЮ. оНКМШИ ПЮАНВХИ БЮПХЮМР ЯОЕЖХТХЙЮЖХХ XSL Б ОНЯКЕДМЕИ ЕЦН ПЕДЮЙЖХХ ДНЯРСОЕМ МЮ ЯЕПБЕПЕ [3].

бЯЕ ОПХЛЕПШ, ОПХБНДХЛШЕ ДЮКЕЕ, ЛНЦСР АШРЭ ОПНБЕПЕМШ ОПХ ОНЛНЫХ XSL- ЙНМБЕПРНПЮ, ЯБНАНДМН ДНЯРСОМНЦН МЮ ЯРПЮМХЖЕ Mcrosoft [ www.microsoft.com/xml/xsl/ ]

я ВЕЦН МЮВЮРЭ

оПХМЖХО НАПЮАНРЙХ XML- ДНЙСЛЕМРНБ ЯРХКЕБШЛХ РЮАКХЖЮЛХ ГЮЙКЧВЮЕРЯЪ Б ЯКЕДСЧЫЕЛ: ОПХ ПЮГАНПЕ XSL-ДНЙСЛЕМРЮ ОПНЦПЮЛЛЮ-ЮМЮКХГЮРНП НАПЮАЮРШБЮЕР ХМЯРПСЙЖХХ ЩРНЦН ЪГШЙЮ Х ЙЮФДНЛС ЩКЕЛЕМРС, МЮИДЕММНЛС Б XML- ДЕПЕБЕ ЯРЮБХР Б ЯННРБЕРЯРБХЕ МЮАНП РЩЦНБ, НОПЕДЕКЪЧЫХУ ТНПЛЮРХПНБЮМХЕ ЩРНЦН ЩКЕЛЕМРЮ. дПСЦХЛХ ЯКНБЮЛХ, ЛШ ГЮДЮЕЛ ЬЮАКНМ ТНПЛЮРХПНБЮМХЪ ДКЪ XML- ЩКЕЛЕМРНБ, ОПХВЕЛ ЯЮЛ ЩРНР ЬЮАКНМ ЛНФЕР ХЛЕРЭ ЯРПСЙРСПС ЯННРБЕРЯРБСЧЫЕЦН ТПЮЦЛЕМРЮ XML-ДНЙСЛЕМРЮ. хМЯРПСЙЖХХ XSL НОПЕДЕКЪЧР РНВМНЕ ЛЕЯРНПЮЯОНКНФЕМХЕ ЩКЕЛЕМРЮ XML Б ДЕПЕБЕ, ОНЩРНЛС ЯСЫЕЯРБСЕР БНГЛНФМНЯРЭ ОПХЛЕМЪРЭ ПЮГКХВМШЕ ЯРХКХ НТНПЛКЕМХЪ Й НДХМЮЙНБШЛ ЩКЕЛЕМРЮЛ, Б ГЮБХЯХЛНЯРХ НР ЙНМРЕЙЯРЮ ХУ ХЯОНКЭГНБЮМХЪ. мЮ ПХЯСМЙЕ 3.1 ОПЕДЯРЮБКЕМЮ ЯУЕЛЮ, ХККЧЯРПХПСЧЫЮЪ ЩРНР ОПНЖЕЯЯ.

яУЕЛЮ НАПЮАНРЙХ XSL-ДНЙСЛЕМРЮ

пХЯ 1

б НАЫЕЛ ЯКСВЮЕ, XSL ОНГБНКЪЕР ЮБРНПС ГЮДЮБЮРЭ ОЮПЮЛЕРПШ НРНАПЮФЕМХЪ ЩКЕЛЕМРЮ XML, ХЯОНКЭГСЪ КЧАШЕ ЪГШЙХ, ОПЕДМЮГМЮВЕММШЕ ДКЪ ТНПЛЮРХПНБЮМХЪ - HTML, RTF Х Р.Д. б ЩРНЛ ПЮГДЕКЕ ЛШ АСДЕЛ ХЯОНКЭГНБЮРЭ Б ЙЮВЕЯРБЕ РЮЙНЦН ЪГШЙЮ HTML, Р.Й. ДНЙСЛЕМРШ, ЯНГДЮММШЕ ОПХ ОНЛНЫХ ЩРНЦН ЪГШЙЮ ПЮГЛЕРЙХ ЛНЦСР ОПНЯЛЮРПХБЮРЭЯЪ КЧАНИ ОНДУНДЪЫЕИ ОПНЦПЮЛЛНИ ОПНЯЛНРПЮ Web-ЯРПЮМХЖ

яРПСЙРСПЮ XSL- РЮАКХЖ

пЮЯЯЛНРПХЛ НЯМНБМШЕ ЯРПСЙРСПМШЕ ЩКЕЛЕМРШ XSL, ХЯОНКЭГСЕЛШЕ, Б ВЮЯРМНЯРХ, Б ЙНМБЕПРНПЕ msxsl, ДКЪ ЯНГДЮМХЪ НТНПЛКЕМХЪ XML-ДНЙСЛЕМРНБ.

оПЮБХКЮ XSL

XSL- ДНЙСЛЕМР ОПЕДЯРЮБКЪЕР ЯНАНИ ЯНБНЙСОМНЯРЭ ОПЮБХК ОНЯРПНЕМХЪ, ЙЮФДНЕ ХГ ЙНРНПШУ БШДЕКЕМН Б НРДЕКЭМШИ АКНЙ, НЦПЮМХВЕММШИ РЩЦЮЛХ <rule> Х </rule>;. оПЮБХКЮ НОПЕДЕКЪЧР ЬЮАКНМШ, ОН ЙНРНПШЛ ЙЮФДНЛС ЩКЕЛЕМРС XML ЯРЮБХРЯЪ Б ЯННРБЕРЯРБХЕ ОНЯКЕДНБЮРЕКЭМНЯРЭ HTML- РЩЦНБ, Р.Е. БМСРПХ МХУ ЯНДЕПФЮРЯЪ ХМЯРПСЙЖХХ, НОПЕДЕКЪЧЫХЕ ЩКЕЛЕМРШ XML- ДНЙСЛЕМРЮ Х РЩЦХ ТНПЛЮРХПНБЮМХЪ, ОПХЛЕМЪЕЛШЕ Й МХЛ.

щКЕЛЕМРШ XML, Й ЙНРНПШЛ АСДЕР ОПХЛЕМЪРЭЯЪ ТНПЛЮРХПНБЮМХЕ, НАНГМЮВЮЧРЯЪ Б XSL ДЕЯЙПХОРНПНЛ <target-element/>;. дКЪ СЙЮГЮМХЪ ЩКЕЛЕМРЮ Я ЙНМЙПЕРМШЛ МЮГБЮМХЕЛ (МЮГБЮМХЕ ЩКЕЛЕМРЮ НОПЕДЕКЪЕРЯЪ РЩЦЮЛХ, ЕЦН НАНГМЮВЮЧЫХЛХ), Р.Е. НОПЕДЕКЕМХЪ ЙКЮЯЯЮ ЩКЕЛЕМРЮ, ЛНФМН ХЯОНКЭГНБЮРЭ ЮРПХАСР type="<ХЛЪ_ЩКЕЛЕМРЮ>"

бНР ОПХЛЕП ОПНЯРЕИЬЕЦН XSL-ДНЙСЛЕМРЮ, НОПЕДЕКЪЧЫЕЦН ТНПЛЮРХПНБЮМХЕ ДКЪ ТПЮЦЛЕМРЮ <flower>rose</flower> :

<xsl>
<rule>
<target-element type="flower"/>
<p color="red" font-size="12">
<children/>
</p>
</rule>
</xsl> 

сФЕ МЮ ЩРНЛ ОПХЛЕПЕ ЛНФМН ОПНЯКЕДХРЭ НЯНАЕММНЯРЭ ХЯОНКЭГНБЮМХЪ ЯРХКЕБШУ РЮАКХЖ: Б КЧАШУ ОПЮБХКЮУ ОПХ ОНЛНЫХ ЯННРБЕРЯРБСЧЫХУ ЩКЕЛЕМРНБ ДЕЙКЮПЮРХБМН ГЮДЮЕРЯЪ НАКЮЯРЭ, ЙНРНПЮЪ НОПЕДЕКЪЕР ТПЮЦЛЕМР XML-ДНЙСЛЕМРЮ, ЙЮЙ ЛШ ВСРЭ ОНГФЕ СБХДХЛ, ОПНЦПЮЛЛЮ-ЮМЮКХГЮРНП ГЮМНБН ОПНУНДХР БЯЕ ЩКЕЛЕМРШ, МЮВХМЮЪ Я РЕЙСЫЕЦН, БЯЪЙХИ ПЮГ, ЙНЦДЮ Б ЯРПСЙРСПЕ XML- ДНЙСЛЕМРЮ НАМЮПСФХБЮЧРЯЪ МНБШЕ БКНФЕММШЕ ЩКЕЛЕМРШ.

хМЯРПСЙЖХЪ <target-element> СЙЮГШБЮЕР МЮ РН, ВРН ДЮММНЕ ОПЮБХКН НОПЕДЕКЪЕР ЩКЕЛЕМР. оЮПЮЛЕРПНЛ type="flower" ГЮДЮЕРЯЪ МЮГБЮМХЕ XML-ЩКЕЛЕМРЮ, ДКЪ ЙНРНПНЦН АСДЕР ХЯОНКЭГНБЮРЭЯЪ ЩРН ОПЮБХКН. оПНЦПЮЛЛЮ-ЙНМБЕПРНП АСДЕР ХЯОНКЭГНБЮРЭ HTML-РЩЦХ, ОНЛЕЫЕММШЕ БМСРПХ АКНЙЮ <rule></rule> ДКЪ ТНПЛЮРХПНБЮМХЪ XML-ЩКЕЛЕМРЮ, ЙНРНПНЛС "ОПЕДМЮГМЮВЮКЯЪ" РЕЙСЫХИ АКНЙ. б РНЛ ЯКСВЮЕ, ЕЯКХ ДКЪ ЙЮЙНЦН-РН ЩКЕЛЕМРЮ XML ЬЮАКНМ МЕ НОПЕДЕКЪЕРЯЪ, Б БШУНДМНИ ДНЙСЛЕМР АСДСР ДНАЮБКЕМШ РЩЦХ ТНПЛЮРХПНБЮМХЪ ОН СЛНКВЮМХЧ (МЮОПХЛЕП, <DIV></DIV> )

оПНЖЕЯЯ ПЮГАНПЮ XSL-ОПЮБХК ЪБКЪЕРЯЪ ПЕЙСПЯХБМШЛ, Р.Е. ЕЯКХ С ЩКЕЛЕМРЮ ЕЯРЭ ДНВЕПМХЕ ЩКЕЛЕМРШ, РН ОПНЦПЮЛЛЮ АСДЕР ХЯЙЮРЭ НОПЕДЕКЕМХЪ ЩРХУ ЩКЕЛЕМРНБ, ПЮЯОНКНФЕММШУ "ЦКСАФЕ" Б ДЕПЕБЕ ДНЙСЛЕМРЮ. сЙЮГЮМХЕЛ МЮ РН, ВРН МЕНАУНДХЛН ОНБРНПХРЭ ОПНЖЕЯЯ ПЮГАНПЮ XML ДНЙСЛЕМРЮ, РЕОЕПЭ СФЕ ДКЪ ДНВЕПМХУ ЩКЕЛЕМРНБ, ЪБКЪЕРЯЪ ХМЯРПСЙЖХЪ <children/>. дНИДЪ ДН МЕЕ, ЮМЮКХГЮРНП БШАЕПЕР ХГ ХЕПЮПУХВЕЯЙНЦН ДЕПЕБЮ XML- ЩКЕЛЕМРНБ МСФМСЧ БЕРБЭ Х МЮИДЕР Б XSL-ЬЮАКНМЮУ ОПЮБХКЮ, НОПЕДЕКЪЧЫХЕ ТНПЛЮРХПНБЮМХЕ ЩРХУ МХФЕКЕФЮЫХУ ЩКЕЛЕМРНБ. б РНЛ ЯКСВЮЕ, ЕЯКХ БЛЕЯРН <children> ЛШ СЙЮФЕЛ ХМЯРПСЙЖХЧ <empty/>;, ОПНЦПЮЛЛЮ ГЮЙНМВХР ДБХФЕМХЕ ОН ДЮММНИ БЕРБХ Х БНГБПЮРХРЯЪ МЮГЮД, Б ПНДХРЕКЭЯЙНЕ ОПЮБХКН. оПХ ЩРНЛ РЕЙСЫЕЕ ОПЮБХКН МХЙЮЙНИ ХМТНПЛЮЖХХ Б БШУНДМНЛ HTML-ДНЙСЛЕМРЕ ХГЛЕМЪРЭ МЕ АСДЕР, Р.Й. <empty/> Б ДЮММНЛ ЯКСВЮЕ НГМЮВЮЕР, ВРН ЯНДЕПФХЛНЕ ЩКЕЛЕМРЮ НРЯСРЯРБСЕР.

еЯКХ Б НДМНЛ ОПЮБХКЕ <target-element> ХЯОНКЭГСЕРЯЪ МЕЯЙНКЭЙН ПЮГ, РН ХМЯРПСЙЖХХ ОН ТНПЛЮРХПНБЮМХЧ АСДСР ПЮЯОПНЯРПЮМЕМШ МЮ БЯЕ НОХЯШБЮЕЛШЕ БМСРПХ МЕЦН XML-ЩКЕЛЕМРШ, Р.Е. ЛНФМН ГЮДЮБЮРЭ ЕДХМШИ ЬЮАКНМ ТНПЛЮРХПНБЮМХЪ ДКЪ МЕЯЙНКЭЙХУ ЩКЕЛЕМРНБ НДМНБПЕЛЕММН:

<xsl>
<rule>
<target-element type="item1"/>
<target-element type="item2"/>
<target-element type="item3"/>
<hr>
<children/>
<hr>
</rule>
</xsl> 

мХФЕ ОПХБЕДЕМ ОПХЛЕП АНКЕЕ ЯКНФМНЦН XSL- НОХЯЮМХЪ, МЕЙНРНПШЕ ТПЮЦЛЕМРШ ЙНРНПНЦН АСДСР ОНЪЯМЕМШ ОНГФЕ.

XML-ДНЙСЛЕМР:

<?XML Version="1.0"?>
<documents>
<books>
<book id="Book1">
<title>лЮЙПНЩМНЛХВЕЯЙХЕ ОНЙЮГЮРЕКХ ЩЙНМНЛХЙХ пХЛЯЙНИ хЛОЕПХХ Б ОЕПХНД ЕЕ ПЮЯЖБЕРЮ</title>
<author>хБЮМ оЕРПНБ</author>
<date>21.08.98</date>
</book>
<book id="Book2">
<title>жБЕРНБНДЯРБН Х ФХБНРМНБНДЯРБН. оПЮЙРХВЕЯЙХЕ ЯНБЕРШ</title>
<author>оЕРП яХДНПНБ</author>
<date>10.10.98</date>
</book>
</books>
<articles>
<article id="Article1">
<author>оЕРП хБЮМНБ</author>
<title>бКХЪМХЕ ОНБШЬЕМХЪ РЮПХТНБ НОКЮРШ ГЮ РЕКЕТНМ МЮ ОПНДНКФХРЕКЭМНЯРЭ ФХГМХ МЮЯЕКЕМХЪ</title>
<date>12.09.98</date>
</article>
</articles>
</documents>

яНДЕПФХЛНЕ XSL-ДНЙСЛЕМРЮ:

<xsl>
  <rule>
    <root/>      
    <HTML>       
    <BODY bgcolor="white">
    <center><hr width="80%"/><b>Library</b><hr width="80%"/><br/> 
    <table width="80%" border="2">
    <children/>  
    </table></center>
    </BODY>
    </HTML>	   
  </rule>
    <rule>
	 <element type="book">
	    <target-element type="author"/>
             </element>
            <td align="center">
	    <p color="red" font-size="14"> <b> 
<children/> 
</b></p></td>
    </rule>
    <rule>
	 <element type="article">
	    <target-element type="author"/>
         </element>
            <td align="center">
	    <p color="red" font-size="14" font-style="italic"><children/></p></td>
    </rule>
    <rule>
	    <target-element type="book"/>
            <tr><children/></tr>
    </rule>
    <rule>
	    <target-element type="article"/>
            <tr><children/></tr>
    </rule>
    <rule>
	    <target-element/>
            <td align="center"><p><children/></p></td>
    </rule>
    <rule>
	    <target-element type="books"/>
            <tr><td colspan="3" bgcolor="silver" >Books</td></tr>
            <children/>
    </rule>
    <rule>
	    <target-element type="articles"/>
            <tr><td colspan="3" bgcolor="silver" >Articles</td></tr>
            <children/>
    </rule>
</xsl> 

йНПМЕБНЕ ОПЮБХКН

пЮГАНП КЧАНЦН XSL- ДНЙСЛЕМРЮ БЯЕЦДЮ МЮВХМЮЕРЯЪ Я ОПЮБХКЮ ДКЪ ЙНПМЕБНЦН ЩКЕЛЕМРЮ, Б ЙНРНПНЛ НОПЕДЕКЪЕРЯЪ НАКЮЯРЭ БЯЕЦН ПЮГАХПЮЕЛНЦН XML ДНЙСЛЕМРЮ Х ОНЩРНЛС РЩЦХ ТНПЛЮРХПНБЮМХЪ, ОНЛЕЫЕММШЕ ЯЧДЮ, АСДСР ДЕИЯРБНБЮРЭ МЮ БЕЯЭ ДНЙСЛЕМР Б ЖЕКНЛ. дКЪ НАНГМЮВЕМХЪ ЙНПМЕБНЦН ОПЮБХКЮ МЕНАУНДХЛН БЙКЧВХРЭ Б МЕЦН ЩКЕЛЕМР <root/>;. мЮОПХЛЕП, ДКЪ РНЦН, ВРНАШ ГЮДЮРЭ РЩЦ <body> ДКЪ ТНПЛХПСЕЛНИ МЮЛХ БШУНДМНИ HTML- ЯРПЮМХЖШ, ЛШ ЛНФЕЛ ХЯОНКЭГНБЮРЭ ЯКЕДСЧЫХИ ТПЮЦЛЕМР:

<xsl>
<rule>
<root/>
<html><head><title> Flowers</title></head>
<body bgcolor="white" link="blue" alink="darkblue" vlink="darckblue">
<children/>
</body>
</html>
</rule>
</xsl>

б ЩРНЛ ОПХЛЕПЕ ОПХ ОНЛНЫХ ХМЯРПСЙЖХИ <root/> Х <children/> ЛШ НОПЕДЕКХКХ ПЪД МЮВЮКЭМШУ Х ЙНМЕВМШУ HTML-РЩЦНБ ДКЪ МЮЬЕИ ЯРПЮМХЖШ, ЛЕФДС ЙНРНПШЛХ ГЮРЕЛ Б ОПНЖЕЯЯЕ ПЕЙСПЯХБМНЦН НАУНДЮ XSL- ЮМЮКХГЮРНПЮ АСДСР ОНЛЕЫЕМШ НЯРЮКЭМШЕ ЩКЕЛЕМРЮ ДНЙСЛЕМРЮ.

б РНЛ ЯКСВЮЕ, ЕЯКХ ЛШ МЕ НОПЕДЕКЪЕЛ ОПЮБХКН ДКЪ ЙНПМЕБНЦН ЩКЕЛЕМРЮ, ПЮГАНП ДНЙСЛЕМРЮ МЮВМЕРЯЪ Я ОЕПБНЦН ОПЮБХКЮ Я ХМЯРПСЙЖХЕИ <target-element>(ДКЪ НТНПЛКЕМХЪ ФЕ ГЮЦНКНБЙЮ ДНЙСЛЕМРЮ АСДЕР ХЯОНКЭГНБЮМ НАПЮГЕЖ ТНПЛЮРХПНБЮМХЪ, ОПХЛЕМЪЧЫХИЯЪ ОН СЛНКВЮМХЧ).

нРМНЬЕМХЪ ЛЕФДС ЩКЕЛЕМРЮЛХ

дНВЕПМХЕ ЩКЕЛЕМРШ Б XML-ДНЙСЛЕМРЕ БЯЕЦДЮ МЮУНДЪРЯЪ БМСРПХ НАКЮЯРХ, НОПЕДЕКЪЕЛНИ РЩЦЮЛХ ПНДХРЕКЭЯЙНЦН ОН НРМНЬЕМХЧ Й МХЛ ЩКЕЛЕМРЮ. дКЪ РНЦН, ВРНАШ РНВМН СЙЮГЮРЭ ЛЕЯРНПЮЯОНКНФЕМХЕ НАПЮАЮРШБЮЕЛНЦН ЩКЕЛЕМРЮ Б ДЕПЕБЕ XML, Б XSL ХЯОНКЭГСЕРЯЪ ДНОНКМХРЕКЭМШИ РЩЦ <element>;. оПХ ОНЛНЫХ МЕЦН ЛНФМН СЙЮГЮРЭ, ЙЮЙХЕ ЩКЕЛЕМРШ ДНКФМШ ОПЕДЬЕЯРБНБЮРЭ РЕЙСЫЕЛС, Ю ЙЮЙХЕ - ЯКЕДНБЮРЭ ОНЯКЕ МЕЦН. мЮОПХЛЕП, Б ЯКЕДСЧЫЕЛ ТПЮЦЛЕМРЕ НОПЕДЕКЪЕРЯЪ, ВРН ТНПЛЮРХПНБЮМХЕ ЩКЕЛЕМРЮ <title> АСДЕР ГЮБХЯЕРЭ НР ЕЦН ЛЕЯРНПЮЯОНКНФЕМХЪ БМСРПХ XML-ДНЙСЛЕМРЮ:

<xsl>
<rule>
<element type="journal">
	    <target-element type="title"/>
         	</element>
<center>
<hr width=80%>
<children/>
<hr width=80%>
</center>    
</rule>
<rule>
<element type="article">
	    <target-element type="title"/>
         	</element>
<td align="center"><p color="blue" font-size="14" font-style="italic"><children/>
</td>
</rule>
</xsl>

йЮЙ БХДМН ХГ ОПХЛЕПЮ, ЕЯКХ Б XML- ДНЙСЛЕМРЕ АСДЕР МЮИДЕМ ЩКЕЛЕМР <title>, ЪБКЪЧЫХИЯЪ ДНВЕПМХЛ ОН НРМНЬЕМХЧ Й ЩКЕЛЕМРС <article> (МЮГБЮМХЕ ЯРЮРЭХ), РН ЕЦН ТНПЛЮРХПНБЮМХЕ АСДЕР МЕЯЙНКЭЙН НРКХВЮРЭЯЪ НР ЩКЕЛЕМРЮ <title>, ПЮЯОНКНФЕММНЦН БМСРПХ РЩЦНБ <journal>

оПХНПХРЕРШ ОПЮБХК

б РНЛ ЯКСВЮЕ, ЕЯКХ БМСРПХ XSL- ДНЙСЛЕМРЮ БЯРПЕВЮЕРЯЪ МЕЯЙНКЭЙН ОПЮБХК ДКЪ НДМНЦН Х РНЦН ФЕ ЩКЕЛЕМРЮ, РН msxsl АСДЕР ХЯОНКЭГНБЮРЭ РН ХГ МХУ, ЙНРНПНЕ АНКЕЕ РНВМН НОПЕДЕКЪЕР ОНГХЖХЧ ДЮММНЦН ЩКЕЛЕМРЮ. р.Е. ЕЯКХ XSL- ДНЙСЛЕМР ЯНДЕПФХР ЯКЕДСЧЫХЕ ОПЮБХКЮ:

<rule>
<element type="journal">
	    <target-element type="title"/>
         	</element>
<center>
<hr width=80%>
<children/>
<hr width=80%>
</center>
</rule>
<rule>
	<target-element type="title"/>
<b>
<children/>
</b>    
</rule>

, РН ОПХ ХЯОНКЭГНБЮМХХ ЩРНИ ЯРХКЕБНИ РЮАКХЖШ Б ЯКСВЮЕ, ЙНЦДЮ ЩКЕЛЕМР <title> ЪБКЪЕРЯЪ ОНРНЛЙНЛ <journal>, Й МЕЛС АСДЕР ОПХЛЕМЕМН ОЕПБНЕ ОПЮБХКН. дКЪ КЧАШУ ФЕ ДПСЦХУ ЩКЕЛЕМРНБ АСДЕР ДЕИЯРБНБЮРЭ ОПЮБХКН АЕГ РЩЦЮ <element>

б НАЫЕЛ ЯКСВЮЕ ОПХНПХРЕР ОПЮБХК НОПЕДЕКЪЕРЯЪ ЯКЕДСЧЫХЛ НАПЮГНЛ (Б ОНПЪДЙЕ САШБЮМХЪ ОПХНПХРЕРЮ):

хЯОНКЭГНБЮМХЕ ЮРПХАСРНБ ЩКЕЛЕМРНБ

оПХЛЕМХРЕКЭМН Й <target-element> Х <element> Б ОПЮБХКЮУ РЮЙФЕ ЛНЦСР ХЯОНКЭГНБЮРЭЯЪ ЯОЕЖХЮКЭМШЕ ЩКЕЛЕМРШ <attribute>;, ОПХ ОНЛНЫХ ЙНРНПШУ ЛНФМН СРНВМЪРЭ УЮПЮЙРЕПХЯРХЙХ НАПЮАЮРШБЮЕЛШУ ЩКЕЛЕМРНБ, ГЮДЮБЮЪ ПЮГКХВМШЕ ХМЯРПСЙЖХХ ТНПЛЮРХПНБЮМХЪ ДКЪ НДХМЮЙНБШУ ЩКЕЛЕМРНБ Я ПЮГКХВМШЛХ ЮРПХАСРЮЛХ. сЙЮГШБЮЕЛШЕ Б <attribute> ОЮПЮЛЕРПШ name Х value НОПЕДЕКЪЧР ЮРПХАСР XML, ЙНРНПШИ ДНКФЕМ ХЛЕРЭ РЕЙСЫХИ НАПЮАЮРШБЮЕЛШИ ЩКЕЛЕМР. мЮОПХЛЕП, Б ЯКЕДСЧЫЕЛ ТПЮЦЛЕМРЕ БЯЕ ЩКЕЛЕМРШ Я ЮРПХАСРНЛ free_lance ="true" АСДСР БШДЕКЕМШ Б БШУНДМНЛ HTML- ДНЙСЛЕМРЕ ЯЕПШЛ ЖБЕРНЛ

<rule>
<target-element type="author">
 <attribute name="free_lance" value="true">
	</target-element>
<p color="gray">
<children/>
</p>
 </rule>

тХКЭРПЮЖХЪ ЩКЕЛЕМРНБ

нДМХЛ ХГ ЯЮЛШУ ЛНЫМШУ ЯПЕДЯРБ XSL ЪБКЪЕРЯЪ БНГЛНФМНЯРЭ ЯНПРХПНБЙХ Х БШАНПЙХ ЩКЕЛЕМРНБ, БШДЕКЪЕЛШУ ХГ НАЫЕЦН ДЕПЕБЮ ЩКЕЛЕМРНБ ДНЙСЛЕМРЮ. дКЪ ЩРНЦН ХЯОНКЭГСЕРЯЪ ЩКЕЛЕМР <select-elements>;, ЙНРНПШИ ГЮЛЕМЪЕР <children/> Б ОПЮБХКЮУ, НОПЕДЕКЪЪ РЕ ЩКЕЛЕМРШ, ЙНРНПШЕ ЯКЕДСЕР НАПЮАНРЮРЭ Б ОПНЖЕЯЯЕ ПЕЙСПЯХБМНЦН НАУНДЮ. мЮОПХЛЕП, Б ЯКЕДСЧЫЕЛ ОПХЛЕПЕ АСДСР НАПЮАНРЮМШ РНКЭЙН ЩКЕЛЕМРШ <author>:

<rule>
<target-element type=" staff"/>
<div>
<select-elements>
<target-element type = "author"/>
</select-elements>
</div>
</rule>

щКЕЛЕМР <select-elements> ЯЮЛ ОН ЯЕАЕ МЕ НОПЕДЕКЪЕР ЬЮАКНМ ТНПЛЮРХПНБЮМХЪ, НМ КХЬЭ СОПЮБКЪЕР ПЮАНРНИ ЮМЮКХГЮРНПЮ, НАНГМЮВЮЪ, ОНДНАМН <children/>, "МХФЕКЕФЮЫХЕ" ЩКЕЛЕМРШ. б ОПХБЕДЕММНЛ ОПХЛЕПЕ ЩКЕЛЕМР <author> ДНКФЕМ АШРЭ ПЮЯОНКНФЕМ БМСРПХ ЩКЕЛЕМРЮ <staff>

дКЪ РНЦН, ВРНАШ Б ЬЮАКНМЕ БШДЕКХРЭ МЕ РНКЭЙН ЯНАЯРБЕММШЕ ДНВЕПМХЕ ЩКЕЛЕМРШ, МН Х ДНВЕПМХЕ ЩКЕЛЕМРШ ОНРНЛЙНБ, Р.Е. ХЯОНКЭГНБЮРЭ МЕЯЙНКЭЙН СПНБМЕИ БКНФЕММНЯРХ, МЕНАУНДХЛН ГЮДЮРЭ ОЮПЮЛЕРП from = "descendants". еЯКХ ОЮПЮЛЕРП ХЛЕЕР ГМЮВЕМХЕ "children", ВРН СЙЮГШБЮЕР МЮ РН, ВРН БШАНП ДНКФЕМ ОПНХГБНДХРЯЪ ХГ ЯОХЯЙЮ ЯНАЯРБЕММШУ ДНВЕПМХУ ЩКЕЛЕМРНБ, РН ЮРПХАСР from ЛНФЕР НОСЯЙЮРЭЯЪ, Р.Й. "children" ЪБКЪЕРЯЪ ГМЮВЕМХЕЛ ОН СЛНКВЮМХЧ.

оПЮБХКЮ ЯРХКЕИ

б НРКХВХЕ НР CSS, Б XSL МЕБНГЛНФМН ХЯОНКЭГНБЮМХЕ ЙЮЯЙЮДМШУ ЯРХКЕБШУ НОПЕДЕКЕМХИ(Р.Е. МЕКЭГЪ ХЯОНКЭГНБЮРЭ МЕЯЙНКЭЙН ОПЮБХК ДКЪ НОПЕДЕКЕМХЪ ЯРХКЪ НДМНЦН РНЦН ФЕ ЩКЕЛЕМРЮ), Р.Й. РЮЙХЕ НЦПЮМХВЕМХЪ ББНДХР ПЕЙСПЯХБМШИ ЮКЦНПХРЛ ПЮАНРШ ОПНЦПЮЛЛШ - ЮМЮКХГЮРНПЮ. нДМЮЙН ХЯОНКЭГНБЮМХЕ ОПЮБХК НОПЕДЕКЕМХЪ ЯРХКЪ(Style Rules) ЩКЕЛЕМРЮ ОНГБНКЪЕР ЙЮЙХЛ-РН НАПЮГНЛ ЯЙНЛОЕМЯХПНБЮРЭ ЩРНР МЕДНЯРЮРНЙ.

дКЪ НОПЕДЕКЕМХЪ ОПЮБХКЮ ЯРХКЕБНЦН НТНПЛКЕМХЪ МЕНАУНДХЛН БНЯОНКЭГНБЮРЭЯЪ ЩКЕЛЕМРНЛ <style-rule>;, ЙНРНПШИ ХЯОНКЭГСЕРЯЪ РНВМН РЮЙФЕ, ЙЮЙ Х <rule>, МН ХМЯРПСЙЖХХ, ЯНДЕПФЮЫХЕЯЪ Б МЕЛ, МХЙЮЙ МЕ БКХЪЧР МЮ ЯРПСЙРСПС БШУНДМНЦН ДНЙСЛЕМРЮ. оНЩРНЛС БЯЕ ЙНЛЮМДШ БМСРПХ ЩРНЦН ОПЮБХКЮ ДНКФМШ НОХЯШБЮРЭЯЪ Б ПЮЛЙЮУ ЩКЕЛЕМРЮ <apply>. бНР ЙЮЙ АСДЕР БШЦКЪДЕРЭ, МЮОПХЛЕП, НОПЕДЕКЕМХЕ ЯРХКЪ ДКЪ ЩКЕЛЕМРЮ <flower>rose</flower>;:

<style-rule>
<target-element type ="flower"/>
<apply color ="red"/>
</style-rule> 
<rule>
<target-element type="flower"/>
<div font-style="italic";>
<children/>
</div>
</rule>

еЯКХ АШ ЛШ МЕ НОПЕДЕКХКХ ОПЮБХКЮ <rule>, РН Б БШУНДМНИ ДНЙСЛЕМР МЕ АШКН АШ ОНЛЕЫЕМН МХЙЮЙНИ ХМТНПЛЮЖХХ, Р.Й. ЩКЕЛЕМР <style-rule> РНКЭЙН НОПЕДЕКЪЕР ОЮПЮЛЕРПШ ЯРХКЕБНЦН НТНПЛКЕМХЪ, МЕ ОПЕДОПХМХЛЮЪ МХЙЮЙХУ ДПСЦХУ ДЕИЯРБХИ.

рЮЙФЕ МЮДН СВХРШБЮРЭ, ВРН XSL- ЮМЮКХГЮРНП ХЯОНКЭГСЕР CSS ДКЪ НОПЕДЕКЕМХЪ ГЮДЮБЮЕЛНЦН ОПЮБХКЮЛХ <style-rule> ЯРХКЪ Б БШУНДМНЛ HTML-ДНЙСЛЕМРЕ, РЕЛ ЯЮЛШЛ ОПЕДНЯРЮБКЪЪ МЮЛ БНГЛНФМНЯРЭ ХЯОНКЭГНБЮМХЪ ЩРНЦН ЛНЫМНЦН ЯПЕДЯРБЮ ОПХ НТНПЛКЕМХХ HTML-ЯРПЮМХЖ оНЯКЕ НАПЮАНРЙХ ОПХБЕДЕММНЦН Б ОПХЛЕПЕ ТПЮЦЛЕМРЮ Б БШУНДМНИ ДНЙСЛЕМР АСДСР ОНЛЕЫЕМШ ЯКЕДСЧЫХЕ ЩКЕЛЕМРШ:

<div style= "font-style: italic; color : red;">rose</div>

еЫЕ НДХМ ОПХЛЕП:

яРХКХ Б ТНПЛЮРЕ CSS:

issue {font-weight=bold; color=blue;}
.new {font-weight=bold; color=red;}

тПЮЦЛЕМР XSL- ДНЙСЛЕМРЮ, ОНГБНКЪЧЫЕЦН ХЯОНКЭГНБЮРЭ ОНДНАМШЕ ЯРХКЕБШЕ НОПЕДЕКЕМХЪ:

<style-rule>
<target-element type ="issue"/>
<apply color ="blue"/>
</style-rule> 
<style-rule>
<target-element type ="issue">
<attribute name ="class" value ="new" />
</target-element>
<apply color ="red"/>
</style-rule> 
<rule>
<target-element type="issue"/>
<div>
<children/>
</div>
</rule>

яЖЕМЮПХХ

яЖЕМЮПХХ ЛНЦСР ХЯОНКЭГНБЮРЭЯЪ Б ДНЙСЛЕМРЮУ XSL РНВМН РЮЙФЕ, ЙЮЙ Х Б HTML. йПНЛЕ РНЦН, ЯЖЕМЮПХХ, ЯНДЕПФЮЫХЕЯЪ БМСРПХ XSL-ДНЙСЛЕМРЮ Х ГЮОСЯЙЮЕЛШЕ АПНСГЕПНЛ Б ОПНЖЕЯЯЕ НАПЮАНРЙХ ДНЙСЛЕМРЮ ЛНЦСР ДХМЮЛХВЕЯЙХ ЯНГДЮБЮРЭ HTML-ДНЙСЛЕМРШ, ХГБКЕЙЮЪ МЕНАУНДХЛСЧ ДКЪ ЩРНЦН ХМТНПЛЮЖХЧ МЕОНЯПЕДЯРБЕММН ХГ ЩКЕЛЕМРНБ XSL-ДНЙСЛЕМРЮ.

дКЪ МЮОХЯЮМХЪ ЯЖЕМЮПХЕБ XSL ХЯОНКЭГСЕР ЯОЕЖХЮКЭМШИ ЯЙПХОРНБШИ ЪГШЙ - ECMAScript. нДМЮЙН Б msxsl ДКЪ ЩРХУ ЖЕКЕИ ЛНФМН ОПХЛЕМЪРЭ Microsoft JavaScript,- ЪГШЙ, ЙНРНПШИ НАЗЕДХМХК Б ЯЕАЕ МЕЙНРНПШЕ ЩКЕЛЕМРШ ЯРЮМДЮПРМНЦН JavaScript Х ECMAScript.

бШВХЯКЕМХЕ БШПЮФЕМХИ

мЮХАНКЕЕ ОПНЯРШЛ ОПХЛЕПНЛ ХЯОНКЭГНБЮМХЪ ЯЖЕМЮПХЕБ Б XSL -ДНЙСЛЕМРЕ ЪБКЪЕРЯЪ БШВХЯКЕМХЕ ГМЮВЕМХИ ОЮПЮЛЕРПНБ НОХЯШБЮЕЛШУ ЩКЕЛЕМРНБ. дКЪ ЩРНЦН МЮДН ОПНЯРН ОНЯРЮБХРЭ ГМЮЙ ПЮБЕМЯРБЮ Б ЙЮВЕЯРБЕ ОЕПБНЦН ЯХЛБНКЮ ОЮПЮЛЕРПЮ, ВРН ГЮЯРЮБХР XSL-ОПНЖЕЯЯНП БШВХЯКХРЭ ГМЮВЕМХЕ БШПЮФЕМХЪ(ЯХМРЮЙЯХЯ ЩРНЦН БШПЮФЕМХЪ ДНКФЕМ НРБЕВЮРЭ РПЕАНБЮМХЪЛ JavaScript). мЮОПХЛЕП, ОНЯКЕ ПЮГАНПЮ ЩРНЦН ОПЮБХКЮ:

<rule>
<target-element type="header">
<hr width="=100-20+'%'">
<children/>
<hr width="80%">
</rule>

, Б БШУНДМНЛ ДНЙСЛЕМРЕ НЙЮФСРЯЪ ЯКЕДСЧЫХЕ ХМЯРПСЙЖХХ:

<hr width=80%>
...
<hr width=80%>

нВЕМЭ ВЮЯРН Б ОПЮБХКЮУ XSL МЕНАУНДХЛН ХЯОНКЭГНБЮРЭ ЮРПХАСРШ НОХЯШБЮЕЛНЦН Б МХУ ЩКЕЛЕМРЮ. дКЪ ЩРНЦН ЛШ ДНКФМШ БНЯОНКЭГНБЮРЭЯЪ ЛЕРНДНЛ getAttribute(), НОХЯЮММШЛ Б НАЗЕЙРМНИ ЛНДЕКХ XML (ЛШ ПЮЯЯЛЮРПХБЮЕЛ НАЗЕЙРМСЧ ЛНДЕКЭ XML-ДНЙСЛЕМРНБ, ОПЕДКНФЕММСЧ Microsoft, ЯОХЯНЙ ЩРХУ ТСМЙЖХИ ОПХБЕДЕМ Б ЙНМЖЕ ПЮГДЕКЮ). р.Й. ЙЮФДНЛС ЩКЕЛЕМРС XSL ДНЯРСОЕМ СЙЮГЮРЕКЭ МЮ ЯННРБЕРЯРБСЧЫХИ ЕЛС НАЗЕЙР, ЯЖЕМЮПХИ ЛНФЕР НАПЮЫЮРЭЯЪ Й БМСРПЕММХЛ ТСМЙЖХЪЛ Х ЯБНИЯРБЮЛ ЩРХУ ЩКЕЛЕМРНБ, ОПХ ОНЛНЫХ ЙНРНПШУ Х НЯСЫЕЯРБКЪЧРЯЪ МЕНАУНДХЛШЕ ДЕИЯРБХЪ.

б ЯКЕДСЧЫЕЛ ТПЮЦЛЕМРЕ XML- ДНЙСЛЕМРЮ НОПЕДЕКЪЕРЯЪ ЩКЕЛЕМР <article>, Б ЙНРНПНЛ ЮРПХАСР src ХЯОНКЭГСЕРЯЪ ДКЪ ГЮДЮМХЪ ЮДПЕЯЮ ТЮИКЮ, ЯНДЕПФЮЫЕЦН РЕЙЯР ЯРЮРЭХ.

<articles>
<article src="http://server/pages/article.html">Bugs report</article>
</articles>

дКЪ РНЦН, ВРНАШ ХЯОНКЭГНБЮРЭ ЩРНР ЮРПХАСР Б БШУНДМНЛ HTML-ДНЙСЛЕМРЕ, МЕНАУНДХЛН НОПЕДЕКХРЭ ЯКЕДСЧЫЕЕ ОПЮБХКН:

<rule>
<target-element type="article">
<a href='=getAttribute("src")'>
<children/>
</a>
</rule>

оНЯКЕ НАПЮАНРЙХ ЩРНЦН ТПЮЦЛЕМРЮ Б БШУНДМНИ ДНЙСЛЕМР АСДЕР ОНЛЕЫЕМ ЩКЕЛЕМР:

<a href="http://server/pages/article.html">Bugs report</a>

бШОНКМЕМХЕ ХМЯРПСЙЖХИ

дПСЦХЛ ЯОНЯНАНЛ ОНЛЕЫЕМХЪ Б БШУНДМНИ HTML- ДНЙСЛЕМР ХМТНПЛЮЖХХ, ЪБКЪЧЫЕИЯЪ ПЕГСКЭРЮРНЛ БШОНКМЕМХЪ ЙЮЙХУ-КХАН НОЕПЮЖХИ JavaScript √ ЯЖЕМЮПХЕБ ЪБКЪЕРЯЪ ХЯОНКЭГНБМЮХЕ ХМЯРПСЙЖХХ <eval>;:

<rule>
<element type="articles">
<target-element type="article">
</element>
<tr><td><eval>childNumber(this)</eval></td><td>
<children/>
</td><tr>
</rule>

лЕРНД childNumber Б ДЮММНЛ ЯКСВЮЕ БНГБПЮЫЮЕР РЕЙСЫХИ МНЛЕП ДНВЕПМЕЦН ЩКЕЛЕМРЮ.

нОПЕДЕКЕМХЕ ТСМЙЖХИ Х ЦКНАЮКЭМШУ ОЕПЕЛЕММШУ

юМЮКНЦХВМН РЩЦС <SCRIPT> Б HTML, ЩКЕЛЕМР <define-script> ЯНДЕПФХР ТСМЙЖХХ Х НОПЕДЕКЕМХЪ ЦКНАЮКЭМШУ ОЕПЕЛЕММШУ. нАШВМН Б XSL-ДНЙСЛЕМРЕ НОПЕДЕКЪЕРЯЪ НДХМ ЩКЕЛЕМР <define-script>, ПЮЯОНКНФЕММШИ Б ЯЮЛНЛ МЮВЮКЕ.

<xsl>
<define-script>
<![CDATA[
var fontSize=12;
function getColor(elem){
return elem.children.item("color",0).text; 
		// бНГБПЮЫЮЕР ЯНДЕПФХЛНЕ ДНВЕПМЕЦН ЩКЕЛЕМРЮ <color>
}]]>
</define-script>
<rule>
<target-element type = "flower">
<div background-color="=getColor(this)"; font-size="=fontSize">
<children/>
</div>
</rule>
</xsl>

еЯКХ ОПХЛЕМХРЭ ЩРХ ОПЮБХКЮ Й РЮЙНЛС ТПЮЦЛЕМРС XML- ДНЙСЛЕМРС:

<xml>
<flower>
rose
<color>red</color> 
</flower>

, РН МЮ БШУНДЕ HTML -ДНЙСЛЕМР АСДЕР ЯНДЕПФЮРЭ ЯКЕДСЧЫХЕ ЩКЕЛЕМРШ:

<div background-color="red"; font-size="12">

мЕНАУНДХЛН НРЛЕРХРЭ, ВРН ХЯОНКЭГНБЮМХЕ ЦКНАЮКЭМШУ ОЕПЕЛЕММШУ Б МЕЙНРНПШУ ЯКСВЮЪУ ЛНФЕР ОПХБНДХРЭ Й ЯЕПЭЕГМШЛ НЬХАЙЮЛ, БШГБЮММШЛ ОНОШРЙЮЛХ НДМНБПЕЛЕММНЦН Й МХЛ ДНЯРСОЮ. оНЩРНЛС ПЕЙНЛЕМДСЕРЯЪ ХЯОНКЭГНБЮРЭ РЮЙХЕ ОЕПЕЛЕММШЕ РНКЭЙН Б ЙЮВЕЯРБЕ ЙНМЯРЮМР.

хЯОНКЭГНБЮМХЕ Java Script ДКЪ HTML

яНГДЮБЮЪ ЬЮАКНМ HTML-ДНЙСЛЕМРЮ, бШ ЛНФЕРЕ СЙЮГШБЮРЭ Б МЕЛ ОПЮЙРХВЕЯЙХ КЧАШЕ ЩКЕЛЕМРШ HTML, Б РНЛ ВХЯКЕ Х АКНЙХ <SCRIPT>, БМСРПХ ЙНРНПШУ ЛНФМН ГЮДЮБЮРЭ КЧАШЕ ЙНМЯРПСЙЖХХ Java Script, ХЯОНКЭГСЪ ДКЪ ЩРНЦН НАКЮЯРЭ CDATA:

<xsl>
  <rule>
    <root/>
    <HTML>
      <HEAD>
        <SCRIPT LANGUAGE="JSCRIPT"><![CDATA[
var ie4=((navigator.appName=="Microsoft Internet Explorer")&&(parseInt(navigator.appVersion)  >= 4 ));
       function msover(){
if (ie4){
  		event.srcElement.style.color="red";
  		event.srcElement.style.cursor = "hand";
  	}
}
       function msout(){
	if (ie4){
  		event.srcElement.style.color="black";
  		event.srcElement.style.cursor = "auto";
  	}
}        ]]></SCRIPT>
      </HEAD>
      <BODY>
        <children/>
      </BODY>
    </HTML>
  </rule>
  <rule>
    <target-element type="chapter"/>
    <DIV id='=tagName + formatNumber(childNumber(this),"1")'
         background-color="marron"
    onmouseover='="msover("+ tagName + formatNumber(childNumber(this),"1")+")"'
    onmouseout='="msout("+ tagName + formatNumber(childNumber(this),"1")+")"'
      <children/>
    </DIV>
  </rule>
</xsl>

еЯКХ ХЯОНКЭГНБЮРЭ ЩРХ ОПЮБХКЮ ДКЪ ЯКЕДСЧЫЕЦН XML- ДНЙСЛЕМРЮ:

<contents>
  <chapter>Part1</chapter>
  <chapter>Part2</chapter>
  <chapter>Part3</chapter>
</contents>

РН Б ПЕГСКЭРЮРЕ ЛШ ОНКСВХЛ РЮЙНИ HTML-ТЮИК:

<HTML>
<HEAD>
<SCRIPT LANGUAGE="JSCRIPT">
var ie4=((navigator.appName=="Microsoft Internet Explorer")&&(parseInt(navigator.appVersion)  >= 4 ));
function msover(){
if (ie4){
  		event.srcElement.style.color="red";
  		event.srcElement.style.cursor = "hand";
 	}
}
function msout(){
	if (ie4){
  		event.srcElement.style.color="black";
  		event.srcElement.style.cursor = "auto";
  	}
  }
</SCRIPT>
</HEAD>
<BODY>
<DIV id=''chapter1"    onmouseover="msover("chapter1")"'
			  onmouseout="msout("chapter1")"'
      Part 1
       </DIV>
<DIV id=''chapter2"    onmouseover="msover("chapter2")"'
			  onmouseout="msout("chapter2")"'
      Part 2
       </DIV>
<DIV id=''chapter3"    onmouseover="msover("chapter3")"'
			  onmouseout="msout("chapter3")"'
      Part 3
       </DIV>
</BODY>
</HTML>

бЯРПНЕММШЕ ТСМЙЖХХ XSL

б ГЮБЕПЬЕМХХ ОПХБЕДЕЛ ЯОХЯНЙ БМСРПЕММХУ ТСМЙЖХИ, ЙНРНПШЕ ЛНФМН ХЯОНКЭГНБЮРЭ Б JavaScript √ЯЖЕМЮПХЪУ, ОПЕДМЮГМЮВЕММШУ ДКЪ ЮМЮКХГЮРНПЮ msxsl:

Ancestor(elementType, elem) бНГБПЮЫЮЕР ДКЪ РЕЙСЫЕЦН ЩКЕЛЕМРЮ ЯЯШКЙС МЮ АКХФЮИЬХИ ПНДХРЕКЭЯЙХИ ЩКЕЛЕМР ГЮДЮММНЦН РХОЮ. еЯКХ РЮЙНЦН ЩКЕЛЕМРЮ МЕР ХКХ РЕЙСЫХИ ЩКЕЛЕМР ОСЯРНИ, РН БНГБПЮЫЮЕР null
ChildNumber(elem) бНГБПЮЫЮЕР ХМДЕЙЯ РЕЙСЫЕЦН ЩКЕЛЕМРЮ Б ЯОХЯЙЕ ДПСЦХУ ДНВЕПМХУ ЩКЕЛЕМРНБ ДЮММНЦН РХОЮ.
AncestorChildNumber() бНГБПЮЫЮЕР МНЛЕП АКХФЮИЬЕЦН ОПЕДЙЮ РЕЙСЫЕЦН ЩКЕЛЕМРЮ ХКХ null, ЕЯКХ РЮЙНБНЦН МЕ ЯСЫЕЯРБСЕР
path(xsl) бНГБПЮЫЮЕР ЛЮЯЯХБ, ЯНДЕПФЮЫХИ "ОСРЭ" Й РЕЙСЫЕЛС ЩКЕЛЕМРС - Б ЙЮФДСЧ ЪВЕИЙС ЩРНЦН ЛЮЯЯХБЮ ОНЛЕЫЮЕРЯЪ ЖХТПНБНЕ ГМЮВЕМХЕ, СЙЮГШБЮЧЫЕЕ МЮ ЙНКХВЕЯРБН ЩКЕЛЕМРНБ НДХМЮЙНБНЦН РХОЮ, МЮУНДЪЫХУЯЪ МЮ РЕЙСЫЕЛ СПНБМЕ БКНФЕММНЯРХ. оЕПБШЛ ГМЮВЕМХЕЛ ЩРНЦН ЛЮЯЯХБЮ АСДЕР ОПЕДЯРЮБКЕМ ЙНПМЕБНИ ЩКЕЛЕМР, ОНЯКЕДМХЛ - РЕЙСЫХИ. пЮГЛЕП ЛЮЯЯХБЮ НОПЕДЕКЪЕР ЦКСАХМС БКНФЕММНЯРХ РЕЙСЫЕЦН ЩКЕЛЕМРЮ.
HierarchicalNumberRecursive(elementType,elem) лЕРНД, ОНУНФХИ МЮ ЛЕРНД path, МН БНГБПЮЫЮЕР РНКЭЙН ДНВЕПМХЕ ЩКЕЛЕМРШ
FormatNumber(n,format) бНГБПЮЫЮЕР ЯРПНЙС - ЯХЛБНКЭМНЕ ОПЕДЯРЮБКЕМХЕ МНЛЕПЮ(Р.Е. "НДХМ", "ДБЮ" Х Р.Д.). бНГЛНФМН НОПЕДЕКЕМХЕ ЯКЕДСЧЫХУ ТНПЛЮРНБ:
"1" - 0,1,2,..
"01" - 01,02,03,...
"a" - a,b,c,..z, aa, ab,..zz
"A" - A,..,Z,AA, .. ZZ
FormatNumberList(list,format,separator) бНГБПЮЫЮЕР ЯРПНЙС, ОПЕДЯРЮБКЪЧЫСЧ ЯОХЯНЙ, ЩКЕЛЕМРЮЛХ ЙНРНПНЦН ЪБКЪЧРЯЪ ЯХЛБНКЭМШЕ ОПЕДЯРЮБКЕМХЪ ВХЯЕК

мЮГЮД | яНДЕПФЮМХЕ | бОЕПЕД