AW: [OpenLayers-Users] new OpenLayers.Format.OSM and functiononFeatureSelect(feature)

Arnd Wippermann arnd.wippermann at
Wed Nov 9 15:44:55 EST 2011


You can try to extent the function getTags 
to add the attributes of the node as attributes to the feature.

I don't know, if it's the right way, but it works.



     * Method: getTags
     * Return the tags list attached to a specific DOM element.
     * Parameters:
     * node - {DOMElement} node to parse tags from
     * interesting_tags - {Boolean} whether the return from this function
     *    return a boolean indicating that it has 'interesting tags' --
     *    tags like attribution and source are ignored. (To change the list
     *    of tags, see interestingTagsExclude)
     * Returns:
     * tags - {Object} hash of tags
     * interesting - {Boolean} if interesting_tags is passed, returns
     *     whether there are any interesting tags on this element.

OpenLayers.Format.OSM.prototype.getTags = function(dom_node,
interesting_tags) {
        var tag_list = dom_node.getElementsByTagName("tag");
        var tags = {};
        var interesting = false;
        for (var j = 0; j < tag_list.length; j++) {
            var key = tag_list[j].getAttribute("k");
            tags[key] = tag_list[j].getAttribute("v");
            if (interesting_tags) {
                if (!this.interestingTagsExclude[key]) {
                    interesting = true;

        tags["user"] = dom_node.getAttribute("user");
        tags["timestamp"] = dom_node.getAttribute("timestamp");
        tags["timestamp"] = dom_node.getAttribute("timestamp");
        tags["changeset"] = dom_node.getAttribute("changeset");
        tags["uid"] = dom_node.getAttribute("uid");
        tags["version"] = dom_node.getAttribute("version");

        return interesting_tags ? [tags, interesting] : tags;

-----Ursprüngliche Nachricht-----
Von: openlayers-users-bounces at
[mailto:openlayers-users-bounces at] Im Auftrag von ph ttv
Gesendet: Mittwoch, 9. November 2011 10:09
An: users at
Betreff: [OpenLayers-Users] new OpenLayers.Format.OSM and

Hi all,

I do not know find documentation, simple and illustrated with examples where
I can fill my tooltip, and therefore I expose you my problem below:

Indeed, I try to get various information about a node in order to view them
in a tooltip, using "onFeatureSelect function (feature)."

If my crafts night allowed me to obtain, for example, the name of the node
(with or the id of the node
(feature.osm_id) but :

how to extract the information "user" or even the date of last update

I have run out of ... strategy (s) ...

(The file format is osm: format: new OpenLayers.Format.OSM ())

my last test is here:

and my data file. osm looks like this:

<node id="278511438" lat="47.9356738" lon="-4.0211462" version="2"
timestamp="2011-04-03T12:06:59Z" changeset="7753311" uid="155442"
    <tag k="amenity" v="recycling"/>
    <tag k="recycling:clothes" v="no"/>
    <tag k="recycling:glass" v="yes"/>
    <tag k="recycling:paper" v="yes"/>

Thanks for your help !
Users mailing list
Users at

More information about the Users mailing list