component_definition

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: 0

Documentation

Overview

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

Code generated by https://github.com/GoComply/metaschema; DO NOT EDIT. Multiplexers are indirect models needed for serialization/deserialization as json and xml files differ materially in their structure.

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 AnnotationMultiplexer

type AnnotationMultiplexer []Annotation

func (*AnnotationMultiplexer) MarshalJSON

func (mplex *AnnotationMultiplexer) MarshalJSON() ([]byte, error)

func (*AnnotationMultiplexer) UnmarshalJSON

func (mplex *AnnotationMultiplexer) UnmarshalJSON(b []byte) error

type BackMatter

type BackMatter = validation_root.BackMatter

type Capability

type Capability struct {

	// A unique identifier for a capability.
	Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"`
	// The capability's human-readable name.
	Name string `xml:"name,attr,omitempty" json:"name,omitempty"`

	// A description supporting the parent item.
	Description *Description `xml:"description,omitempty" json:"description,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"`
	// TBD
	IncorporatesComponents IncorporatesComponentMultiplexer `xml:"incorporates-component,omitempty" json:"incorporates-components,omitempty"`
	// Defines how the component or capability supports a set of controls.
	ControlImplementations []ControlImplementation `xml:"control-implementation,omitempty" json:"control-implementations,omitempty"`
	// Additional commentary on the parent item.
	Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"`
}

A grouping of other components and/or capabilities.

type CapabilityMultiplexer

type CapabilityMultiplexer []Capability

func (*CapabilityMultiplexer) MarshalJSON

func (mplex *CapabilityMultiplexer) MarshalJSON() ([]byte, error)

func (*CapabilityMultiplexer) UnmarshalJSON

func (mplex *CapabilityMultiplexer) UnmarshalJSON(b []byte) error

type Component

type Component struct {

	// A unique identifier for a component.
	Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"`
	// The component's short, human-readable name.
	Name string `xml:"name,attr,omitempty" json:"name,omitempty"`
	// A category describing the purpose of the component.
	ComponentType string `xml:"component-type,attr,omitempty" json:"component-type,omitempty"`

	// A longer name for the component.
	Title *Title `xml:"title,omitempty" json:"title,omitempty"`
	// A description supporting the parent item.
	Description *Description `xml:"description,omitempty" json:"description,omitempty"`
	// A value with a name, attributed to the containing control, part, or group.
	Properties []Prop `xml:"prop,omitempty" json:"properties,omitempty"`
	// A reference to a local or remote resource
	Links []Link `xml:"link,omitempty" json:"links,omitempty"`
	// Defines a role associated with a party or parties that has responsibility for the component.
	ResponsibleParties ResponsiblePartyMultiplexer `xml:"responsible-party,omitempty" json:"responsible-parties,omitempty"`
	// Defines how the component or capability supports a set of controls.
	ControlImplementations []ControlImplementation `xml:"control-implementation,omitempty" json:"control-implementations,omitempty"`
	// Additional commentary on the parent item.
	Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"`
}

A defined component that can be part of an implemented system.

type ComponentDefinition

type ComponentDefinition struct {

	// Provides information about the publication and availability of the containing document.
	Metadata *Metadata `xml:"metadata,omitempty" json:"metadata,omitempty"`
	// Loads a component definition from another resource.
	ImportComponentDefinitions []ImportComponentDefinition `xml:"import-component-definition,omitempty" json:"import-component-definitions,omitempty"`
	// A defined component that can be part of an implemented system.
	Components ComponentMultiplexer `xml:"component,omitempty" json:"components,omitempty"`
	// A grouping of other components and/or capabilities.
	Capabilities CapabilityMultiplexer `xml:"capability,omitempty" json:"capabilities,omitempty"`
	// A collection of citations and resource references.
	BackMatter *BackMatter `xml:"back-matter,omitempty" json:"back-matter,omitempty"`
}

A collection of component descriptions, which may optionally be grouped by capability.

type ComponentMultiplexer

type ComponentMultiplexer []Component

func (*ComponentMultiplexer) MarshalJSON

func (mplex *ComponentMultiplexer) MarshalJSON() ([]byte, error)

func (*ComponentMultiplexer) UnmarshalJSON

func (mplex *ComponentMultiplexer) UnmarshalJSON(b []byte) error

type ControlImplementation

type ControlImplementation struct {

	// A unique identifier for the set of implemented controls.
	Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"`
	// A URL reference to the source catalog or profile for which this component is implementing controls for.
	Source string `xml:"source,attr,omitempty" json:"source,omitempty"`

	// A description supporting the parent item.
	Description *Description `xml:"description,omitempty" json:"description,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"`
	// Describes how the component implements an individual control.
	ImplementedRequirements []ImplementedRequirement `xml:"implemented-requirement,omitempty" json:"implemented-requirements,omitempty"`
}

Defines how the component or capability supports a set of controls.

type Description

type Description = validation_root.Description

type ImplementedRequirement

type ImplementedRequirement struct {

	// A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object.
	Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"`
	// A reference to a control identifier.
	ControlId string `xml:"control-id,attr,omitempty" json:"control-id,omitempty"`

	// A description supporting the parent item.
	Description *Description `xml:"description,omitempty" json:"description,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 reference to one or more roles with responsibility for performing a function relative to the control.
	ResponsibleRoles ResponsibleRoleMultiplexer `xml:"responsible-role,omitempty" json:"responsible-roles,omitempty"`
	// Identifies the parameter that will be filled in by the enclosed value element.
	SetParameters SetParameterMultiplexer `xml:"set-parameter,omitempty" json:"set-parameters,omitempty"`
	// Identifies which statements within a control are addressed.
	Statements StatementMultiplexer `xml:"statement,omitempty" json:"statements,omitempty"`
	// Additional commentary on the parent item.
	Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"`
}

Describes how the component implements an individual control.

type ImportComponentDefinition

type ImportComponentDefinition struct {
	// A link to a resource that defines a set of components and/or capabilities to import into this collection.
	Href string `xml:"href,attr,omitempty" json:"href,omitempty"`
}

Loads a component definition from another resource.

type Link = validation_root.Link

type Metadata

type Metadata = validation_root.Metadata

type Prop

type Prop = validation_root.Prop

type Remarks

type Remarks = validation_root.Remarks

type ResponsibleParty

type ResponsibleParty = validation_root.ResponsibleParty

type Statement

type Statement struct {

	// A reference to the specific implemented statement associated with a control.
	StatementId string `xml:"statement-id,attr,omitempty" json:"statement-id,omitempty"`
	// A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object.
	Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"`

	// A description supporting the parent item.
	Description *Description `xml:"description,omitempty" json:"description,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 AnnotationMultiplexer `xml:"annotation,omitempty" json:"annotations,omitempty"`
	// A reference to a local or remote resource
	Links []Link `xml:"link,omitempty" json:"links,omitempty"`
	// A reference to one or more roles with responsibility for performing a function relative to the control.
	ResponsibleRoles ResponsibleRoleMultiplexer `xml:"responsible-role,omitempty" json:"responsible-roles,omitempty"`
	// Additional commentary on the parent item.
	Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"`
}

Identifies which statements within a control are addressed.

type StatementMultiplexer

type StatementMultiplexer []Statement

func (*StatementMultiplexer) MarshalJSON

func (mplex *StatementMultiplexer) MarshalJSON() ([]byte, error)

func (*StatementMultiplexer) UnmarshalJSON

func (mplex *StatementMultiplexer) UnmarshalJSON(b []byte) error

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