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 ¶
- type AddrLine
- type Address
- type Annotation
- type BackMatter
- type Base64
- type Biblio
- type Citation
- type City
- type Country
- type Desc
- type Description
- type DocId
- type Email
- type ExternalId
- type Hash
- type LastModified
- type Link
- type Location
- type LocationUuid
- type Markup
- type MemberOfOrganization
- type Metadata
- type OscalVersion
- type Party
- type PartyName
- type PartyUuid
- type Phone
- type PostalCode
- type Prop
- type Published
- type Remarks
- type Resource
- type ResponsibleParty
- type ResponsiblePartyMultiplexer
- type Revision
- type Rlink
- type Role
- type ShortName
- type State
- type Text
- type Title
- type Url
- type VALIDATIONRoot
- type Version
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Address ¶
type Address struct { // Indicates the type of address. Type string `xml:"type,attr,omitempty" json:"type,omitempty"` // A single line of an address. PostalAddress []AddrLine `xml:"addr-line,omitempty" json:"postal-address,omitempty"` // City, town or geographical region for mailing address City City `xml:"city,omitempty" json:"city,omitempty"` // State, province or analogous geographical region for mailing address State State `xml:"state,omitempty" json:"state,omitempty"` // Postal or ZIP code for mailing address PostalCode PostalCode `xml:"postal-code,omitempty" json:"postal-code,omitempty"` // Country for mailing address Country Country `xml:"country,omitempty" json:"country,omitempty"` }
A postal address.
type Annotation ¶
type Annotation struct { // Identifying the purpose and intended use of the property, part or other object. Name string `xml:"name,attr,omitempty" json:"name,omitempty"` // A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object. Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"` // A namespace qualifying the name. Ns string `xml:"ns,attr,omitempty" json:"ns,omitempty"` // Indicates the value of the characteristic. Value string `xml:"value,attr,omitempty" json:"value,omitempty"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
A name/value pair with optional explanatory remarks.
type BackMatter ¶
type BackMatter struct { // A resource associated with the present document, which may be a pointer to other data or a citation. Resources []Resource `xml:"resource,omitempty" json:"resources,omitempty"` }
A collection of citations and resource references.
func (*BackMatter) GetResourceByUuid ¶
func (bm *BackMatter) GetResourceByUuid(uuid string) *Resource
type Base64 ¶
type Base64 struct { // Name of the file before it was encoded as Base64 to be embedded in a . This is the name that will be assigned to the file when the file is decoded. Filename string `xml:"filename,attr,omitempty" json:"filename,omitempty"` // Describes the media type of the linked resource MediaType string `xml:"media-type,attr,omitempty" json:"media-type,omitempty"` Value string `xml:",chardata" json:"value"` }
type Biblio ¶
type Biblio struct { }
A container in which a set of bibliographic information can included. The model of this information is undefined by OSCAL.
type Citation ¶
type Citation struct { // A line of textual content whose semantic is determined by the context of use. Text *Text `xml:"text,omitempty" json:"text,omitempty"` // A value with a name, attributed to the containing control, part, or group. Properties []Prop `xml:"prop,omitempty" json:"properties,omitempty"` // A container in which a set of bibliographic information can included. The model of this information is undefined by OSCAL. Biblio *Biblio `xml:"biblio,omitempty" json:"biblio,omitempty"` }
A citation consisting of end note text and optional structured bibliographic data.
type DocId ¶
type DocId struct { // Qualifies the kind of document identifier. Type string `xml:"type,attr,omitempty" json:"type,omitempty"` Identifier string `xml:",chardata" json:"identifier"` }
A document identifier qualified by an identifier .
type ExternalId ¶
type ExternalId struct { // Indicating the type of identifier, address, email or other data item. Type string `xml:"type,attr,omitempty" json:"type,omitempty"` Id string `xml:",chardata" json:"id"` }
An identifier for a person (such as an ORCID) using a designated scheme.
type Hash ¶
type Hash struct { // Method by which a hash is derived Algorithm string `xml:"algorithm,attr,omitempty" json:"algorithm,omitempty"` Value string `xml:",chardata" json:"value"` }
A representation of a cryptographic digest generated over a resource using a hash algorithm.
type LastModified ¶
type LastModified string
type Link ¶
type Link struct { // A link to a document or document fragment (actual, nominal or projected) Href string `xml:"href,attr,omitempty" json:"href,omitempty"` // Describes the type of relationship provided by the link. This can be an indicator of the link's purpose. Rel string `xml:"rel,attr,omitempty" json:"rel,omitempty"` // Describes the media type of the linked resource MediaType string `xml:"media-type,attr,omitempty" json:"media-type,omitempty"` Text string `xml:",chardata" json:"text"` }
A reference to a local or remote resource
type Location ¶
type Location struct { // A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object. Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"` // A title for display and navigation Title *Title `xml:"title,omitempty" json:"title,omitempty"` // A postal address. Address *Address `xml:"address,omitempty" json:"address,omitempty"` // Email address EmailAddresses []Email `xml:"email,omitempty" json:"email-addresses,omitempty"` // Contact number by telephone TelephoneNumbers []Phone `xml:"phone,omitempty" json:"telephone-numbers,omitempty"` // URL for web site or Internet presence URLs []Url `xml:"url,omitempty" json:"URLs,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"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
A location, with associated metadata that can be referenced.
type LocationUuid ¶
type LocationUuid string
type MemberOfOrganization ¶
type MemberOfOrganization string
type Metadata ¶
type Metadata struct { // A title for display and navigation Title *Title `xml:"title,omitempty" json:"title,omitempty"` // The date and time this document was published. Published Published `xml:"published,omitempty" json:"published,omitempty"` // Date and time of last modification. LastModified LastModified `xml:"last-modified,omitempty" json:"last-modified,omitempty"` // The version of the document content. Version Version `xml:"version,omitempty" json:"version,omitempty"` // OSCAL model version. OscalVersion OscalVersion `xml:"oscal-version,omitempty" json:"oscal-version,omitempty"` // An entry in a sequential list of revisions to the containing document in reverse chronological order (i.e., most recent previous revision first). RevisionHistory []Revision `xml:"revision-history>revision,omitempty" json:"revision-history,omitempty"` // A document identifier qualified by an identifier . DocumentIds []DocId `xml:"doc-id,omitempty" json:"document-ids,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"` // Defining a role to be assigned to a party Roles []Role `xml:"role,omitempty" json:"roles,omitempty"` // A location, with associated metadata that can be referenced. Locations []Location `xml:"location,omitempty" json:"locations,omitempty"` // A responsible entity, either singular (an organization or person) or collective (multiple persons) Parties []Party `xml:"party,omitempty" json:"parties,omitempty"` // A reference to a set of organizations or persons that have responsibility for performing a referenced role relative to the parent context. ResponsibleParties ResponsiblePartyMultiplexer `xml:"responsible-party,omitempty" json:"responsible-parties,omitempty"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
Provides information about the publication and availability of the containing document.
type OscalVersion ¶
type OscalVersion string
type Party ¶
type Party struct { // A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object. Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"` // A category describing the kind of party the object describes. Type string `xml:"type,attr,omitempty" json:"type,omitempty"` // The full (legal) name of the party. PartyName PartyName `xml:"party-name,omitempty" json:"party-name,omitempty"` // A common name, short name or acronym ShortName ShortName `xml:"short-name,omitempty" json:"short-name,omitempty"` // An identifier for a person (such as an ORCID) using a designated scheme. ExternalIds []ExternalId `xml:"external-id,omitempty" json:"external-ids,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 postal address. Addresses []Address `xml:"address,omitempty" json:"addresses,omitempty"` // Email address EmailAddresses []Email `xml:"email,omitempty" json:"email-addresses,omitempty"` // Contact number by telephone TelephoneNumbers []Phone `xml:"phone,omitempty" json:"telephone-numbers,omitempty"` // Identifies that the containing object is a member of the organization associated with the provided UUID. MemberOfOrganizations []MemberOfOrganization `xml:"member-of-organization,omitempty" json:"member-of-organizations,omitempty"` // References a defined in . LocationUuids []LocationUuid `xml:"location-uuid,omitempty" json:"location-uuids,omitempty"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
A responsible entity, either singular (an organization or person) or collective (multiple persons)
type Phone ¶
type Phone struct { // Indicates the type of phone number. Type string `xml:"type,attr,omitempty" json:"type,omitempty"` Number string `xml:",chardata" json:"number"` }
Contact number by telephone
type PostalCode ¶
type PostalCode string
type Prop ¶
type Prop struct { // Identifying the purpose and intended use of the property, part or other object. Name string `xml:"name,attr,omitempty" json:"name,omitempty"` // A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object. Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"` // A namespace qualifying the name. Ns string `xml:"ns,attr,omitempty" json:"ns,omitempty"` // Indicating the type or classification of the containing object Class string `xml:"class,attr,omitempty" json:"class,omitempty"` Value string `xml:",chardata" json:"value"` }
A value with a name, attributed to the containing control, part, or group.
type Resource ¶
type Resource struct { // A RFC 4122 version 4 Universally Unique Identifier (UUID) for the containing object. Uuid string `xml:"uuid,attr,omitempty" json:"uuid,omitempty"` // A title for display and navigation Title *Title `xml:"title,omitempty" json:"title,omitempty"` // A short textual description Desc Desc `xml:"desc,omitempty" json:"desc,omitempty"` // A value with a name, attributed to the containing control, part, or group. Properties []Prop `xml:"prop,omitempty" json:"properties,omitempty"` // A document identifier qualified by an identifier . DocumentIds []DocId `xml:"doc-id,omitempty" json:"document-ids,omitempty"` // A citation consisting of end note text and optional structured bibliographic data. Citation *Citation `xml:"citation,omitempty" json:"citation,omitempty"` // A pointer to an external copy of a document with optional hash for verification Rlinks []Rlink `xml:"rlink,omitempty" json:"rlinks,omitempty"` // Attachments []Base64 `xml:"base64,omitempty" json:"attachments,omitempty"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
A resource associated with the present document, which may be a pointer to other data or a citation.
type ResponsibleParty ¶
type ResponsibleParty struct { // The role that the party is responsible for. RoleId string `xml:"role-id,attr,omitempty" json:"role-id,omitempty"` // References a defined in . PartyUuids []PartyUuid `xml:"party-uuid,omitempty" json:"party-uuids,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"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
A reference to a set of organizations or persons that have responsibility for performing a referenced role relative to the parent context.
type ResponsiblePartyMultiplexer ¶
type ResponsiblePartyMultiplexer []ResponsibleParty
func (*ResponsiblePartyMultiplexer) MarshalJSON ¶
func (mplex *ResponsiblePartyMultiplexer) MarshalJSON() ([]byte, error)
func (*ResponsiblePartyMultiplexer) UnmarshalJSON ¶
func (mplex *ResponsiblePartyMultiplexer) UnmarshalJSON(b []byte) error
type Revision ¶
type Revision struct { // A title for display and navigation Title *Title `xml:"title,omitempty" json:"title,omitempty"` // The date and time this document was published. Published Published `xml:"published,omitempty" json:"published,omitempty"` // Date and time of last modification. LastModified LastModified `xml:"last-modified,omitempty" json:"last-modified,omitempty"` // The version of the document content. Version Version `xml:"version,omitempty" json:"version,omitempty"` // OSCAL model version. OscalVersion OscalVersion `xml:"oscal-version,omitempty" json:"oscal-version,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"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
An entry in a sequential list of revisions to the containing document in reverse chronological order (i.e., most recent previous revision first).
type Rlink ¶
type Rlink struct { // A link to a document or document fragment (actual, nominal or projected) Href string `xml:"href,attr,omitempty" json:"href,omitempty"` // Describes the media type of the linked resource MediaType string `xml:"media-type,attr,omitempty" json:"media-type,omitempty"` // A representation of a cryptographic digest generated over a resource using a hash algorithm. Hashes []Hash `xml:"hash,omitempty" json:"hashes,omitempty"` }
A pointer to an external copy of a document with optional hash for verification
type Role ¶
type Role struct { // Unique identifier of the containing object Id string `xml:"id,attr,omitempty" json:"id,omitempty"` // A title for display and navigation Title *Title `xml:"title,omitempty" json:"title,omitempty"` // A common name, short name or acronym ShortName ShortName `xml:"short-name,omitempty" json:"short-name,omitempty"` // A short textual description Desc Desc `xml:"desc,omitempty" json:"desc,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"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` }
Defining a role to be assigned to a party
type Text ¶
type Text = Markup
A line of textual content whose semantic is determined by the context of use.
type VALIDATIONRoot ¶
type VALIDATIONRoot struct { // Provides information about the publication and availability of the containing document. Metadata *Metadata `xml:"metadata,omitempty" json:"metadata,omitempty"` // A collection of citations and resource references. BackMatter *BackMatter `xml:"back-matter,omitempty" json:"back-matter,omitempty"` // A description supporting the parent item. Description *Description `xml:"description,omitempty" json:"description,omitempty"` // Additional commentary on the parent item. Remarks *Remarks `xml:"remarks,omitempty" json:"remarks,omitempty"` // References a defined in . PartyUuid PartyUuid `xml:"party-uuid,omitempty" json:"party-uuid,omitempty"` // A name/value pair with optional explanatory remarks. Annotation *Annotation `xml:"annotation,omitempty" json:"annotation,omitempty"` // A reference to a set of organizations or persons that have responsibility for performing a referenced role relative to the parent context. ResponsibleParties ResponsiblePartyMultiplexer `xml:"responsible-party,omitempty" json:"responsible-parties,omitempty"` }
NOT TO BE USED IN A METASCHEMA