openmnglab.model.datamodel.interface.IStaticDataScheme#

class openmnglab.model.datamodel.interface.IStaticDataScheme[source]#

Bases: IOutputDataScheme, IInputDataScheme, ABC

A data scheme that behaves the same for in- and outputs

__init__()#

Methods

__init__()

accepts(output_data_scheme)

Assess whether this scheme would accept the other data scheme as input.

transform(data_container)

Transform a data container to fit this scheme

validate(data_container)

Validates that a data container fits this scheme.

abstract accepts(output_data_scheme: IOutputDataScheme) bool#

Assess whether this scheme would accept the other data scheme as input.

If the schemes are incompatible, the function may either raise an exception containing further details on why the other data scheme is not accepted as input or just return False

Raises:

DataSchemeCompatibilityError – If the data schemes are not compatible and further details are available

Parameters:

output_data_scheme – Output data scheme to check for compatibility

Returns:

True if the output data scheme is accepted as input, False otherwise

abstract transform(data_container: IDataContainer) IDataContainer#

Transform a data container to fit this scheme

Modifies the contents of the data container so they fit an anonymous data scheme which is actually accepted by the function. MAY return the input-object without modification.

Parameters:

data_container – Data container containing the data which is expected to be passed to this function

Returns:

A modified dataset from the input data container or the same object

abstract validate(data_container: IDataContainer) bool#

Validates that a data container fits this scheme.

If this is not the case, the function may either raise an exception containing further details on why the validation failed or just return False :raise DataSchemeConformityError: If the schemes are not compatible to each other and detailed information is available :param data_container: Data container to validate :return: True if the data container conforms to this scheme, False otherwise.