Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7829917
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 2, 20262026-06-02T10:58:35+00:00 2026-06-02T10:58:35+00:00

hello and good day dear xml-friends, i am new to xml so do not

  • 0

hello and good day dear xml-friends,

i am new to xml so do not bear with me for the questions… i am currently making some tests with an xslt-processor –

new: see the update i added at this initial-posting – for a solution i i copy the logic for the tag name… -> i added an example at the end of the initial-posting. plz lemme know your idas…thgx

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

    <xsl:output method="text" encoding="UTF-8"/>
    <xsl:template match="/">

        <xsl:for-each select="/osm/node/tag[@k='amenity' and @v='restaurant']">
            <xsl:value-of select="../@id"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="../@lat"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="../@lon"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:for-each select="../tag[@k='name']">
            <xsl:value-of select="@v"/>
            </xsl:for-each>
            <xsl:text>&#x0A;</xsl:text>
        </xsl:for-each>
<xsl:for-each select="../tag[@k='website']">
    <xsl:value-of select="@v"/>
    </xsl:for-each>
    <xsl:text>&#x0A;</xsl:text>
    </xsl:template>
</xsl:stylesheet>

Note: this above mentioned solution does not give any iadditional infos – so the website is NOT shown. what is wrong here!?

here the initial posting starts.

i run this on terminal to parse the xml-document

Question: what i want is to enlarge the xslt-processor with the following tags

wheelchair
website    
addr:country
addr:street
addr:city
addr:housenumber
  • see more details in a example here …:

i run the following code: time xsltproc test3.xslt testdoc3.xml > restaurants-004.csv

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

    <xsl:output method="text" encoding="UTF-8"/>
    <xsl:template match="/">

        <xsl:for-each select="/osm/node/tag[@k='amenity' and @v='restaurant']">
            <xsl:value-of select="../@id"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="../@lat"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="../@lon"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:for-each select="../tag[@k='name']">
            <xsl:value-of select="@v"/>
            </xsl:for-each>
            <xsl:text>&#x0A;</xsl:text>
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>

….on this xml-document – which is called testdoc3.xml

<?xml version='1.0' encoding='UTF-8'?>
<osm version="0.6" generator="Osmosis SNAPSHOT-r26564">
  <node id="185612117" version="5" timestamp="2011-01-08T19:23:43Z" uid="290680" user="wheelmap_visitor" changeset="6906586" lat="48.8037523" lon="9.5248779">
    <tag k="addr:postcode" v="73614"/>
    <tag k="wheelchair" v="yes"/>
    <tag k="website" v="http://www.courage-restaurant.de/"/>
    <tag k="addr:country" v="DE"/>
    <tag k="name" v="Courage"/>
    <tag k="amenity" v="restaurant"/>
    <tag k="addr:street" v="Künkelinstraße"/>
    <tag k="addr:city" v="Schorndorf"/>
    <tag k="addr:housenumber" v="33"/>
  </node>
  <node id="252619189" version="5" timestamp="2011-01-08T19:21:43Z" uid="290680" user="wheelmap_visitor" changeset="6906586" lat="48.8067032" lon="9.5314986">
    <tag k="addr:postcode" v="73614"/>
    <tag k="wheelchair" v="yes"/>
    <tag k="website" v="www.kesselhaus-schorndorf.de"/>
    <tag k="addr:country" v="DE"/>
    <tag k="name" v="Kesselhaus"/>
    <tag k="amenity" v="restaurant"/>
    <tag k="addr:street" v="Arnoldstraße"/>
    <tag k="addr:city" v="Schorndorf"/>
    <tag k="addr:housenumber" v="3"/>
  </node>
  <node id="319597380" version="1" timestamp="2008-12-17T21:13:15Z" changeset="444629" lat="48.8277913" lon="9.5477029">
    <tag k="name" v="Gasthaus zur Linde"/>
    <tag k="amenity" v="restaurant"/>
  </node>
  <node id="319597382" version="1" timestamp="2008-12-17T21:13:15Z" changeset="444629" lat="48.8282523" lon="9.5503109">
    <tag k="name" v="China-Garden"/>
    <tag k="amenity" v="restaurant"/>
  </node>
  <node id="339591124" version="2" timestamp="2011-09-22T17:33:36Z" uid="290680" user="wheelmap_visitor" changeset="9366746" lat="48.7888015" lon="9.5079525">
    <tag k="cuisine" v="italian"/>
    <tag k="wheelchair" v="limited"/>
    <tag k="name" v="Pizzeria da Rocco"/>
    <tag k="amenity" v="restaurant"/>
  </node>
  <node id="392682646" version="3" timestamp="2010-05-11T19:00:20Z" uid="12973" user="MattGPS" changeset="4671372" lat="48.8315734" lon="9.5468864">
    <tag k="name" v="Gasthaus an der Wieslauf"/>
    <tag k="amenity" v="restaurant"/>
  </node>
  <node id="454516720" version="4" timestamp="2010-12-11T15:30:21Z" uid="12982" user="Michael Schulze" changeset="6625571" lat="48.8031264" lon="9.5344371">
    <tag k="addr:postcode" v="73614"/>
    <tag k="cuisine" v="regional"/>
    <tag k="website" v="http://www.deutscheshaus-schorndorf.de/"/>
    <tag k="addr:country" v="DE"/>
    <tag k="name" v="Deutsches Haus"/>
    <tag k="amenity" v="restaurant"/>
    <tag k="addr:street" v="Sonnenscheinstraße"/>
    <tag k="addr:city" v="Schorndorf"/>
    <tag k="addr:housenumber" v="13"/>
  </node>
  <node id="572362430" version="3" timestamp="2010-07-04T06:59:50Z" uid="106522" user="neuntoeter" changeset="5130101" lat="48.807953" lon="9.5379673">
    <tag k="smoking" v="no"/>
    <tag k="name" v="Club Kneipe"/>
    <tag k="amenity" v="restaurant"/>
  </node>
  <node id="613988559" version="1" timestamp="2010-01-15T01:20:03Z" uid="24748" user="mabapla" changeset="3621550" lat="48.7991827" lon="9.551828">
    <tag k="name" v="Gaststätte Schützenhaus"/>
    <tag k="amenity" v="restaurant"/>
  </node>
  <node id="859532091" version="1" timestamp="2010-08-13T23:05:14Z" uid="130472" user="fx99" changeset="5486736" lat="48.8062337" lon="9.5278548">
    <tag k="website" v="http://www.weinstube-buechsenmacher.de/"/>
    <tag k="name" v="Weinstube zum Büchsenmacher"/>
    <tag k="amenity" v="restaurant"/>
    <tag k="addr:housename" v="5"/>
    <tag k="addr:street" v="Höllgasse"/>
  </node>
  <node id="1625565012" version="1" timestamp="2012-02-09T18:00:04Z" uid="131968" user="changchun_1" changeset="10636279" lat="48.8151893" lon="9.5310692">
    <tag k="name" v="Gasthaus Sonne"/>
    <tag k="amenity" v="restaurant"/>
  </node>
