xml editor

Supported platforms

Compatible with Windows7 & Mac OS X Snow Leopard

Ready for data server software
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Hash / Translation Tables (the right way)


Subject: Re: [xsl] Hash / Translation Tables (the right way)
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Sun, 25 Sep 2011 18:40:25 -0400

At 2011-09-25 23:35 +0100, Michael Kay wrote:

Another approach is to have a document months.xml

<months>
<month name='January' abbr='jan' num='01'/>
<month name='February' abbr='feb' num='02'/>
  ...
</months>

then

document('months.xml')/months/month[@abbr=lower-case($mon)]/@num

(or instead of a separate document you can put the lookup table in a global variable in the stylesheet; but with XSLT 1.0 this relies on the node-set() function.)

It can also be done in XSLT 1.0 without extensions by putting the structure in a namespace at the top level of the stylesheet:


   <hank:months>
     <month name='January' abbr='jan' num='01'/>
     <month name='February' abbr='feb' num='02'/>
     ...
   </hank:months>

... and using the document() function:

document('')/*/hank:months/month[@abbr=lower-case($mon)]/@num

I hope this helps.

. . . . . . . . . . . Ken

--
Contact us for world-wide XML consulting and instructor-led training
Crane Softwrights Ltd.            http://www.CraneSoftwrights.com/s/
G. Ken Holman                   mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Google+ profile: https://plus.google.com/116832879756988317389/about
Legal business disclaimers:    http://www.CraneSoftwrights.com/legal


Current Thread
Keywords
XML Editor | XML Author | WYSIWYG Editors | Schema Editor | XSD Documentation | XSL/XSLT Editor | XQuery | XML Databases | SVN Client
© 2002-2011 SyncRO Soft Ltd. All rights reserved. | Sitemap | Privacy Policy | This website was created & generated with <oXygen/>®XML Editor