Documentation
¶
Overview ¶
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE
ENGMODEL-OWNER-UNIT: FU-SYSTEM-COMPOSITION
ENGMODEL-OWNER-UNIT: FU-SYSTEM-COMPOSITION
ENGMODEL-OWNER-UNIT: FU-SYSTEM-COMPOSITION
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER
Index ¶
- Constants
- Variables
- func CompareSysMLV2RoundTrip(expected, actual model.SemanticModel) []string
- func GenerateGemaraOSCALAssessmentResults(bundle model.Bundle, requirements model.RequirementsDocument, codeRoot string, ...) (string, error)
- func GenerateGemaraOSCALAssessmentResultsFromFiles(architecturePath, requirementsPath, codeRoot string, ...) (string, error)
- func GenerateGemaraOSCALCatalog(bundle model.Bundle, options GemaraExportOptions) (string, error)
- func GenerateGemaraOSCALCatalogFromFile(architecturePath string, options GemaraExportOptions) (string, error)
- func GenerateOSCALProfile(bundle model.Bundle, options OSCALProfileOptions) (string, error)
- func GenerateOSCALProfileFromFile(path string, options OSCALProfileOptions) (string, error)
- func GenerateSysMLV2Projection(semantic model.SemanticModel) (string, []model.SemanticDiagnostic)
- func HasComposition(bundle model.Bundle) bool
- func ImportSysMLV2Project(sourcePath string) (model.SemanticModel, error)
- func QualifiedReferenceDiagnostics(bundle model.Bundle, result CompositionResult) []validate.Diagnostic
- func ResolveCompositionProjection(bundle model.Bundle) (CompositionProjection, CompositionResult, error)
- func ResolveCompositionProjectionWith(bundle model.Bundle, options ResolutionOptions) (CompositionProjection, CompositionResult, error)
- func SuppressWaivedDiagnostics(diags []validate.Diagnostic, waivers map[string][]string) []validate.Diagnostic
- func ValidateSysMLV2Coverage(manifest SysMLCoverageManifest) error
- func WriteCompositionLock(path string, lock CompositionLockDocument) error
- type AirborneAssuranceOptions
- type AirborneAssuranceResult
- type AsciiDocOptions
- type AsciiDocResult
- type ComposedSystem
- type CompositionLockDependency
- type CompositionLockDocument
- type CompositionProjection
- type CompositionResult
- func GenerateCompositionForBundle(bundle model.Bundle, options ResolutionOptions) (CompositionResult, error)
- func GenerateCompositionFromFile(manifestPath string) (CompositionResult, error)
- func GenerateCompositionFromFileWith(manifestPath string, options ResolutionOptions) (CompositionResult, error)
- type DanglingLink
- type GemaraCrossReferenceError
- type GemaraEvaluationResult
- type GemaraExportOptions
- type GemaraExportResult
- type ImportedEntityProvenance
- type LobsterActivityExportOptions
- type LobsterActivityExportResult
- type MaterializedAllocation
- type NAFExportResult
- type OSCALAPDocument
- type OSCALAPOptions
- type OSCALAPResult
- type OSCALARDocument
- type OSCALAROptions
- type OSCALARResult
- type OSCALPOAMDocument
- type OSCALPOAMOptions
- type OSCALPOAMResult
- type OSCALProfileOptions
- type OSCALSSPDocument
- type OSCALSSPOptions
- type OSCALSSPResult
- type PublishedProjection
- type PublishedProjectionEntity
- type RequirementsDelta
- type RequirementsDeltaOperations
- type RequirementsDeltaResult
- type ResolutionOptions
- type Result
- type StructurizrExportResult
- type SysMLCoverageAuthority
- type SysMLCoverageCheckEvidence
- type SysMLCoverageManifest
- type SysMLCoverageTotals
- type SysMLExportResult
- type SysMLExtensionCoverage
- type SysMLMetaclassCoverage
- type SysMLPropertyCoverage
- type SysMLRelationshipCoverage
- type SysMLRendererCoverage
- type SysMLRendererEvidence
- type SysMLRoundTripResult
- type TRLCExportOptions
- type TRLCExportResult
- type ThreatModelExportOptions
- type ThreatModelExportResult
- type ThreatModelFormat
- type TraceCodeRef
- type TraceDelegatedStatus
- type TraceDelegation
- type TraceMatrix
- type TraceOptions
- type TraceProvenance
- type TraceRow
- type TraceSummary
Constants ¶
const ( // LockModeWrite writes engmod.lock.yml (or the local lock in workspace mode). LockModeWrite = "write" // LockModeCheck compares the resolved lock with engmod.lock.yml and writes nothing. LockModeCheck = "check" )
const ( // ModuleCacheReuse reuses a cached module without contacting the // registry. Set explicitly it applies in every lock mode; it is also the // default except for lock check mode and lock regeneration (see cacheMode). ModuleCacheReuse = "reuse" // ModuleCacheRefresh re-fetches every registry dependency. ModuleCacheRefresh = "refresh" )
const AirborneDisclaimer = "DRAFT / NOT A COMPLIANCE OR CERTIFICATION DETERMINATION"
const CompositionLocalLockFileName = "engmod.lock.local.yml"
CompositionLocalLockFileName receives the resolved lock while workspace replacements are active, so the committed lock never pins unpublished content.
const CompositionLockFileName = "engmod.lock.yml"
const GemaraVersion = "1.1.0"
GemaraVersion is the Gemara specification version stamped into every artifact's metadata.
const LockEnv = "ENGMOD_LOCK"
LockEnv selects the lock mode: "check" compares with the committed lock and writes nothing; "write" (or unset) writes the lock.
const ModuleCacheEnv = "ENGMOD_MODULE_CACHE"
ModuleCacheEnv selects the module cache mode: "refresh" re-fetches every registry dependency; "reuse" reuses cached modules offline; unset applies the defaults of cacheMode.
Variables ¶
var ErrNoAviationProfile = errors.New("no aviation assurance profile is authored")
var ErrNoLobsterActivities = errors.New("LOBSTER activity trace requires at least one TRLC-linked source artifact")
var ErrNoOSCALCompliance = errors.New("OSCAL export requires at least one authored compliance mapping")
var ErrNoOSCALProfiles = errors.New("no OSCAL compliance profiles are authored")
ErrNoOSCALProfiles indicates that the model has no compliance profile to publish as an aggregate OSCAL profile.
var ErrNoPOAMItems = errors.New("OSCAL POA&M requires at least one authored POA&M item")
Functions ¶
func CompareSysMLV2RoundTrip ¶ added in v0.2.0
func CompareSysMLV2RoundTrip(expected, actual model.SemanticModel) []string
CompareSysMLV2RoundTrip reports differences in stable identity, ownership, relationships, expressions, references, and typed extensions.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
func GenerateGemaraOSCALAssessmentResults ¶
func GenerateGemaraOSCALAssessmentResults(bundle model.Bundle, requirements model.RequirementsDocument, codeRoot string, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALAssessmentResults converts the Gemara Evaluation Log to OSCAL Assessment Results JSON via the go-gemara SDK. Returns "" when there is nothing to evaluate. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraOSCALAssessmentResultsFromFiles ¶
func GenerateGemaraOSCALAssessmentResultsFromFiles(architecturePath, requirementsPath, codeRoot string, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALAssessmentResultsFromFiles loads inputs and emits OSCAL Assessment Results derived from the Gemara evaluation log. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraOSCALCatalog ¶
func GenerateGemaraOSCALCatalog(bundle model.Bundle, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALCatalog converts the Gemara Control Catalog to an OSCAL Catalog JSON document via the go-gemara SDK. Returns "" when there are no controls. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraOSCALCatalogFromFile ¶
func GenerateGemaraOSCALCatalogFromFile(architecturePath string, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALCatalogFromFile loads the model and emits an OSCAL Catalog derived from the Gemara Control Catalog. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateOSCALProfile ¶ added in v0.2.0
func GenerateOSCALProfile(bundle model.Bundle, options OSCALProfileOptions) (string, error)
GenerateOSCALProfile emits a deterministic OSCAL 1.1.2 aggregate profile so multi-framework SSPs import every framework they implement. TRLC-LINKS: REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateOSCALProfileFromFile ¶ added in v0.2.0
func GenerateOSCALProfileFromFile(path string, options OSCALProfileOptions) (string, error)
GenerateOSCALProfileFromFile loads a model and emits one profile importing every authored compliance profile. TRLC-LINKS: REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateSysMLV2Projection ¶ added in v0.2.0
func GenerateSysMLV2Projection(semantic model.SemanticModel) (string, []model.SemanticDiagnostic)
GenerateSysMLV2Projection renders a pre-built semantic graph. Missing rendering rules are errors; official concepts are never replaced by a generic item declaration.
TRLC-LINKS: REQ-EMG-036 ENGMODEL-LINKS: FU-SYSML-EXPORTER, DO-CANONICAL-SEMANTIC-MODEL, DO-SYSML-V2-MODEL
func HasComposition ¶
HasComposition reports whether the model declares any subsystems. TRLC-LINKS: REQ-EMG-016 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION
func ImportSysMLV2Project ¶ added in v0.2.0
func ImportSysMLV2Project(sourcePath string) (model.SemanticModel, error)
ImportSysMLV2Project reconstructs the canonical semantic model from legacy projects that embedded an Engineering Model payload. Native projections do not embed non-SysML canonical data.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
func QualifiedReferenceDiagnostics ¶ added in v0.4.0
func QualifiedReferenceDiagnostics(bundle model.Bundle, result CompositionResult) []validate.Diagnostic
QualifiedReferenceDiagnostics reports every alias::ID reference in the authored model that no selected dependency publication makes visible, once per field path (composition.unpublished_reference). A model without composition has no visible imports, so each of its qualified references is reported. TRLC-LINKS: REQ-EMG-065 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-VALIDATION-ENGINE
func ResolveCompositionProjection ¶ added in v0.2.0
func ResolveCompositionProjection(bundle model.Bundle) (CompositionProjection, CompositionResult, error)
ResolveCompositionProjection resolves and validates composition for a bundle. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
func ResolveCompositionProjectionWith ¶ added in v0.4.0
func ResolveCompositionProjectionWith(bundle model.Bundle, options ResolutionOptions) (CompositionProjection, CompositionResult, error)
ResolveCompositionProjectionWith is ResolveCompositionProjection under explicit workspace and lock modes. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051, REQ-EMG-063, REQ-EMG-064
func SuppressWaivedDiagnostics ¶ added in v0.4.0
func SuppressWaivedDiagnostics(diags []validate.Diagnostic, waivers map[string][]string) []validate.Diagnostic
SuppressWaivedDiagnostics removes requirement-scoped diagnostics a model has explicitly waived. waivers maps a requirement id to the diagnostic codes waived for it (for example "lint.multiple_responses"). Only warnings are suppressed: an error is never waived. Diagnostics whose path is not a requirement path are kept. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-VALID, STATE-MODEL-INVALID TRLC-LINKS: REQ-EMG-001, REQ-EMG-009
func ValidateSysMLV2Coverage ¶ added in v0.2.0
func ValidateSysMLV2Coverage(manifest SysMLCoverageManifest) error
ValidateSysMLV2Coverage rejects any gap or stale/tampered evidence.
TRLC-LINKS: REQ-EMG-039, REQ-EMG-040
func WriteCompositionLock ¶ added in v0.2.0
func WriteCompositionLock(path string, lock CompositionLockDocument) error
WriteCompositionLock writes deterministic generated dependency state. TRLC-LINKS: REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051
Types ¶
type AirborneAssuranceOptions ¶ added in v0.2.0
type AirborneAssuranceResult ¶ added in v0.2.0
type AirborneAssuranceResult struct {
Files map[string][]byte
Diagnostics []model.AviationDiagnostic
}
func GenerateAirborneAssuranceFromFile ¶ added in v0.2.0
func GenerateAirborneAssuranceFromFile(manifestPath string, options AirborneAssuranceOptions) (AirborneAssuranceResult, error)
GenerateAirborneAssuranceFromFile validates and renders the complete evidence-readiness package. It does not determine compliance or certification. TRLC-LINKS: REQ-EMG-053, REQ-EMG-054, REQ-EMG-055
type AsciiDocOptions ¶
type AsciiDocOptions struct {
ViewIDs []string
CodeRoot string
DecisionsDocPath string
// Resolution overrides ENGMOD_WORK / ENGMOD_LOCK for the composition run.
Resolution ResolutionOptions
// Composition, when set, is a composition already resolved for this
// bundle's manifest; GenerateAsciiDoc then does not compose again.
Composition *CompositionResult
}
ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FU-CODEMAP-INFERENCE, CTRL-TRACEABILITY-COVERAGE, DEP-LOCAL-WORKSPACE
type AsciiDocResult ¶
type AsciiDocResult struct {
Document string
DecisionsDocument string
Diagnostics []validate.Diagnostic
}
ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateAsciiDoc ¶
func GenerateAsciiDoc(bundle model.Bundle, requirements model.RequirementsDocument, design model.DesignDocument, options AsciiDocOptions) (AsciiDocResult, error)
GenerateAsciiDoc validates and renders the model. With composition it resolves the dependencies once, validates against the bundle enriched with their published entities, and returns every composition diagnostic; a composition error fails the call like any other validation error. ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS TRLC-LINKS: REQ-EMG-001, REQ-EMG-003, REQ-EMG-014, REQ-EMG-035, REQ-EMG-036, REQ-EMG-065, REQ-EMG-066
func GenerateAsciiDocFromFiles ¶
func GenerateAsciiDocFromFiles(architecturePath, requirementsPath, designPath string, options AsciiDocOptions) (AsciiDocResult, error)
ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS TRLC-LINKS: REQ-EMG-001, REQ-EMG-003, REQ-EMG-014
type ComposedSystem ¶
type ComposedSystem struct {
SubsystemID string
Dependency string
Publication string
ModulePath string
Version string
Dir string
Bundle model.Bundle
Requirements model.RequirementsDocument
PublishedIDs map[string]bool
PublishedFacet map[string]string
Children []*ComposedSystem
}
ComposedSystem is a resolved system together with its resolved subsystems. ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, DO-ARCHITECTURE-MODEL
type CompositionLockDependency ¶ added in v0.2.0
type CompositionLockDocument ¶ added in v0.2.0
type CompositionLockDocument struct {
SchemaVersion int `yaml:"schemaVersion"`
Dependencies []CompositionLockDependency `yaml:"dependencies"`
}
CompositionLockDocument is deterministic generated dependency state. TRLC-LINKS: REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051
type CompositionProjection ¶ added in v0.2.0
type CompositionProjection struct {
Publications []PublishedProjection
Entities []PublishedProjectionEntity
}
CompositionProjection is the reusable, read-only projection boundary used by every output format. It never mutates an authored bundle. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
func BuildCompositionProjection ¶ added in v0.2.0
func BuildCompositionProjection(result CompositionResult) CompositionProjection
BuildCompositionProjection materializes only direct, explicitly selected dependency publications. Transitive or unexported child data is not exposed. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
func (CompositionProjection) Domain ¶ added in v0.2.0
func (projection CompositionProjection) Domain(domain string) []PublishedProjectionEntity
Domain returns published entities from one manifest publication facet. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
func (CompositionProjection) EnrichBundle ¶ added in v0.2.0
func (projection CompositionProjection) EnrichBundle(bundle model.Bundle, domains ...string) model.Bundle
EnrichBundle returns a projection-only copy containing typed published entities. It is intended for native generators after the authored bundle has been validated; unsupported relationships are omitted rather than flattened. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051, REQ-EMG-065
type CompositionResult ¶
type CompositionResult struct {
Root *ComposedSystem
Allocations []MaterializedAllocation
Provenance []ImportedEntityProvenance
Lock CompositionLockDocument
Diagnostics []validate.Diagnostic
// Workspace is the workspace root the dependencies resolved from.
Workspace string
// contains filtered or unexported fields
}
CompositionResult is the resolved tree plus materialized allocation trace and diagnostics. ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-ALLOCATION-TRACE
func GenerateCompositionForBundle ¶ added in v0.4.0
func GenerateCompositionForBundle(bundle model.Bundle, options ResolutionOptions) (CompositionResult, error)
GenerateCompositionForBundle resolves the composition of an already loaded bundle: the dependencies are resolved from bundle.ManifestPath's location (workspace, module cache, lock) as in GenerateCompositionFromFileWith, but the root system - its manifest dependencies, composition, contract and every alias::ID reference - is the given bundle, not the files on disk. A caller validating edited content in memory thus gets the diagnostics of that content. TRLC-LINKS: REQ-EMG-065, REQ-EMG-066, REQ-EMG-069 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-MODEL-LOADER
func GenerateCompositionFromFile ¶
func GenerateCompositionFromFile(manifestPath string) (CompositionResult, error)
GenerateCompositionFromFile resolves the system-of-systems rooted at engmod.yml with the workspace and lock modes taken from ENGMOD_WORK and ENGMOD_LOCK. TRLC-LINKS: REQ-EMG-016, REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051, REQ-EMG-063, REQ-EMG-064 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-MODEL-LOADER, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
func GenerateCompositionFromFileWith ¶ added in v0.4.0
func GenerateCompositionFromFileWith(manifestPath string, options ResolutionOptions) (CompositionResult, error)
GenerateCompositionFromFileWith resolves the system-of-systems rooted at engmod.yml under explicit workspace and lock modes. Lock policy: while workspace replacements are active, engmod.lock.yml is never touched and the resolved lock is written to engmod.lock.local.yml; in check mode nothing is written and, without replacements, the resolved lock is compared with the committed one (composition.lock_missing, lock_invalid, lock_mismatch); otherwise engmod.lock.yml is written. TRLC-LINKS: REQ-EMG-016, REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051, REQ-EMG-063, REQ-EMG-064, REQ-EMG-066 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-MODEL-LOADER, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
func (CompositionResult) DisplayDir ¶ added in v0.4.0
func (r CompositionResult) DisplayDir(dir string) string
DisplayDir names a resolved directory for output that may leave the machine (MCP responses): a module cache entry as module@version, a directory under the workspace root relative to it, anything else by its base name. It never returns an absolute path. TRLC-LINKS: REQ-EMG-069, REQ-EMG-066 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, CTRL-MCP-PATH-BOUNDARY
type DanglingLink ¶
type DanglingLink struct {
Kind string `json:"kind"` // requirement | model
Target string `json:"target"`
From string `json:"from"` // file:line
}
DanglingLink is a code trace link that resolves to nothing in the model. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE
type GemaraCrossReferenceError ¶ added in v0.4.0
type GemaraCrossReferenceError struct {
Artifact string `json:"artifact"`
Path string `json:"path"`
ReferenceId string `json:"referenceId"`
EntryId string `json:"entryId,omitempty"`
Message string `json:"message"`
}
GemaraCrossReferenceError reports one reference that does not resolve within the rendered artifact set. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func CheckGemaraCrossReferences ¶ added in v0.4.0
func CheckGemaraCrossReferences(docs map[string]string) []GemaraCrossReferenceError
CheckGemaraCrossReferences parses the artifacts (short-name -> YAML) and returns every EntryMapping, MultiEntryMapping, artifact import and mapping document source/target that does not resolve within the set. Documents that fail to parse are reported as errors too. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func CheckGemaraModelConsistency ¶ added in v0.4.0
func CheckGemaraModelConsistency(bundle model.Bundle, docs map[string]string) []GemaraCrossReferenceError
CheckGemaraModelConsistency compares the treatment claims in a rendered artifact set (short-name -> YAML) with the model they were rendered from: an enforcement action's disposition must follow its POA&M item's status (only completed is Enforced, only accepted is Tolerated), the log's aggregate must follow the actions, the policy may list a risk as mitigated only when it is closed and as accepted only when it is accepted. It reports each claim the model does not support with the same error shape as the cross-reference check. TRLC-LINKS: REQ-EMG-015, REQ-EMG-062 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type GemaraEvaluationResult ¶
type GemaraEvaluationResult struct {
EvaluationLog gemara.EvaluationLog
YAML string
HasContent bool // false when there is nothing to evaluate (no controls)
}
GemaraEvaluationResult holds the L5 Evaluation Log and its serialization. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraEvaluationLog ¶
func GenerateGemaraEvaluationLog(bundle model.Bundle, requirements model.RequirementsDocument, codeRoot string, options GemaraExportOptions) (GemaraEvaluationResult, error)
GenerateGemaraEvaluationLog builds an L5 Evaluation Log from the model bundle. requirements and codeRoot are reserved for inferred-verification augmentation. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraEvaluationLogFromFiles ¶
func GenerateGemaraEvaluationLogFromFiles(architecturePath, requirementsPath, codeRoot string, options GemaraExportOptions) (GemaraEvaluationResult, error)
GenerateGemaraEvaluationLogFromFiles loads inputs and renders the Evaluation Log. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type GemaraExportOptions ¶
type GemaraExportOptions struct {
AuthorID string // metadata.author.id (default "engmod")
AuthorName string // metadata.author.name (default "Engineering Model")
// AuthorType is metadata.author.type. The default author is this generator,
// so the zero value renders Software; set Human when a person signs.
AuthorType gemara.EntityType
Version string // metadata.version (optional)
Date string // metadata.date, ISO 8601 (optional; omitted when empty for reproducibility)
AssessmentPlanHref string // OSCAL Assessment Results import-ap href
}
GemaraExportOptions configures the deterministic metadata stamped into artifacts. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type GemaraExportResult ¶
type GemaraExportResult struct {
ControlCatalog gemara.ControlCatalog
ThreatCatalog gemara.ThreatCatalog
RiskCatalog gemara.RiskCatalog
VectorCatalog gemara.VectorCatalog
CapabilityCatalog gemara.CapabilityCatalog
// Extended artifacts (emitted only when the model has supporting data).
PrincipleCatalog gemara.PrincipleCatalog
GuidanceCatalog gemara.GuidanceCatalog
Policy gemara.Policy
Lexicon gemara.Lexicon
ControlThreatMapping gemara.MappingDocument
AuditLog gemara.AuditLog
EnforcementLog gemara.EnforcementLog
HasGuidance bool
HasPolicy bool
HasMapping bool
HasAudit bool
HasEnforcement bool
// YAML maps an artifact short-name (e.g. "control-catalog") to its serialized document.
YAML map[string]string
// Diagnostics reports values Gemara requires that the model does not state
// (rendered as "not set") so they are not mistaken for authored content.
Diagnostics []validate.Diagnostic
}
GemaraExportResult holds the typed Gemara documents and their YAML serializations. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemara ¶
func GenerateGemara(bundle model.Bundle, options GemaraExportOptions) (GemaraExportResult, error)
GenerateGemara renders the engineering model bundle into Gemara L1-L3 documents. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraFromFile ¶
func GenerateGemaraFromFile(architecturePath string, options GemaraExportOptions) (GemaraExportResult, error)
GenerateGemaraFromFile loads the model bundle and renders the Gemara catalogs. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type ImportedEntityProvenance ¶ added in v0.2.0
type ImportedEntityProvenance struct {
QualifiedID string `yaml:"qualifiedId"`
Alias string `yaml:"alias"`
ModulePath string `yaml:"path"`
Version string `yaml:"version"`
SourceModel string `yaml:"sourceModelId"`
Publication string `yaml:"publicationId"`
Domain string `yaml:"domain"`
SourceID string `yaml:"sourceId"`
ResolvedDir string `yaml:"resolvedDirectory"`
}
ImportedEntityProvenance records where each visible imported identifier came from without leaking composition metadata into generic target properties. TRLC-LINKS: REQ-EMG-047, REQ-EMG-049, REQ-EMG-051
type LobsterActivityExportOptions ¶
ENGMODEL-LINKS: FU-LOBSTER-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-TRLC-EXPORTER
type LobsterActivityExportResult ¶
type LobsterActivityExportResult struct {
JSON string
}
ENGMODEL-LINKS: FU-LOBSTER-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateLobsterActivityTraceFromDir ¶
func GenerateLobsterActivityTraceFromDir(testsDir string, options LobsterActivityExportOptions) (LobsterActivityExportResult, error)
TRLC-LINKS: REQ-EMG-006, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-LOBSTER-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-TRLC-EXPORTER, FU-CODEMAP-INFERENCE, DEP-LOCAL-WORKSPACE
type MaterializedAllocation ¶
type MaterializedAllocation struct {
System string // owning (parent) system id
Requirement string
Subsystem string
Target string // public id within the subsystem
TargetRef string // the subsystem requirement that realizes the target (its contract ref)
Resolved bool // target is published in the subsystem contract
TargetRefResolved bool // TargetRef names a requirement that exists in the subsystem
Note string
}
MaterializedAllocation is a parent->subsystem allocation with its composed-view resolution status. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, CTRL-TRACEABILITY-COVERAGE
type NAFExportResult ¶ added in v0.2.0
type NAFExportResult struct {
Document string
Diagnostics []validate.Diagnostic
}
NAFExportResult is a deterministic NAF v4.1 architecture document and its diagnostics.
func GenerateNAFV41 ¶ added in v0.2.0
func GenerateNAFV41(bundle model.Bundle) (NAFExportResult, error)
GenerateNAFV41 validates and projects existing Engmod views into NAF products. TRLC-LINKS: REQ-EMG-041, REQ-EMG-042, REQ-EMG-043
func GenerateNAFV41FromFile ¶ added in v0.2.0
func GenerateNAFV41FromFile(architecturePath string) (NAFExportResult, error)
GenerateNAFV41FromFile loads canonical YAML and generates the selected NAF products. TRLC-LINKS: REQ-EMG-041, REQ-EMG-042, REQ-EMG-043 ENGMODEL-LINKS: FU-NAF-EXPORTER, IF-CLI-ENGNAF, DO-NAF-V4-ARCHITECTURE, REF-NAF-V4-1-SPECIFICATION
type OSCALAPDocument ¶ added in v0.2.0
type OSCALAPDocument struct {
AssessmentPlan oscalAssessmentPlan `json:"assessment-plan"`
}
type OSCALAPOptions ¶ added in v0.2.0
type OSCALAPResult ¶ added in v0.2.0
type OSCALAPResult struct {
JSON string
Document OSCALAPDocument
Diagnostics []validate.Diagnostic
}
func GenerateOSCALAssessmentPlan ¶ added in v0.2.0
func GenerateOSCALAssessmentPlan(bundle model.Bundle, options OSCALAPOptions) (OSCALAPResult, error)
TRLC-LINKS: REQ-EMG-012, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE
func GenerateOSCALAssessmentPlanFromFile ¶ added in v0.2.0
func GenerateOSCALAssessmentPlanFromFile(architecturePath string, options OSCALAPOptions) (OSCALAPResult, error)
TRLC-LINKS: REQ-EMG-012, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type OSCALARDocument ¶
type OSCALARDocument struct {
AssessmentResults oscalAssessmentResults `json:"assessment-results"`
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALAROptions ¶
type OSCALAROptions struct {
AssessmentPlanHref string
RequirementsPath string
CodeRoot string
ProfileHref string
CatalogHref string
LastModified string
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALARResult ¶
type OSCALARResult struct {
JSON string
Document OSCALARDocument
Diagnostics []validate.Diagnostic
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALAssessmentResults ¶
func GenerateOSCALAssessmentResults(bundle model.Bundle, requirements model.RequirementsDocument, options OSCALAROptions) (OSCALARResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-THREAT-EXPORTER, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALAssessmentResultsFromFile ¶
func GenerateOSCALAssessmentResultsFromFile(architecturePath string, options OSCALAROptions) (OSCALARResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type OSCALPOAMDocument ¶
type OSCALPOAMDocument struct {
PlanOfActionAndMilestones oscalPOAMRoot `json:"plan-of-action-and-milestones"`
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALPOAMOptions ¶
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALPOAMResult ¶
type OSCALPOAMResult struct {
JSON string
Document OSCALPOAMDocument
Diagnostics []validate.Diagnostic
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALPOAM ¶
func GenerateOSCALPOAM(bundle model.Bundle, options OSCALPOAMOptions) (OSCALPOAMResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-THREAT-EXPORTER, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALPOAMFromFile ¶
func GenerateOSCALPOAMFromFile(architecturePath string, options OSCALPOAMOptions) (OSCALPOAMResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type OSCALProfileOptions ¶ added in v0.2.0
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALSSPDocument ¶
type OSCALSSPDocument struct {
SystemSecurityPlan oscalSystemSecurityPlan `json:"system-security-plan"`
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALSSPOptions ¶
type OSCALSSPOptions struct {
ProfileHref string
ImportProfileHref string
CatalogHref string
SystemName string
SystemDescription string
LastModified string
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALSSPResult ¶
type OSCALSSPResult struct {
JSON string
Document OSCALSSPDocument
Diagnostics []validate.Diagnostic
}
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALSSP ¶
func GenerateOSCALSSP(bundle model.Bundle, options OSCALSSPOptions) (OSCALSSPResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALSSPFromFile ¶
func GenerateOSCALSSPFromFile(architecturePath string, options OSCALSSPOptions) (OSCALSSPResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type PublishedProjection ¶ added in v0.2.0
type PublishedProjection struct {
Alias string
Publication string
ModulePath string
Version string
SourceModel string
Entities []PublishedProjectionEntity
}
PublishedProjection groups the entities selected from one dependency publication. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
type PublishedProjectionEntity ¶ added in v0.2.0
type PublishedProjectionEntity struct {
QualifiedID string
SourceID string
Domain string
Facet string
Value any
Source *model.Bundle
Provenance ImportedEntityProvenance
}
PublishedProjectionEntity is one explicitly published dependency entity, retaining its typed value, qualified identity, source bundle, and provenance. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
type RequirementsDelta ¶
type RequirementsDelta struct {
Version int `yaml:"version"`
Requirements RequirementsDeltaOperations `yaml:"requirements"`
}
RequirementsDelta describes stable-ID operations against requirements.yml. Updates replace the complete requirement entity. ENGMODEL-LINKS: FU-MODEL-CHANGE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT
type RequirementsDeltaOperations ¶
type RequirementsDeltaOperations struct {
Add []model.Requirement `yaml:"add"`
Update []model.Requirement `yaml:"update"`
Remove []string `yaml:"remove"`
}
RequirementsDeltaOperations groups supported requirement mutations. ENGMODEL-LINKS: FU-MODEL-CHANGE, DO-REQUIREMENTS-DELTA
type RequirementsDeltaResult ¶
type RequirementsDeltaResult struct {
Candidate model.RequirementsDocument
YAML []byte
Diff string
Added []string
Updated []string
Removed []string
Diagnostics []validate.Diagnostic
}
RequirementsDeltaResult is the validated candidate and deterministic change summary. ENGMODEL-LINKS: FU-MODEL-CHANGE, FU-VALIDATION-ENGINE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT
func ApplyRequirementsDelta ¶
func ApplyRequirementsDelta(root, deltaPath string) (result RequirementsDeltaResult, err error)
ApplyRequirementsDelta validates and atomically writes a requirements delta. TRLC-LINKS: REQ-EMG-031, REQ-EMG-032, REQ-EMG-033 ENGMODEL-LINKS: FU-MODEL-CHANGE, FU-MODEL-LOADER, FU-VALIDATION-ENGINE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT, DEP-LOCAL-WORKSPACE
func PlanRequirementsDelta ¶
func PlanRequirementsDelta(root, deltaPath string) (RequirementsDeltaResult, error)
PlanRequirementsDelta loads a delta, applies it in memory, and validates the complete candidate. It never modifies requirements.yml. TRLC-LINKS: REQ-EMG-031, REQ-EMG-032 ENGMODEL-LINKS: FU-MODEL-CHANGE, FU-MODEL-LOADER, FU-VALIDATION-ENGINE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT
type ResolutionOptions ¶ added in v0.4.0
type ResolutionOptions struct {
Workspace string
Lock string
// ModuleCache is "refresh" to re-fetch every registry dependency into
// the module cache, or "reuse"; empty falls back to ENGMOD_MODULE_CACHE.
ModuleCache string
}
ResolutionOptions overrides the ENGMOD_WORK and ENGMOD_LOCK environment for one call. Empty fields fall back to the environment. Workspace is "off" or a workspace file path; Lock is "check" or "write". TRLC-LINKS: REQ-EMG-063, REQ-EMG-064
type Result ¶
type Result struct {
Bundle model.Bundle
View view.ProjectedView
Mermaid string
SVG string
Diagnostics []validate.Diagnostic
}
ENGMODEL-LINKS: FU-CLI-ORCHESTRATION, FU-VIEW-PROJECTION, FU-ASCIIDOC-GENERATOR, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func Generate ¶
TRLC-LINKS: REQ-EMG-001, REQ-EMG-003, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-CLI-ORCHESTRATION, FU-VIEW-PROJECTION, FU-ASCIIDOC-GENERATOR, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateFromFile ¶
TRLC-LINKS: REQ-EMG-001, REQ-EMG-003 ENGMODEL-LINKS: FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-CLI-ORCHESTRATION, FU-VIEW-PROJECTION
type StructurizrExportResult ¶
type StructurizrExportResult struct {
DSL string
Diagnostics []validate.Diagnostic
}
ENGMODEL-LINKS: FU-STRUCTURIZR-EXPORTER, DO-STRUCTURIZR-DSL, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateStructurizrDSL ¶
func GenerateStructurizrDSL(bundle model.Bundle) (StructurizrExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-005, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-STRUCTURIZR-EXPORTER, DO-STRUCTURIZR-DSL, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, DEP-LOCAL-WORKSPACE, DEP-CI-PIPELINE, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateStructurizrDSLFromFile ¶
func GenerateStructurizrDSLFromFile(architecturePath string) (StructurizrExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-005 ENGMODEL-LINKS: FU-STRUCTURIZR-EXPORTER, DO-STRUCTURIZR-DSL, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type SysMLCoverageAuthority ¶ added in v0.2.0
type SysMLCoverageAuthority struct {
Baseline string `json:"baseline"`
MetamodelAuthority string `json:"metamodelAuthority"`
FormalRelease sysmlmetamodel.FormalRelease `json:"formalRelease"`
SourceManifestSHA256 string `json:"sourceManifestSha256"`
InventorySHA256 string `json:"inventorySha256"`
Sources []sysmlmetamodel.Source `json:"sources"`
}
type SysMLCoverageCheckEvidence ¶ added in v0.2.0
type SysMLCoverageManifest ¶ added in v0.2.0
type SysMLCoverageManifest struct {
SchemaVersion string `json:"schemaVersion"`
Claim string `json:"claim"`
Limitations []string `json:"limitations"`
Authority SysMLCoverageAuthority `json:"authority"`
Totals SysMLCoverageTotals `json:"totals"`
Metaclasses []SysMLMetaclassCoverage `json:"metaclasses"`
Properties []SysMLPropertyCoverage `json:"properties"`
Relationships []SysMLRelationshipCoverage `json:"relationships"`
Extensions []SysMLExtensionCoverage `json:"engineeringExtensions"`
Checks []SysMLCoverageCheckEvidence `json:"checks"`
}
func SysMLV2Coverage ¶ added in v0.2.0
func SysMLV2Coverage() SysMLCoverageManifest
SysMLV2Coverage returns metaclass/property-level evidence generated from the pinned official inventory and strict binding.
TRLC-LINKS: REQ-EMG-039, REQ-EMG-040
type SysMLCoverageTotals ¶ added in v0.2.0
type SysMLCoverageTotals struct {
Metaclasses int `json:"metaclasses"`
OwnedProperties int `json:"ownedProperties"`
EffectiveProperties int `json:"effectiveProperties"`
InheritanceEdges int `json:"inheritanceEdges"`
DerivedProperties int `json:"derivedProperties"`
Relationships int `json:"relationships"`
CoverageMapped int `json:"coverageMapped"`
CoverageDerived int `json:"coverageDerived"`
CoverageUnimplemented int `json:"coverageUnimplemented"`
NativeRendered int `json:"nativeRendered"`
AbstractOrImplicit int `json:"abstractOrImplicit"`
MissingRenderer int `json:"missingRenderer"`
ClassifiedRelationships int `json:"classifiedRelationships"`
}
type SysMLExportResult ¶ added in v0.2.0
type SysMLExportResult struct {
Text string `json:"text"`
Diagnostics []model.SemanticDiagnostic `json:"diagnostics"`
}
SysMLExportResult is a deterministic textual projection plus explicit projection and conformance diagnostics.
func ExportSysMLV2Project ¶ added in v0.2.0
func ExportSysMLV2Project(architecturePath, projectDir, kparPath, sysandPath string) (SysMLExportResult, error)
ExportSysMLV2Project creates a Sysand interchange project and builds its KPAR. Sysand, rather than a custom ZIP writer, owns all normative KPAR packaging.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037 ENGMODEL-LINKS: FU-SYSML-EXPORTER, IF-CLI-ENGSYSML, DO-SYSML-V2-MODEL, REF-SYSML-V2-TOOLCHAIN
func GenerateSysMLV2 ¶ added in v0.2.0
func GenerateSysMLV2(bundle model.Bundle) (SysMLExportResult, error)
GenerateSysMLV2 validates and projects a Bundle before rendering.
TRLC-LINKS: REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-SYSML-EXPORTER, DO-CANONICAL-SEMANTIC-MODEL, DO-SYSML-V2-MODEL
func GenerateSysMLV2FromFile ¶ added in v0.2.0
func GenerateSysMLV2FromFile(architecturePath string) (SysMLExportResult, error)
GenerateSysMLV2FromFile loads the canonical YAML input and generates a SysML v2 textual projection.
TRLC-LINKS: REQ-EMG-035, REQ-EMG-036, REQ-EMG-037, REQ-EMG-047, REQ-EMG-050 ENGMODEL-LINKS: FU-SYSML-EXPORTER, IF-CLI-ENGSYSML, DO-CANONICAL-SEMANTIC-MODEL, DO-SYSML-V2-MODEL, REF-SYSML-V2-TOOLCHAIN
type SysMLExtensionCoverage ¶ added in v0.2.0
type SysMLMetaclassCoverage ¶ added in v0.2.0
type SysMLMetaclassCoverage struct {
ID string `json:"id"`
Origin string `json:"origin"`
Abstract bool `json:"abstract"`
Relationship bool `json:"relationship"`
Status string `json:"status"`
RendererClassification string `json:"rendererClassification"`
Syntax string `json:"syntax,omitempty"`
Evidence []string `json:"evidence"`
}
type SysMLPropertyCoverage ¶ added in v0.2.0
type SysMLRelationshipCoverage ¶ added in v0.2.0
type SysMLRendererCoverage ¶ added in v0.2.0
type SysMLRendererCoverage struct {
OfficialMetaclasses int `json:"officialMetaclasses"`
NativeRules int `json:"nativeRules"`
NonInstantiable int `json:"nonInstantiable"`
MissingRules int `json:"missingRules"`
Relationships int `json:"relationships"`
Entries []SysMLRendererEvidence `json:"entries"`
}
type SysMLRendererEvidence ¶ added in v0.2.0
type SysMLRoundTripResult ¶ added in v0.2.0
type SysMLRoundTripResult struct {
ProjectDir string
KPARPath string
ReopenedDir string
SourcePath string
SourceText string
}
SysMLRoundTripResult captures the normative KPAR path and reopened native SysML source used for source-integrity comparison.
func ReopenSysMLV2Project ¶ added in v0.2.0
func ReopenSysMLV2Project(kparPath, reopenedDir, sysandPath string) (SysMLRoundTripResult, error)
ReopenSysMLV2Project clones a KPAR with Sysand and returns its native SysML project source.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
func VerifySysMLV2RoundTrip ¶ added in v0.2.0
func VerifySysMLV2RoundTrip(architecturePath, kparPath, reopenedDir, sysandPath string) (SysMLRoundTripResult, error)
VerifySysMLV2RoundTrip compares the reopened KPAR source to a fresh native SysML projection of the authored Engineering Model.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
type TRLCExportOptions ¶
type TRLCExportOptions struct {
PackageName string
}
ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type TRLCExportResult ¶
ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateTRLCRequirements ¶
func GenerateTRLCRequirements(requirements model.RequirementsDocument, options TRLCExportOptions) (TRLCExportResult, error)
TRLC-LINKS: REQ-EMG-006, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
func GenerateTRLCRequirementsFromFile ¶
func GenerateTRLCRequirementsFromFile(requirementsPath string, options TRLCExportOptions) (TRLCExportResult, error)
TRLC-LINKS: REQ-EMG-006 ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type ThreatModelExportOptions ¶
type ThreatModelExportOptions struct {
Format ThreatModelFormat
}
ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON
type ThreatModelExportResult ¶
type ThreatModelExportResult struct {
JSON string
Diagnostics []validate.Diagnostic
}
ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateThreatModelExport ¶
func GenerateThreatModelExport(bundle model.Bundle, options ThreatModelExportOptions) (ThreatModelExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-004, REQ-EMG-011, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateThreatModelExportFromFile ¶
func GenerateThreatModelExportFromFile(architecturePath string, options ThreatModelExportOptions) (ThreatModelExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-004, REQ-EMG-011 ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type ThreatModelFormat ¶
type ThreatModelFormat string
ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON
const ( ThreatModelFormatThreatDragonV2 ThreatModelFormat = "threat-dragon-v2" ThreatModelFormatOpenOTM ThreatModelFormat = "open-otm" )
type TraceCodeRef ¶
type TraceCodeRef struct {
Symbol string `json:"symbol"`
Path string `json:"path"`
Line int `json:"line,omitempty"`
}
TraceCodeRef is a code symbol that implements a requirement. ENGMODEL-LINKS: FU-CODEMAP-INFERENCE
type TraceDelegatedStatus ¶ added in v0.4.0
type TraceDelegatedStatus struct {
Requirement string `json:"requirement"`
Status string `json:"status"`
Implemented bool `json:"implemented"`
TestLinked bool `json:"testLinked"`
Result string `json:"result,omitempty"`
}
TraceDelegatedStatus is the trace status of a delegation's target requirement computed in the dependency itself. Status is "implemented", "test-linked", "delegated" or "orphan" as in that repository's own matrix, "not-available" when the dependency has no code sources, and "unknown-requirement" when the target requirement does not exist there. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, FU-SYSTEM-COMPOSITION
type TraceDelegation ¶
type TraceDelegation struct {
Subsystem string `json:"subsystem"`
Target string `json:"target"`
TargetRequirement string `json:"targetRequirement,omitempty"`
}
TraceDelegation is the downward allocation of a requirement onto a subsystem. ENGMODEL-LINKS: FU-ALLOCATION-TRACE
type TraceMatrix ¶
type TraceMatrix struct {
Model string `json:"model"`
Requirements []TraceRow `json:"requirements"`
DanglingLinks []DanglingLink `json:"danglingLinks"`
Orphans []string `json:"orphanRequirements"`
Summary TraceSummary `json:"summary"`
}
TraceMatrix is the consolidated, machine-readable traceability matrix for one model. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, CTRL-TRACEABILITY-COVERAGE
func BuildTraceMatrixFromFiles ¶
func BuildTraceMatrixFromFiles(modelPath, requirementsPath, codeRoot string) (TraceMatrix, []validate.Diagnostic, error)
BuildTraceMatrixFromFiles loads a model, scans its code root, scopes the code to the model, validates trace integrity, and returns the matrix together with diagnostics. TRLC-LINKS: REQ-EMG-028, REQ-EMG-030, REQ-EMG-050, REQ-EMG-051 ENGMODEL-LINKS: FU-ALLOCATION-TRACE, FU-MODEL-LOADER, FU-CODEMAP-INFERENCE
func BuildTraceMatrixFromFilesWith ¶ added in v0.4.0
func BuildTraceMatrixFromFilesWith(modelPath, requirementsPath, codeRoot string, options TraceOptions) (TraceMatrix, []validate.Diagnostic, error)
BuildTraceMatrixFromFilesWith is BuildTraceMatrixFromFiles with explicit resolution options. With composition it composes once, resolves code ENGMODEL-LINKS alias::ID against the dependencies' published entities (requirements stay local), returns the composition diagnostics, and reports each delegated requirement's own status in its target repository. TRLC-LINKS: REQ-EMG-028, REQ-EMG-030, REQ-EMG-050, REQ-EMG-051, REQ-EMG-065, REQ-EMG-066, REQ-EMG-067 ENGMODEL-LINKS: FU-ALLOCATION-TRACE, FU-MODEL-LOADER, FU-CODEMAP-INFERENCE, FU-SYSTEM-COMPOSITION
func (TraceMatrix) CSV ¶
func (m TraceMatrix) CSV() []byte
CSV renders the matrix as one row per requirement for spreadsheet/diff consumption. TRLC-LINKS: REQ-EMG-030 ENGMODEL-LINKS: FU-ALLOCATION-TRACE
type TraceOptions ¶ added in v0.4.0
type TraceOptions struct {
// Resolution overrides ENGMOD_WORK / ENGMOD_LOCK for the composition run.
Resolution ResolutionOptions
// Composition, when set, is a composition already resolved for this
// manifest; the trace then does not compose again.
Composition *CompositionResult
}
TraceOptions configures BuildTraceMatrixFromFilesWith. TRLC-LINKS: REQ-EMG-063, REQ-EMG-064, REQ-EMG-066
type TraceProvenance ¶ added in v0.2.0
type TraceProvenance struct {
Alias string `json:"alias"`
ModulePath string `json:"modulePath"`
Version string `json:"version"`
SourceModel string `json:"sourceModel"`
Publication string `json:"publication"`
SourceID string `json:"sourceId"`
}
TraceProvenance identifies the selected dependency publication that supplied an imported requirement. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
type TraceRow ¶
type TraceRow struct {
ID string `json:"id"`
Text string `json:"text,omitempty"`
Units []string `json:"units,omitempty"`
Code []TraceCodeRef `json:"code,omitempty"`
Verifications []string `json:"verifications,omitempty"`
// Result is the recorded outcome of the linked tests: "passed" when parsed
// test-result artifacts report only passes, "failed" when any reports a
// failure (or a blocked, partial or flaky run), "not-run" otherwise. It is
// empty when no verification is linked.
Result string `json:"result,omitempty"`
DelegatedTo *TraceDelegation `json:"delegatedTo,omitempty"`
// DelegatedStatus is the delegated (or imported) requirement's own trace
// status in its target repository at the resolved version.
DelegatedStatus *TraceDelegatedStatus `json:"delegatedStatus,omitempty"`
Provenance *TraceProvenance `json:"provenance,omitempty"`
Status string `json:"status"`
}
TraceRow is one requirement and everything that traces to it. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, CTRL-TRACEABILITY-COVERAGE
type TraceSummary ¶
type TraceSummary struct {
Requirements int `json:"requirements"`
Implemented int `json:"implemented"`
// Verified is deprecated: it counts test-linked requirements and always
// equals TestLinked and Tested. A linked test is not a verification; use
// TestLinked for links and Passed for requirements with recorded passes.
Verified int `json:"verified"`
// Tested counts requirements with at least one linked test function (or
// verification artifact).
Tested int `json:"tested"`
// TestLinked equals Tested under the name that says what it counts: a
// requirement linked from a test entry point, run or not.
TestLinked int `json:"testLinked"`
// Passed counts requirements whose linked verification has a recorded pass
// and no recorded failure in parsed test-result artifacts.
Passed int `json:"passed"`
Delegated int `json:"delegated"`
// DelegatedImplemented and DelegatedTestLinked count local delegated rows
// whose target requirement is implemented, respectively test linked, in
// the target repository.
DelegatedImplemented int `json:"delegatedImplemented"`
DelegatedTestLinked int `json:"delegatedTestLinked"`
Orphan int `json:"orphan"`
DanglingLinks int `json:"danglingLinks"`
}
TraceSummary is the headline coverage roll-up. ENGMODEL-LINKS: FU-ALLOCATION-TRACE
Source Files
¶
- airborne_assurance.go
- asciidoc.go
- asciidoc_backlinks.go
- asciidoc_composition.go
- asciidoc_decisions.go
- asciidoc_design_refs.go
- asciidoc_diagrams_core.go
- asciidoc_diagrams_runtime.go
- asciidoc_edge_key.go
- asciidoc_evidence_table.go
- asciidoc_gemara.go
- asciidoc_linking_units.go
- asciidoc_matrix_svg.go
- asciidoc_template.go
- asciidoc_views.go
- catalog_description_validation.go
- code_scope.go
- composition.go
- composition_confinement.go
- composition_projection.go
- ears_preflight.go
- gemara_evaluation.go
- gemara_export.go
- gemara_extended.go
- gemara_l1l3.go
- gemara_oscal.go
- gemara_xref.go
- generate.go
- generation_time.go
- inferred_code.go
- inferred_layers.go
- inferred_verification.go
- lobster_export.go
- naf_export.go
- oscal_ap.go
- oscal_ar.go
- oscal_compliance.go
- oscal_poam.go
- oscal_profile.go
- oscal_ssp.go
- requirements_delta.go
- structurizr_export.go
- sysml_coverage.go
- sysml_export.go
- sysml_interchange.go
- threat_model_export.go
- trace_matrix.go
- trlc_export.go
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
engair
command
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER |
|
engchange
command
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE
|
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE |
|
engdoc
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
engdragon
command
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER |
|
enggemara
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION Command enggemara renders the engineering model into OpenSSF Gemara documents (L1 Vector/Principle/Guidance, L2 Capability/Threat/Control, L3 Risk/Policy, L5 Evaluation Log, L6 Enforcement Log, L7 Audit Log) using the official go-gemara SDK types, with an optional OSCAL catalog and assessment-results bridge.
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION Command enggemara renders the engineering model into OpenSSF Gemara documents (L1 Vector/Principle/Guidance, L2 Capability/Threat/Control, L3 Risk/Policy, L5 Evaluation Log, L6 Enforcement Log, L7 Audit Log) using the official go-gemara SDK types, with an optional OSCAL catalog and assessment-results bridge. |
|
englobster
command
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER |
|
engmcp
command
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER
|
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER |
|
engnaf
command
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER |
|
engoscal
command
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER |
|
engstruct
command
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER |
|
engsysml
command
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER |
|
engtrace
command
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE
|
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE |
|
engtrlc
command
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER |
|
engview
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
engws
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
sysmlmetamodel
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE
|
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE |
|
examples
|
|
|
bedrock-pr-review-github-app-sample/src
ENGMODEL-OWNER-UNIT: FU-LAMBDA-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires Lambda runtime entrypoints and shared execution dependencies
|
ENGMODEL-OWNER-UNIT: FU-LAMBDA-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires Lambda runtime entrypoints and shared execution dependencies |
|
coffee-fleet-ota-cloud-sample/src
ENGMODEL-OWNER-UNIT: FU-CLOUD-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires cloud runtime handlers and integration entrypoints
|
ENGMODEL-OWNER-UNIT: FU-CLOUD-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires cloud runtime handlers and integration entrypoints |
|
payments-engineering-sample/src
ENGMODEL-OWNER-UNIT: FU-CHECKOUT ENGMODEL-CODE-DESCRIPTION: accepts checkout requests and forwards payment authorization flow input
|
ENGMODEL-OWNER-UNIT: FU-CHECKOUT ENGMODEL-CODE-DESCRIPTION: accepts checkout requests and forwards payment authorization flow input |
|
internal
|
|
|
cliflags
Package cliflags gives every engmod command the same --workspace and --lock flags.
|
Package cliflags gives every engmod command the same --workspace and --lock flags. |
|
engws
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
sysmlmetamodel
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER
|
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER |
|
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER
|
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER |
|
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER
|
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER |
|
render
|
|
|
diagramstyle
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |
|
mermaid
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |
|
svg
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |
|
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
|
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE |
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |