SDS-001: Data Model Schemas for SEA™ Platform

Type

Software Design Specification - Data Modeling

Status

Reference Implementation (SEA™ 4.0)

Purpose

Defines comprehensive JSON Schema specifications for all core data entities within the Sentient Enterprise Architecture platform. These schemas ensure type safety, validation, and consistency across the Semantic Core, Knowledge Layer, Cognitive Extension, and Computational layers.


1. Core SEA™ Entities (Semantic Core & Knowledge Layer)

These schemas define the fundamental building blocks derived from the MUDM (Manufacturing Universal Data Model) and formalized by SEA™ DSL (Semantic Enterprise Architecture DSL). They are designed for representation in both Knowledge Graphs (RDF/OWL) and relational databases.

1.1. Entity Schema

Purpose: Foundational concept representing any addressable subject with unique identity in the business domain.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Entity",
  "description": "A foundational concept representing any addressable subject with unique identity in the business domain.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier (Format: `ifl:hash:<sha256>` or `ifl:token:<chain>:<contract>:<token>`)."
    },
    "name": {
      "type": "string",
      "description": "Human-readable name of the entity."
    },
    "type": {
      "type": "string",
      "description": "Categorization of the entity (e.g., 'Customer', 'Product', 'Organization')."
    },
    "description": {
      "type": "string",
      "description": "Detailed description of the entity."
    },
    "attributes": {
      "type": "object",
      "description": "Key-value pairs for additional entity-specific properties.",
      "additionalProperties": true
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the entity was created."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the entity was last updated."
    }
  },
  "required": ["id", "name", "type"]
}

SEA-Forge™ Application:


1.2. Resource Schema

Purpose: Represents anything consumed, produced, exchanged, or utilized within business processes.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Resource",
  "description": "Anything consumed, produced, exchanged, or utilized within business processes.",
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "name": { "type": "string" },
    "type": {
      "type": "string",
      "description": "e.g., 'RawMaterial', 'FinishedProduct', 'Currency', 'Skill'"
    },
    "unitOfMeasure": {
      "type": "string",
      "description": "Standard unit (e.g., 'kg', 'piece', 'USD', 'hour')"
    },
    "description": { "type": "string" },
    "attributes": {
      "type": "object",
      "additionalProperties": true
    }
  },
  "required": ["id", "name", "type", "unitOfMeasure"]
}

1.3. Flow Schema

Purpose: Represents the dynamic transfer or transformation of resources between entities or states.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Flow",
  "description": "Dynamic transfer or transformation of resources.",
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "type": {
      "type": "string",
      "description": "e.g., 'Production', 'Sales', 'Transfer', 'InformationExchange'"
    },
    "resourceId": { "type": "string" },
    "quantity": { "type": "number" },
    "sourceEntityId": { "type": "string" },
    "destinationEntityId": { "type": "string" },
    "initiatedAt": { "type": "string", "format": "date-time" },
    "completedAt": { "type": "string", "format": "date-time" },
    "status": {
      "type": "string",
      "enum": ["initiated", "in-progress", "completed", "cancelled"]
    },
    "attributes": { "type": "object", "additionalProperties": true }
  },
  "required": [
    "id",
    "type",
    "resourceId",
    "quantity",
    "sourceEntityId",
    "destinationEntityId",
    "initiatedAt"
  ]
}

SEA-Forge™ Application:


1.4. Instance Schema

Purpose: Physical or logical instance of a Resource, enabling traceability.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Instance",
  "description": "Physical/logical instance of a Resource.",
  "type": "object",
  "properties": {
    "id": { "type": "string", "description": "Serial number, batch ID" },
    "resourceId": { "type": "string" },
    "currentLocationEntityId": { "type": "string" },
    "status": {
      "type": "string",
      "description": "e.g., 'in-stock', 'in-transit', 'consumed'"
    },
    "attributes": { "type": "object", "additionalProperties": true }
  },
  "required": ["id", "resourceId", "currentLocationEntityId"]
}

1.5. Policy Schema

Purpose: Defines rules, conditions, and access mechanisms governing entities, resources, and flows.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Policy",
  "description": "Business policies expressed in SEA™ DSL.",
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "name": { "type": "string" },
    "description": { "type": "string", "description": "Often in SBVR format" },
    "type": {
      "type": "string",
      "description": "e.g., 'PricingRule', 'AccessControl', 'ComplianceRule'"
    },
    "appliesTo": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "entityId": { "type": "string" },
          "resourceId": { "type": "string" },
          "flowId": { "type": "string" }
        },
        "minProperties": 1
      }
    },
    "policyDefinition": {
      "type": "string",
      "description": "Formal policy in SEA™ DSL (formerly ruleDefinition)"
    },
    "isActive": { "type": "boolean" }
  },
  "required": ["id", "name", "type", "policyDefinition", "isActive"]
}

SEA-Forge™ Application:


2. Cognitive Artifact DSL (CADSL) Schemas

Defines the structure of cognitive artifacts and their constituent elements for dynamic generation by the Cognitive Extension Layer.

2.1. CadslElement Base Schema

Purpose: Base schema inherited by all CADSL elements.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "CadslElement",
  "description": "Base schema for all CADSL elements.",
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "description": "e.g., 'TextField', 'Button', 'Section'"
    },
    "id": { "type": "string" },
    "metadata": { "type": "object", "additionalProperties": true }
  },
  "required": ["type"]
}

2.2. TextField Schema

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "TextField",
  "description": "Single-line text input field.",
  "type": "object",
  "allOf": [{ "$ref": "#/definitions/CadslElement" }],
  "properties": {
    "type": { "const": "TextField" },
    "label": { "type": "string" },
    "placeholder": { "type": "string" },
    "value": { "type": "string" },
    "isEditable": { "type": "boolean", "default": true }
  },
  "required": ["label"]
}

2.3. Checkbox Schema

1
2
3
4
5
6
7
8
9
10
11
12
13
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Checkbox",
  "type": "object",
  "allOf": [{ "$ref": "#/definitions/CadslElement" }],
  "properties": {
    "type": { "const": "Checkbox" },
    "label": { "type": "string" },
    "checked": { "type": "boolean", "default": false },
    "isEditable": { "type": "boolean", "default": true }
  },
  "required": ["label"]
}

2.4. Section Schema

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Section",
  "description": "Container for grouping CADSL elements.",
  "type": "object",
  "allOf": [{ "$ref": "#/definitions/CadslElement" }],
  "properties": {
    "type": { "const": "Section" },
    "title": { "type": "string" },
    "children": {
      "type": "array",
      "items": { "$ref": "#/definitions/CadslElement" }
    }
  },
  "required": ["children"]
}

2.5. CognitiveArtifact Schema

Purpose: Complete cognitive artifact composed of a canvas of CADSL elements.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "CognitiveArtifact",
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "name": { "type": "string" },
    "type": {
      "type": "string",
      "description": "e.g., 'ProjectPlanner', 'MindMap', 'Checklist'"
    },
    "canvas": {
      "type": "array",
      "items": { "$ref": "#/definitions/CadslElement" }
    },
    "createdAt": { "type": "string", "format": "date-time" },
    "updatedAt": { "type": "string", "format": "date-time" },
    "ownerId": { "type": "string" },
    "isReadOnly": { "type": "boolean", "default": false }
  },
  "required": ["id", "name", "type", "canvas", "ownerId"]
}

SEA-Forge™ Application:


3. CALM Architecture Model Schema

Based on FINOS CALM specification, extended with SEA-specific metadata.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "CALM Architecture Model (SEA™ Extension)",
  "type": "object",
  "properties": {
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "name": { "type": "string" },
          "type": {
            "type": "string",
            "enum": [
              "service",
              "database",
              "queue",
              "external-api",
              "ui-component",
              "ai-agent",
              "cognitive-engine"
            ]
          },
          "description": { "type": "string" },
          "metadata": {
            "type": "object",
            "properties": {
              "domain": {
                "type": "string",
                "description": "SEA™ Domain (e.g., Sales, Finance, CognitiveSupport)"
              },
              "team": { "type": "string" },
              "language": { "type": "string" },
              "deployment": { "type": "string" },
              "semanticCoreLink": {
                "type": "string",
                "description": "Link to DSL/SBVR definition"
              }
            },
            "additionalProperties": true
          },
          "controls": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": { "type": "string" },
                "description": { "type": "string" },
                "status": {
                  "type": "string",
                  "enum": ["compliant", "non-compliant", "waived"]
                }
              },
              "required": ["id", "description"]
            }
          }
        },
        "required": ["id", "name", "type"]
      }
    },
    "relationships": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": { "type": "string" },
          "source": { "type": "string" },
          "target": { "type": "string" },
          "type": {
            "type": "string",
            "enum": [
              "api-call",
              "message-queue",
              "reads",
              "writes",
              "reads-writes",
              "stream",
              "governs",
              "informs",
              "generates"
            ]
          },
          "description": { "type": "string" },
          "metadata": {
            "type": "object",
            "properties": {
              "protocol": { "type": "string" },
              "encryption": { "type": "string" },
              "dataFlow": {
                "type": "string",
                "description": "Data classification (e.g., PII, Confidential)"
              }
            },
            "additionalProperties": true
          },
          "controls": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": { "type": "string" },
                "description": { "type": "string" },
                "status": {
                  "type": "string",
                  "enum": ["compliant", "non-compliant", "waived"]
                }
              }
            }
          }
        },
        "required": ["id", "source", "target", "type"]
      }
    }
  },
  "required": ["nodes", "relationships"]
}

SEA-Forge™ Application:


4. AI Agent Configuration Schema

Defines structure for AI agent prompt management, analogous to LoRA/Adapter patterns.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "AIAgentConfiguration",
  "type": "object",
  "properties": {
    "agentId": { "type": "string" },
    "name": { "type": "string" },
    "role": {
      "type": "string",
      "description": "e.g., 'CustomerSupport', 'CodeGenerator', 'ArtifactRecommender'"
    },
    "baseModel": {
      "type": "string",
      "description": "e.g., 'GPT-4', 'Gemini-Pro'"
    },
    "promptTemplate": {
      "type": "string",
      "description": "Base prompt with placeholders"
    },
    "contextSources": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "sourceType": {
            "type": "string",
            "enum": [
              "knowledgeGraph",
              "domainService",
              "userConversation",
              "cognitiveArtifact"
            ]
          },
          "query": {
            "type": "string",
            "description": "Cypher, API endpoint, semantic search"
          },
          "injectionPoint": { "type": "string" }
        },
        "required": ["sourceType", "query", "injectionPoint"]
      }
    },
    "skills": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "skillId": { "type": "string" },
          "description": { "type": "string" },
          "toolCallDefinition": {
            "type": "object",
            "additionalProperties": true
          }
        },
        "required": ["skillId", "toolCallDefinition"]
      }
    },
    "behaviorAdapters": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "adapterType": {
            "type": "string",
            "enum": ["LoRA", "PrefixTuning", "AdapterLayer", "CustomLogic"]
          },
          "configuration": { "type": "object", "additionalProperties": true }
        },
        "required": ["adapterType", "configuration"]
      }
    }
  },
  "required": ["agentId", "name", "role", "baseModel", "promptTemplate"]
}

SEA-Forge™ Application:


5. User Interaction & Feedback Schema

Captures user interactions for continuous learning.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "UserInteractionFeedback",
  "type": "object",
  "properties": {
    "interactionId": { "type": "string" },
    "userId": { "type": "string" },
    "timestamp": { "type": "string", "format": "date-time" },
    "eventType": {
      "type": "string",
      "enum": [
        "artifact_generated",
        "artifact_recommended",
        "artifact_accepted",
        "artifact_rejected",
        "artifact_modified",
        "element_interacted"
      ]
    },
    "artifactId": { "type": "string" },
    "elementId": { "type": "string" },
    "contextSnapshot": { "type": "object", "additionalProperties": true },
    "feedback": {
      "type": "object",
      "properties": {
        "rating": { "type": "integer", "minimum": 1, "maximum": 5 },
        "comment": { "type": "string" },
        "reason": { "type": "string" }
      }
    }
  },
  "required": ["interactionId", "userId", "timestamp", "eventType"]
}

SEA-Forge™ Application:


6. Automated Documentation Generation (ADG) Framework Schemas

6.1. DocumentationRequest Schema

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "DocumentationRequest",
  "type": "object",
  "properties": {
    "requestId": { "type": "string" },
    "projectId": { "type": "string" },
    "projectLocation": {
      "type": "string",
      "description": "File path or repository URL"
    },
    "documentationType": {
      "type": "string",
      "enum": [
        "README",
        "API_DOCS",
        "ARCHITECTURE_OVERVIEW",
        "USER_GUIDE",
        "COMPREHENSIVE"
      ]
    },
    "configuration": {
      "type": "object",
      "properties": {
        "includeCodeExamples": { "type": "boolean" },
        "includeDiagrams": { "type": "boolean" },
        "includeAPIReference": { "type": "boolean" },
        "targetAudience": {
          "type": "string",
          "enum": ["developer", "architect", "end-user", "mixed"]
        },
        "templateId": { "type": "string" }
      }
    },
    "requestedBy": { "type": "string" },
    "requestedAt": { "type": "string", "format": "date-time" }
  },
  "required": [
    "requestId",
    "projectId",
    "projectLocation",
    "documentationType",
    "requestedBy",
    "requestedAt"
  ]
}

