def _get_xml(self, close_tag=True):
        """
        generate the xml string representation.

        :param close_tag: should the '</provenance_step>' tag be added or not.
        :type close_tag: bool

        :return: the xml
        :rtype: str
        """

        provenance_step_element = Element('provenance_step', {
            'timestamp': self.time.isoformat()
        })
        title = SubElement(provenance_step_element, 'title')
        title.text = self.title
        description = SubElement(provenance_step_element, 'description')
        description.text = self.description

        xml_string = tostring(provenance_step_element, 'unicode')

        if close_tag:
            return xml_string
        else:
            # Remove the close tag
            return xml_string[:-len('</provenance_step>')]
generate the xml string representation.

        :param close_tag: should the '</provenance_step>' tag be added or not.
        :type close_tag: bool

        :return: the xml
        :rtype: str