xsl-list
[Top] [All Lists]

Re: [xsl] Generating Unique Identifier

2011-10-22 14:35:51
At 2011-10-22 21:26 +0200, Lighton Phiri wrote:
I have two different files that I am using to generate html files. One
of the html files references the other html file using an anchor ( <a
name="uniqueid" /> )

I am looking for a way to generate the unique name. I cannot use
generate-id() as the nodes are located in different files.

I don't see why you cannot use generate-id(). During a transformation the identity of all nodes of all trees is unique. You simply reach into the tree with your target node and get its generated identifier.

You say you are using XSLT 1.0 (it is easier in XSLT 2.0), so you can do:

  <xsl:for-each select="$other-file">
    ... make your way to the element ...
    <xsl:value-of select="generate-id()"/>
  </xsl:for-each>

I have
tried normalising the content, but I end up with duplicates when I try
to replace spaces and other special characters. Any ideas on how best
I can sort this out?

File 1
<file>
<keyword>the-word_</keyword>
<keyword>-the word</keyword>
<keyword>!the&word</keyword>
<resources>
  <resource>xxxxx</resource>
  <resource>xxxxx</resource>
</resources>
</file>


File 2
<file>
<resource>
  <id>xxxxx</id>
  <title>xxxxx</title>
  <description>xxxxx</
description>
  <keywords/>
    <key>the-word</key>
    <key>-the-word</key>
    <key>!the&word</key>
  </keyword>
</resource>
</file>

Desired output


<html>
:
<body>
File2 link is <a name="UNIQUEID" />
</body>
:
</html>

Which is your input file and which is the referenced file? How is the referencing done in order to look up your target match?

. . . . . . . . . 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(_at_)CraneSoftwrights(_dot_)com
Google+ profile: https://plus.google.com/116832879756988317389/about
Legal business disclaimers:    http://www.CraneSoftwrights.com/legal


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>