def METHOD_NAME(apiurl, path, query=None, data=None):
    """
    Send a PUT request to OBS.
    :param apiurl: OBS apiurl.
    :type  apiurl: str
    :param path: URL path segments.
    :type  path: list(str)
    :param query: URL query values.
    :type  query: dict(str, str)
    :returns: Parsed XML root.
    :rtype:   xml.etree.ElementTree.Element
    """
    from osc import connection as osc_connection
    from osc import core as osc_core
    assert apiurl
    assert path
    if not isinstance(path, (list, tuple)):
        raise TypeError("Argument `path` expects a list of strings")
    url = osc_core.makeurl(apiurl, path, query)
    with osc_connection.http_PUT(url, data=data) as f:
        root = osc_core.ET.parse(f).getroot()
    return root