- doc = XML::Document.new
- doc.encoding = 'UTF-8'
- root = XML::Node.new 'osm'
- root['version'] = '0.4'
- root['generator'] = 'OpenStreetMap server'
- doc.root = root
+ doc = get_xml_doc
+
+ # get ways
+ # find which ways are needed
+ segment_ids = segments.collect {|segment| segment.id }
+ ways = Array.new
+ if segment_ids.length > 0
+ way_segments = WaySegment.find_all_by_segment_id(segment_ids)
+ way_ids = way_segments.collect {|way_segment| way_segment.id }
+
+ ways = Way.find(way_ids)
+ end
+
+ nodes.each do |node|
+ doc.root << node.to_xml_node()
+ end
+
+ segments.each do |segment|
+ doc.root << segment.to_xml_node()
+ end
+
+ ways.each do |way|
+ doc.root << way.to_xml_node()
+ end