Extensions |
![]() ![]() |
All extensions are in the namespace http://www.gobosoft.com/eiffel/gobo/gexslt/extension.
The following extension attributes are available:
The value of "all" only takes effect on xsl:stylesheet and xsl:transform elements. It is treated as if "yes" was coded. Additionally, if this is the prinicpal stylesheet, then the instructions themselves, when compiled to an expression, have their compiled form displayed. (Only xsl:templates, top-level xsl:variables and xsl:params, and xsl:function definitions are displayed.)
This can produce a lot of output.
This should not be set to "yes" if the function has any side effects (which can only occur if it uses user-written extension functions with side-effects), or if it access context information, such as position(), last() or the context item.
If the function constructs and returns a temporary tree, the same tree will be returned each time. The only consequence of this is if you compare node identities on that tree.
When the output method is "xml" or "xhtml"
(Hm.maybe xhtml should follow the html behaviour)
, this parameter only effects characters that are not representable in the selected encoding. It can take on the value "hex" or "decimal", and it determines whether the character is written out with a decimal character reference, or a hexadecimal character reference (the default).When the output method is "html", then the value may hold two strings, separated by a semicolon. The first string defines how non-ASCII characters within the character encoding will be represented, the values being "native", "entity", "decimal", or "hex". The second string defines how characters outside the encoding will be represented, the values being "entity", "decimal", or "hex". Here "native" means output the character as itself; "entity" means use a defined entity reference (such as "é") if known; "decimal" and "hex" refer to numeric character references. For example "entity;decimal" (the default) means that with encoding="iso-8859-1", characters in the range 160-255 will be represented using standard HTML entity references, while Unicode characters above 255 will be represented as decimal character references.
This parameter has no meaning when the output method is "text". For QName output methods, it's interpretation is up to the programmer of the method, but the possible values are those for the "html" method.
The only user-defined data element provided by the library is collation. This is intended for declaring collation-URI names, but as the only collation supported is the default one at the moment, it is not much use (I use it for binding additional URIs to the default collation, to test the collation-naming mechanism). When a tailorable collation based on the Unicode Collation Algorithm is available, then this will be used to bind URI names to tailored collations.
None are provided at present.
None are provided in the extension namespace.
However, there is an example provided to show Eiffel programmers how to write their own output methods. This is in the namespace http://www.gobosoft.com/eiffel/gobo/gexslt/extension/example, and has a local name of xml. It functions identically to the standard xml method, unless the extension attribute internal-subset (in the same namespace) is supplied. In which case, it's value is used as the text for a DTD internal subset. You must also supply doctype-system for this to work.
None are provided at present.
Copyright © 2004, Colin Adams and others mailto:colin@colina.demon.co.uk http://www.gobosoft.com Last Updated: Wednesday, November 24th, 2004 |
![]() ![]() ![]() ![]() |