Академический Документы
Профессиональный Документы
Культура Документы
.., ..
,
lizorkin@hotbox.ru
lisovsky@acm.org
2 3 XSLT XLink . 4 ,
XSLT, STX
XSLT . 5
XLink SXLink. 6 XSLT
XLink .
XSLT
XSL (XSLT)
XML. XSLT , ,
XML- , .
XSLT ,
XML, ,
XML-.
XSLT [4], XSLT .
XSLT (well-formed)
XML- [5]. XML-, XSLT,
XML [6].
, XSLT ( ),
.
. .
, .
. : ,
, ,
.
:
XPath, .
, ,
XPath- .
,
. ,
, , .
,
. XML-,
; XSLT,
.
.
,
.
,
. XML, (data-centric XML documents).
1 XSLT.
, XML-, XHTML.
xsl:stylesheet XSLT
"http://www.w3.org/1999/XSL/Transform". XSLT,
xsl:template.
1 . ,
XPath match . . 1
title, doc. ,
, ( ),
, xsl:template.
1, (
XSLT xsl:apply-templates),
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="doc/title">
<h1>
<xsl:apply-templates/>
</h1>
</xsl:template>
<!-- - -->
</xsl:stylesheet>
. 1: XHTML.
.
. , title, doc,
, , .
XLink
STX: XSLT
XML/SXML-.
(Document-Style Semantics and Specication Language, DSSSL) [8];
, SXML [9, 10].
STX XML, XSLT
, XSLT
. STX XML-.
STX XSLT
SXML.
STX SXSLT [11], ,
XSLT. , STX , SXSLT,
XML/SXML- XSLT.
4.1
XSLT
XSLT , , XSLT
XSL [1]. XML- XSLT
, Java
Python, , -
.
XSLT , XML
S- [12].
XML, XSLT.
XSLT ,
. ,
"" XSLT
XML-. XSLT [13] ,
XSLT .
STX XSLT
. , XSLT ,
, , - .
XML
-
- XML
6
()
XSLT
6@
I
@
@
@
XSLT/
STX
XSLT , . ,
, "" , ,
.
,
(), (XSLT).
XSLT ,
: XSLT .
XML-,
. ,
, , ,
.
XLink : SXLink
XLink
XLink ,
.
XML- XLink - ,
.
, S-
XLink SXML.
XML-
, SXLink.
, , XLink,
.
S-, ..
.
5.2
SXLink
SXLink SSAX,
XLink, XML-, SXML.
XLink ,
SXLink .
3, XLink
,
.
SXLink. ,
SXLink:
1. . ,
XLink , ..
, , ;
,
XPointer, ;
( ) / XLink
.
,
XLink .
, SXLink,
, XML .
2. . XLink .
( " ")
XLink,
, .
, HTML
.
3. . .
, (starting
resource) (ending resource).
,
, ,
.
SXLink
.
XSLT XLink
XSLT XLink,
XML-.
XSLT XLink
, STX SXLink.
6.1
2, XSLT
, . XSLT
XML-,
.
XLink .
XLink , [7],
:
XSLT,
XML-, ,
XML- ( ).
XSLT, XLink,
XSLT XML-.
XSLT STX SXLink,
(SXML) ( SXPath).
6.2
XSLT
XLink
XLink (view)
( ).
XLink ,
, .
XLink arcrole XLink,
.
arcrole [19],
, "- -
-". XLink [3], arcrole
, ,
.
<link-to-a-book
xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple"
xlink:href="http://library.com/book.xml"
xlink:arcrole="http://library.com/transform.xsl"/>
. 4: XSLT,
( )
XLink arcrole
XSLT. arcrole ,
.
4. XLink ,
arcrole , ,
. , HTML.
, , .
, , , XSLT,
. arcrole,
XLink.
SXLink , SXLink
XLink , , arcrole, SXLink
STX .
6.3
XSL- XML-
, XSLT,
XML-. , XSLT
XLink.
XML-, ,
, . XLink
XSLT , .. XLink ,
. , ,
XLink, XLink-, XSLT-.
, XSLT
XML-.
, XML Path (
XSLT). traverse (),
, XLink .
XSL-,
.
5 XSL,
, XML. traverse
, , (node) ,
XLink (book). , XML. traverse
(xsl:value-of),
(xsl:apply-templates).
<xsl:template match="node()[traverse::book]">
...
<xsl:value-of select="traverse::book/title"/>
...
<xsl:apply-templates select="traverse::book/chapter/section"/>
...
</xsl:template>
. 5: XSL, XLink
XML- STX,
XSLT, XLink- SXLink. STX SXLink
XML . XSLT XLink
, STX SXLink
.
[1] XSL (XSLT) 1.0. W3C 16 1999.
http://www.rol.ru/news/it/helpdesk/xslt01.htm
[2] Cuneiform Digital Library Initiative to Use XML Encoding for Third Millennium Texts.
http://xml.coverpages.org/ni2001-11-06-c.html
[3] XML Linking Language (XLink) Version 1.0. W3C Recommendation 27 June 2001.
http://www.w3.org/TR/xlink/
[4] XSLT Requirements Version 2.0. W3C Working Draft, February 2001.
http://www.w3.org/TR/2001/WD-xslt20req-20010214
[5] Extensible Markup Language (XML) 1.0 (Second Edition). W3C Recommendation 6 October 2000.
http://www.w3.org/TR/REC-xml
[6] Namespaces in XML. World Wide Web Consortium 14-January-1999.
http://www.w3.org/TR/REC-xml-names/
[7] XML XLink Requirements Version 1.0. W3C Note 24-Feb-1999.
http://www.w3.org/TR/NOTE-xlink-req/
[8] Document Style Semantics and Specication Language (DSSSL). ISO/IEC 10179:1996(E).
ftp://ftp.ornl.gov/pub/sgml/WG8/DSSSL/dsssl96b.pdf
[9] Kiselyov O. XML and Scheme. Workshop on Scheme and Functional Programming 2000, Montreal, 2000.
http://www.okmij.org/ftp/Scheme/SXML-short-paper.html
[10] Oleg Kiselyov, Shriram Krishnamurthi. SXSLT: Manipulation Language for XML. Practical Aspects of
Declarative Languages, 5th International Symposium, PADL 2003.
http://link.springer.de/link/service/series/0558/bibs/2562/25620256.htm
[11] O. Kiselyov, K.Lisovsky. XML, XPath, XSLT Implementation as SXML, SXPath and SXSLT. International Lisp Conference ILC 2002, San Francisco. October, 2002.
http://www.okmij.org/ftp/papers/SXs.pdf
[12] Oleg Kiselyov. SXML, Revision 2.5. August 9, 2002.
http://okmij.org/ftp/Scheme/SXML.html
[13] D. Jacobs. Rescuing XSLT from Niche Status. http://www.xfront.com/rescuing-xslt.html
[14] XML Path (XPath) 1.0. W3C 16 1999.
http://www.xpath.info/docs/REC-xpath-19991116-ru.html