[OSM-talk-nl] Taglocator

Gertjan Idema g.idema at zonnet.nl
Mon Dec 22 21:42:36 UTC 2014


Dat ziet er goed uit Marc!
Wat ik nog mis zijn klikbare links. Met name natuurlijk voor de website
en wikipedia tags. Dit zou bereikt kunnen worden door een xml bestand te
downloaden van overpass in plaats van een html bestand. Met behulp van
een xslt scriptje kan van het xml bestand weer een html tekst gemaakt
worden, maar dan met links voor de tags waar dat van toepassing is.
Ik heb een voorbeeld xslt scriptje geschreven. Dit scriptje maakt links
voor de volgende tags: wikipedia, website, url, twitter, mdb_id en
dhm_id

Gertjan

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8"
lang="en"/>
  <title>OSM3S Response</title>
</head>
<body>

<h2>POIs</h2>

<xsl:apply-templates/>

</body>
</html>
</xsl:template>

<xsl:template match ="osm/node | osm/way | osm/relation">
    <p>
    <!-- De naam van het object indien aanwezig -->
    <xsl:if test="tag[@k='name']">
           <strong><xsl:value-of
select="tag[@k='name']/@v"/><br/></strong><xsl:text>
</xsl:text>
    </xsl:if>
    <!-- De link naar het object op openstreetmap.org -->
    <a target="_blank"><xsl:attribute
name="href">http://www.openstreetmap.org/browse/<xsl:value-of
select="name()"/>/<xsl:value-of
select="@id"/></xsl:attribute><xsl:value-of select="name()"/><xsl:text>
</xsl:text><xsl:value-of
select="@id"/></a><br/><xsl:text>
</xsl:text>
    <xsl:apply-templates select="tag"/>
    </p>
</xsl:template>

<!-- Behandeling van gewone tags -->
<xsl:template match ="tag">
    <xsl:value-of select="@k"/>: <xsl:value-of
select="@v"/><br/><xsl:text>
</xsl:text> 
</xsl:template>

<!-- wikipedia -->
<xsl:template match ="tag[@k='wikipedia']">
    <xsl:variable name="wiki"><xsl:value-of select="@v"/></xsl:variable>
Wikipedia: <a target="_new"><xsl:attribute
name="href">http://<xsl:value-of select="substring($wiki, 1,
2)"/>.wikipedia.org/wiki/<xsl:value-of select="substring($wiki, 4)"/>
    </xsl:attribute><xsl:value-of
select="@v"/></a><br/><xsl:text>
</xsl:text> 
</xsl:template>

<!-- website -->
<xsl:template match ="tag[@k='website']">
Website: <a target="_new"><xsl:attribute name="href"><xsl:value-of
select="@v"/></xsl:attribute><xsl:value-of
select="@v"/></a><br/><xsl:text>
</xsl:text> 
</xsl:template>

<!-- twitter -->
<xsl:template match ="tag[@k='twitter' or @k='contact:twitter']">
Twitter: <a target="_new"><xsl:attribute
name="href">http://www.twitter.com/<xsl:value-of
select="@v"/></xsl:attribute><xsl:value-of
select="@v"/></a><br/><xsl:text>
</xsl:text> 
</xsl:template>

<!-- url -->
<xsl:template match ="tag[@k='url']">
URL: <a target="_new"><xsl:attribute name="href"><xsl:value-of
select="@v"/></xsl:attribute><xsl:value-of
select="@v"/></a><br/><xsl:text>
</xsl:text> 
</xsl:template>

<!-- molendatabase -->
<xsl:template match ="tag[@k='mdb_id']">
Molendatabase: <a target="_new"><xsl:attribute
name="href">http://www.molendatabase.nl/nederland/molen.php?nummer=<xsl:value-of select="@v"/></xsl:attribute><xsl:value-of select="@v"/></a><br/><xsl:text>
</xsl:text> 
</xsl:template>

<!-- molens.nl -->
<xsl:template match ="tag[@k='dhm_id']">
De hollandsche molen: <a target="_new"><xsl:attribute
name="href">http://www.molens.nl/site/dbase/molen.php?mid=<xsl:value-of
select="@v"/></xsl:attribute><xsl:value-of
select="@v"/></a><br/><xsl:text>
</xsl:text> 
</xsl:template>

<xsl:template match ="text()"/>
</xsl:stylesheet>



On Mon, 2014-12-22 at 15:47 +0100, Marc Zoutendijk wrote:

> Ik maakte er al eerder melding van, maar inmiddels is er al aardig wat
> veranderd en bijgekomen in de taglocator.
> 
> 
> 
> Er zijn nu twee versies:
> 
> 
> De basisversie:
> http://mijndev.openstreetmap.nl/~marczoutendijk/taglocator/
> 
> 
> 
> 
> De versie met namen:
> http://mijndev.openstreetmap.nl/~marczoutendijk/taglocator/tagnames.html
> 
> 
> Vooral handig om te zien wat er in je omgeving nog niet is getagd!
> Zoom in op je woonplaats en kies bv. shop uit het menu.
> Kies de winkels die je wilt zien (waarvan je weet dat ze er zijn) en
> wacht even af om te zien of ze ook op OSM tevoorschijn komen.
> Dat valt vaak nog behoorlijk tegen. Want er zijn nog veel plaatsen
> waar wel alle wegen tot in detail zijn terug te vinden, maar waar is
> de bakker?
> Waar de drogist? Waar de benzinepomp?
> 
> 
> Reacties graag weer hier.
> Maar lees ook de vele commentaren op het forum:
> 
> 
> http://forum.openstreetmap.org/viewtopic.php?id=28807
> 
> 
> Marc.
> 
> 
> 
> _______________________________________________
> Talk-nl mailing list
> Talk-nl at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/talk-nl


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/talk-nl/attachments/20141222/3096dec3/attachment.htm>


More information about the Talk-nl mailing list