def _to_DOM(self):
        """
        Dumps object data to a fully traversable DOM representation of the
        object.

        :returns: a ``xml.etree.Element`` object

        """
        last_weather = None
        if (self._last_weather
                and isinstance(self._last_weather, weather.Weather)):
            last_weather = self._last_weather._to_DOM()

        root_node = ET.Element('station')
        station_name_node = ET.SubElement(root_node, 'name')
        station_name_node.text = str(self._name)
        station_id_node = ET.SubElement(root_node, 'station_id')
        station_id_node.text = str(self._station_ID)
        station_type_node = ET.SubElement(root_node, 'station_type')
        station_type_node.text = str(self._station_type)
        status_node = ET.SubElement(root_node, 'status')
        status_node.text = str(self._status)
        coords_node = ET.SubElement(root_node, 'coords')
        lat_node = ET.SubElement(coords_node, 'lat')
        lat_node.text = str(self._lat)
        lon_node = ET.SubElement(coords_node, 'lon')
        lon_node.text = str(self._lon)
        distance_node = ET.SubElement(root_node, 'distance')
        distance_node.text = str(self._distance)
        root_node.append(last_weather)
        return root_node
Dumps object data to a fully traversable DOM representation of the
        object.

        :returns: a ``xml.etree.Element`` object