diagram.api.schemas package

Submodules

diagram.api.schemas.diagram module

class diagram.api.schemas.diagram.CreateDiagram(**data)

Bases: Schema

Parameters:
  • system (str)

  • type (DiagramType)

  • name (str)

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
system: str
type: DiagramType
class diagram.api.schemas.diagram.ExportDiagram(**data)

Bases: ExportDiagram

Parameters:
  • nodes (List[ExportNode])

  • edges (List[ExportEdge])

  • id (UUID | None)

  • type (str)

  • name (str)

  • description (str | None)

  • system_id (UUID)

description: Optional[str]
edges: List[ExportEdge]
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
nodes: List[ExportNode]
system: UUID
type: str
class diagram.api.schemas.diagram.FullDiagram(**data)

Bases: ReadDiagram

Parameters:
  • project (str)

  • system_id (UUID)

  • system_name (str)

  • system (UUID)

  • id (UUID | None)

  • name (str)

  • description (str | None)

  • type (str)

  • nodes (List[NodeSchema])

  • edges (List[EdgeSchema])

  • related_diagrams (List[RelatedDiagram])

edges: List[EdgeSchema]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

nodes: List[NodeSchema]
related_diagrams: List[RelatedDiagram]
static resolve_edges(obj)
static resolve_nodes(obj)
class diagram.api.schemas.diagram.ImportDiagram(**data)

Bases: Schema

Parameters:
  • id (str)

  • name (str)

  • description (str | None)

  • type (DiagramType)

  • system (str)

  • nodes (List[ImportNode])

  • edges (List[ImportEdge])

description: Optional[str]
edges: List[ImportEdge]
id: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
nodes: List[ImportNode]
system: str
type: DiagramType
class diagram.api.schemas.diagram.ReadDiagram(**data)

Bases: ReadDiagram

Parameters:
  • project (str)

  • system_id (UUID)

  • system_name (str)

  • system (UUID)

  • id (UUID | None)

  • name (str)

  • description (str | None)

  • type (str)

description: Optional[str]
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
project: str
system: UUID
system_id: UUID
system_name: str
type: str
class diagram.api.schemas.diagram.UpdateDiagram(**data)

Bases: Schema

Parameters:
  • name (str | None)

  • description (str | None)

description: Optional[str]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: Optional[str]

diagram.api.schemas.edge module

class diagram.api.schemas.edge.CreateEdge(**data)

Bases: Schema

Parameters:
  • source (UUID)

  • target (UUID)

  • rel (Annotated[ControlFlow | ObjectFlow | Association | Composition | Generalization | Dependency | UsecaseRelation | Interface, FieldInfo(annotation=NoneType, required=True, discriminator='type')])

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: Annotated[Union[ControlFlow, ObjectFlow, Association, Composition, Generalization, Dependency, UsecaseRelation, Interface]]
static resolve_source(obj)
static resolve_target(obj)
source: UUID
target: UUID
class diagram.api.schemas.edge.EdgeSchema(**data)

Bases: EdgeSchema

Parameters:
  • rel (Annotated[ControlFlow | ObjectFlow | Association | Composition | Generalization | Dependency | UsecaseRelation | Interface, FieldInfo(annotation=NoneType, required=True, discriminator='type')])

  • rel_ptr (UUID)

  • data (Any)

  • source_ptr (UUID | None)

  • target_ptr (UUID | None)

  • id (UUID | None)

data: Any
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: Annotated[Union[ControlFlow, ObjectFlow, Association, Composition, Generalization, Dependency, UsecaseRelation, Interface]]
rel_ptr: UUID
source_ptr: Optional[UUID]
target_ptr: Optional[UUID]
class diagram.api.schemas.edge.ExportEdge(**data)

Bases: ExportEdge

Parameters:
  • id (UUID | None)

  • diagram_id (UUID)

  • rel_id (UUID)

  • data (AnyObject)

data: AnyObject
diagram: UUID
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: UUID
class diagram.api.schemas.edge.ImportEdge(**data)

Bases: Schema

Parameters:
  • id (str)

  • diagram (str)

  • rel (str)

  • data (dict)

