tisserande.models.nodes

Pydantic models for provenance graph nodes (data nodes and logic nodes).

Classes

NodeBase

Base model for all graph nodes.

NodeCreate

Generic node creation model.

Node

Node response model.

DataFileNodeBase

Model for a data file node.

DataFileNodeCreate

Fields used to create a DataFileNode.

DataFileNode

DataFileNode response model.

ConfigFileNodeBase

Model for a config file node.

ConfigFileNodeCreate

Fields used to create a ConfigFileNode.

ConfigFileNode

ConfigFileNode response model.

ConfigDictNodeBase

Model for a config dict node.

ConfigDictNodeCreate

Fields used to create a ConfigDictNode.

ConfigDictNode

ConfigDictNode response model.

ParameterNodeBase

Model for a parameter node.

ParameterNodeCreate

Fields used to create a ParameterNode.

ParameterNode

ParameterNode response model.

ArrayNodeBase

Model for an array node.

ArrayNodeCreate

Fields used to create an ArrayNode.

ArrayNode

ArrayNode response model.

ObjectNodeBase

Model for a python object node.

ObjectNodeCreate

Fields used to create an ObjectNode.

ObjectNode

ObjectNode response model.

PythonFunctionNodeBase

Model for a python function node.

PythonFunctionNodeCreate

Fields used to create a PythonFunctionNode.

PythonFunctionNode

PythonFunctionNode response model.

MemberFunctionNodeBase

Model for a member function node.

MemberFunctionNodeCreate

Fields used to create a MemberFunctionNode.

MemberFunctionNode

MemberFunctionNode response model.

ShellFunctionNodeBase

Model for a shell function node.

ShellFunctionNodeCreate

Fields used to create a ShellFunctionNode.

ShellFunctionNode

ShellFunctionNode response model.

Module Contents

class tisserande.models.nodes.NodeBase(/, **data: Any)[source]

Bases: pydantic.BaseModel

Base model for all graph nodes.

type_: tisserande.models.types.NodeType = None[source]
class tisserande.models.nodes.NodeCreate(/, **data: Any)[source]

Bases: NodeBase

Generic node creation model.

path: str | None = None[source]
config_data: dict[str, Any] | None = None[source]
value_float: float | None = None[source]
value_json: Any | None = None[source]
arg_name: str | None = None[source]
data_file_type_name: str | None = None[source]
data_file_type_id: int | None = None[source]
config_file_type_name: str | None = None[source]
config_file_type_id: int | None = None[source]
config_dict_type_name: str | None = None[source]
config_dict_type_id: int | None = None[source]
parameter_name: str | None = None[source]
parameter_id: int | None = None[source]
array_name: str | None = None[source]
array_id: int | None = None[source]
class_name: str | None = None[source]
class_id: int | None = None[source]
python_function_name: str | None = None[source]
python_function_id: int | None = None[source]
member_function_name: str | None = None[source]
member_function_id: int | None = None[source]
shell_function_name: str | None = None[source]
shell_function_id: int | None = None[source]
class tisserande.models.nodes.Node(/, **data: Any)[source]

Bases: NodeBase

Node response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'arg_name', 'execution_id'][source]
id_: uuid.UUID[source]
execution_id: uuid.UUID | None = None[source]
path: str | None = None[source]
config_data: dict[str, Any] | None = None[source]
value_float: float | None = None[source]
value_json: Any | None = None[source]
arg_name: str | None = None[source]
data_file_type_id: int | None = None[source]
config_file_type_id: int | None = None[source]
config_dict_type_id: int | None = None[source]
parameter_id: int | None = None[source]
array_id: int | None = None[source]
class_id: int | None = None[source]
python_function_id: int | None = None[source]
member_function_id: int | None = None[source]
shell_function_id: int | None = None[source]
class tisserande.models.nodes.DataFileNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a data file node.

type_: Literal[tisserande.models.types.NodeType.DATA_FILE][source]
path: str = None[source]
class tisserande.models.nodes.DataFileNodeCreate(/, **data: Any)[source]

Bases: DataFileNodeBase

Fields used to create a DataFileNode.

data_file_type_name: str | None = None[source]
data_file_type_id: int | None = None[source]
arg_name: str | None = None[source]
class tisserande.models.nodes.DataFileNode(/, **data: Any)[source]

Bases: DataFileNodeBase

DataFileNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'path', 'data_file_type_id'][source]
id_: uuid.UUID[source]
data_file_type_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.ConfigFileNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a config file node.

type_: Literal[tisserande.models.types.NodeType.CONFIG_FILE][source]
path: str = None[source]
class tisserande.models.nodes.ConfigFileNodeCreate(/, **data: Any)[source]

Bases: ConfigFileNodeBase

Fields used to create a ConfigFileNode.

config_file_type_name: str | None = None[source]
config_file_type_id: int | None = None[source]
arg_name: str | None = None[source]
class tisserande.models.nodes.ConfigFileNode(/, **data: Any)[source]

