This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
How to output a xmlns:prefix attribute (special case)
- To: XSL-list <XSL-List at lists dot mulberrytech dot com>
- Subject: [xsl] How to output a xmlns:prefix attribute (special case)
- From: "Richard Gruet" <rgruet at intraware dot com>
- Date: Wed, 11 Jul 2001 17:32:52 -0700
- Organization: Intraware, Inc
- Reply-To: xsl-list at lists dot mulberrytech dot com
Hi all,
I'm trying to generate a XML-Schema from a definition in a custom
language of my own (itself validated by an XML-Schema), using an XSLT
stylesheet.
Because my language allows some kind of "imports" that will be
translated to xsd:import elements + xmlns:prefix attributes in the
generated schema, I need to add the xmlns:prefix declarations to the
output xsd:schema element.
Unfortunately, as I am generating xml (not mere text), the XSLT
processor (Saxon 6.4, but it is probably a general rule) prevents me to
do this, by forbidding to add this particular attribute. Instead, it
detects output elements or attributes whose names are qualified with a
prefix, and inserts automatically the corresponding xmlns:prefix
declarations in the output top element.
But it does not work for me, since the references to the qualified types
occur only as *values* of an attribute, not directly as element or
attribute names, e.g in:
<xsd:complexType name="prefix:typeName">
..in that case, the XSLT processor does not know that it should include
a xmlns:prefix declaration in my top xsd:schema element, and anyway it
would not know where to take the URI for that namespace (I won't declare
*every* possible namespace on the planet in my stylesheet ;-).
So I'm stuck: the processor prevents me to put explicitely xmlns
declarations, but OTOH does not do it by itself, so what to do ?
Should I switch to text output mode to bypass the controls ? Is there a
clevier way to proceed ?
Thanks for any advice,
Richard Gruet
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list