spinedb_api.import_functions

Functions for importing data into a Spine database in a standard format. This functionality is equivalent to the one provided by DatabaseMapping.add_update_item(), but the syntax is a little more compact.

Functions

import_data(→ tuple[int, list[str]])

Imports data into a Spine database using a standard format.

get_data_for_import(, entity_classes, entities, ...[, ...])

Yields data to import into a Spine DB.

import_superclass_subclasses(→ tuple[int, list[str]])

Imports superclass_subclasses into a Spine database using a standard format.

import_entity_classes(→ tuple[int, list[str]])

Imports entity classes into a Spine database using a standard format.

import_entities(→ tuple[int, list[str]])

Imports entities into a Spine database using a standard format.

import_entity_alternatives(→ tuple[int, list[str]])

Imports entity alternatives into a Spine database using a standard format.

import_entity_groups(→ tuple[int, list[str]])

Imports entity groups into a Spine database using a standard format.

import_parameter_definitions(→ tuple[int, list[str]])

Imports parameter definitions into a Spine database using a standard format.

import_parameter_types(→ tuple[int, list[str]])

Imports parameter types into a Spine database using a standard format.

import_parameter_values(→ tuple[int, list[str]])

Imports parameter values into a Spine database using a standard format.

import_alternatives(→ tuple[int, list[str]])

Imports alternatives into a Spine database using a standard format.

import_scenarios(→ tuple[int, list[str]])

Imports scenarios into a Spine database using a standard format.

import_display_modes(→ tuple[int, list[str]])

Imports display modes into a Spine database using a standard format.

import_entity_class_display_modes(→ tuple[int, list[str]])

Imports entity class display modes into a Spine database using a standard format.

import_scenario_alternatives(→ tuple[int, list[str]])

Imports scenario alternatives into a Spine database using a standard format.

import_parameter_value_lists(→ tuple[int, list[str]])

Imports parameter value lists into a Spine database using a standard format.

import_parameter_groups(→ tuple[int, list[str]])

Imports parameter groups into a Spine database using a standard format.

import_metadata(→ tuple[int, list[str]])

Imports metadata into a Spine database using a standard format.

import_entity_metadata(→ tuple[int, list[str]])

Imports metadata into a Spine database using a standard format.

import_parameter_value_metadata(→ tuple[int, list[str]])

Imports metadata into a Spine database using a standard format.

Module Contents

spinedb_api.import_functions.import_data(db_map: spinedb_api.DatabaseMapping, unparse_value: UnparseCallable = to_database, on_conflict: spinedb_api.parameter_value.ConflictResolution = 'merge', **kwargs) tuple[int, list[str]][source]

Imports data into a Spine database using a standard format.

Example:

entity_classes = [
    ('example_class', ()), ('other_class', ()), ('multi_d_class', ('example_class', 'other_class'))
]
alternatives = [('example_alternative', 'An example')]
scenarios = [('example_scenario', 'An example')]
scenario_alternatives = [
    ('example_scenario', 'example_alternative'), ('example_scenario', 'Base', 'example_alternative')
]
parameter_value_lists = [("example_list", "value1"), ("example_list", "value2")]
parameter_definitions = [('example_class', 'example_parameter'), ('multi_d_class', 'other_parameter')]
entities = [
    ('example_class', 'example_entity'),
    ('example_class', 'example_group'),
    ('example_class', 'example_member'),
    ('other_class', 'other_entity'),
    ('multi_d_class', ('example_entity', 'other_entity')),
]
entity_groups = [
    ('example_class', 'example_group', 'example_member'),
    ('example_class', 'example_group', 'example_entity'),
]
parameter_values = [
    ('example_object_class', 'example_entity', 'example_parameter', 3.14),
    ('multi_d_class', ('example_entity', 'other_entity'), 'rel_parameter', 2.718),
]
entity_alternatives = [
    ('example_class', 'example_entity', "example_alternative", True),
    ('example_class', 'example_entity', "example_alternative", False),
]
import_data(
    db_map,
    entity_classes=entity_classes,
    alternatives=alternatives,
    scenarios=scenarios,
    scenario_alternatives=scenario_alternatives,
    parameter_value_lists=parameter_value_lists,
    parameter_definitions=parameter_definitions,
    entities=entities,
    entity_groups=entity_groups,
    parameter_values=parameter_values,
    entity_alternatives=entity_alternatives,
)
Parameters:
  • db_map – database mapping

  • unparse_value – function to call to parse parameter values

  • on_conflict – Conflict resolution strategy for parameter_value.fix_conflict()

  • **kwargs – data to import

