Package-level declarations

Types

Link copied to clipboard
open class Activity(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val complexity: Complexity? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

Activity-level element (level 5).

Link copied to clipboard
open class Analysis(val name: String? = null, val description: String? = null, val issues: List<IssueReference> = emptyList(), val element: Element, val document: DocumentMetadata? = null, val enabled: Boolean? = null, val sources: List<URLReference> = emptyList(), val evaluation: FailureEvaluation? = null, val argument: String? = null) : MetamodelEntity, SafetyAssessment

Analysis of an Element.

Link copied to clipboard
Link copied to clipboard
class ASIL(val value: Int, val originalValue: Int = 0) : Comparable<ASIL> , Serializable

Automotive safety classification with its original, pre-decomposition level.

Link copied to clipboard
open class CheckedError(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val data: DataType, val errorCode: Int? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

Checked error definition (ara::com-inspired).

Link copied to clipboard

Alias for Classic AUTOSAR Client/Server interface modeling.

Link copied to clipboard
open class Cluster(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

Cluster-level element (level 4).

Link copied to clipboard
open class CodeClass(name: String? = null, description: String? = null, asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val source: StigRepoFile? = null, val line: Int? = null, val column: Int? = null, val mangledName: String? = null, val demangledName: String? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, CodeConstruct

A C++ class, struct, or union.

Link copied to clipboard
sealed interface CodeConstruct : CodeLocation

Marker for entities in the code metamodel: things that exist by virtue of being present in the analysed source code, as opposed to the spec-level entities of the com.stigway.metamodels.highway metamodel which describe the architecture irrespective of any particular implementation.

Link copied to clipboard

Logical category of a CodeConstruct.

Link copied to clipboard
open class CodeDataFlowSegment(name: String? = null, description: String? = null, asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val source: StigRepoFile? = null, val line: Int? = null, val column: Int? = null, val mangledName: String? = null, val demangledName: String? = null, val segmentId: String, val sources: List<URLReference> = emptyList()) : MetamodelEntity, CodeConstruct

Analyzer data-flow DAG segment used as a projected diagram node.

Link copied to clipboard
open class CodeFile(name: String? = null, description: String? = null, asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val source: StigRepoFile? = null, val line: Int? = null, val column: Int? = null, val mangledName: String? = null, val demangledName: String? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, CodeConstruct

A source file (.cpp, .h, etc.) participating in analysis.

Link copied to clipboard
open class CodeFunction(name: String? = null, description: String? = null, asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val source: StigRepoFile? = null, val line: Int? = null, val column: Int? = null, val mangledName: String? = null, val demangledName: String? = null, val returnType: String? = null, val parameterTypes: List<String>? = null, val parameterNames: List<String>? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, CodeConstruct

A function or method in the analysed code.

Link copied to clipboard
open class CodeInstruction(name: String? = null, description: String? = null, asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val source: StigRepoFile? = null, val line: Int? = null, val column: Int? = null, val mangledName: String? = null, val demangledName: String? = null, val opcode: String? = null, val ssaName: String? = null, val isSource: Boolean = false, val isSink: Boolean = false, val isBranch: Boolean = false, val isCompilerGenerated: Boolean = false, val sources: List<URLReference> = emptyList()) : MetamodelEntity, CodeConstruct

An individual instruction in the analysed code — typically an LLVM IR instruction reported by the analyzer's per-instruction view.

Link copied to clipboard
interface CodeLocation

"I have a location in source code."

Link copied to clipboard
open class CodeNamespace(name: String? = null, description: String? = null, asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val source: StigRepoFile? = null, val line: Int? = null, val column: Int? = null, val mangledName: String? = null, val demangledName: String? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, CodeConstruct

A C++ namespace.

Link copied to clipboard
open class CodeSourceLine(name: String? = null, description: String? = null, asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val source: StigRepoFile? = null, val line: Int? = null, val column: Int? = null, val mangledName: String? = null, val demangledName: String? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, CodeConstruct

A single line of source code — the compound box grouping every CodeInstruction the compiler emitted for one (file, line). Sits between CodeFunction and CodeInstruction on the unified hierarchy scale (level 8) — the deepest containment layer above the instruction.

Link copied to clipboard
class CompiledModelLoader(parentClassLoader: ClassLoader = MetamodelEntity::class.java.classLoader)

Loads the executable Highway model from compiled Kotlin classes.

Link copied to clipboard

One wired executable model, with independent check scopes and a shared reporting inventory.

Link copied to clipboard
sealed class Complexity

Complexity classification (project-specific).

Link copied to clipboard
open class Component(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val complexity: Complexity? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

Component-level element (level 5).

Link copied to clipboard
open class Connector(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val from: InterfacePoint, val to: InterfacePoint, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Connector (binding) between two InterfacePoints.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open class Context(val name: String? = null, val description: String? = null, val issues: List<IssueReference> = emptyList(), val authors: List<String> = emptyList(), val document: DocumentMetadata? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Top-level work-product container for the context viewpoint — the symmetric counterpart of Requirements, Tests, Design and Analysis for the other four viewpoints.

Link copied to clipboard
open class DataElement<T : DataType>(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val data: T, val queueType: DataElementQueueType = DataElementQueueType.UNQUEUED, val sources: List<URLReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

Classic AUTOSAR sender/receiver data element.

Link copied to clipboard

Queueing semantics for Classic AUTOSAR sender/receiver data elements.

Link copied to clipboard
open class DataType(val implementationType: String? = null)

Base class for payload/data types used by interface points.

Link copied to clipboard
open class Design(val name: String? = null, val description: String? = null, val issues: List<IssueReference> = emptyList(), val element: Element? = null, var children: List<Element> = emptyList(), var subDesigns: List<Design> = emptyList(), val document: DocumentMetadata? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Design work product for an Element.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Position of a node in the standard stig diagram hierarchy. Used to pick the color saturation step for each compound box / leaf — see stig-docs/.../internals/diagram-hierarchy.md.

Link copied to clipboard
data class DocumentMetadata(val iso26262Id: String? = null, val retentionClass: RetentionClass? = null, val securityClass: SecurityClass? = null, val workflowStatus: WorkflowStatus = WorkflowStatus.DRAFT, val releaseStatus: ReleaseStatus = ReleaseStatus.NOT_RELEASED, val version: Semver? = null, val versionHistory: List<VersionEntry> = emptyList())

Document-level metadata attached to a top-level work-product container — a Requirements, Tests, Analysis, or Design. Nested containers (sections/chapters within a document) do not carry their own DocumentMetadata; the lifecycle information belongs to the deliverable as a whole.

Link copied to clipboard
interface Element

Marker for architecture elements (Item/System/Component/Activity/etc.).

Link copied to clipboard
Link copied to clipboard

Logical element categories used across STIG configuration and modeling.

Link copied to clipboard
open class Event<T : DataType>(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val data: T, val sources: List<URLReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

Event (publish/subscribe style).

Link copied to clipboard
open class Failure(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val comment: String? = null, val severity: Severity? = null, val occurrence: Float? = null, val risk: Float? = null, val multiplicity: Multiplicity? = null, val evaluation: FailureEvaluation? = null, var independentFailures: List<Failure> = emptyList(), var mitigatedBy: List<SafetyMeasure> = emptyList(), var propagatesTo: List<Failure> = emptyList(), val sources: List<URLReference> = emptyList(), val argument: String? = null, val diagnosticCoverage: Float? = null) : MetamodelEntity, SafetyAssessment

Failure / failure mode.

Link copied to clipboard
Link copied to clipboard

Engineering conclusion about the sufficiency of safety measures for a Failure, or of the analysis recorded in an Analysis or InterfacePointAnalysis. The shared contract is SafetyAssessment.

Link copied to clipboard
Link copied to clipboard
open class Field<T : DataType>(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val data: T, val hasGetter: Boolean = true, val hasSetter: Boolean = true, val min: Double? = null, val max: Double? = null, val unit: String? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

Field (data element) with optional getter/setter.

Link copied to clipboard
data class HighwayModel(val roots: List<MetamodelEntity> = emptyList(), val sources: Map<String, List<ModelSource>> = emptyMap(), val diagnostics: List<ModelDiagnostic> = emptyList(), val updates: List<ModelUpdate> = emptyList())

A selection of actual Highway objects, with import/export provenance kept outside domain objects.

Link copied to clipboard

The native exchange schema is the canonical metamodel's Kotlin constructor contract.

Link copied to clipboard
value class InstanceIdentifier(val value: String)

Technical/binding-specific instance identifier (AUTOSAR ara::com style).

Link copied to clipboard
value class InstanceSpecifier(val value: String)

Logical instance specifier (AUTOSAR-style), typically "//.../".

Link copied to clipboard

Alias for SysML/UML compatibility: those notations use "Interface" as the primary term.

Link copied to clipboard
interface InterfacePoint

Marker for interface-side artifacts (Port/ServiceInterface/Event/Field/Method/Error/Topic/etc.).

Link copied to clipboard
open class InterfacePointAnalysis(val issues: List<IssueReference> = emptyList(), val interfacePoint: InterfacePoint, var usedIn: List<InterfacePoint> = emptyList(), val sources: List<URLReference> = emptyList(), val evaluation: FailureEvaluation? = null, val argument: String? = null, val belongsToSafetyFunction: Boolean? = null) : MetamodelEntity, SafetyAssessment

Analysis of an InterfacePoint (port/service/event/field/method/error/register/ipdu/...).

Link copied to clipboard
open class IPdu<T : DataType>(name: String? = null, description: String? = null, asil: ASIL? = null, data: T, val pduId: Int? = null, val cycleMs: Long? = null, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : Message<T>

I-PDU (Interaction Layer Protocol Data Unit) as a specialized Message.

Link copied to clipboard
data class IssueReference(val url: String, val label: String? = null, val rules: List<KClass<out ModelRule>>? = null)

A filed ticket covering findings on the object declaring it. Omitted rules covers every rule on that object.

Link copied to clipboard
data class IssueReferenceTemplate(val url: String, val prefix: String = "", val label: String? = null)

Named issue links share URL expansion and validation with source-reference templates. Omitted rules cover every rule on the object declaring the ticket.

Link copied to clipboard
open class Item(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

Item-level element (level 1).

Link copied to clipboard
data class KotlinSourceToken(val text: String, val line: Int, val identifier: Boolean, val offset: Int = -1)

Source tokens for build planning and diagnostic locations; comments and literal text are excluded.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open class Message<T : DataType>(name: String? = null, description: String? = null, asil: ASIL? = null, data: T, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : Event<T>

Message is a specialization of Event for communication payloads.

Link copied to clipboard
open class MetamodelEntity(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val sources: List<URLReference> = emptyList())

Base type for Highway entities participating in model identity, registration, and ownership. Other Highway types, such as DataType and DocumentMetadata, do not extend this class.

Link copied to clipboard
open class Method(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val isSynchronous: Boolean = true, val functionType: String? = null, val raises: List<CheckedError> = emptyList(), val returnType: DataType? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

Direction-neutral operation definition (request/response style). A service port supplies its provided/required role. For a direct component API use ProvidedMethod or RequiredMethod; a plain method does not imply a provided direction.

Link copied to clipboard
Link copied to clipboard

One module's complete declarations. Viewpoint roots and typed queries are views of the same inventory.

Link copied to clipboard
data class ModelDiagnostic(val code: String, val severity: ProblemSeverity, val subject: String, val message: String, val source: String? = null)
Link copied to clipboard

Canonical identities derive from authored references and their owning instance.

Link copied to clipboard
class ModelModuleCatalog<M>(val elementModules: Map<String, M>)

Lightweight element-to-specification-module metadata; never an inventory of requirements or failures.

Link copied to clipboard

One set of named relation definitions for model navigation and all documentation formats.

Link copied to clipboard

An isolated registry of MetamodelEntity instances.

Link copied to clipboard
data class ModelSource(val path: String, val location: String = "", val text: String? = null)
Link copied to clipboard
data class ModelUpdate(val target: String, val properties: Map<String, Any?>)

Generic property selection on an existing identity, not a second interface/requirement metamodel.

Link copied to clipboard

Multiplicity of a failure mode (ISO 26262 classification).

Link copied to clipboard
data class NamedChild<T : Any>(val fieldName: String, val value: T)

Pair of a declared child entity with the Kotlin field name that holds it on the container. Useful when a rule wants both the entity and its source-property name (e.g. for source-location messages or com.stigway.metamodels.create.ModelProblem.entityName fallback before MetamodelEntity.referenceName is wired).

Link copied to clipboard
open class Parameter<T : DataType>(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val data: T, val direction: ParameterDirection? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Method parameter (use data + direction to describe the signature).

Link copied to clipboard

Parameter direction.

Link copied to clipboard

A Port is a usage/endpoint of a ServiceInterface.

Link copied to clipboard
Link copied to clipboard
class PortMemberUse<M : ServiceInterfaceMember>(val port: Port<*>, val member: M, val name: String? = member.name, val description: String? = null, val asil: ASIL? = null, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : MetamodelEntity, InterfacePoint

One named use of a shared service member through a particular port. Two ports using the same member have different endpoint identities and can therefore be analyzed independently. Declare the result of Port.use as a Kotlin property inside a typed port subclass. Normal model binding then supplies its ID and callers can use component.port.member directly. Each property constructs one stable use; accessing it does not create another endpoint.

Link copied to clipboard
Link copied to clipboard
open class ProcessLevelSafetyMeasure(name: String? = null, description: String? = null, asil: ASIL? = null, comment: String? = null, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : SafetyMeasure

Process-level safety measure (verification, validation, operational process, etc.).

Link copied to clipboard
open class ProvidedFunction(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val sources: List<URLReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

A provided system or safety function — a behavioral capability the element exposes at a functional/requirements level (e.g. an ISO 26262 PMS/TSA safety function such as "Cell voltage protection"), not a callable operation.

Link copied to clipboard
open class ProvidedMethod(name: String? = null, description: String? = null, asil: ASIL? = null, issues: List<IssueReference> = emptyList(), isSynchronous: Boolean = true, functionType: String? = null, raises: List<CheckedError> = emptyList(), returnType: DataType? = null, sources: List<URLReference> = emptyList()) : Method

A directly callable operation provided by its declaring element, without a service-port wrapper. Preserve the external function's identifier in the model property, including capitalization and underscores. Use a neutral Method for service contracts whose direction is supplied by a port.

Link copied to clipboard
open class ProvidedPort<S : ServiceInterface>(name: String? = null, description: String? = null, asil: ASIL? = null, instanceSpecifier: InstanceSpecifier? = null, instanceIdentifier: InstanceIdentifier? = null, serviceInterface: S, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : Port<S>

Provided port (AUTOSAR AP / ara::com style).

Link copied to clipboard
open class Publisher<T : Topic<*>>(name: String? = null, description: String? = null, asil: ASIL? = null, instanceSpecifier: InstanceSpecifier? = null, instanceIdentifier: InstanceIdentifier? = null, topic: T, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : TopicPort<T>

Publisher endpoint for a Topic (ROS-style).

Link copied to clipboard
open class Register<T : DataType>(name: String? = null, description: String? = null, asil: ASIL? = null, data: T, hasGetter: Boolean = true, hasSetter: Boolean = false, val address: Long? = null, val widthBits: Int? = null, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : Field<T>

Register is a specialization of Field for hardware register access.

Link copied to clipboard
open class Relation<S : Any, T : Any>(val sourceClassifier: Class<S>, val targetClassifier: Class<T>, val property: KProperty1<S, *>, val multiplicity: RelationMultiplicity, val reverseName: String, val forwardName: String = property.name)

A metamodel relation definition. Instances describe properties without registering model entities.

Link copied to clipboard

The shape of an authored reference; a single reference can be nullable.

Link copied to clipboard

Release status — independent of WorkflowStatus. A document is RELEASED once formally published to its audience; it may later be WITHDRAWN while keeping its historical workflow status.

Link copied to clipboard
open class RequiredMethod(val definition: Method? = null, name: String? = definition?.name, description: String? = definition?.description, asil: ASIL? = null, issues: List<IssueReference> = emptyList(), isSynchronous: Boolean = definition?.isSynchronous ?: true, functionType: String? = definition?.functionType, raises: List<CheckedError> = definition?.raises ?: emptyList(), returnType: DataType? = definition?.returnType, sources: List<URLReference> = emptyList()) : Method

An external operation required by its declaring element, without a service-port wrapper. definition can reference an existing operation rather than repeating its contract. The required endpoint keeps its own identity and owner; the referenced operation and its parameters retain their declaration ownership. Contract metadata defaults to the referenced definition. An omitted asil resolves through that definition before the local owning element, without copying an inherited classification into the authored value.

Link copied to clipboard
open class RequiredPort<S : ServiceInterface>(name: String? = null, description: String? = null, asil: ASIL? = null, instanceSpecifier: InstanceSpecifier? = null, instanceIdentifier: InstanceIdentifier? = null, serviceInterface: S, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : Port<S>

Required port (AUTOSAR AP / ara::com style).

Link copied to clipboard
open class Requirement(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val element: Element, var allocatedTo: List<Element> = emptyList(), var derivedFrom: List<Requirement> = emptyList(), val verificationCriteria: String? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Requirement node.

Link copied to clipboard
open class RequirementNote(val name: String? = null, val description: String? = null, val issues: List<IssueReference> = emptyList(), val sources: List<URLReference> = emptyList()) : MetamodelEntity

Note attached to a requirement container (non-safety metadata).

Link copied to clipboard
open class Requirements(val name: String? = null, val description: String? = null, val issues: List<IssueReference> = emptyList(), val element: Element? = null, val authors: List<String> = emptyList(), val document: DocumentMetadata? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Container for grouping requirements and related notes.

Link copied to clipboard

Retention class — how long the document must be retained. Values follow the common archival classification used in automotive safety documentation; teams with different retention policies can subclass / extend the enum.

Link copied to clipboard

A recorded safety judgment and its engineering reasoning, at element, interface-point or failure level.

Link copied to clipboard
open class SafetyMeasure(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val comment: String? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Base type for safety measures used to mitigate or detect a Failure.

Link copied to clipboard
open class SafetyMechanism(name: String? = null, description: String? = null, asil: ASIL? = null, comment: String? = null, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : SafetyMeasure

Technical/product-level safety measure (algorithmic, architectural, monitoring, etc.).

Link copied to clipboard

Security classification — controls who may access the document.

Link copied to clipboard

Alias for Classic AUTOSAR Sender/Receiver interface modeling.

Link copied to clipboard
open class ServiceInterface(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val sources: List<URLReference> = emptyList()) : MetamodelEntity, InterfacePoint

Service interface definition: a container of ServiceInterfaceMembers such as Event, Field, DataElement, Method, CheckedError, Register, Message, IPdu, Topic, etc.

Link copied to clipboard

Marker for members that can be declared inside a ServiceInterface, such as events, fields, methods, errors, messages, registers, and topics.

Link copied to clipboard
open class ServicePort(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val sources: List<URLReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

Optional grouping container inside a service interface definition.

Link copied to clipboard
data class Severity(val value: Float)

Failure severity, stored without rounding or clamping.

Link copied to clipboard
open class Subscriber<T : Topic<*>>(name: String? = null, description: String? = null, asil: ASIL? = null, instanceSpecifier: InstanceSpecifier? = null, instanceIdentifier: InstanceIdentifier? = null, topic: T, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : TopicPort<T>

Subscriber endpoint for a Topic (ROS-style).

Link copied to clipboard
open class Subsystem(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

Subsystem-level element (level 3).

Link copied to clipboard
open class SystemElement(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

System-level element (level 2). Note: name collides with java.lang.System; use package import accordingly.

Link copied to clipboard
open class TestCase(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), var elementsUnderTest: List<Element>, var interfacesUnderTest: List<InterfacePoint> = emptyList(), var verifies: List<Requirement> = emptyList(), val sources: List<URLReference> = emptyList()) : MetamodelEntity

Test-case node.

Link copied to clipboard
Link copied to clipboard
open class Tests(val name: String? = null, val description: String? = null, val issues: List<IssueReference> = emptyList(), val element: Element? = null, val authors: List<String> = emptyList(), val document: DocumentMetadata? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity

Container for grouping test cases.

Link copied to clipboard
Link copied to clipboard
open class Topic<T : DataType>(name: String? = null, description: String? = null, asil: ASIL? = null, data: T, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : Event<T>

ROS-style topic (single publish/subscribe channel).

Link copied to clipboard

A TopicPort is a usage/endpoint of a Topic.

Link copied to clipboard
open class Unit(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

Unit-level element (level 6). Often represents implementation-level software units.

Link copied to clipboard
open class UnresolvedInterfaceMember(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val sourceReference: String, val reason: String, val sources: List<URLReference> = emptyList(), val issues: List<IssueReference> = emptyList()) : MetamodelEntity, ServiceInterfaceMember

A named service member whose definition is unavailable. A port can still select this member through Port.use, without claiming a payload type, queueing behavior or operation signature. Replace it with the resolved member when its authoritative definition becomes available.

Link copied to clipboard
data class URLReference(val url: String, val label: String? = null)

An external source link. Filed tickets use IssueReference.

Link copied to clipboard
data class URLReferenceTemplate(val url: String, val prefix: String = "", val label: String? = null)

A centrally declared URL containing one {id} placeholder, with an optional display-label template. prefix supports numbered project keys: prefix "PTH-" accepts 123 or "PTH-123". Without a prefix, string identifiers can also be UUIDs or application-specific identifiers.

Link copied to clipboard
open class Vehicle(val name: String? = null, val description: String? = null, val asil: ASIL? = null, val issues: List<IssueReference> = emptyList(), val parent: Element? = null, val isTopLevel: Boolean = false, val isBottomLevel: Boolean = false, val allocatedAsil: ASIL? = null, val sources: List<URLReference> = emptyList()) : MetamodelEntity, Element

Vehicle-level element (level 0).

Link copied to clipboard
data class VersionEntry(val version: Semver, val date: LocalDate, val authors: List<String>, val description: String)
Link copied to clipboard

The five CREATE viewpoints, shared by models, checks, initialization, and report navigation.

Link copied to clipboard
object WireModel

Orchestrates model wireup: builds reference-name and ownership back-references across the entity registry of the current ModelScope maintained by MetamodelEntity.

Link copied to clipboard

Workflow status — where the document is in the review-and-approval flow. Independent of ReleaseStatus: an APPROVED document is signed off internally but may not yet be RELEASED to the wider audience.

Properties

Link copied to clipboard
const val DIAGRAM_LEVEL_MAX: Int = 9

Deepest band on the unified hierarchy scale (Instruction).

Link copied to clipboard

Plain-text display label: [qualified.id] name, or just idLabel when the name is null or blank. An InterfacePointAnalysis uses its own identity and its derived analysis name. Identifier and human-name capitalization are preserved; names are not trimmed or escaped.

Link copied to clipboard

Plain-text identity-only label, [qualified.id], for rule messages and other cross-model references. JVM nested-class separators are displayed as dots without changing the underlying model id. Human names belong in fullLabel or separate report fields.

Link copied to clipboard

Numeric classification value; decomposition does not change comparison strength.

Link copied to clipboard

Compact display label, including the original level when decomposed.

Link copied to clipboard
Link copied to clipboard

Human-readable classification, retaining decomposition parentheses.

Link copied to clipboard

Plain-text short identity label, [declarationName], without the qualified declaring context. Requires the same bound model identity as idLabel.

Functions

Link copied to clipboard

Reflectively returns every InterfacePoint declared as a field of receiver Element's runtime class. InterfacePoint is a marker interface, so a separate helper is provided — declaredChildrenOfType would also work but requires the caller to import the inline reified function.

Link copied to clipboard
fun asilByIndex(index: Int?): ASIL?

Maps a value to an undecomposed classification; numeric values cannot preserve decomposition.

Link copied to clipboard

Binds an authored field or constructor-owned value without replacing its source declaration provenance.

Link copied to clipboard

Registers a child entity declared inside a source-materialized parent.

Link copied to clipboard

Records source-declared uses without changing the target's declaration or owner.

Link copied to clipboard

Binds an entity to an already computed canonical MetamodelEntity.id.

Link copied to clipboard
fun MetamodelEntity.bindToSource(referenceName: String, declaringClassName: String)

Sets the canonical identifiers for an entity that was materialized from source (as opposed to being instantiated from compiled bytecode). Intended for use by PSI / source materializers such as the IDEA plugin.

Link copied to clipboard
fun createBoundElement(id: String, type: ElementType = ElementType.COMPONENT, name: String? = null, description: String? = null, asil: ASIL? = null, parent: Element? = null, isTopLevel: Boolean = false, isBottomLevel: Boolean = false, allocatedAsil: ASIL? = null): Element

Creates a concrete Element subtype for type and binds it to an existing canonical model id.

Link copied to clipboard
inline fun <T : Any> Any.declaredChildrenOfType(): List<T>

Reflectively returns every declared field of receiver this whose type is assignable to T, including inherited properties and Kotlin object members. Companion and file-facade fields are skipped; use staticChildrenOfType for those class-level fields.

Link copied to clipboard

Interface-point analyses in declaration order, including analyses nested beneath ports or service groups.

Link copied to clipboard

A decomposed analysis delegates failure and contribution completeness to its member analyses.

Link copied to clipboard
fun issue(value: String, label: String? = null, rules: List<KClass<out ModelRule>>? = null): IssueReference
Link copied to clipboard

Structural children, including explicit metamodel containment. Relation targets retain their own declaration.

Link copied to clipboard
fun <T : Any> modelReferences(vararg references: () -> T): List<T>

Typed references resolved after declaration construction. This supports forward references and cycles between imported Kotlin declarations without reading an uninitialized top-level value. Keep suppliers to property references; inspection materializes those references without executing code.

Link copied to clipboard

Lists/maps/arrays are inspected without evaluating arbitrary getters or traversing reference targets.

Link copied to clipboard

Reflective variant of declaredChildrenOfType that also captures the field name.

Link copied to clipboard
fun namedModelValues(value: Any?, propertyName: String): List<NamedChild<MetamodelEntity>>

Kotlin property paths distinguish anonymous entries in collection-valued declarations.

Link copied to clipboard
fun parseAsil(raw: String?): ASIL?

Accepts plain levels, decomposition notation such as QM(B), and identifiers such as QM_B.

Link copied to clipboard
Link copied to clipboard
inline fun <T : Any> Class<*>.staticChildrenOfType(): List<T>

Same as declaredChildrenOfType but reads static fields — appropriate for Kotlin file-facade classes (which carry top-level vals as public static final fields) and for Kotlin object declarations.

Link copied to clipboard
fun url(value: String, label: String? = null): URLReference

Direct links use the same value type as references produced by a named template.

Generated with STIG