data: dict
diagram: str
id: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: str
class diagram.api.schemas.edge.ListEdges(**data)

Bases: Schema

Parameters:

nodes (List[EdgeSchema])

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

nodes: List[EdgeSchema]

diagram.api.schemas.node module

class diagram.api.schemas.node.ClassifierUsageResponse(**data)

Bases: Schema

Parameters:
classifier_id: str
classifier_name: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

usages: List[DiagramUsageItem]
class diagram.api.schemas.node.CreateNode(**data)

Bases: Schema

Parameters:
cls: Annotated[Union[Annotated[Union[SwimLane, SwimLaneGroup]], Action, Annotated[Union[Decision, Final, Fork, Initial, Join, Merge]], Object, Event, Application, Page, Section, Class, Enum, Signal, Interface, Actor, Usecase, SystemBoundary, System, Container, Component]]
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

class diagram.api.schemas.node.DiagramUsageItem(**data)

Bases: Schema

Parameters:
  • diagram_id (str)

  • diagram_name (str)

  • system_id (str)

  • system_name (str)

diagram_id: str
diagram_name: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

system_id: str
system_name: str
class diagram.api.schemas.node.ExportNode(**data)

Bases: ExportNode

Parameters:
  • id (UUID | None)

  • diagram_id (UUID)

  • cls_id (UUID)

  • data (AnyObject)

cls: UUID
data: AnyObject
diagram: UUID
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

class diagram.api.schemas.node.ImportNode(**data)

Bases: Schema

Parameters:
  • id (str)

  • diagram (str)

  • cls (str)

  • data (dict)

cls: str
data: dict
diagram: str
id: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

class diagram.api.schemas.node.ListNodes(**data)

Bases: Schema

Parameters:

nodes (List[NodeSchema])

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

nodes: List[NodeSchema]
class diagram.api.schemas.node.NodeSchema(**data)

Bases: NodeSchema

Parameters:
cls: Annotated[Union[Annotated[Union[SwimLane, SwimLaneGroup]], Action, Annotated[Union[Decision, Final, Fork, Initial, Join, Merge]], Object, Event, Application, Page, Section, Class, Enum, Signal, Interface, Actor, Usecase, SystemBoundary, System, Container, Component]]
cls_ptr: UUID
data: NodeData
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

system_id: UUID
system_name: str
class diagram.api.schemas.node.PatchNode(**data)

Bases: Schema

Parameters:
  • cls (dict | None)

  • data (NodeData | None)

cls: Optional[dict]
data: Optional[NodeData]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

class diagram.api.schemas.node.RelationUsageResponse(**data)

Bases: Schema

Parameters:
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

relation_id: str
usages: List[DiagramUsageItem]

Module contents

class diagram.api.schemas.ClassifierUsageResponse(**data)

Bases: Schema

Parameters:
classifier_id: str
classifier_name: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

usages: List[DiagramUsageItem]
class diagram.api.schemas.CreateDiagram(**data)

Bases: Schema

Parameters:
  • system (str)

  • type (DiagramType)

  • name (str)

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
system: str
type: DiagramType
class diagram.api.schemas.CreateEdge(**data)

Bases: Schema

Parameters:
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: Annotated[Union[ControlFlow, ObjectFlow, Association, Composition, Generalization, Dependency, UsecaseRelation, Interface]]
static resolve_source(obj)
static resolve_target(obj)
source: UUID
target: UUID
class diagram.api.schemas.CreateNode(**data)

Bases: Schema

Parameters:
cls: Annotated[Union[Annotated[Union[SwimLane, SwimLaneGroup]], Action, Annotated[Union[Decision, Final, Fork, Initial, Join, Merge]], Object, Event, Application, Page, Section, Class, Enum, Signal, Interface, Actor, Usecase, SystemBoundary, System, Container, Component]]
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

class diagram.api.schemas.DiagramUsageItem(**data)

Bases: Schema

Parameters:
  • diagram_id (str)

  • diagram_name (str)

  • system_id (str)

  • system_name (str)

diagram_id: str
diagram_name: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

