Subject: RE: [xsl] How to use an XML-based LUT with XSLT? From: Taras Tielkes <taras@xxxxxxx> Date: Thu, 27 Sep 2001 17:19:20 +0200 |
Hi Xavier, As far as I understand, your XML source, and the XML containing the mapping table are separate files. XSLT has a function to access external XML documents, it's called "document()". You could adapt your value-of element to something like: <xsl:value-of select="document('errors.xml')/Table/Message[@Code=ActualErrorCode]"/> Even better would be to cache the errors in hashmap using keys.(Note that the XSL processor is not required to use a hashmap, although it's likely) <xsl:key name="translate-error" match="document('errors.xml')/Table/Message" use="@code"/> Now you can use something like: <xsl:value-of select="key('errors', ActualErrorCode)"/> Regards, // tt > -----Original Message----- > From: Xavier Defrang [mailto:xavier@xxxxxxxxxxxx] > Sent: Thursday, September 27, 2001 4:50 PM > To: Mulburrytech's XSL Mailing List > Subject: [xsl] How to use an XML-based LUT with XSLT? > > > > Hello folks, > > I've written a XSL document to transform XML into XHTML (yes, > that's a big > surprize!). The document contains some error codes and I'd like to > transform these numerical codes into an actual human-readable > message so I > built a small XML document as follow : > > <?xml version="1.0" standalone="yes"?> > <Table> > <Message Code="...">User-friendly error message</Message> > ... > </Table> > > Now I'd like to change my XSLT so I could look-up into the Table to > substitute numerical error codes by text messages with > something like : > > <xsl:value-of select="/Table/Message[@Code=ActualErrorCode]"/> > > Now the question is how do I "link" this table to my input > DOM so I can > reach the Message elements from within my XSLT? Is there any > possibility > to that with plain XSLT? (I don't want to use any engine-dependant > extensions) > > Maybe should I make a <xsl:choose>-based template matching > the elements > containing these codes? > > Thanks in advance, > > Xavier Defrang > Perceval R&D Team > xavier@xxxxxxxxxxxx > > ------------------------------------------------- > Perceval Technologies SA/NV Tel: +32-2-6409194 > Rue Tenbosch, 9 Fax: +32-2-6403154 > B-1000 Brussels http://www.perceval.net > BELGIUM info@xxxxxxxxxxxx > ------------------------------------------------- > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] How to use an XML-based L, Chris Bayes | Thread | RE: [xsl] How to use an XML-based L, Taras Tielkes |
[xsl] Does the XML pseudo-namespace, Eric van der Vlist | Date | RE: [xsl] How to use an XML-based L, Taras Tielkes |
Month |