framework

package
v0.6.2 Latest Latest
Warning

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

Go to latest
Published: Aug 25, 2026 License: Apache-2.0 Imports: 11 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Control

type Control struct {
	ID                  string        `yaml:"id" json:"id"`
	Title               string        `yaml:"title" json:"title"`
	RequiredRecordTypes []string      `yaml:"required_record_types,omitempty" json:"required_record_types,omitempty"`
	MinimumFrequency    string        `yaml:"minimum_frequency,omitempty" json:"minimum_frequency,omitempty"`
	RequiredFields      []string      `yaml:"required_fields,omitempty" json:"required_fields,omitempty"`
	EvidenceSets        []EvidenceSet `yaml:"evidence_sets,omitempty" json:"evidence_sets,omitempty"`
	Children            []Control     `yaml:"children,omitempty" json:"children,omitempty"`
}

type ControlCoverage added in v0.5.0

type ControlCoverage struct {
	ID                    string                `json:"id"`
	Title                 string                `json:"title"`
	Covered               bool                  `json:"covered"`
	MatchedEvidenceSetIDs []string              `json:"matched_evidence_set_ids,omitempty"`
	EvidenceSets          []EvidenceSetCoverage `json:"evidence_sets,omitempty"`
	Children              []ControlCoverage     `json:"children,omitempty"`
}

type Coverage added in v0.5.0

type Coverage struct {
	FrameworkID      string            `json:"framework_id"`
	FrameworkVersion string            `json:"framework_version"`
	TotalControls    int               `json:"total_controls"`
	CoveredControls  int               `json:"covered_controls"`
	Controls         []ControlCoverage `json:"controls"`
}

func EvaluateCoverage added in v0.5.0

func EvaluateCoverage(f *Framework, records []record.Record) (*Coverage, error)

type EvidenceSet added in v0.5.0

type EvidenceSet struct {
	ID                  string   `yaml:"id" json:"id"`
	Title               string   `yaml:"title,omitempty" json:"title,omitempty"`
	SourceProducts      []string `yaml:"source_products,omitempty" json:"source_products,omitempty"`
	RequiredRecordTypes []string `yaml:"required_record_types,omitempty" json:"required_record_types,omitempty"`
	MinimumFrequency    string   `yaml:"minimum_frequency,omitempty" json:"minimum_frequency,omitempty"`
	RequiredFields      []string `yaml:"required_fields,omitempty" json:"required_fields,omitempty"`
}

type EvidenceSetCoverage added in v0.5.0

type EvidenceSetCoverage struct {
	ID                  string   `json:"id"`
	Title               string   `json:"title,omitempty"`
	Covered             bool     `json:"covered"`
	SourceProducts      []string `json:"source_products,omitempty"`
	RequiredRecordTypes []string `json:"required_record_types"`
	MinimumFrequency    string   `json:"minimum_frequency"`
	RequiredFields      []string `json:"required_fields"`
	MatchingRecordIDs   []string `json:"matching_record_ids,omitempty"`
	MissingRecordTypes  []string `json:"missing_record_types,omitempty"`
}

type Framework

type Framework struct {
	Framework struct {
		ID      string `yaml:"id" json:"id"`
		Version string `yaml:"version" json:"version"`
		Title   string `yaml:"title" json:"title"`
	} `yaml:"framework" json:"framework"`
	Controls []Control `yaml:"controls" json:"controls"`
}

func Load

func Load(idOrFile string) (*Framework, error)

func LoadFile added in v0.4.1

func LoadFile(path string) (*Framework, error)

type Info

type Info struct {
	ID           string `json:"id"`
	Version      string `json:"version"`
	Title        string `json:"title"`
	ControlCount int    `json:"control_count"`
	File         string `json:"file"`
}

func List

func List() ([]Info, error)

Jump to

Keyboard shortcuts

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