'Returns an element in the ``source`` matching the ``xpath``.
The ``source`` can be a path to an XML file, a string containing XML, or
an already parsed XML element. The ``xpath`` specifies which element to
find. See the `introduction` for more details about both the possible
sources and the supported xpath syntax.
The keyword fails if more, or less, than one element matches the
``xpath``. Use `Get Elements` if you want all matching elements to be
returned.
Examples using ``${XML}`` structure from `Example`:
| ${element} = | Get Element | ${XML}     | second |
| ${child} =   | Get Element | ${element} | child  |
`Parse XML` is recommended for parsing XML when the whole structure
is needed. It must be used if there is a need to configure how XML
namespaces are handled.
Many other keywords use this keyword internally, and keywords modifying
XML are typically documented to both to modify the given source and
to return it. Modifying the source does not apply if the source is
given as a string. The XML structure parsed based on the string and
then modified is nevertheless returned.'

def get_element(self, source, xpath='.'):

    elements = self.get_elements(source, xpath)
    if (len(elements) != 1):
        self._raise_wrong_number_of_matches(len(elements), xpath)
    return elements[0]
