"; foreach($data["features"] as $feature) { switch($feature["geometry"]["type"]) { case "Point": poiToXML($feature); break; case "LineString": wayToXML($feature); break; case "Polygon": polygonToXML($feature); break; } } echo ""; } function poiToXML(&$poi) { $tag = isset($poi["properties"]["annotation"]) && $poi["properties"]["annotation"]=="yes"? "annotation" : "poi"; $x = $poi["geometry"]["coordinates"][0]; $y = $poi["geometry"]["coordinates"][1]; echo "<$tag x='$x' y='$y'>"; foreach($poi["properties"] as $k=>$v) { if($k!="annotation") echo ""; } echo ""; } function wayToXML(&$way) { echo ""; foreach($way["geometry"]["coordinates"] as $p) { $x = $p[0]; $y = $p[1]; echo ""; } foreach($way["properties"] as $k=>$v) echo ""; echo ""; } function polygonToXML(&$way) { echo ""; foreach($way["geometry"]["coordinates"][0] as $p) { $x = $p[0]; $y = $p[1]; echo ""; } foreach($way["properties"] as $k=>$v) echo ""; echo ""; } ?>