Schema

class schema.Schema

Bases: object

add_property(property_name, property)
convert_schema_excel_to_json(source_path, dest_path)
Parameters:
  • source_path (str) – The Excel schema file path

  • dest_path (str) – The converted Json file store path

generate_from_template(file, save_dir)

Generate schema from template (the element_description.xlsx file in the template folder) :param file: path to the template :type file: string :param save_dir: directory to save the schema files :type save_dir: string :return: :rtype:

generate_validate_data(filename, data_dict)
static get_default_schema(version, metadata_file)
get_schema(metadata_file, version='2.0.0', print_schema=True, required_only=True, name_only=True)

get a schema via metadata_file/metadate file name

Parameters:
  • metadata_file (str) – the metadata file name

  • version (str) – “2.0.0”|”1.2.3”

Returns:

dict

load_data(path)

Load in a metadata :param path: path to the metadata file :type path: string :return: data instance :rtype: dict or list

save(save_dir, schema, metadata_file)

Save schema :param save_dir: path to the destination directory :type save_dir: string :param schema: metadata schema :type schema: dict :param metadata_file: metadata metadata_file (filename) :type metadata_file: string :return: :rtype:

set_schema(schema)
class schema.Validator

Bases: object

validate(data, metadata_file, version)

Validate data instance :param data: Target data :type data: dict or list :param metadata_file: metadata filename :type metadata_file: string :param version: dataset version :type version: string :return: :rtype:

validate_dataset(dataset)
schema.convert_version_format(version)

Convert version format :param version: dataset/template version :type version: string :return: version in the converted format :rtype: