Returns a dictionary of values extracted from the root of the
        specified XML file. It is assumed that the file is an input/output
        file to be converted into plaintext. As such the file should only
        specify a single version number.

def parse(self, root):
        """Returns a dictionary of values extracted from the root of the
        specified XML file. It is assumed that the file is an input/output
        file to be converted into plaintext. As such the file should only
        specify a single version number."""
        #Use the first element in the versions list since there should only be one.
        v = _get_xml_version(root)[0]
        result = {}

        for child in root:         
            if child.tag in self.versions[v].entries:
                entry = self.versions[v].entries[child.tag]
                #Entry can be either a line or a group. Both objects have a parse
                #method that returns a list of values. In the line's case, the
                #list is the values from that line. For the group, it is a list
                #of dictionaries, a dictionary for each tag name.
                result[child.tag] = entry.parse(child)

        return result