Skip to content

Action

vds_schema_latest()

Retrieves the latest query schema version and returns it.

Returns:

Type Description

the query schema version

Source code in ckanext/versioned_datastore/logic/schema/action.py
15
16
17
18
19
20
21
22
@action(schema.vds_schema_latest(), helptext.vds_schema_latest, get=True)
def vds_schema_latest():
    """
    Retrieves the latest query schema version and returns it.

    :returns: the query schema version
    """
    return get_latest_query_version()

vds_schema_validate(query, query_version=None)

Validates the given query against the given query schema version. If the query version is not provided, the latest query schema version is used.

Parameters:

Name Type Description Default
query dict

the query to validate

required
query_version Optional[str]

the query schema version to validate against (default is None which means use the latest query schema version)

None

Returns:

Type Description

True if the schema is valid, otherwise raises a CKAN ValidationError

Source code in ckanext/versioned_datastore/logic/schema/action.py
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
@action(schema.vds_schema_validate(), helptext.vds_schema_validate, get=True)
def vds_schema_validate(query: dict, query_version: Optional[str] = None):
    """
    Validates the given query against the given query schema version. If the query
    version is not provided, the latest query schema version is used.

    :param query: the query to validate
    :param query_version: the query schema version to validate against (default is None
        which means use the latest query schema version)
    :returns: True if the schema is valid, otherwise raises a CKAN ValidationError
    """
    if query_version is None:
        query_version = get_latest_query_version()
    try:
        validate_query(query, query_version)
    except ValidationError as e:
        raise toolkit.ValidationError(e.message)
    return True