system_id: str
system_name: str
class diagram.api.schemas.EdgeSchema(**data)

Bases: EdgeSchema

Parameters:
data: Any
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: Annotated[Union[ControlFlow, ObjectFlow, Association, Composition, Generalization, Dependency, UsecaseRelation, Interface]]
rel_ptr: UUID
source_ptr: Optional[UUID]
target_ptr: Optional[UUID]
class diagram.api.schemas.ExportDiagram(**data)

Bases: ExportDiagram

Parameters:
  • nodes (List[ExportNode])

  • edges (List[ExportEdge])

  • id (UUID | None)

  • type (str)

  • name (str)

  • description (str | None)

  • system_id (UUID)

description: Optional[str]
edges: List[ExportEdge]
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
nodes: List[ExportNode]
system: UUID
type: str
class diagram.api.schemas.FullDiagram(**data)

Bases: ReadDiagram

Parameters:
  • project (str)

  • system_id (UUID)

  • system_name (str)

  • system (UUID)

  • id (UUID | None)

  • name (str)

  • description (str | None)

  • type (str)

  • nodes (List[NodeSchema])

  • edges (List[EdgeSchema])

  • related_diagrams (List[RelatedDiagram])

edges: List[EdgeSchema]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

nodes: List[NodeSchema]
project: str
related_diagrams: List[RelatedDiagram]
static resolve_edges(obj)
static resolve_nodes(obj)
system: UUID
system_id: UUID
system_name: str
class diagram.api.schemas.ImportDiagram(**data)

Bases: Schema

Parameters:
  • id (str)

  • name (str)

  • description (str | None)

  • type (DiagramType)

  • system (str)

  • nodes (List[ImportNode])

  • edges (List[ImportEdge])

description: Optional[str]
edges: List[ImportEdge]
id: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
nodes: List[ImportNode]
system: str
type: DiagramType
class diagram.api.schemas.ListEdges(**data)

Bases: Schema

Parameters:

nodes (List[EdgeSchema])

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

nodes: List[EdgeSchema]
class diagram.api.schemas.ListNodes(**data)

Bases: Schema

Parameters:

nodes (List[NodeSchema])

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

nodes: List[NodeSchema]
class diagram.api.schemas.NodeSchema(**data)

Bases: NodeSchema

Parameters:
cls: Annotated[Union[Annotated[Union[SwimLane, SwimLaneGroup]], Action, Annotated[Union[Decision, Final, Fork, Initial, Join, Merge]], Object, Event, Application, Page, Section, Class, Enum, Signal, Interface, Actor, Usecase, SystemBoundary, System, Container, Component]]
cls_ptr: UUID
data: NodeData
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

system_id: UUID
system_name: str
class diagram.api.schemas.PatchEdge(**data)

Bases: Schema

Parameters:
  • rel (dict | None)

  • data (EdgeData | None)

data: Optional[EdgeData]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: Optional[dict]
class diagram.api.schemas.PatchNode(**data)

Bases: Schema

Parameters:
  • cls (dict | None)

  • data (NodeData | None)

cls: Optional[dict]
data: Optional[NodeData]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

class diagram.api.schemas.ReadDiagram(**data)

Bases: ReadDiagram

Parameters:
  • project (str)

  • system_id (UUID)

  • system_name (str)

  • system (UUID)

  • id (UUID | None)

  • name (str)

  • description (str | None)

  • type (str)

description: Optional[str]
id: Optional[UUID]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: str
project: str
system: UUID
system_id: UUID
system_name: str
type: str
class diagram.api.schemas.RelationUsageResponse(**data)

Bases: Schema

Parameters:
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

relation_id: str
usages: List[DiagramUsageItem]
class diagram.api.schemas.UpdateDiagram(**data)

Bases: Schema

Parameters:
  • name (str | None)

  • description (str | None)

description: Optional[str]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

name: Optional[str]
class diagram.api.schemas.UpdateEdge(**data)

Bases: Schema

Parameters:
  • rel (dict | None)

  • data (EdgeData | None)

data: Optional[EdgeData]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

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

rel: Optional[dict]