Returns:

number of items imported and list of errors

spinedb_api.import_functions.get_data_for_import(db_map: spinedb_api.DatabaseMapping, all_errors: list[str], unparse_value: UnparseCallable = to_database, fix_value_conflict: spinedb_api.parameter_value.ConflictResolutionCallable = get_conflict_fixer('merge'), entity_classes: collections.abc.Iterable[EntityClass] = (), entities: collections.abc.Iterable[Entity] = (), entity_groups: collections.abc.Iterable[EntityGroup] = (), entity_alternatives: collections.abc.Iterable[EntityAlternative] = (), parameter_definitions: collections.abc.Iterable[ParameterDefinition] = (), parameter_types: collections.abc.Iterable[ParameterType] = (), parameter_values: collections.abc.Iterable[ParameterValue] = (), parameter_value_lists: collections.abc.Iterable[ParameterValueList] = (), parameter_groups: collections.abc.Iterable[ParameterGroup] = (), alternatives: collections.abc.Iterable[Alternative] = (), scenarios: collections.abc.Iterable[Scenario] = (), scenario_alternatives: collections.abc.Iterable[ScenarioAlternative] = (), metadata: collections.abc.Iterable[Metadata] = (), entity_metadata: collections.abc.Iterable[EntityMetadata] = (), parameter_value_metadata: collections.abc.Iterable[ParameterValueMetadata] = (), superclass_subclasses: collections.abc.Iterable[SuperclassSubclass] = (), display_modes: collections.abc.Iterable[DisplayMode] = (), entity_class_display_modes: collections.abc.Iterable[EntityClassDisplayMode] = (), object_classes=(), relationship_classes=(), object_parameters=(), relationship_parameters=(), objects=(), relationships=(), object_groups=(), object_parameter_values=(), relationship_parameter_values=(), object_metadata=(), relationship_metadata=(), object_parameter_value_metadata=(), relationship_parameter_value_metadata=(), tools=(), features=(), tool_features=(), tool_feature_methods=()) collections.abc.Iterator[tuple[spinedb_api.helpers.ItemType, collections.abc.Iterable[dict]]][source]

Yields data to import into a Spine DB.

Parameters:
  • db_map – database mapping

  • all_errors – errors encountered during import

  • unparse_value – function to call when parsing parameter values

  • fix_value_conflict – parameter value conflict resolution function

  • entity_classes – entity class tuples

  • parameter_definitions – tuples of parameter definitions

  • parameter_types – tuples of parameter types

  • parameter_groups – tuples of parameter groups

  • entities – tuples of entities

  • entity_alternatives – tuples of entity alternatives

  • entity_groups – tuples of entity groups

  • parameter_values – tuples of parameter values

  • alternatives – tuples of alternatives

  • scenarios – tuples of scenarios

  • scenario_alternatives – tuples of scenario alternatives

  • parameter_value_lists – tuples of parameter value lists

  • metadata – tuples of metadata

  • entity_metadata – tuples of entity metadata

  • parameter_value_metadata – tuples of parameter value metadata

  • superclass_subclasses – tuples of superclass subclasses

  • display_modes – tuples of display modes

  • entity_class_display_modes – tuples of entity class display modes