Bases: ConfigFileNodeBase

ConfigFileNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'path', 'config_file_type_id'][source]
id_: uuid.UUID[source]
config_file_type_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.ConfigDictNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a config dict node.

type_: Literal[tisserande.models.types.NodeType.CONFIG_DICT][source]
config_data: dict[str, Any] = None[source]
class tisserande.models.nodes.ConfigDictNodeCreate(/, **data: Any)[source]

Bases: ConfigDictNodeBase

Fields used to create a ConfigDictNode.

config_dict_type_name: str | None = None[source]
config_dict_type_id: int | None = None[source]
arg_name: str | None = None[source]
class tisserande.models.nodes.ConfigDictNode(/, **data: Any)[source]

Bases: ConfigDictNodeBase

ConfigDictNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'config_dict_type_id'][source]
id_: uuid.UUID[source]
config_dict_type_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.ParameterNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a parameter node.

type_: Literal[tisserande.models.types.NodeType.PARAMETER][source]
value_float: float = None[source]
class tisserande.models.nodes.ParameterNodeCreate(/, **data: Any)[source]

Bases: ParameterNodeBase

Fields used to create a ParameterNode.

parameter_name: str | None = None[source]
parameter_id: int | None = None[source]
arg_name: str | None = None[source]
class tisserande.models.nodes.ParameterNode(/, **data: Any)[source]

Bases: ParameterNodeBase

ParameterNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'value_float', 'parameter_id'][source]
id_: uuid.UUID[source]
parameter_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.ArrayNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for an array node.

type_: Literal[tisserande.models.types.NodeType.ARRAY][source]
value_json: list[float] | list[list[float]] = None[source]
class tisserande.models.nodes.ArrayNodeCreate(/, **data: Any)[source]

Bases: ArrayNodeBase

Fields used to create an ArrayNode.

array_name: str | None = None[source]
array_id: int | None = None[source]
arg_name: str | None = None[source]
class tisserande.models.nodes.ArrayNode(/, **data: Any)[source]

Bases: ArrayNodeBase

ArrayNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'array_id'][source]
id_: uuid.UUID[source]
array_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.ObjectNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a python object node.

type_: Literal[tisserande.models.types.NodeType.OBJECT][source]
value_json: Any = None[source]
class tisserande.models.nodes.ObjectNodeCreate(/, **data: Any)[source]

Bases: ObjectNodeBase

Fields used to create an ObjectNode.

class_name: str | None = None[source]
class_id: int | None = None[source]
arg_name: str | None = None[source]
class tisserande.models.nodes.ObjectNode(/, **data: Any)[source]

Bases: ObjectNodeBase

ObjectNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'class_id'][source]
id_: uuid.UUID[source]
class_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.PythonFunctionNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a python function node.

type_: Literal[tisserande.models.types.NodeType.PYTHON_FUNCTION][source]
class tisserande.models.nodes.PythonFunctionNodeCreate(/, **data: Any)[source]

Bases: PythonFunctionNodeBase

Fields used to create a PythonFunctionNode.

python_function_name: str | None = None[source]
python_function_id: int | None = None[source]
class tisserande.models.nodes.PythonFunctionNode(/, **data: Any)[source]

Bases: PythonFunctionNodeBase

PythonFunctionNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'python_function_id'][source]
id_: uuid.UUID[source]
python_function_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.MemberFunctionNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a member function node.

type_: Literal[tisserande.models.types.NodeType.MEMBER_FUNCTION][source]
class tisserande.models.nodes.MemberFunctionNodeCreate(/, **data: Any)[source]

Bases: MemberFunctionNodeBase

Fields used to create a MemberFunctionNode.

member_function_name: str | None = None[source]
member_function_id: int | None = None[source]
class tisserande.models.nodes.MemberFunctionNode(/, **data: Any)[source]

Bases: MemberFunctionNodeBase

MemberFunctionNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'member_function_id'][source]
id_: uuid.UUID[source]
member_function_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]
class tisserande.models.nodes.ShellFunctionNodeBase(/, **data: Any)[source]

Bases: NodeBase

Model for a shell function node.

type_: Literal[tisserande.models.types.NodeType.SHELL_FUNCTION][source]
class tisserande.models.nodes.ShellFunctionNodeCreate(/, **data: Any)[source]

Bases: ShellFunctionNodeBase

Fields used to create a ShellFunctionNode.

shell_function_name: str | None = None[source]
shell_function_id: int | None = None[source]
class tisserande.models.nodes.ShellFunctionNode(/, **data: Any)[source]

Bases: ShellFunctionNodeBase

ShellFunctionNode response model.

model_config[source]

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

col_names_for_table: ClassVar[list[str]] = ['id_', 'type_', 'shell_function_id'][source]
id_: uuid.UUID[source]
shell_function_id: int | None = None[source]
execution_id: uuid.UUID | None = None[source]