annotate xslscript.txt @ 6:d3340fdeadf6

XSLScript: better file names.
author Maxim Dounin <mdounin@mdounin.ru>
date Fri, 21 Feb 2014 18:53:17 +0400
parents xsls.txt@c9be645cc395
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1 JAR can be found here:
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
2
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
3 http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/www/hiawatha/README.html
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
4
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
5 Recovered from:
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
6
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
7 http://moemesto.ru/link/6865082
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
8 http://moemesto.ru/philonov/page/6865082/download/INODE.RU%20/%20ProgrammaZm%20/%20XSLScript%20-%20%D0%B7%D0%B0%D0%BC%D0%B5%D0%BD%D0%B0%20XSLT
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
9
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
10 XSLScript - замена XSLT
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
11 [ 2004/07/16 ProgrammaZm ]
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
12
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
13 Возможно удобная замена XSLT. Файлы XSLScript преобразуются в xslt.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
14
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
15
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
16 // Источник: http://pault.com/pault/XSLScript/
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
17
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
18 Since Year 2000
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
19 Version 0.7
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
20 Check out TerseXML project
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
21
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
22 XSLScript is for those, who are writing complex XSLT stylesheets.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
23
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
24 XSLScript is a terse notation for writing complex XSLT stylesheets. XSLScript is part of Hiawatha web-server, but XSLScript also can be used stand-alone.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
25
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
26 To execute XSLScript script:
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
27
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
28 xsls some.xml some.xsls
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
29 The XSLScript script (some.xsls) gets compiled into corresponding XSLT stylesheet and then generated XSLT stylesheet is applied to the file some.xml (no temporary .xsl file is created, this all happens in the memory). The actual XSLT tranformation is performed by SAXON. There is 1-1 lines mapping between XSLScript script and generated XSLT ( this means if some XSLScript construction starts on line 5, the corresponding XSLT construction will also start on the same line 5. )
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
30
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
31 To generate the XSLT stylesheet out of XSLScript script:
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
32
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
33 xslsdump some.xsls
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
34 or
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
35
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
36 xslsdump-indent some.xsls
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
37 if you want a nice looking indentation.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
38
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
39 Why XSLScript ?
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
40
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
41 XSLT syntax is not for human beings.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
42
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
43 One can write complex XSLT code in XSLScript and then generate the 100% XSLT stylesheet. Like I do. Occasionaly.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
44
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
45 Can I use my XSLT stylesheets with XSLScript?
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
46
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
47 You can use xsl:import / xsl:include to include .xsl into .xsls and to include .xsls into .xsl.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
48
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
49 What if I like writing <xsl:something?
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
50
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
51 You can write XSLT instructions in plain XSLT, XSLScript preprocessor will not touch them and will pass those constructions as-is.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
52
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
53 Top-level elements should be plain XSLScript.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
54
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
55 What is XSLScript ?
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
56
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
57 XSLScript is just syntax sugar, 1-1 mapping of XSLT. The only exception is that XSLScript has 'else' (which is missing in XSLT). In XSLScript if-else is translated into appropriate xsl:choose-when-otherwise. XSLScript could get more 'non-xslt' semantics if you ask me for something you need.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
58
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
59 OK, but what is XSLScript ?
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
60
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
61 Snippet 1
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
62
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
63 X:stylesheet {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
64
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
65 X:template = "poem" {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
66 <html>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
67 <head>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
68 <title> !{title} </title>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
69 </head>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
70 <body>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
71 !! "title";
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
72 !! "author";
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
73 X:apply-templates "stanza";
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
74 X:apply-templates "date";
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
75 </body>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
76 </html>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
77 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
78
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
79 X:template = "title" { <div align="center"><h1> !{.} </h1></div> }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
80 X:template = "author" { <div align="center"><h2> By <% !{.} %> </h2></div> }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
81 X:template = "stanza" { <p> !! "line"; </p> }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
82
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
83 X:template = "line" {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
84 X:if "position() mod 2 = 0" {&#160;&#160;}
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
85 !{.} <br/>
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
86 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
87
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
88 X:template = "date" { <p><i> !{.} </i></p> }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
89
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
90 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
91
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
92
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
93 Snippet 2
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
94
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
95 X:transform {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
96
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
97 X:template max( list ) {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
98 X:if "$list" {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
99 X:variable first="count($list[1]/LINE)"
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
100 X:variable max-of-rest={ !max( list="$list[position()!=1]" ) }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
101
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
102 X:if "$first &gt; $max-of-rest" {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
103 !{$first}
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
104 } else {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
105 !{$max-of-rest}
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
106 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
107 } else {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
108 0
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
109 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
110 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
111
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
112 X:template ="/" {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
113 Longest speech is <% X:text; !max( list="//SPEECH" ) X:text; %> lines.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
114 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
115
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
116 }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
117
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
118 Syntax overview
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
119
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
120 Rather than drawing the mapping for all of 35 XSLT elements, I'l just provide the mapping rules. If this is not enough, please note that XSLScript distribution contains more than 10 examples of XSLScript code. Those examples are XSLT stylesheets from Michael Kay's XSLT Programming Reference (available for download from Wrox website) rewritten in XSLScript. This results in XSLScript examples being educational and covering almost every XSLT (XSLScript) command.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
121
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
122 Rules
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
123
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
124 There are top-level XSLScript constructions and instructions. (exactly like it is in XSLT). Instructions could be separated from the content with <% and %> ( optional ).
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
125 Instruction has body and header. Body is separated from header with { }
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
126 'match', 'select', 'test' and 'name' are not written (but also could be written in some exotic cases.)
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
127 Symbols ', ", {, are special. Use \{ e t.c. if you need those special symbols in tne content of your stylesheet.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
128 xsl:apply-templates, !! and xsl:number should end with ";"
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
129 Syntax of apply-templates is extremely close to the syntax of call-template.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
130 There are few shortcuts:
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
131 You can use !{xpath-expression} for
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
132 X:value-of select="xpath-expression";
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
133 !! for X:apply-templates
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
134 !foo() for X:call-template name="foo"
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
135 X:var for X:variable
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
136 There is 'comma' shortcut. It exists for X:stylesheet (see date.xsls for example of XSLT-engine independent java binding). And also it exists for X:for-each and X:apply-templates.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
137 X:for-each "//*" , X:sort {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
138 You can not write X:sort as an element, but you should use 'comma' shortcut.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
139 The shortcut for template allows :
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
140 X:template foo( bar="init", baz={markup} ) = "match" mode="some" {
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
141 Download
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
142
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
143 Because SAXON (http://users.iclway.co.uk/mhkay/saxon/) is 100% free, XSLScript distribution contains everything you need to run XSLScript.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
144
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
145 xsls.jar includes not only .class files, but also the source code of XSLScript
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
146
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
147 XSLScript is 100% free.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
148
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
149 Contact
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
150
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
151 Paul Tchistopolskii.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
152 http://www.pault.com
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
153 paul@pault.com
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
154
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
155 Changes in version 0.7
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
156
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
157 (major rewrite)
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
158
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
159 <% %> are optional.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
160 Some verbose forms are dropped ( no X:with-param and call-template ever, e t.c. )
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
161 Parser is less forgiving and some things become not intuitive.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
162 \{ \' " required.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
163 Nice dumping of generated stylesheet.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
164 1-1 line mapping.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
165 Based on SAXON / SAX2, but still should work with XT.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
166 Changes in version 0.51
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
167
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
168 (small bugfixes)
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
169
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
170 ':' was not allowed in #NAME token. ( Allows xmlns:some= )
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
171 Multiple <!-- comments bugfixed.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
172 \{ bugfixed and \' allowed. This is actually not obvious, I should explain how to use \{ and \' ... some day ...
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
173 Few examples from XSL-list are included.
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
174
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
175
c9be645cc395 XSLScript: added some description found.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
176 // Источник: http://pault.com/pault/XSLScript/