Yields:

tuple of (item type, item dicts)

spinedb_api.import_functions.import_superclass_subclasses(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[SuperclassSubclass]) tuple[int, list[str]][source]

Imports superclass_subclasses into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (superclass name, subclass name)

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_entity_classes(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[EntityClass]) tuple[int, list[str]][source]

Imports entity classes into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (name, [(dimension 1 name, dimension 2 name ,…)], [description], [display icon integer], [active by default])

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_entities(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[Entity]) tuple[int, list[str]][source]

Imports entities into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (class name, entity name or byname, [description], [location]) where location is a tuple of (latitude, longitude, altitude, shape name, shape GEOJSON)

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_entity_alternatives(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[EntityAlternative]) tuple[int, list[str]][source]

Imports entity alternatives into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (class name, entity name or byname, alternative name, activity)

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_entity_groups(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[EntityGroup]) tuple[int, list[str]][source]

Imports entity groups into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (class name, group entity name, member entity name)

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_parameter_definitions(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[ParameterDefinition], unparse_value: UnparseCallable = to_database) tuple[int, list[str]][source]

Imports parameter definitions into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (class name, parameter name, [default value], [parameter value list name], [description], [parameter group name])

  • unparse_value – function to parse parameter values

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_parameter_types(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[ParameterType], unparse_value: UnparseCallable = to_database) tuple[int, list[str]][source]

Imports parameter types into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuple of (class name, parameter name, type, [succeeding type])

  • unparse_value – function to parse parameter values

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_parameter_values(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[ParameterValue], unparse_value: UnparseCallable = to_database, on_conflict: spinedb_api.parameter_value.ConflictResolution = 'merge') tuple[int, list[str]][source]

Imports parameter values into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (class name, entity name or byname, parameter definition name, value, [alternative_name])

  • unparse_value – function to parse parameter values

  • on_conflict – Conflict resolution strategy; options: “keep”, “replace”, “merge”

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_alternatives(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[Alternative]) tuple[int, list[str]][source]

Imports alternatives into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (name, [description])

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_scenarios(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[Scenario]) tuple[int, list[str]][source]

Imports scenarios into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (name, [<unused bool>], [description])

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_display_modes(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[DisplayMode]) tuple[int, list[str]][source]

Imports display modes into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (name, [description])

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_entity_class_display_modes(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[EntityClassDisplayMode]) tuple[int, list[str]][source]

Imports entity class display modes into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (display mode name, entity class name, display order)

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_scenario_alternatives(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[ScenarioAlternative]) tuple[int, list[str]][source]

Imports scenario alternatives into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (scenario, alternative, [succeeding alternative])

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_parameter_value_lists(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[ParameterValueList], unparse_value: UnparseCallable = to_database) tuple[int, list[str]][source]

Imports parameter value lists into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (list name, value)

  • unparse_value – function to parse parameter values

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_parameter_groups(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[ParameterGroup]) tuple[int, list[str]][source]

Imports parameter groups into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (group name, color as 6-digit HEX value)

Returns:

tuple of (number of groups imported, list of errors)

spinedb_api.import_functions.import_metadata(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[Metadata]) tuple[int, list[str]][source]

Imports metadata into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (entry name, value)

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_entity_metadata(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[EntityMetadata]) tuple[int, list[str]][source]

Imports metadata into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (entity class name, entity (by)name, metadata name, metadata value)

Returns:

tuple of (number of items imported, list of errors)

spinedb_api.import_functions.import_parameter_value_metadata(db_map: spinedb_api.DatabaseMapping, data: collections.abc.Iterable[ParameterValueMetadata]) tuple[int, list[str]][source]

Imports metadata into a Spine database using a standard format.

Parameters:
  • db_map – database mapping

  • data – tuples of (entity class name, entity (by)name, parameter_name, metadata name, metadata value, [alternative name])

Returns:

tuple of (number of items imported, list of errors)