As with buddies, sites could contain characters which are not valid in Ids. Also, it is very possible to have duplicate site names.
This uses an XSL generated id to prevent any issues. Signed-off-by: Martin Long <mar...@longhome.co.uk> --- xslt/uddf-export.xslt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/xslt/uddf-export.xslt b/xslt/uddf-export.xslt index 7f67d81..a5e2266 100644 --- a/xslt/uddf-export.xslt +++ b/xslt/uddf-export.xslt @@ -194,12 +194,12 @@ </xsl:choose> </xsl:template> - <xsl:key name="location" match="location" use="."/> + <xsl:key name="location" match="location" use="./@gps"/> <xsl:template match="location"> - <xsl:if test="generate-id() = generate-id(key('location', normalize-space(.)))"> + <xsl:if test="generate-id() = generate-id(key('location', normalize-space(./@gps)))"> <site> <xsl:attribute name="id"> - <xsl:value-of select="."/> + <xsl:value-of select="generate-id()"/> </xsl:attribute> <name> <xsl:value-of select="."/> @@ -253,13 +253,13 @@ </link> </xsl:for-each> </xsl:for-each> - <xsl:if test="location != ''"> + <xsl:for-each select="location"> <link> <xsl:attribute name="ref"> - <xsl:value-of select="location"/> + <xsl:value-of select="generate-id(key('location',normalize-space(./@gps)))"/> </xsl:attribute> </link> - </xsl:if> + </xsl:for-each> <xsl:variable name="trimmedweightlist"> <xsl:for-each select="weightsystem"> <weight> -- 1.9.1 _______________________________________________ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface