DPME Domain

This page presents the ERD for each AggregateRoot, grouping related entities into domain boundaries. Each AggregateRoot enforces business rules, processes commands synchronously, and defines consistency borders within a single transactional scope. An indicative json schema is created to how the export of a aggregate root will approximitly look like

Model Repository

Aggregate Root: ModelRepository

Represents repositories for models with their versions and associated metadata for model management.

erDiagram
    "DPME.ModelRepositories" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        nvarchar RepositoryHost 
        nvarchar RepositoryName 
        nvarchar RepositoryUsername 
        nvarchar RepositoryPasswordSecretName 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "DPME.ModelVersions" {
        uniqueidentifier Id PK
        uniqueidentifier ModelId FK
        nvarchar VersionName 
        nvarchar Description 
        datetimeoffset ActivationDateTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "DPME.Models" {
        uniqueidentifier Id PK
        uniqueidentifier ModelRepositoryId FK
        nvarchar Name 
        nvarchar Description 
        nvarchar ScriptPath 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "DPME.Models" }o--|| "DPME.ModelRepositories" : "ModelRepositoryId"
    "DPME.ModelVersions" }o--|| "DPME.Models" : "ModelId"
erDiagram
    "DPME.ModelRepositories" {
        uniqueidentifier Id PK
        nvarchar Name 
        nvarchar Description 
        nvarchar RepositoryHost 
        nvarchar RepositoryName 
        nvarchar RepositoryUsername 
        nvarchar RepositoryPasswordSecretName 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "DPME.ModelVersions" {
        uniqueidentifier Id PK
        uniqueidentifier ModelId FK
        nvarchar VersionName 
        nvarchar Description 
        datetimeoffset ActivationDateTime 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "DPME.Models" {
        uniqueidentifier Id PK
        uniqueidentifier ModelRepositoryId FK
        nvarchar Name 
        nvarchar Description 
        nvarchar ScriptPath 
        uniqueidentifier Tenant 
        datetimeoffset EntityCreatedDateTime 
        datetimeoffset EntityUpdatedDateTime 
        uniqueidentifier EntityCreatedAuthToken 
        uniqueidentifier EntityUpdatedAuthToken 
        bit Concealed 
    }

    "DPME.Models" }o--|| "DPME.ModelRepositories" : "ModelRepositoryId"
    "DPME.ModelVersions" }o--|| "DPME.Models" : "ModelId"
{
    "definitions":  {
                        "DPME.ModelRepositories":  {
                                                       "properties":  {
                                                                          "Concealed":  {
                                                                                            "type":  "boolean",
                                                                                            "description":  "bit"
                                                                                        },
                                                                          "Description":  {
                                                                                              "type":  "string",
                                                                                              "description":  "nvarchar"
                                                                                          },
                                                                          "EntityUpdatedAuthToken":  {
                                                                                                         "format":  "uuid",
                                                                                                         "description":  "uniqueidentifier",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                          "Name":  {
                                                                                       "type":  "string",
                                                                                       "description":  "nvarchar"
                                                                                   },
                                                                          "RepositoryHost":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "nvarchar"
                                                                                             },
                                                                          "EntityCreatedAuthToken":  {
                                                                                                         "format":  "uuid",
                                                                                                         "description":  "uniqueidentifier",
                                                                                                         "type":  "string"
                                                                                                     },
                                                                          "EntityUpdatedDateTime":  {
                                                                                                        "format":  "date-time",
                                                                                                        "description":  "datetimeoffset",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                          "RepositoryPasswordSecretName":  {
                                                                                                               "type":  "string",
                                                                                                               "description":  "nvarchar"
                                                                                                           },
                                                                          "Tenant":  {
                                                                                         "format":  "uuid",
                                                                                         "description":  "uniqueidentifier",
                                                                                         "type":  "string"
                                                                                     },
                                                                          "RepositoryUsername":  {
                                                                                                     "type":  "string",
                                                                                                     "description":  "nvarchar"
                                                                                                 },
                                                                          "EntityCreatedDateTime":  {
                                                                                                        "format":  "date-time",
                                                                                                        "description":  "datetimeoffset",
                                                                                                        "type":  "string"
                                                                                                    },
                                                                          "Id":  {
                                                                                     "format":  "uuid",
                                                                                     "description":  "uniqueidentifier",
                                                                                     "type":  "string"
                                                                                 },
                                                                          "RepositoryName":  {
                                                                                                 "type":  "string",
                                                                                                 "description":  "nvarchar"
                                                                                             }
                                                                      },
                                                       "type":  "object"
                                                   },
                        "DPME.ModelVersions":  {
                                                   "properties":  {
                                                                      "Concealed":  {
                                                                                        "type":  "boolean",
                                                                                        "description":  "bit"
                                                                                    },
                                                                      "EntityUpdatedAuthToken":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                      "Id":  {
                                                                                 "format":  "uuid",
                                                                                 "description":  "uniqueidentifier",
                                                                                 "type":  "string"
                                                                             },
                                                                      "ModelId":  {
                                                                                      "type":  "string",
                                                                                      "description":  "FK to DPME.Models"
                                                                                  },
                                                                      "ActivationDateTime":  {
                                                                                                 "format":  "date-time",
                                                                                                 "description":  "datetimeoffset",
                                                                                                 "type":  "string"
                                                                                             },
                                                                      "EntityCreatedDateTime":  {
                                                                                                    "format":  "date-time",
                                                                                                    "description":  "datetimeoffset",
                                                                                                    "type":  "string"
                                                                                                },
                                                                      "EntityUpdatedDateTime":  {
                                                                                                    "format":  "date-time",
                                                                                                    "description":  "datetimeoffset",
                                                                                                    "type":  "string"
                                                                                                },
                                                                      "Description":  {
                                                                                          "type":  "string",
                                                                                          "description":  "nvarchar"
                                                                                      },
                                                                      "VersionName":  {
                                                                                          "type":  "string",
                                                                                          "description":  "nvarchar"
                                                                                      },
                                                                      "EntityCreatedAuthToken":  {
                                                                                                     "format":  "uuid",
                                                                                                     "description":  "uniqueidentifier",
                                                                                                     "type":  "string"
                                                                                                 },
                                                                      "Tenant":  {
                                                                                     "format":  "uuid",
                                                                                     "description":  "uniqueidentifier",
                                                                                     "type":  "string"
                                                                                 }
                                                                  },
                                                   "type":  "object"
                                               },
                        "DPME.Models":  {
                                            "properties":  {
                                                               "Concealed":  {
                                                                                 "type":  "boolean",
                                                                                 "description":  "bit"
                                                                             },
                                                               "EntityUpdatedAuthToken":  {
                                                                                              "format":  "uuid",
                                                                                              "description":  "uniqueidentifier",
                                                                                              "type":  "string"
                                                                                          },
                                                               "ModelRepositoryId":  {
                                                                                         "type":  "string",
                                                                                         "description":  "FK to DPME.ModelRepositories"
                                                                                     },
                                                               "ScriptPath":  {
                                                                                  "type":  "string",
                                                                                  "description":  "nvarchar"
                                                                              },
                                                               "Id":  {
                                                                          "format":  "uuid",
                                                                          "description":  "uniqueidentifier",
                                                                          "type":  "string"
                                                                      },
                                                               "Description":  {
                                                                                   "type":  "string",
                                                                                   "description":  "nvarchar"
                                                                               },
                                                               "EntityCreatedDateTime":  {
                                                                                             "format":  "date-time",
                                                                                             "description":  "datetimeoffset",
                                                                                             "type":  "string"
                                                                                         },
                                                               "Name":  {
                                                                            "type":  "string",
                                                                            "description":  "nvarchar"
                                                                        },
                                                               "EntityUpdatedDateTime":  {
                                                                                             "format":  "date-time",
                                                                                             "description":  "datetimeoffset",
                                                                                             "type":  "string"
                                                                                         },
                                                               "EntityCreatedAuthToken":  {
                                                                                              "format":  "uuid",
                                                                                              "description":  "uniqueidentifier",
                                                                                              "type":  "string"
                                                                                          },
                                                               "Tenant":  {
                                                                              "format":  "uuid",
                                                                              "description":  "uniqueidentifier",
                                                                              "type":  "string"
                                                                          }
                                                           },
                                            "type":  "object"
                                        }
                    },
    "title":  "DPME.ModelRepository",
    "$comment":  "Generated from Mermaid ERD with property-level descriptions",
    "$schema":  "http://json-schema.org/draft-07/schema#",
    "type":  "object"
}