6.2. DocumentationArtifact Schema

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "DocumentationArtifact",
  "type": "object",
  "properties": {
    "artifactId": { "type": "string" },
    "requestId": { "type": "string" },
    "projectId": { "type": "string" },
    "documentationType": {
      "type": "string",
      "enum": [
        "README",
        "API_DOCS",
        "ARCHITECTURE_OVERVIEW",
        "USER_GUIDE",
        "COMPREHENSIVE"
      ]
    },
    "content": {
      "type": "object",
      "properties": {
        "cadslDefinition": { "type": "object" },
        "markdown": { "type": "string" },
        "html": { "type": "string" }
      }
    },
    "metadata": {
      "type": "object",
      "properties": {
        "title": { "type": "string" },
        "version": { "type": "string" },
        "generatedAt": { "type": "string", "format": "date-time" },
        "generatedBy": { "type": "string" },
        "projectVersion": { "type": "string" },
        "semanticCoverage": { "type": "number", "minimum": 0, "maximum": 100 },
        "architecturalCompliance": { "type": "boolean" }
      }
    },
    "validationStatus": {
      "type": "string",
      "enum": ["valid", "warnings", "errors"]
    },
    "validationMessages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "level": { "type": "string", "enum": ["info", "warning", "error"] },
          "message": { "type": "string" },
          "location": { "type": "string" }
        }
      }
    }
  },
  "required": [
    "artifactId",
    "requestId",
    "projectId",
    "documentationType",
    "content",
    "metadata"
  ]
}

SEA-Forge™ Application:


6.3. ProjectContext Schema

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "ProjectContext",
  "type": "object",
  "properties": {
    "projectId": { "type": "string" },
    "projectName": { "type": "string" },
    "projectDescription": { "type": "string" },
    "technicalStack": {
      "type": "object",
      "properties": {
        "languages": { "type": "array", "items": { "type": "string" } },
        "frameworks": { "type": "array", "items": { "type": "string" } },
        "databases": { "type": "array", "items": { "type": "string" } },
        "infrastructure": { "type": "array", "items": { "type": "string" } }
      }
    },
    "semanticContext": {
      "type": "object",
      "properties": {
        "dslDefinitions": { "type": "array", "items": { "type": "object" } },
        "policies": { "type": "array", "items": { "type": "object" } },
        "businessConcepts": { "type": "array", "items": { "type": "object" } },
        "knowledgeGraphEntities": {
          "type": "array",
          "items": { "type": "object" }
        }
      }
    },
    "architecturalContext": {
      "type": "object",
      "properties": {
        "calmDefinitions": { "type": "array", "items": { "type": "object" } },
        "components": { "type": "array", "items": { "type": "object" } },
        "relationships": { "type": "array", "items": { "type": "object" } },
        "controls": { "type": "array", "items": { "type": "object" } },
        "complianceStatus": {
          "type": "string",
          "enum": ["compliant", "non-compliant", "partially-compliant"]
        }
      }
    },
    "codebaseMetrics": {
      "type": "object",
      "properties": {
        "linesOfCode": { "type": "integer" },
        "numberOfFiles": { "type": "integer" },
        "numberOfClasses": { "type": "integer" },
        "numberOfFunctions": { "type": "integer" },
        "testCoverage": { "type": "number", "minimum": 0, "maximum": 100 }
      }
    },
    "dependencies": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": { "type": "string" },
          "version": { "type": "string" },
          "type": { "type": "string", "enum": ["direct", "transitive"] }
        }
      }
    },
    "apiEndpoints": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": { "type": "string" },
          "method": {
            "type": "string",
            "enum": ["GET", "POST", "PUT", "DELETE", "PATCH"]
          },
          "description": { "type": "string" },
          "requestSchema": { "type": "object" },
          "responseSchema": { "type": "object" }
        }
      }
    },
    "extractedAt": { "type": "string", "format": "date-time" }
  },
  "required": ["projectId", "projectName", "technicalStack", "extractedAt"]
}

SEA-Forge™ Application:


7. Knowledge Graph Schemas (Semantic Core)

Defines the structure of snapshots and change sets for the Knowledge Graph Service (SDS-003).

7.1. KnowledgeGraphSnapshot Schema

Purpose: Immutable, versioned state of the Knowledge Graph at a specific point in time.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "KnowledgeGraphSnapshot",
  "description": "Immutable, versioned state of the Knowledge Graph",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^ifl:snap:[a-f0-9]{64}$",
      "description": "Content-addressable snapshot identifier (SHA-256 hash)"
    },
    "version": {
      "type": "string",
      "description": "Semantic version (e.g., '1.0.0')"
    },
    "timestamp": {
      "type": "string",
      "format": "date-time",
      "description": "UTC timestamp when snapshot was created"
    },
    "parentSnapshotId": {
      "type": "string",
      "pattern": "^ifl:snap:[a-f0-9]{64}$",
      "description": "Parent snapshot ID (null for initial snapshot)"
    },
    "appliedChangeSets": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^ifl:cs:[a-f0-9]{64}$"
      },
      "description": "Ordered list of change set IDs applied to reach this snapshot"
    },
    "tripleCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of RDF triples in this snapshot"
    },
    "contentHash": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$",
      "description": "SHA-256 hash of canonical triple serialization (Turtle sorted)"
    },
    "metadata": {
      "type": "object",
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "Principal or system that created the snapshot"
        },
        "description": {
          "type": "string",
          "description": "Human-readable description of this snapshot"
        },
        "tags": {
          "type": "array",
          "items": {"type": "string"},
          "description": "Semantic tags (e.g., 'production', 'staging')"
        }
      },
      "additionalProperties": true
    }
  },
  "required": ["id", "version", "timestamp", "contentHash", "appliedChangeSets"]
}

SEA-Forge™ Application:


7.2. KnowledgeGraphChangeSet Schema

Purpose: Set of graph operations (add/delete triples) to transition between snapshots.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "KnowledgeGraphChangeSet",
  "description": "Set of graph operations to transition between snapshots",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^ifl:cs:[a-f0-9]{64}$",
      "description": "Content-addressable change set identifier (SHA-256 hash)"
    },
    "timestamp": {
      "type": "string",
      "format": "date-time",
      "description": "UTC timestamp when change set was created"
    },
    "sourceSnapshotId": {
      "type": "string",
      "pattern": "^ifl:snap:[a-f0-9]{64}$",
      "description": "Snapshot this change set is based on"
    },
    "operations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": ["add", "delete"],
            "description": "Operation type"
          },
          "triple": {
            "type": "object",
            "properties": {
              "subject": {"type": "string", "format": "uri"},
              "predicate": {"type": "string", "format": "uri"},
              "object": {
                "oneOf": [
                  {"type": "string", "format": "uri"},
                  {
                    "type": "object",
                    "properties": {
                      "value": {"type": "string"},
                      "datatype": {"type": "string", "format": "uri"},
                      "language": {"type": "string"}
                    },
                    "required": ["value"]
                  }
                ]
              }
            },
            "required": ["subject", "predicate", "object"]
          }
        },
        "required": ["type", "triple"]
      },
      "description": "Ordered list of add/delete operations"
    },
    "metadata": {
      "type": "object",
      "properties": {
        "createdBy": {"type": "string"},
        "description": {"type": "string"},
        "source": {
          "type": "string",
          "description": "Origin of change (e.g., 'SemanticDebtCreated event')"
        }
      },
      "additionalProperties": true
    }
  },
  "required": ["id", "timestamp", "sourceSnapshotId", "operations"]
}

SEA-Forge™ Application:


7.3. SnapshotQueryResult Schema

Purpose: Result of executing a query against a specific snapshot, including stability verification.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "SnapshotQueryResult",
  "description": "Result of executing a query against a snapshot",
  "type": "object",
  "properties": {
    "snapshotId": {
      "type": "string",
      "pattern": "^ifl:snap:[a-f0-9]{64}$"
    },
    "query": {
      "type": "object",
      "properties": {
        "language": {
          "type": "string",
          "enum": ["sparql", "cypher"]
        },
        "text": {"type": "string"}
      },
      "required": ["language", "text"]
    },
    "results": {
      "type": "array",
      "items": {"type": "object"},
      "description": "Query result bindings"
    },
    "executionTimeMs": {
      "type": "integer",
      "minimum": 0,
      "description": "Query execution time in milliseconds"
    },
    "resultHash": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$",
      "description": "SHA-256 hash of canonical result serialization (for stability verification)"
    }
  },
  "required": ["snapshotId", "query", "results", "executionTimeMs", "resultHash"]
}

SEA-Forge™ Application:


Implementation Guidelines

Schema Validation

Storage Strategy

Versioning



Next Steps for SEA-Forge™

  1. Adapt Schemas for polyglot DSL (Rust, TS, Python types)
  2. Generate TypeScript Interfaces from JSON Schemas for frontend type safety
  3. Create Prisma/Drizzle ORM Models from Entity/Resource/Flow schemas
  4. Implement CALM Validator using CALM schema
  5. Build CADSL Renderer consuming CognitiveArtifact schema in Remix
  6. Implement Snapshot Storage in Oxigraph with content-addressable IDs
  7. Build ChangeSet Processor for deterministic graph projections

Status: This represents SEA™ 4.0 data model. SEA-Forge™ implementation should use these as reference but adapt to evolving pillar architecture.