</osm>

i get back these results – and yes: i want to enlarge it with the above mentioned tags…

185612117   48.8037523  9.5248779   Courage
252619189   48.8067032  9.5314986   Kesselhaus
319597380   48.8277913  9.5477029   Gasthaus zur Linde
319597382   48.8282523  9.5503109   China-Garden
339591124   48.7888015  9.5079525   Pizzeria da Rocco
392682646   48.8315734  9.5468864   Gasthaus an der Wieslauf
454516720   48.8031264  9.5344371   Deutsches Haus
572362430   48.807953   9.5379673   Club Kneipe
613988559   48.7991827  9.551828    Gaststätte Schützenhaus
631421882   48.8070643  9.5437351   Remstalstuben
672817732   48.8045127  9.5254423   Hanti Alem
677555759   48.8048108  9.5243952   Weinstube St. Urban
677578941   48.8052132  9.5246951   Bei Domenico
677578944   48.8055998  9.5261987   Little Saigon

again the wanted tags that enlarge the xslt-preprocessor are the following ones…

wheelchair
website    
addr:country
addr:street
addr:city
addr:housenumber

thx for any and all help – thx in advance

greetigngs

update– i do it liek so – in copying the logic for the tag name – eg to add the tag for website:

<xsl:for-each select="../tag[@k='website']">
    <xsl:value-of select="@v"/>
    </xsl:for-each>
    <xsl:text>&#x0A;</xsl:text>
</xsl:for-each>

what you say!?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-02T10:58:37+00:00Added an answer on June 2, 2026 at 10:58 am

    You don’t need to for-each over all your <tag /> nodes, just filter for those you need:

    <?xml version="1.0" encoding="utf-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    
        <xsl:output method="text" encoding="utf-8" />
    
        <xsl:template match="/">
            <xsl:apply-templates />
        </xsl:template>
    
        <xsl:template match="osm">
            <xsl:apply-templates />
        </xsl:template>
    
        <xsl:template match="node[tag[@k='amenity' and @v='restaurant']]">
            <xsl:value-of select="./@id"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./@lat"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./@lon"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./tag[@k = 'name']/@v"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./tag[@k = 'wheelchair']/@v"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./tag[@k = 'website']/@v"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./tag[@k = 'addr:country']/@v"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./tag[@k = 'addr:street']/@v"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./tag[@k = 'addr:city']/@v"/>
            <xsl:text>&#x09;</xsl:text>
            <xsl:value-of select="./tag[@k = 'addr:housenumber']/@v"/>
            <xsl:text>&#x0A;</xsl:text>
        </xsl:template>
    
        <!-- all non-restaurant nodes -->
        <xsl:template match="node[tag[@k='amenity' and @v!='restaurant']]" />
    
    </xsl:stylesheet>
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

hello and good day dear xml-friends, i am new to xml so do not
Hello good day I am trying to scrape an xml feed that was given
Hello and good day to you. Situation: For some reason, from time to time
I have this string @[123:peterwateber] hello! good day! I wanna change it to <a
Hello I asked this question to superuser but I did not get a good
I want to represent the list hi, hello, goodbye, good day, howdy (with that
Hello and good day to you. Is this true (is it required by standard)
Hello and good day to you. Following code fragment compiles on cl.exe (15.00.30729.01) and
Hello and good day to all. I have the following code to retrieve from
Hello and good day to all. I have an issue on coding, i have

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.