get value of property_path from a json object, e.g. person.father.name
        * invalid path return None
        * valid path (the -1 on path is an object), use default

def json_get(json_object, property_path, default=None):
    """
        get value of property_path from a json object, e.g. person.father.name
        * invalid path return None
        * valid path (the -1 on path is an object), use default
    """
    temp = json_object
    for field in property_path[:-1]:
        if not isinstance(temp, dict):
            return None
        temp = temp.get(field, {})
    if not isinstance(temp, dict):
        return None
    return temp.get(property_path[-1], default)