Hello,
that looks great. However, I am just wondering if it be possible to use a
text file for the names instead XML assuming that each line (separated by
the CR/LF) is one reference?
Karl
--- Ursprüngliche Nachricht ---
Von: "Joris Gillis" <roac(_at_)pandora(_dot_)be>
An: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Betreff: Re: [xsl] Identifying place names in text...
Datum: Thu, 21 Jul 2005 16:12:39 +0200
Hi,
Tempore 15:56:22, die 07/21/2005 AD, hinc in
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com scripsit Karl Koch
<TheRanger(_at_)gmx(_dot_)net>:
Can I use XSLT to search for place names in the title of all the books?
I
would like to use a wordlist of geographical place names (which I
already
have). This would contain coutry and city names. The stylesheet would
match
occurances of these words in the <title> XML element. The output here
would
be a list of all books which have references about locations in the
title.
You can map references to the titles with a stylesheet like this:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="xml" indent="yes"/>
<xsl:param name="locations"
select="document('locations.xml')/places/city"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="title">
<xsl:copy-of select="."/>
<xsl:for-each select="$locations[contains(current(),.)]">
<reference><xsl:value-of select="."/></reference>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
locations.xml would contain:
<places>
<city>London</city>
<city>Paris</city>
</places>
regards,
--
Joris Gillis (http://users.telenet.be/root-jg/me.html)
"Î? αλήθεια και Ï?ο λάδι Ï?άνÏ?α βγαίνοÏ?ν αÏ?Ï?
Ï?άνÏ?"
--~------------------------------------------------------------------
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>
--~--
--
GMX DSL = Maximale Leistung zum minimalen Preis!
2000 MB nur 2,99, Flatrate ab 4,99 Euro/Monat: http://www.gmx.net/de/go/dsl
--~------------------------------------------------------------------
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>
--~--