catalog

package
v0.3.4 Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2020 License: CC0-1.0 Imports: 4 Imported by: 1

Documentation

Overview

Code generated by https://github.com/GoComply/metaschema; DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Annotation

type Annotation = validation_root.Annotation

type BackMatter

type BackMatter = validation_root.BackMatter

type Catalog

type Catalog struct {
	XMLName xml.Name `xml:"http://csrc.nist.gov/ns/oscal/1.0 catalog" json:"-"`
	// A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object.
	Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"`

	// Provides information about the publication and availability of the containing document.
	Metadata *Metadata `xml:"metadata,omitempty" json:"metadata,omitempty"`
	// Parameters provide a mechanism for the dynamic assignment of value(s) in a control.
	Parameters []Param `xml:"param,omitempty" json:"parameters,omitempty"`
	// A structured information object representing a security or privacy control. Each security or privacy control within the Catalog is defined by a distinct control instance.
	Controls []Control `xml:"control,omitempty" json:"controls,omitempty"`
	// A group of controls, or of groups of controls.
	Groups []Group `xml:"group,omitempty" json:"groups,omitempty"`
	// Back matter including references and resources.
	BackMatter *BackMatter `xml:"back-matter,omitempty" json:"back-matter,omitempty"`
}

A collection of controls.

func (*Catalog) FindControlById

func (c *Catalog) FindControlById(id string) *Control

type Control

type Control struct {

	// Unique identifier of the containing object
	Id string `xml:"id,attr,omitempty" json:"id,omitempty"`
	// Indicating the type or classification of the containing object
	Class string `xml:"class,attr,omitempty" json:"class,omitempty"`

	// A title for display and navigation
	Title *Title `xml:"title,omitempty" json:"title,omitempty"`
	// Parameters provide a mechanism for the dynamic assignment of value(s) in a control.
	Parameters []Param `xml:"param,omitempty" json:"parameters,omitempty"`
	// A value with a name, attributed to the containing control, part, or group.
	Properties []Prop `xml:"prop,omitempty" json:"properties,omitempty"`
	// A name/value pair with optional explanatory remarks.
	Annotations []Annotation `xml:"annotation,omitempty" json:"annotations,omitempty"`
	// A reference to a local or remote resource
	Links []Link `xml:"link,omitempty" json:"links,omitempty"`
	// A partition or component of a control or part
	Parts []Part `xml:"part,omitempty" json:"parts,omitempty"`
	// A structured information object representing a security or privacy control. Each security or privacy control within the Catalog is defined by a distinct control instance.
	Controls []Control `xml:"control,omitempty" json:"controls,omitempty"`
}

A structured information object representing a security or privacy control. Each security or privacy control within the Catalog is defined by a distinct control instance.

func NewControl

func NewControl(id, title string, opts *ControlOpts) Control

NewControl creates a new control

func (*Control) FindParam

func (c *Control) FindParam(id string) *Param

func (*Control) FindParamById

func (c *Control) FindParamById(id string) *Param

func (*Control) StatementToMarkdown

func (c *Control) StatementToMarkdown() string

type ControlOpts

type ControlOpts struct {
	Params   []Param
	Parts    []Part
	Controls []Control
}

ControlOpts to generate controls

type Group

type Group struct {

	// Unique identifier of the containing object
	Id string `xml:"id,attr,omitempty" json:"id,omitempty"`
	// Indicating the type or classification of the containing object
	Class string `xml:"class,attr,omitempty" json:"class,omitempty"`

	// A title for display and navigation
	Title *Title `xml:"title,omitempty" json:"title,omitempty"`
	// Parameters provide a mechanism for the dynamic assignment of value(s) in a control.
	Parameters []Param `xml:"param,omitempty" json:"parameters,omitempty"`
	// A value with a name, attributed to the containing control, part, or group.
	Properties []Prop `xml:"prop,omitempty" json:"properties,omitempty"`
	// A name/value pair with optional explanatory remarks.
	Annotations []Annotation `xml:"annotation,omitempty" json:"annotations,omitempty"`
	// A reference to a local or remote resource
	Links []Link `xml:"link,omitempty" json:"links,omitempty"`
	// A partition or component of a control or part
	Parts []Part `xml:"part,omitempty" json:"parts,omitempty"`
	// A group of controls, or of groups of controls.
	Groups []Group `xml:"group,omitempty" json:"groups,omitempty"`
	// A structured information object representing a security or privacy control. Each security or privacy control within the Catalog is defined by a distinct control instance.
	Controls []Control `xml:"control,omitempty" json:"controls,omitempty"`
}

A group of controls, or of groups of controls.

func (*Group) FindControlById

func (g *Group) FindControlById(id string) *Control
type Link = validation_root.Link

type Metadata

type Metadata = validation_root.Metadata

type Param

type Param = nominal_catalog.Param

type Part

type Part = nominal_catalog.Part

func NewPart

func NewPart(id, title, narrative string) Part

NewPart creates a new part

type Prop

type Prop = validation_root.Prop

type Prose

type Prose = nominal_catalog.Prose

type Title

type Title = validation_root.Title

Jump to

Keyboard shortcuts

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