Subject: Embedded Documentation From: "Dan Machak" <machak@xxxxxxxxxxxx> Date: Thu, 7 Oct 1999 10:36:03 -0700 |
Hello, I'm working on a scheme to embed documentation for global parameters within a stylesheet. The purpose of this to provide additional information that another stylesheet can use in order to automatically generate an HTML form. I've worked out an approach, and would welcome comments on whether this is proper, as well as suggestions on better ways to accomplish the same thing. from the spec... 2.1 XSLT Namespace (paragraph 2) An element from the XSLT namespace may have any attribute not from the XSLT namespace, provided that the expanded name of the attribute has a non-null namespace URI. The presence of such attributes must not change the behavior of XSLT elements and functions defined in this document. Thus, an XSLT processor is always free to ignore such attributes, and must ignore such attributes without giving an error if it does not recognize the namespace URI. Such attributes can provide, for example, unique identifiers, optimization hints, or documentation. So here I would define a new namespace and use a set of attributes to describe the parameter, such as: <xsl:stylesheet xmlns:xsl="http://www.w3.org/XSL/Transform/1.0"> <xsl:param name="fsize" xmlns:pd="" pd:type="font-size">12</xsl:param> <xsl:template match="/"> <test> <xsl:value-of select="$fsize"/> </test> </xsl:template> </xsl:stylesheet> Now would it be proper to bind the 'pd' namespace to another XML file that contains a description of 'font-size'? I could then get a full description of the 'font-size' type and use that to build a proper form element for changing the value of this parameter. I could also have a set of different types defined in different files and have each one bound to a different namespace. One problem with this is that each <xsl:param> has to have the namespace declaration. If I move the namespace declaration up to the <xsl:stylesheet> element, then the result elements end up inheriting this declaration, which I don't want to happen. For example: <xsl:stylesheet xmlns:xsl="http://www.w3.org/XSL/Transform/1.0" xmlns:pd=""> <xsl:param name="fsize" pd:type="font-size">12</xsl:param> <xsl:template match="/"> <test> <xsl:value-of select="$fsize"/> </test> </xsl:template> </xsl:stylesheet> yeilds: <test xmlns:pd="">12</test> Thanks, Dan Machak -- <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> <> Dan Machak <> machak@xxxxxxxxxxxx <> <> MS T27A-1 <> 650-604-2388 (VOICE) <> <> NASA Ames Research Center <> 650-604-3957 (FAX) <> <> Moffett Field, CA 94035-1000 <> <> <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: :IE5 and XML/XSL together, RSuiter | Thread | stupid variable names (was RE: Ques, Mike Brown |
RE: Question about xpath, Kay Michael | Date | RE: Question about xpath, Mike Brown |
Month |