def METHOD_NAME(root, labels, caption):
    """Return the parsed XML data for a table.
    Parameters
    ----------
    root
        The XML book root
    labels : List[str]
        The table column labels.
    caption : str
        The caption of the table to be parsed.
    Returns
    -------
    List[Dict[str, str]]
        The list of dicts generated by parsing the table.
    """
    # Find the table in book_root with caption
    for table in root.iter(f"{BR}table"):
        if table.find(f"{BR}caption").text == caption:
            # Get all the Element data from the table
            return [
                parse_row(labels, row)
                for row in table.find(f"{BR}tbody").iter(f"{BR}tr")
            ]
    raise ValueError(f"No tables found with the caption {caption}")