def get_node_information(data_node):
    """
    It parses nodes in GPML xml file.
    :param data_node: XML node of the type "data"
    :return: node id and structured information of the form:
    {
        "database_name": database_name,
        "database_id": database_id,
        "text": text,
        "type": type,
        "groupref": groupref
    }
    """
    # get database and its corresponding unique identifier.
    xref = data_node.find("xref")
    database_name = xref.attrs["database"]
    database_id = xref.attrs["id"]

    # get the graph id.
    id = data_node.attrs.get("graphid", None)
    text = data_node.attrs["textlabel"]
    type = data_node.attrs.get("type", "unknown")
    groupref = data_node.attrs.get("groupref", None)

    # form a document.
    return (id, {
        "database_name": database_name,
        "database_id": database_id,
        "text": text,
        "type": type,
        "groupref": groupref
    })