Move type inference from parse time to display time.
[kdbg.git] / kdbg / testprogs / xsldoc.xml
blob8ea9f48f2eb92c9c89daade12e4f824aeec1a4ca
1 <?xml version="1.0"?>
2 <!DOCTYPE xsldoc SYSTEM "xsldoc.dtd">
3 <!-- 
4      File : xsldoc.xml     
5      Author: Keith Isdale <k_isdale@tpg.com.au>
6      Description: Xml Data to be processed generate help text and other 
7                   documentation
8      Copyright Reserved Under GPL     
9 -->
10 <xsldoc>
11 <overview>
12 <header>xsldbg help</header>
13 <body>
14 <para>xsldbg is similar to gdb. It has three modes of execution 
15 of stylesheets.
16 <list>
17 <li>Run the whole stylesheet</li>
18 <li>Step to next xsl instruction</li>
19 <li>Continue to next break point is found</li>
20 </list>
21 </para>
22 <para title="xsldbg command line">
23 On systems with readline library available you can use the back/forward
24 keys to navigate the history of entered commands.
25 On all systems the last entered command can be repeated by just pressing
26 the &lt;ENTER&gt; key. 
27 </para>
28 <para title="Legend :">
29 <list><li>TEMPLATENAME : a valid template name</li>
30 <li>FILENAME : a valid URL for a stylesheet</li>
31 <li>LINENO : a valid line number in associated FILENAME</li>
32 <li>NUMBER_OF_FRAMES : a valid line number frames to change position by</li>
33 <li>BREAKPOINT_ID : a valid break point number</li>
34 <li>SPEED: speed to walk through code at, between 0 to 9</li>
35 <li><comment>(Comment)</comment>: a comment about command meaning or usage</li>
36 <li>{ opt1 | opt2 | opt2 .. etc} : Choose one of the opt's</li>
37 <li>XPATH : a xpath selection of node(s)</li>
38 <li>PARAM_ID : a valid parameter number as indicated by showparam command</li>
39 <li>PATH : a path to change working directory to</li>
40 <li>TEXT : free form text <comment>(no restricttions)</comment></li>
41 <li>COMMAND : a valid command for the xsdbg</li>
42 <li>QNAME : a valid variable/parameter name</li>
43 <li>SOURCE : the stylesheet being/tobe executed</li>
44 <li>DATA : the xml data being/tobe processed by the stylesheet
45 </li>
46 </list>
47 </para>
49 <!-- - - - - Start help summary - - - - - -->
50 <para title="Within xsldbg these commands are available:">
51 <list>
53 <li>Help related : help</li>
55 <li>Running related : {<link href="bye">bye</link>|<link href="exit">exit</link>|
56 <link href="quit">quit</link>}, <link href="step">step</link>, 
57 <link href="stepup">stepup</link>, <link href="stepdown">stepdown</link>,
58 <link href="continue">continue</link>, <link href="run">run</link>,
59 <link href="trace">trace</link>
60 </li>
62 <li>Libxslt parameter related :
63 <link href="addparam">addparam</link>,<link href="delparam">delparam</link>,
64 <link href="showparam">showparam</link>
65 </li>
67 <li>Template related : <link href="templates">templates</link>,
68 <link href="where">where</link>, <link href="frame">frame</link>
69 </li>
71 <li>Break point related : <link href="break">break</link>, 
72 <link href="showbreak">showbreak</link>,
73 <link href="delete">delete</link>, <link href="enable">enable</link>
74 </li>
76 <li>Expression viewing(xpath) : <link href="cat">cat</link></li>
77 <li>Node viewing : <link href="ls">ls</link>, <link href="dir">dir</link>, 
78 <link href="du">du</link>, <link href="cat">cat</link>, <link href="pwd">pwd</link></li>
79 <li>Variable viewing : <link href="globals">globals</link>, 
80 <link href="locals">locals</link>, 
81 <link href="cat">cat</link>
82 </li>
84 <li>Node selection : <link href="source">source</link>, 
85 <link href="data">data</link>, 
86 <link href="cd">cd</link>
87 </li>
89 <li>Searching :<link href="search">search</link>
90 </li>
92 <li>Operating system related :
93 <link href="chdir">chdir</link>,
94 <link href="shell">shell</link> 
95 </li>
97 <li>File related :  
98 <link href="validate">validate</link>, <link href="load">load</link>, 
99 <link href="save">save</link>, <link href="write">write</link>, 
100 <link href="free">free</link>
101 </li>
102 </list>
103 </para>
104 <para>nb: At the moment the file related commands as disabled because
105 they are not completed.</para>
106 </body>
108 <footer></footer>
109 </overview>
111 <!-- - - - - -  Help related commands - - - - - - - - -  - -->
112 <cmd name="help" title="Help">
113 <summary>Display help on command or overiew</summary>
114 <usage>
115 <li>help   <comment>(Show overview of product)</comment></li>
116 <li>help &lt;COMMAND&gt; <comment>(Show help about a command)</comment></li>
117 </usage>
118 </cmd>
120 <!-- - - - - - -  Running related commands - - - - - - - - -->
121 <cmd name="bye" title="Bye">
122 <summary>Exit processing stylesheet as soon as possible.</summary>
123 <usage>
124 <li>
125 <text>bye</text>
126 </li>
127 </usage>
128 </cmd>
130 <cmd name="quit" title="Quit">
131 <summary>Exit processing stylesheet as soon as possible.</summary>
132 <para>Shortcut name: q</para>
133 <usage>
134 <li>
135 <text>quit</text>
136 </li>
137 </usage>
138 </cmd>
140 <cmd name="exit" title="Exit">
141 <summary>Exit processing stylesheet as soon as possible.</summary>
142 <usage>
143 <li>
144 <text>exit</text>
145 </li>
146 </usage>
147 </cmd>
149 <cmd name="step" title="Step">
150 <summary>Step until next stylesheet instruction.</summary>
151 <body>
152 <para>Shortcut name: s</para>
153 </body>
154 <usage>
155 <li>
156 <text>step</text>
157 </li>
158 </usage>
159 </cmd>
161 <cmd name="stepup" title="Stepup">
162 <summary>Step up to a older "call frame".  </summary>
163 <body>
164 <para>Shortcut name: up</para>
165 </body>
166     <usage>
167       <li>
168         <text>stepup </text>
169         <comment>(step up one frame)</comment></li>
170       <li>
171         <text>stepup &lt;NUMBER_OF_FRAMES&gt; </text>
172         <comment>(step up specified number of frames)</comment>
173       </li>
174     </usage>
175 </cmd>
177 <cmd name="stepdown" title="Stepdown">
178 <summary>Step down to a newer "call frame".  </summary>
179 <body>
180 <para>Shortcut name: down</para>
181 </body>
182     <usage>
183       <li>
184         <text>stepdown </text>
185         <comment>(step down one frame)</comment>
186       </li>
187       <li>
188         <text>stepdown &lt;NUMBER_OF_FRAMES&gt;</text>
189         <comment>(step down specified number of frames)</comment>
190       </li>
191     </usage>
192 </cmd>
194 <cmd name="continue" title="Continue">
195 <summary>Continue running stylesheet, stopping at any break points found.</summary>
196 <para>Shortcut name: c</para>
197 <usage>
198 <li>
199 <text>continue</text>
200 </li>
201 </usage>
202 </cmd>
204 <cmd name="run" title="Run">
205 <summary>Restart the stylesheet.</summary>
206 <para>Shortcut name: r</para>
207 <usage>
208 <li>
209 <text>run</text>
210 </li>
211 </usage>
212 </cmd>
214 <cmd name="trace" title="Trace">
215 <summary>Trace one execution of the stylesheet</summary>
216 <usage>
217 <li>
218 <text>trace</text>
219 </li>
220 </usage>
221 </cmd>
223 <cmd name="walk" title="Walk">
224 <summary>Walk through code using a range of speeds</summary>
225 <usage>
226 <li>
227 <text>walk &lt;SPEED&gt;</text>
228 <comment>(Use Ctrl-c to stop execution, &lt;SPEED&gt; is a value between 0 and 9. Where 0 means stop, 1 is very fast, 9 is very slow)</comment>
229 </li>
230 </usage>
231 </cmd>
233 <!-- - - - - - - - libxslt Parameter related - - - - -->
234 <cmd name="addparam" title="Addparam">
235 <summary>Add a libxslt parameter</summary>
236 <usage>
237 <li>
238 <text>addparam &lt;QNAME&gt; &lt;XPATH&gt;</text>
239 <comment>(No error checking done on the validity of &lt;QNAME&gt; nor &lt;XPATH&gt;. This is equivalent to providing --param &lt;QNAME&gt; &lt;XPATH&gt; via command line)</comment>
240 </li>
241 </usage>
242 </cmd>
244 <cmd name="delparam" title="Delparam">
245 <summary>Delete a libxslt parameter</summary>
246 <usage>
247 <li>
248 <text>delparam</text>
249 <comment>(Delete all parameters present)</comment>
250 </li>
251 <li>
252 <text>delparam &lt;PARAM_ID&gt;</text>
253 </li>
254 </usage>
255 </cmd>
257 <cmd name="showparam" title="Showparam">
258 <summary>Print the libxslt parameters present</summary>
259 <usage>
260 <li>
261 <text>showparam</text>
262 </li>
263 </usage>
264 </cmd>
266 <!-- - - - - - - Template related commands - - - - - - - -->
267 <cmd name="templates" title="Templates">
268 <summary>Print a list of available templates. Search for a template</summary>
269 <para>Shortcut name: t</para>
270 <usage>
271 <li>
272 <text>templates</text>
273 </li>
274 <li>
275 <text>templates &lt;TEMPLATE&gt;</text>
276 <comment>(Print details of template named &lt;TEMPLATE&gt; if it can be found)</comment>
277 </li>
278 </usage>
279 </cmd>
281 <cmd name="where" title="Where">
282 <summary>Print a trace of templates calls (frame stack) and print the working directory.</summary>
283 <para>Shortcut name: w</para>
284 <usage>
285 <li>
286 <text>where</text>
287 </li>
288 </usage>
289 </cmd>
291 <cmd name="frame" title="Frame">
292 <summary>Print the stack frame at a given depth</summary>
293 <para>Shortcut name: f</para>
294 <usage>
295 <li>
296 <text>frame &lt;FRAME_DEPTH&gt;</text>
297 <comment>(Depth is a number from 0 to the current depth of call stack)</comment>
299 </li>
300 </usage>
301 </cmd>
303 <cmd name="stylesheets" title="Stylesheets">
304 <summary>Print out a list of stylesheets loaded</summary>
305 <body>
306 <para>Shortcut name: style</para>
307 </body>
308 <usage>
309 <li>
310 <text>stylesheets</text>
311 </li>
312 </usage>
313 </cmd>
315 <!-- - - - -  Break point related commands - - - - - - - -->
316 <cmd name="break" title="Break">
317 <summary>Break at a template, at a location in any file loaded, or at the current node. </summary>
318 <body>
319 <para>Shortcut name: b</para>
320 <para>xsldbg will try to guess the complete URL given a 
321 <list>
322 <li>file name without a path specified.</li>
323 <li>a file name in the same directory as the &quot;top&quot; stylesheet loaded</li>
324 <li>a file name relative to the current working directory of xsldbg</li>
325 </list>
326 Ie if you have loaded a stylsheet file of ../en/xsldoc.xsl you can do this
327 </para>
328 <para> break -l xsldoc.xsl 26
329 </para>
330 </body>
331 <usage>
332 <li>
333         <text>break -l &lt;FILENAME&gt; &lt;LINENO&gt;</text>
334 </li>
335 <li>
336         <text>break &lt;TEMPLATENAME&gt;</text>
337         <comment>(To break at named template.)</comment>
338 </li>
339 <li>
340         <text>break *</text>
341         <comment>(To break at any template found.)</comment>
342 </li>
343 <li>
344         <text>break </text>
345         <comment>(To break point at current node. Yes that includes xml data nodes!)</comment>
346 </li>
347 </usage>
348 </cmd>
350 <cmd name="showbreak" title="Showbreak">
351 <summary>To display list of template break points.</summary>
352 <para>Shortcut name: show</para>
353 <usage>
354 <li>
355 <text>showbreak</text>
356 </li>
357 </usage>
358 </cmd>
361 <cmd name="delete" title="Delete">
362 <summary>Delete a template breakpoint</summary>
363 <body>
364 <para>Shortcut name: d</para>
365 </body>
366 <usage>
367 <li>
368         <text>delete</text>
369         <comment>(To delete breakpoint at current node)</comment>
370 </li>
371 <li>
372         <text>delete   &lt;BREAKPOINT_ID&gt;</text>
373         <comment>(To delete breakpoint at specified break point number)</comment>
374 </li>
375 <li>
376         <text>delete -l &lt;FILENAME&gt; &lt;LINENO&gt;</text>
377         <comment>(Delete at specifed file, line number)</comment>
378 </li>
379 <li>
380         <text>delete &lt;TEMMPLATENAME&gt;</text>
381         <comment>(To delete break point at named template.)</comment>
382 </li>
383 <li>
384         <text>delete *</text>
385         <comment>(To delete all break points.)</comment>
386 </li>
387 </usage>
388 </cmd>
390 <cmd name="enable" title="Enable">
391 <summary>Enable or disable a breakpoint (Toggle enable/disable/)</summary>
392 <body>
393 <para>Shortcut name: e</para>
394 </body>
395 <usage>
396 <li>
397         <text>enable</text>
398         <comment>(To enable/disable breakpoint at current node)</comment>
399 </li>
400 <li>
401         <text>enable   &lt;BREAKPOINT_ID&gt;</text>
402         <comment>(To enable/disable breakpoint at specified break point number</comment>
403 </li>
404 <li>
405         <text>enable -l &lt;FILENAME&gt; &lt;LINENO&gt;</text>
406         <comment>(Enable/disable breakpoint at specifed file, line number)</comment>
407 </li>
408 </usage>
409 </cmd>
411 <cmd name="disable" title="Disable">
412 <summary>Disable a breakpoint</summary>
413 <usage>
414 <li>
415         <text>disable</text>
416         <comment>(To disable breakpoint at current node)</comment>
417 </li>
418 <li>
419         <text>disable   &lt;BREAKPOINT_ID&gt;</text>
420         <comment>(To disable breakpoint at specified break point number</comment>
421 </li>
422 <li>
423         <text>disable -l &lt;FILENAME&gt; &lt;LINENO&gt;</text>
424         <comment>(Disable breakpoint at specifed file, line number)</comment>
425 </li>
426 </usage>
427 </cmd>
430 <!-- - - - - - - Node view related commands -  - - - - - - - -->
431 <cmd name="ls" title="Ls">
432 <summary>List nodes in a brief format</summary>
433 <usage>
434 <li>
435 <text>ls</text>
436 </li>
437 </usage>
438 </cmd>
440 <cmd name="dir" title="Dir">
441 <summary>Print list of nodes in a similary way to the dir shell command.</summary>
442 <body>
443 <para></para>
444 </body>
445 <usage>
446 <li>
447 <text>dir</text>
448 </li>
449 </usage>
450 </cmd>
452 <cmd name="du" title="Du">
453 <summary>Print a summary of child nodes in a tree format.</summary>
454 <usage>
455 <li>
456 <text>du</text>
457 </li>
458 </usage>
459 </cmd>
461 <cmd name="cat" title="Cat">
462 <summary>Print the result of a xpath expression on relative current node.</summary>
463 <body>
464 <para>Usage : cat &lt;XPATH&gt;</para>
465 <para>Usage : cat $&lt;QNAME&gt;       (To view a varaible or parameter)</para>
466 </body>
467 </cmd>
469 <cmd name="pwd" title="Pwd">
470 <summary>Print the current working directory.</summary>
471 <usage>
472 <li>
473 <text>pwd</text>
474 </li>
475 </usage>
476 </cmd>
478 <cmd name="base" title="Base">
479 <summary>Print the base for this node</summary>
480 <usage>
481 <li>
482 <text>base</text>
483 </li>
484 </usage>
485 </cmd>
487 <cmd name="dump" title="Dump">
488 <summary>Dump the gory details of this node</summary>
489 <usage>
490 <li>
491 <text>dump</text>
492 </li>
493 </usage>
494 </cmd>
496 <!-- - - - - - - Variable related commands - - - - - - - - - -->
497 <cmd name="globals" title="Globals">
498 <summary>Print a list of global stylesheet variables or parameters. Print the value of a global variable</summary>
499 <usage>
500 <li>
501         <text>globals</text>
502         <comment>(Print list of all globaly available variables)</comment>
503 </li>
504 <li>
505         <text>globals &lt;QNAME&gt;</text>
506         <comment>(Print the value of variable specified)</comment>
507 </li>
508 </usage>
509 </cmd>
511 <cmd name="locals" title="Locals">
512 <summary>Print a list of local stylesheet variables or parameters. Print the value of a local variable</summary>
513 <usage>
514 <li>
515         <text>locals</text>
516         <comment>(Print list of all locally available variables)</comment>
517 </li>
518 <li>
519         <text>locals &lt;QNAME&gt;</text>
520         <comment>(Print the value of variable specified)</comment>
521 </li>
522 </usage>
523 </cmd>
525 <!-- - - - - - - Node selection related commands - - - - - - - -->
526 <cmd name="source" title="Source">
527 <summary>Switch to displaying the current node in stylesheet. Or change stylesheet used</summary>
528 <usage>
529 <li>
530 <text>source</text>
531 <comment>(Switch to the current node in stylesheet.)</comment>
532 </li>
533 <li>
534 <text>source &lt;SOURCE&gt;</text>
535 <comment>(To change to a new source file.  A leading '~' is replaced by the $HOME environment variable value. May need to use run command to execute it)</comment>
536 </li>
537 </usage>
538 </cmd>
540 <cmd name="data" title="Data">
541 <summary>Switch to displaying the current node in xml data. Or change xml data used</summary>
542 <usage>
543 <li>
544 <text>data</text>
545 <comment>(Switch to the current document node.)</comment>
546 </li>
547 <li>
548 <text>data &lt;DATA&gt;</text>
549 <comment>(To change to a new xml data file.  A leading '~' is replaced by the $HOME environment variable value. May need to use run command to process it)</comment>
550 </li>
551 </usage>
552 </cmd>
554 <cmd name="cd" title="Cd">
555 <summary>Change to the path specified by a xpath.</summary>
556 <usage>
557 <li>
558         <text>cd &lt;XPATH&gt;</text>
559 </li>
560 <li>
561         <text>cd -t&lt;TEMPLATENAME&gt;</text>
562         <comment>(To changes current SOURCE node to a be xsl template with name &lt;NAME&gt;, but does execute source command)</comment>
563 </li>
564 <li>
565         <text>cd -s&lt;XPATH&gt;</text>
566         <comment>(An absolute xPath to node within stylesheet)</comment>
567 </li>
568 <li>
569         <text>cd   &lt;SHORTCUT&gt; &lt;XPATH&gt;</text>
570 </li>
571 <li>
572         <text>     Where SHORTCUT can be either</text>
573 </li>
574 <li>
575 <list>
576 <li><text>&lt;&lt;         = preceding-sibling::node()</text>
577 </li>
578 <li><text>&gt;&gt;         = following-sibling::node()</text>
579 </li>
580 <li><text>&lt;-         = ancestor::node()</text>
581 </li>
582 <li><text>-&gt;         = decendant::node()</text>
583 </li>
584 </list>
585 </li>
586 </usage>
587 </cmd>
590 <!-- - - - - - File related commands - - - - - -  -->
591 <cmd name="validate" title="Validate">
592 <summary>Validate the output file generated by stylesheet    (Disabled)</summary>
593 </cmd>
595 <cmd name="load" title="Load">
596 <summary>Reload stylesheet and data file(s)      (Disabled see run)</summary>
597 </cmd>
599 <cmd name="save" title="Save">
600 <summary>Save the generated data file       (Disabled)</summary>
601 </cmd>
603 <cmd name="write" title="Write">
604 <summary>To be completed</summary>
605 </cmd>
607 <cmd name="free" title="Free">
608 <summary>Free stylesheet and data        (Disabled see run)</summary>
609 </cmd>
611 <!-- - - - - - - Searching related - - - - - -->
612 <cmd name="search" title="Search">
613 <summary>Search a database of all information gathered from styleets loaded</summary>
614 <body>
615 <para>When the search command is issued a file (search.data) will be created in the current directory. You can then process this file with your own stylessheet to present data in a other ways than displayed by default.
616 </para>
617 <para>Depending on the amount of data collected it might take a while to compled this command.
618 </para>
619 <para>At the moment breakpoints are not being sorted properly. Which is being looked at.
620 </para>
621 </body>
622 <usage>
623 <li>
624 <text>search &lt;XPATH&gt;</text><comment>(See what xpath can be used see search.dtd)</comment>
625 </li>
626 <li>
627 <text>search -sort &lt;XPATH&gt;</text><comment>(Enable tell search.xsl to sort the result before outputing it)</comment>
628 </li>
629 </usage>
630 </cmd>
632 <!-- - - - - Operating system related - - - - -->
633 <cmd name="chdir" title="Chdir">
634 <summary>Change the working directory</summary>
635 <usage>
636 <li>
637 <text>chdir &lt;PATH&gt;</text>
638 <comment>(A relative or absolute path for operating system)</comment>
639 </li>
640 </usage>
641 </cmd>
643 <cmd name="shell" title="Shell">
644 <summary>Execute shell command</summary>
645 <usage>
646 <li>
647 <text>shell &lt;TEXT&gt;</text>
648 <comment>(&lt;TEXT&gt; is the text to be passed to operating system for execution)</comment>
649 </li>
650 </usage>
651 </cmd>
653 </xsldoc>
656 <!-- initialization code for xemacs -->
657 <!--
658 Local Variables:
659 mode: sgml
660 sgml-minimize-attributes:nil
661 sgml-general-insert-case:lower
662 sgml-indent-step:0
663 sgml-indent-data:nil
664 End: