component

package
v0.0.0-...-c307863 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 31, 2026 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DefinitionBuilder

type DefinitionBuilder struct {
	// contains filtered or unexported fields
}

DefinitionBuilder constructs an OSCAL Component Definition from Gemara inputs.

func NewDefinitionBuilder

func NewDefinitionBuilder(title, version string) *DefinitionBuilder

func (*DefinitionBuilder) AddParameterModifiers

func (c *DefinitionBuilder) AddParameterModifiers(referenceId string, modifiers []ParameterModifier) *DefinitionBuilder

AddParameterModifiers takes parameter modifications for a given Layer 2 reference and creates OSCAL set-parameters on the associated control set implementations. This will only take effect if the Layer 2 Catalogs has been added through AddTargetComponent.

func (*DefinitionBuilder) AddTargetComponent

func (c *DefinitionBuilder) AddTargetComponent(targetComponent, componentType string, catalog layer2.Catalog, parameters Parameters) *DefinitionBuilder

func (*DefinitionBuilder) AddValidationComponent

func (c *DefinitionBuilder) AddValidationComponent(evaluationPlan layer4.EvaluationPlan) *DefinitionBuilder

func (*DefinitionBuilder) Build

type Parameter

type Parameter struct {
	Id string `json:"id" yaml:"id"`

	Description string `yaml:"description,omitempty"`

	Default any `yaml:"default,omitempty"`
}

Parameter define a "knob" that can be tuned on an Assessment Requirement

type ParameterModifier

type ParameterModifier struct {
	TargetId string `yaml:"target-id"`

	ModType layer3.ModType `yaml:"modification-type"`

	ModificationRationale string `yaml:"modification-rationale"`

	Description string `yaml:"description,omitempty"`

	Value any `yaml:"value"`
}

ParameterModifier defines a modification to the default parameter value

type Parameters

type Parameters map[string][]Parameter

Parameters maps a slice of parameters to an assessment requirement id.

func (*Parameters) Load

func (p *Parameters) Load(filePath string) error

Load populates parameters from a file path

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL