[System]
You are a helpful assistant that answers strictly in JSON. Here's the JSON schema you must adhere to:
<schema>
{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://csrc.nist.gov/ns/oscal/1.1.2/oscal-component-definition-schema.json","$comment":"OSCAL Component Definition Model: JSON Schema","type":"object","definitions":{"json-schema-directive":{"title":"Schema Directive","description":"A JSON Schema directive to bind a specific schema to its document instance.","$id":"#json-schema-directive","$ref":"#/definitions/URIReferenceDatatype"},"oscal-component-definition-oscal-component-definition:component-definition":{"title":"Component Definition","description":"A collection of component descriptions, which may optionally be grouped by capability.","$id":"#assembly_oscal-component-definition_component-definition","type":"object","properties":{"uuid":{"title":"Component Definition Universally Unique Identifier","description":"Provides a globally unique means to identify a given component definition instance.","$ref":"#/definitions/UUIDDatatype"},"metadata":{"$ref":"#assembly_oscal-metadata_metadata"},"import-component-definitions":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_import-component-definition"}},"components":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_defined-component"}},"capabilities":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_capability"}},"back-matter":{"$ref":"#assembly_oscal-metadata_back-matter"}},"required":["uuid","metadata"],"additionalProperties":false},"oscal-component-definition-oscal-component-definition:import-component-definition":{"title":"Import Component Definition","description":"Loads a component definition from another resource.","$id":"#assembly_oscal-component-definition_import-component-definition","type":"object","properties":{"href":{"title":"Hyperlink Reference","description":"A link to a resource that defines a set of components and/or capabilities to import into this collection.","$ref":"#/definitions/URIReferenceDatatype"}},"required":["href"],"additionalProperties":false},"oscal-component-definition-oscal-component-definition:defined-component":{"title":"Component","description":"A defined component that can be part of an implemented system.","$id":"#assembly_oscal-component-definition_defined-component","type":"object","properties":{"uuid":{"title":"Component Identifier","description":"Provides a globally unique means to identify a given component.","$ref":"#/definitions/UUIDDatatype"},"type":{"title":"Component Type","description":"A category describing the purpose of the component.","anyOf":[{"$ref":"#/definitions/StringDatatype"},{"enum":["interconnection","software","hardware","service","policy","physical","process-procedure","plan","guidance","standard","validation"]}]},"title":{"title":"Component Title","description":"A human readable name for the component.","type":"string"},"description":{"title":"Component Description","description":"A description of the component, including information about its function.","type":"string"},"purpose":{"title":"Purpose","description":"A summary of the technological or business purpose of the component.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"responsible-roles":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-role"}},"protocols":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-implementation-common_protocol"}},"control-implementations":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_control-implementation"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid","type","title","description"],"additionalProperties":false},"oscal-component-definition-oscal-component-definition:capability":{"title":"Capability","description":"A grouping of other components and/or capabilities.","$id":"#assembly_oscal-component-definition_capability","type":"object","properties":{"uuid":{"title":"Capability Identifier","description":"Provides a globally unique means to identify a given capability.","$ref":"#/definitions/UUIDDatatype"},"name":{"title":"Capability Name","description":"The capability's human-readable name.","$ref":"#/definitions/StringDatatype"},"description":{"title":"Capability Description","description":"A summary of the capability.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"incorporates-components":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_incorporates-component"}},"control-implementations":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_control-implementation"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid","name","description"],"additionalProperties":false},"oscal-component-definition-oscal-component-definition:incorporates-component":{"title":"Incorporates Component","description":"The collection of components comprising this capability.","$id":"#assembly_oscal-component-definition_incorporates-component","type":"object","properties":{"component-uuid":{"title":"Component Reference","description":"A machine-oriented identifier reference to a component.","$ref":"#/definitions/UUIDDatatype"},"description":{"title":"Component Description","description":"A description of the component, including information about its function.","type":"string"}},"required":["component-uuid","description"],"additionalProperties":false},"oscal-component-definition-oscal-component-definition:control-implementation":{"title":"Control Implementation Set","description":"Defines how the component or capability supports a set of controls.","$id":"#assembly_oscal-component-definition_control-implementation","type":"object","properties":{"uuid":{"title":"Control Implementation Set Identifier","description":"Provides a means to identify a set of control implementations that are supported by a given component or capability.","$ref":"#/definitions/UUIDDatatype"},"source":{"title":"Source Resource Reference","description":"A reference to an OSCAL catalog or profile providing the referenced control or subcontrol definition.","$ref":"#/definitions/URIReferenceDatatype"},"description":{"title":"Control Implementation Description","description":"A description of how the specified set of controls are implemented for the containing component or capability.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"set-parameters":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-implementation-common_set-parameter"}},"implemented-requirements":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_implemented-requirement"}}},"required":["uuid","source","description","implemented-requirements"],"additionalProperties":false},"oscal-component-definition-oscal-component-definition:implemented-requirement":{"title":"Control Implementation","description":"Describes how the containing component or capability implements an individual control.","$id":"#assembly_oscal-component-definition_implemented-requirement","type":"object","properties":{"uuid":{"title":"Control Implementation Identifier","description":"Provides a globally unique means to identify a given control implementation by a component.","$ref":"#/definitions/UUIDDatatype"},"control-id":{"title":"Control Identifier Reference","description":"A reference to a control with a corresponding id value. When referencing an externally defined control, the Control Identifier Reference must be used in the context of the external / imported OSCAL instance (e.g., uri-reference).","$ref":"#/definitions/TokenDatatype"},"description":{"title":"Control Implementation Description","description":"A suggestion from the supplier (e.g., component vendor or author) for how the specified control may be implemented if the containing component or capability is instantiated in a system security plan.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"set-parameters":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-implementation-common_set-parameter"}},"responsible-roles":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-role"}},"statements":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-component-definition_statement"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid","control-id","description"],"additionalProperties":false},"oscal-component-definition-oscal-component-definition:statement":{"title":"Control Statement Implementation","description":"Identifies which statements within a control are addressed.","$id":"#assembly_oscal-component-definition_statement","type":"object","properties":{"statement-id":{"title":"Control Statement Reference","description":"A human-oriented identifier reference to a control statement.","$ref":"#/definitions/TokenDatatype"},"uuid":{"title":"Control Statement Reference Universally Unique Identifier","description":"A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this control statement elsewhere in this or other OSCAL instances. The UUID of the control statement in the source OSCAL instance is sufficient to reference the data item locally or globally (e.g., in an imported OSCAL instance).","$ref":"#/definitions/UUIDDatatype"},"description":{"title":"Statement Implementation Description","description":"A summary of how the containing control statement is implemented by the component or capability.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"responsible-roles":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-role"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["statement-id","uuid","description"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:system-component":{"title":"Component","description":"A defined component that can be part of an implemented system.","$id":"#assembly_oscal-implementation-common_system-component","type":"object","properties":{"uuid":{"title":"Component Identifier","description":"A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this component elsewhere in this or other OSCAL instances. The locally defined UUID of the component can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.","$ref":"#/definitions/UUIDDatatype"},"type":{"title":"Component Type","description":"A category describing the purpose of the component.","anyOf":[{"$ref":"#/definitions/StringDatatype"},{"enum":["this-system","system","interconnection","software","hardware","service","policy","physical","process-procedure","plan","guidance","standard","validation","network"]}]},"title":{"title":"Component Title","description":"A human readable name for the system component.","type":"string"},"description":{"title":"Component Description","description":"A description of the component, including information about its function.","type":"string"},"purpose":{"title":"Purpose","description":"A summary of the technological or business purpose of the component.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"status":{"title":"Status","description":"Describes the operational status of the system component.","type":"object","properties":{"state":{"title":"State","description":"The operational status.","allOf":[{"$ref":"#/definitions/TokenDatatype"},{"enum":["under-development","operational","disposition","other"]}]},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["state"],"additionalProperties":false},"responsible-roles":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-role"}},"protocols":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-implementation-common_protocol"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid","type","title","description","status"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:protocol":{"title":"Service Protocol Information","description":"Information about the protocol used to provide a service.","$id":"#assembly_oscal-implementation-common_protocol","type":"object","properties":{"uuid":{"title":"Service Protocol Information Universally Unique Identifier","description":"A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this service protocol information elsewhere in this or other OSCAL instances. The locally defined UUID of the service protocol can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.","$ref":"#/definitions/UUIDDatatype"},"name":{"title":"Protocol Name","description":"The common name of the protocol, which should be the appropriate \"service name\" from the IANA Service Name and Transport Protocol Port Number Registry.","$ref":"#/definitions/StringDatatype"},"title":{"title":"Protocol Title","description":"A human readable name for the protocol (e.g., Transport Layer Security).","type":"string"},"port-ranges":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-implementation-common_port-range"}}},"required":["name"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:port-range":{"title":"Port Range","description":"Where applicable this is the IPv4 port range on which the service operates.","$id":"#assembly_oscal-implementation-common_port-range","type":"object","properties":{"start":{"title":"Start","description":"Indicates the starting port number in a port range","$ref":"#/definitions/NonNegativeIntegerDatatype"},"end":{"title":"End","description":"Indicates the ending port number in a port range","$ref":"#/definitions/NonNegativeIntegerDatatype"},"transport":{"title":"Transport","description":"Indicates the transport type.","allOf":[{"$ref":"#/definitions/TokenDatatype"},{"enum":["TCP","UDP"]}]}},"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:implementation-status":{"title":"Implementation Status","description":"Indicates the degree to which the a given control is implemented.","$id":"#assembly_oscal-implementation-common_implementation-status","type":"object","properties":{"state":{"title":"Implementation State","description":"Identifies the implementation status of the control or control objective.","anyOf":[{"$ref":"#/definitions/TokenDatatype"},{"enum":["implemented","partial","planned","alternative","not-applicable"]}]},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["state"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:system-user":{"title":"System User","description":"A type of user that interacts with the system based on an associated role.","$id":"#assembly_oscal-implementation-common_system-user","type":"object","properties":{"uuid":{"title":"User Universally Unique Identifier","description":"A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this user class elsewhere in this or other OSCAL instances. The locally defined UUID of the system user can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.","$ref":"#/definitions/UUIDDatatype"},"title":{"title":"User Title","description":"A name given to the user, which may be used by a tool for display and navigation.","type":"string"},"short-name":{"title":"User Short Name","description":"A short common name, abbreviation, or acronym for the user.","$ref":"#/definitions/StringDatatype"},"description":{"title":"User Description","description":"A summary of the user's purpose within the system.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"role-ids":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_role-id"}},"authorized-privileges":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-implementation-common_authorized-privilege"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:authorized-privilege":{"title":"Privilege","description":"Identifies a specific system privilege held by the user, along with an associated description and/or rationale for the privilege.","$id":"#assembly_oscal-implementation-common_authorized-privilege","type":"object","properties":{"title":{"title":"Privilege Title","description":"A human readable name for the privilege.","type":"string"},"description":{"title":"Privilege Description","description":"A summary of the privilege's purpose within the system.","type":"string"},"functions-performed":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-implementation-common_function-performed"}}},"required":["title","functions-performed"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:function-performed":{"title":"Functions Performed","description":"Describes a function performed for a given authorized privilege by this user class.","$id":"#field_oscal-implementation-common_function-performed","$ref":"#/definitions/StringDatatype"},"oscal-component-definition-oscal-implementation-common:inventory-item":{"title":"Inventory Item","description":"A single managed inventory item within the system.","$id":"#assembly_oscal-implementation-common_inventory-item","type":"object","properties":{"uuid":{"title":"Inventory Item Universally Unique Identifier","description":"A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this inventory item elsewhere in this or other OSCAL instances. The locally defined UUID of the inventory item can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.","$ref":"#/definitions/UUIDDatatype"},"description":{"title":"Inventory Item Description","description":"A summary of the inventory item stating its purpose within the system.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"responsible-parties":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-party"}},"implemented-components":{"type":"array","minItems":1,"items":{"title":"Implemented Component","description":"The set of components that are implemented in a given system inventory item.","type":"object","properties":{"component-uuid":{"title":"Component Universally Unique Identifier Reference","description":"A machine-oriented identifier reference to a component that is implemented as part of an inventory item.","$ref":"#/definitions/UUIDDatatype"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"responsible-parties":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-party"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["component-uuid"],"additionalProperties":false}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid","description"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:set-parameter":{"title":"Set Parameter Value","description":"Identifies the parameter that will be set by the enclosed value.","$id":"#assembly_oscal-implementation-common_set-parameter","type":"object","properties":{"param-id":{"title":"Parameter ID","description":"A human-oriented reference to a parameter within a control, who's catalog has been imported into the current implementation context.","$ref":"#/definitions/TokenDatatype"},"values":{"type":"array","minItems":1,"items":{"title":"Parameter Value","description":"A parameter value or set of values.","$ref":"#/definitions/StringDatatype"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["param-id","values"],"additionalProperties":false},"oscal-component-definition-oscal-implementation-common:system-id":{"title":"System Identification","description":"A human-oriented, globally unique identifier with cross-instance scope that can be used to reference this system identification property elsewhere in this or other OSCAL instances. When referencing an externally defined system identification, the system identification must be used in the context of the external / imported OSCAL instance (e.g., uri-reference). This string should be assigned per-subject, which means it should be consistently used to identify the same system across revisions of the document.","$id":"#field_oscal-implementation-common_system-id","type":"object","properties":{"identifier-type":{"title":"Identification System Type","description":"Identifies the identification system from which the provided identifier was assigned.","anyOf":[{"$ref":"#/definitions/URIDatatype"},{"enum":["https://fedramp.gov","http://fedramp.gov/ns/oscal","https://ietf.org/rfc/rfc4122","http://ietf.org/rfc/rfc4122"]}]},"id":{"$ref":"#/definitions/StringDatatype"}},"required":["id"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:metadata":{"title":"Document Metadata","description":"Provides information about the containing document, and defines concepts that are shared across the document.","$id":"#assembly_oscal-metadata_metadata","type":"object","properties":{"title":{"title":"Document Title","description":"A name given to the document, which may be used by a tool for display and navigation.","type":"string"},"published":{"$ref":"#field_oscal-metadata_published"},"last-modified":{"$ref":"#field_oscal-metadata_last-modified"},"version":{"$ref":"#field_oscal-metadata_version"},"oscal-version":{"$ref":"#field_oscal-metadata_oscal-version"},"revisions":{"type":"array","minItems":1,"items":{"title":"Revision History Entry","description":"An entry in a sequential list of revisions to the containing document, expected to be in reverse chronological order (i.e. latest first).","type":"object","properties":{"title":{"title":"Document Title","description":"A name given to the document revision, which may be used by a tool for display and navigation.","type":"string"},"published":{"$ref":"#field_oscal-metadata_published"},"last-modified":{"$ref":"#field_oscal-metadata_last-modified"},"version":{"$ref":"#field_oscal-metadata_version"},"oscal-version":{"$ref":"#field_oscal-metadata_oscal-version"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["version"],"additionalProperties":false}},"document-ids":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_document-id"}},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"roles":{"type":"array","minItems":1,"items":{"title":"Role","description":"Defines a function, which might be assigned to a party in a specific situation.","type":"object","properties":{"id":{"title":"Role Identifier","description":"A unique identifier for the role.","$ref":"#/definitions/TokenDatatype"},"title":{"title":"Role Title","description":"A name given to the role, which may be used by a tool for display and navigation.","type":"string"},"short-name":{"title":"Role Short Name","description":"A short common name, abbreviation, or acronym for the role.","$ref":"#/definitions/StringDatatype"},"description":{"title":"Role Description","description":"A summary of the role's purpose and associated responsibilities.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["id","title"],"additionalProperties":false}},"locations":{"type":"array","minItems":1,"items":{"title":"Location","description":"A physical point of presence, which may be associated with people, organizations, or other concepts within the current or linked OSCAL document.","type":"object","properties":{"uuid":{"title":"Location Universally Unique Identifier","description":"A unique ID for the location, for reference.","$ref":"#/definitions/UUIDDatatype"},"title":{"title":"Location Title","description":"A name given to the location, which may be used by a tool for display and navigation.","type":"string"},"address":{"$ref":"#assembly_oscal-metadata_address"},"email-addresses":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_email-address"}},"telephone-numbers":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_telephone-number"}},"urls":{"type":"array","minItems":1,"items":{"title":"Location URL","description":"The uniform resource locator (URL) for a web site or other resource associated with the location.","$ref":"#/definitions/URIDatatype"}},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid"],"additionalProperties":false}},"parties":{"type":"array","minItems":1,"items":{"title":"Party","description":"An organization or person, which may be associated with roles or other concepts within the current or linked OSCAL document.","type":"object","properties":{"uuid":{"title":"Party Universally Unique Identifier","description":"A unique identifier for the party.","$ref":"#/definitions/UUIDDatatype"},"type":{"title":"Party Type","description":"A category describing the kind of party the object describes.","allOf":[{"$ref":"#/definitions/StringDatatype"},{"enum":["person","organization"]}]},"name":{"title":"Party Name","description":"The full name of the party. This is typically the legal name associated with the party.","$ref":"#/definitions/StringDatatype"},"short-name":{"title":"Party Short Name","description":"A short common name, abbreviation, or acronym for the party.","$ref":"#/definitions/StringDatatype"},"external-ids":{"type":"array","minItems":1,"items":{"title":"Party External Identifier","description":"An identifier for a person or organization using a designated scheme. e.g. an Open Researcher and Contributor ID (ORCID).","type":"object","properties":{"scheme":{"title":"External Identifier Schema","description":"Indicates the type of external identifier.","anyOf":[{"$ref":"#/definitions/URIDatatype"},{"enum":["http://orcid.org/"]}]},"id":{"$ref":"#/definitions/StringDatatype"}},"required":["id","scheme"],"additionalProperties":false}},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"email-addresses":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_email-address"}},"telephone-numbers":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_telephone-number"}},"addresses":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_address"}},"location-uuids":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_location-uuid"}},"member-of-organizations":{"type":"array","minItems":1,"items":{"title":"Organizational Affiliation","description":"A reference to another party by UUID, typically an organization, that this subject is associated with.","$ref":"#/definitions/UUIDDatatype"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid","type"],"additionalProperties":false}},"responsible-parties":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-party"}},"actions":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_action"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["title","last-modified","version","oscal-version"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:location-uuid":{"title":"Location Universally Unique Identifier Reference","description":"Reference to a location by UUID.","$id":"#field_oscal-metadata_location-uuid","$ref":"#/definitions/UUIDDatatype"},"oscal-component-definition-oscal-metadata:party-uuid":{"title":"Party Universally Unique Identifier Reference","description":"Reference to a party by UUID.","$id":"#field_oscal-metadata_party-uuid","$ref":"#/definitions/UUIDDatatype"},"oscal-component-definition-oscal-metadata:role-id":{"title":"Role Identifier Reference","description":"Reference to a role by UUID.","$id":"#field_oscal-metadata_role-id","$ref":"#/definitions/TokenDatatype"},"oscal-component-definition-oscal-metadata:back-matter":{"title":"Back matter","description":"A collection of resources that may be referenced from within the OSCAL document instance.","$id":"#assembly_oscal-metadata_back-matter","type":"object","properties":{"resources":{"type":"array","minItems":1,"items":{"title":"Resource","description":"A resource associated with content in the containing document instance. A resource may be directly included in the document using base64 encoding or may point to one or more equivalent internet resources.","type":"object","properties":{"uuid":{"title":"Resource Universally Unique Identifier","description":"A unique identifier for a resource.","$ref":"#/definitions/UUIDDatatype"},"title":{"title":"Resource Title","description":"An optional name given to the resource, which may be used by a tool for display and navigation.","type":"string"},"description":{"title":"Resource Description","description":"An optional short summary of the resource used to indicate the purpose of the resource.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"document-ids":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_document-id"}},"citation":{"title":"Citation","description":"An optional citation consisting of end note text using structured markup.","type":"object","properties":{"text":{"title":"Citation Text","description":"A line of citation text.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}}},"required":["text"],"additionalProperties":false},"rlinks":{"type":"array","minItems":1,"items":{"title":"Resource link","description":"A URL-based pointer to an external resource with an optional hash for verification and change detection.","type":"object","properties":{"href":{"title":"Hypertext Reference","description":"A resolvable URL pointing to the referenced resource.","$ref":"#/definitions/URIReferenceDatatype"},"media-type":{"title":"Media Type","description":"A label that indicates the nature of a resource, as a data serialization or format.","$ref":"#/definitions/StringDatatype"},"hashes":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_hash"}}},"required":["href"],"additionalProperties":false}},"base64":{"title":"Base64","description":"A resource encoded using the Base64 alphabet defined by RFC 2045.","type":"object","properties":{"filename":{"title":"File Name","description":"Name of the file before it was encoded as Base64 to be embedded in a resource. This is the name that will be assigned to the file when the file is decoded.","$ref":"#/definitions/TokenDatatype"},"media-type":{"title":"Media Type","description":"A label that indicates the nature of a resource, as a data serialization or format.","$ref":"#/definitions/StringDatatype"},"value":{"$ref":"#/definitions/Base64Datatype"}},"required":["value"],"additionalProperties":false},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid"],"additionalProperties":false}}},"additionalProperties":false},"oscal-component-definition-oscal-metadata:property":{"title":"Property","description":"An attribute, characteristic, or quality of the containing object expressed as a namespace qualified name/value pair.","$id":"#assembly_oscal-metadata_property","type":"object","properties":{"name":{"title":"Property Name","description":"A textual label, within a namespace, that uniquely identifies a specific attribute, characteristic, or quality of the property's containing object.","$ref":"#/definitions/TokenDatatype"},"uuid":{"title":"Property Universally Unique Identifier","description":"A unique identifier for a property.","$ref":"#/definitions/UUIDDatatype"},"ns":{"title":"Property Namespace","description":"A namespace qualifying the property's name. This allows different organizations to associate distinct semantics with the same name.","$ref":"#/definitions/URIDatatype"},"value":{"title":"Property Value","description":"Indicates the value of the attribute, characteristic, or quality.","$ref":"#/definitions/StringDatatype"},"class":{"title":"Property Class","description":"A textual label that provides a sub-type or characterization of the property's name.","$ref":"#/definitions/TokenDatatype"},"group":{"title":"Property Group","description":"An identifier for relating distinct sets of properties.","$ref":"#/definitions/TokenDatatype"},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["name","value"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:link":{"title":"Link","description":"A reference to a local or remote resource, that has a specific relation to the containing object.","$id":"#assembly_oscal-metadata_link","type":"object","properties":{"href":{"title":"Hypertext Reference","description":"A resolvable URL reference to a resource.","$ref":"#/definitions/URIReferenceDatatype"},"rel":{"title":"Link Relation Type","description":"Describes the type of relationship provided by the link's hypertext reference. This can be an indicator of the link's purpose.","anyOf":[{"$ref":"#/definitions/TokenDatatype"},{"enum":["reference"]}]},"media-type":{"title":"Media Type","description":"A label that indicates the nature of a resource, as a data serialization or format.","$ref":"#/definitions/StringDatatype"},"resource-fragment":{"title":"Resource Fragment","description":"In case where the href points to a back-matter/resource, this value will indicate the URI fragment to append to any rlink associated with the resource. This value MUST be URI encoded.","$ref":"#/definitions/StringDatatype"},"text":{"title":"Link Text","description":"A textual label to associate with the link, which may be used for presentation in a tool.","type":"string"}},"required":["href"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:responsible-party":{"title":"Responsible Party","description":"A reference to a set of persons and/or organizations that have responsibility for performing the referenced role in the context of the containing object.","$id":"#assembly_oscal-metadata_responsible-party","type":"object","properties":{"role-id":{"title":"Responsible Role","description":"A reference to a role performed by a party.","$ref":"#/definitions/TokenDatatype"},"party-uuids":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_party-uuid"}},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["role-id","party-uuids"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:action":{"title":"Action","description":"An action applied by a role within a given party to the content.","$id":"#assembly_oscal-metadata_action","type":"object","properties":{"uuid":{"title":"Action Universally Unique Identifier","description":"A unique identifier that can be used to reference this defined action elsewhere in an OSCAL document. A UUID should be consistently used for a given location across revisions of the document.","$ref":"#/definitions/UUIDDatatype"},"date":{"title":"Action Occurrence Date","description":"The date and time when the action occurred.","$ref":"#/definitions/DateTimeWithTimezoneDatatype"},"type":{"title":"Action Type","description":"The type of action documented by the assembly, such as an approval.","$ref":"#/definitions/TokenDatatype"},"system":{"title":"Action Type System","description":"Specifies the action type system used.","$ref":"#/definitions/URIDatatype"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"responsible-parties":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_responsible-party"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["uuid","type","system"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:responsible-role":{"title":"Responsible Role","description":"A reference to a role with responsibility for performing a function relative to the containing object, optionally associated with a set of persons and/or organizations that perform that role.","$id":"#assembly_oscal-metadata_responsible-role","type":"object","properties":{"role-id":{"title":"Responsible Role ID","description":"A human-oriented identifier reference to a role performed.","$ref":"#/definitions/TokenDatatype"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"party-uuids":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_party-uuid"}},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["role-id"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:hash":{"title":"Hash","description":"A representation of a cryptographic digest generated over a resource using a specified hash algorithm.","$id":"#field_oscal-metadata_hash","type":"object","properties":{"algorithm":{"title":"Hash algorithm","description":"The digest method by which a hash is derived.","anyOf":[{"$ref":"#/definitions/StringDatatype"},{"enum":["SHA-224","SHA-256","SHA-384","SHA-512","SHA3-224","SHA3-256","SHA3-384","SHA3-512"]}]},"value":{"$ref":"#/definitions/StringDatatype"}},"required":["value","algorithm"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:remarks":{"title":"Remarks","description":"Additional commentary about the containing object.","$id":"#field_oscal-metadata_remarks","type":"string"},"oscal-component-definition-oscal-metadata:published":{"title":"Publication Timestamp","description":"The date and time the document was last made available.","$id":"#field_oscal-metadata_published","$ref":"#/definitions/DateTimeWithTimezoneDatatype"},"oscal-component-definition-oscal-metadata:last-modified":{"title":"Last Modified Timestamp","description":"The date and time the document was last stored for later retrieval.","$id":"#field_oscal-metadata_last-modified","$ref":"#/definitions/DateTimeWithTimezoneDatatype"},"oscal-component-definition-oscal-metadata:version":{"title":"Document Version","description":"Used to distinguish a specific revision of an OSCAL document from other previous and future versions.","$id":"#field_oscal-metadata_version","$ref":"#/definitions/StringDatatype"},"oscal-component-definition-oscal-metadata:oscal-version":{"title":"OSCAL Version","description":"The OSCAL model version the document was authored against and will conform to as valid.","$id":"#field_oscal-metadata_oscal-version","$ref":"#/definitions/StringDatatype"},"oscal-component-definition-oscal-metadata:email-address":{"title":"Email Address","description":"An email address as defined by RFC 5322 Section 3.4.1.","$id":"#field_oscal-metadata_email-address","$ref":"#/definitions/EmailAddressDatatype"},"oscal-component-definition-oscal-metadata:telephone-number":{"title":"Telephone Number","description":"A telephone service number as defined by ITU-T E.164.","$id":"#field_oscal-metadata_telephone-number","type":"object","properties":{"type":{"title":"type flag","description":"Indicates the type of phone number.","anyOf":[{"$ref":"#/definitions/StringDatatype"},{"enum":["home","office","mobile"]}]},"number":{"$ref":"#/definitions/StringDatatype"}},"required":["number"],"additionalProperties":false},"oscal-component-definition-oscal-metadata:address":{"title":"Address","description":"A postal address for the location.","$id":"#assembly_oscal-metadata_address","type":"object","properties":{"type":{"title":"Address Type","description":"Indicates the type of address.","anyOf":[{"$ref":"#/definitions/TokenDatatype"},{"enum":["home","work"]}]},"addr-lines":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-metadata_addr-line"}},"city":{"title":"City","description":"City, town or geographical region for the mailing address.","$ref":"#/definitions/StringDatatype"},"state":{"title":"State","description":"State, province or analogous geographical region for a mailing address.","$ref":"#/definitions/StringDatatype"},"postal-code":{"title":"Postal Code","description":"Postal or ZIP code for mailing address.","$ref":"#/definitions/StringDatatype"},"country":{"title":"Country Code","description":"The ISO 3166-1 alpha-2 country code for the mailing address.","$ref":"#/definitions/StringDatatype"}},"additionalProperties":false},"oscal-component-definition-oscal-metadata:addr-line":{"title":"Address line","description":"A single line of an address.","$id":"#field_oscal-metadata_addr-line","$ref":"#/definitions/StringDatatype"},"oscal-component-definition-oscal-metadata:document-id":{"title":"Document Identifier","description":"A document identifier qualified by an identifier scheme.","$id":"#field_oscal-metadata_document-id","type":"object","properties":{"scheme":{"title":"Document Identification Scheme","description":"Qualifies the kind of document identifier using a URI. If the scheme is not provided the value of the element will be interpreted as a string of characters.","anyOf":[{"$ref":"#/definitions/URIDatatype"},{"enum":["http://www.doi.org/"]}]},"identifier":{"$ref":"#/definitions/StringDatatype"}},"required":["identifier"],"additionalProperties":false},"oscal-component-definition-oscal-control-common:part":{"title":"Part","description":"An annotated, markup-based textual element of a control's or catalog group's definition, or a child of another part.","$id":"#assembly_oscal-control-common_part","type":"object","properties":{"id":{"title":"Part Identifier","description":"A unique identifier for the part.","$ref":"#/definitions/TokenDatatype"},"name":{"title":"Part Name","description":"A textual label that uniquely identifies the part's semantic type, which exists in a value space qualified by the ns.","$ref":"#/definitions/TokenDatatype"},"ns":{"title":"Part Namespace","description":"An optional namespace qualifying the part's name. This allows different organizations to associate distinct semantics with the same name.","$ref":"#/definitions/URIDatatype"},"class":{"title":"Part Class","description":"An optional textual providing a sub-type or characterization of the part's name, or a category to which the part belongs.","$ref":"#/definitions/TokenDatatype"},"title":{"title":"Part Title","description":"An optional name given to the part, which may be used by a tool for display and navigation.","type":"string"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"prose":{"title":"Part Text","description":"Permits multiple paragraphs, lists, tables etc.","type":"string"},"parts":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-control-common_part"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}}},"required":["name"],"additionalProperties":false},"oscal-component-definition-oscal-control-common:parameter":{"title":"Parameter","description":"Parameters provide a mechanism for the dynamic assignment of value(s) in a control.","$id":"#assembly_oscal-control-common_parameter","type":"object","properties":{"id":{"title":"Parameter Identifier","description":"A unique identifier for the parameter.","$ref":"#/definitions/TokenDatatype"},"class":{"title":"Parameter Class","description":"A textual label that provides a characterization of the type, purpose, use or scope of the parameter.","$ref":"#/definitions/TokenDatatype"},"depends-on":{"title":"Depends on","description":"(deprecated) Another parameter invoking this one. This construct has been deprecated and should not be used.","$ref":"#/definitions/TokenDatatype"},"props":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_property"}},"links":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-metadata_link"}},"label":{"title":"Parameter Label","description":"A short, placeholder name for the parameter, which can be used as a substitute for a value if no value is assigned.","type":"string"},"usage":{"title":"Parameter Usage Description","description":"Describes the purpose and use of a parameter.","type":"string"},"constraints":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-control-common_parameter-constraint"}},"guidelines":{"type":"array","minItems":1,"items":{"$ref":"#assembly_oscal-control-common_parameter-guideline"}},"values":{"type":"array","minItems":1,"items":{"$ref":"#field_oscal-control-common_parameter-value"}},"select":{"$ref":"#assembly_oscal-control-common_parameter-selection"},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["id"],"additionalProperties":false},"oscal-component-definition-oscal-control-common:parameter-constraint":{"title":"Constraint","description":"A formal or informal expression of a constraint or test.","$id":"#assembly_oscal-control-common_parameter-constraint","type":"object","properties":{"description":{"title":"Constraint Description","description":"A textual summary of the constraint to be applied.","type":"string"},"tests":{"type":"array","minItems":1,"items":{"title":"Constraint Test","description":"A test expression which is expected to be evaluated by a tool.","type":"object","properties":{"expression":{"title":"Constraint test","description":"A formal (executable) expression of a constraint.","$ref":"#/definitions/StringDatatype"},"remarks":{"$ref":"#field_oscal-metadata_remarks"}},"required":["expression"],"additionalProperties":false}}},"additionalProperties":false},"oscal-component-definition-oscal-control-common:parameter-guideline":{"title":"Guideline","description":"A prose statement that provides a recommendation for the use of a parameter.","$id":"#assembly_oscal-control-common_parameter-guideline","type":"object","properties":{"prose":{"title":"Guideline Text","description":"Prose permits multiple paragraphs, lists, tables etc.","type":"string"}},"required":["prose"],"additionalProperties":false},"oscal-component-definition-oscal-control-common:parameter-value":{"title":"Parameter Value","description":"A parameter value or set of values.","$id":"#field_oscal-control-common_parameter-value","$ref":"#/definitions/StringDatatype"},"oscal-component-definition-oscal-control-common:parameter-selection":{"title":"Selection","description":"Presenting a choice among alternatives.","$id":"#assembly_oscal-control-common_parameter-selection","type":"object","properties":{"how-many":{"title":"Parameter Cardinality","description":"Describes the number of selections that must occur. Without this setting, only one value should be assumed to be permitted.","allOf":[{"$ref":"#/definitions/TokenDatatype"},{"enum":["one","one-or-more"]}]},"choice":{"type":"array","minItems":1,"items":{"title":"Choice","description":"A value selection among several such options.","type":"string"}}},"additionalProperties":false},"oscal-component-definition-oscal-control-common:include-all":{"title":"Include All","description":"Include all controls from the imported catalog or profile resources.","$id":"#assembly_oscal-control-common_include-all","type":"object","additionalProperties":false},"Base64Datatype":{"description":"Binary data encoded using the Base 64 encoding algorithm as defined by RFC4648.","type":"string","pattern":"^[0-9A-Za-z+/]+={0,2}$","contentEncoding":"base64"},"DateTimeWithTimezoneDatatype":{"description":"A string representing a point in time with a required timezone.","type":"string","format":"date-time","pattern":"^(((2000|2400|2800|(19|2[0-9](0[48]|[2468][048]|[13579][26])))-02-29)|(((19|2[0-9])[0-9]{2})-02-(0[1-9]|1[0-9]|2[0-8]))|(((19|2[0-9])[0-9]{2})-(0[13578]|10|12)-(0[1-9]|[12][0-9]|3[01]))|(((19|2[0-9])[0-9]{2})-(0[469]|11)-(0[1-9]|[12][0-9]|30)))T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?(Z|(-((0[0-9]|1[0-2]):00|0[39]:30)|\\+((0[0-9]|1[0-4]):00|(0[34569]|10):30|(0[58]|12):45)))$"},"EmailAddressDatatype":{"description":"An email address string formatted according to RFC 6531.","allOf":[{"$ref":"#/definitions/StringDatatype"},{"type":"string","format":"email","pattern":"^.+@.+$"}]},"IntegerDatatype":{"description":"A whole number value.","type":"integer"},"NonNegativeIntegerDatatype":{"description":"An integer value that is equal to or greater than 0.","allOf":[{"$ref":"#/definitions/IntegerDatatype"},{"type":"number","minimum":0}]},"StringDatatype":{"description":"A non-empty string with leading and trailing whitespace disallowed. Whitespace is: U+9, U+10, U+32 or [ \n\t]+","type":"string","pattern":"^\\S(.*\\S)?$"},"TokenDatatype":{"description":"A non-colonized name as defined by XML Schema Part 2: Datatypes Second Edition. https://www.w3.org/TR/xmlschema11-2/#NCName.","type":"string","pattern":"^(\\p{L}|_)(\\p{L}|\\p{N}|[.\\-_])*$"},"URIDatatype":{"description":"A universal resource identifier (URI) formatted according to RFC3986.","type":"string","format":"uri","pattern":"^[a-zA-Z][a-zA-Z0-9+\\-.]+:.+$"},"URIReferenceDatatype":{"description":"A URI Reference, either a URI or a relative-reference, formatted according to section 4.1 of RFC3986.","type":"string","format":"uri-reference"},"UUIDDatatype":{"description":"A type 4 ('random' or 'pseudorandom') or type 5 UUID per RFC 4122.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[45][0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$"}},"properties":{"$schema":{"$ref":"#json-schema-directive"},"component-definition":{"$ref":"#assembly_oscal-component-definition_component-definition"}},"required":["component-definition"],"additionalProperties":false}
</schema>

[User] Provide a JSON object that satisfies the schema "oscal_component_schema". Here are the required top‑level fields: component-definition. Return only the valid JSON object.

OSCAL Component Definition Model: JSON Schema

Schema Directive

A JSON Schema directive to bind a specific schema to its document instance.

Component Definition

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

Component Definition Universally Unique Identifier

Provides a globally unique means to identify a given component definition instance.

Import Component Definition

Loads a component definition from another resource.

Hyperlink Reference

A link to a resource that defines a set of components and/or capabilities to import into this collection.

Component

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

Component Identifier

Provides a globally unique means to identify a given component.

Component Type

A category describing the purpose of the component.

Component Title

A human readable name for the component.

Component Description

A description of the component, including information about its function.

Purpose

A summary of the technological or business purpose of the component.

Capability

A grouping of other components and/or capabilities.

Capability Identifier

Provides a globally unique means to identify a given capability.

Capability Name

The capability's human-readable name.

Capability Description

A summary of the capability.

Incorporates Component

The collection of components comprising this capability.

Component Reference

A machine-oriented identifier reference to a component.

Component Description

Control Implementation Set

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

Control Implementation Set Identifier

Provides a means to identify a set of control implementations that are supported by a given component or capability.

Source Resource Reference

A reference to an OSCAL catalog or profile providing the referenced control or subcontrol definition.

Control Implementation Description

A description of how the specified set of controls are implemented for the containing component or capability.

uuid source description implemented-requirements

Control Implementation

Describes how the containing component or capability implements an individual control.

Control Implementation Identifier

Provides a globally unique means to identify a given control implementation by a component.

Control Identifier Reference

A reference to a control with a corresponding id value. When referencing an externally defined control, the Control Identifier Reference must be used in the context of the external / imported OSCAL instance (e.g., uri-reference).

Control Implementation Description

A suggestion from the supplier (e.g., component vendor or author) for how the specified control may be implemented if the containing component or capability is instantiated in a system security plan.

Control Statement Implementation

Identifies which statements within a control are addressed.

Control Statement Reference

A human-oriented identifier reference to a control statement.

Control Statement Reference Universally Unique Identifier

A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this control statement elsewhere in this or other OSCAL instances. The UUID of the control statement in the source OSCAL instance is sufficient to reference the data item locally or globally (e.g., in an imported OSCAL instance).

Statement Implementation Description

A summary of how the containing control statement is implemented by the component or capability.

Component

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

Component Identifier

A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this component elsewhere in this or other OSCAL instances. The locally defined UUID of the component can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.

Component Type

A category describing the purpose of the component.

this-system system interconnection software hardware service policy physical process-procedure plan guidance standard validation network

Component Title

A human readable name for the system component.

Component Description

A description of the component, including information about its function.

Purpose

A summary of the technological or business purpose of the component.

Status

Describes the operational status of the system component.

State

The operational status.

under-development operational disposition other

Service Protocol Information

Information about the protocol used to provide a service.

Service Protocol Information Universally Unique Identifier

A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this service protocol information elsewhere in this or other OSCAL instances. The locally defined UUID of the service protocol can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.

Protocol Name

The common name of the protocol, which should be the appropriate "service name" from the IANA Service Name and Transport Protocol Port Number Registry.

Protocol Title

A human readable name for the protocol (e.g., Transport Layer Security).

Port Range

Where applicable this is the IPv4 port range on which the service operates.

Start

Indicates the starting port number in a port range

End

Indicates the ending port number in a port range

Transport

Indicates the transport type.

Implementation Status

Indicates the degree to which the a given control is implemented.

Implementation State

Identifies the implementation status of the control or control objective.

implemented partial planned alternative not-applicable

System User

A type of user that interacts with the system based on an associated role.

User Universally Unique Identifier

A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this user class elsewhere in this or other OSCAL instances. The locally defined UUID of the system user can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.

User Title

A name given to the user, which may be used by a tool for display and navigation.

User Short Name

A short common name, abbreviation, or acronym for the user.

User Description

A summary of the user's purpose within the system.

Privilege

Identifies a specific system privilege held by the user, along with an associated description and/or rationale for the privilege.

Privilege Title

A human readable name for the privilege.

Privilege Description

A summary of the privilege's purpose within the system.

Functions Performed

Describes a function performed for a given authorized privilege by this user class.

Inventory Item

A single managed inventory item within the system.

Inventory Item Universally Unique Identifier

A machine-oriented, globally unique identifier with cross-instance scope that can be used to reference this inventory item elsewhere in this or other OSCAL instances. The locally defined UUID of the inventory item can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.

Inventory Item Description

A summary of the inventory item stating its purpose within the system.

Implemented Component

The set of components that are implemented in a given system inventory item.

Component Universally Unique Identifier Reference

A machine-oriented identifier reference to a component that is implemented as part of an inventory item.

Set Parameter Value

Identifies the parameter that will be set by the enclosed value.

Parameter ID

A human-oriented reference to a parameter within a control, who's catalog has been imported into the current implementation context.

Parameter Value

A parameter value or set of values.

System Identification

A human-oriented, globally unique identifier with cross-instance scope that can be used to reference this system identification property elsewhere in this or other OSCAL instances. When referencing an externally defined system identification, the system identification must be used in the context of the external / imported OSCAL instance (e.g., uri-reference). This string should be assigned per-subject, which means it should be consistently used to identify the same system across revisions of the document.

Identification System Type

Identifies the identification system from which the provided identifier was assigned.

Document Metadata

Provides information about the containing document, and defines concepts that are shared across the document.

Document Title

A name given to the document, which may be used by a tool for display and navigation.

Revision History Entry

An entry in a sequential list of revisions to the containing document, expected to be in reverse chronological order (i.e. latest first).

Document Title

A name given to the document revision, which may be used by a tool for display and navigation.

Role

Defines a function, which might be assigned to a party in a specific situation.

Role Identifier

A unique identifier for the role.

Role Title

A name given to the role, which may be used by a tool for display and navigation.

Role Short Name

A short common name, abbreviation, or acronym for the role.

Role Description

A summary of the role's purpose and associated responsibilities.

Location

A physical point of presence, which may be associated with people, organizations, or other concepts within the current or linked OSCAL document.

Location Universally Unique Identifier

A unique ID for the location, for reference.

Location Title

A name given to the location, which may be used by a tool for display and navigation.

Location URL

The uniform resource locator (URL) for a web site or other resource associated with the location.

Party

An organization or person, which may be associated with roles or other concepts within the current or linked OSCAL document.

Party Universally Unique Identifier

A unique identifier for the party.

Party Type

A category describing the kind of party the object describes.

Party Name

The full name of the party. This is typically the legal name associated with the party.

Party Short Name

A short common name, abbreviation, or acronym for the party.

Party External Identifier

An identifier for a person or organization using a designated scheme. e.g. an Open Researcher and Contributor ID (ORCID).

External Identifier Schema

Indicates the type of external identifier.

Organizational Affiliation

A reference to another party by UUID, typically an organization, that this subject is associated with.

Reference to a location by UUID.

Reference to a party by UUID.

Role Identifier Reference

Reference to a role by UUID.

Back matter

A collection of resources that may be referenced from within the OSCAL document instance.

Resource

A resource associated with content in the containing document instance. A resource may be directly included in the document using base64 encoding or may point to one or more equivalent internet resources.

Resource Universally Unique Identifier

A unique identifier for a resource.

Resource Title

An optional name given to the resource, which may be used by a tool for display and navigation.

Resource Description

An optional short summary of the resource used to indicate the purpose of the resource.

Citation

An optional citation consisting of end note text using structured markup.

Citation Text

A line of citation text.

Resource link

A URL-based pointer to an external resource with an optional hash for verification and change detection.

Hypertext Reference

A resolvable URL pointing to the referenced resource.

Media Type

A label that indicates the nature of a resource, as a data serialization or format.

Base64

A resource encoded using the Base64 alphabet defined by RFC 2045.

File Name

Name of the file before it was encoded as Base64 to be embedded in a resource. This is the name that will be assigned to the file when the file is decoded.

Media Type

Property

An attribute, characteristic, or quality of the containing object expressed as a namespace qualified name/value pair.

Property Name

A textual label, within a namespace, that uniquely identifies a specific attribute, characteristic, or quality of the property's containing object.

Property Universally Unique Identifier

A unique identifier for a property.

Property Namespace

A namespace qualifying the property's name. This allows different organizations to associate distinct semantics with the same name.

Property Value

Indicates the value of the attribute, characteristic, or quality.

Property Class

A textual label that provides a sub-type or characterization of the property's name.

Property Group

An identifier for relating distinct sets of properties.

Link

A reference to a local or remote resource, that has a specific relation to the containing object.

Hypertext Reference

A resolvable URL reference to a resource.

Link Relation Type

Describes the type of relationship provided by the link's hypertext reference. This can be an indicator of the link's purpose.

Media Type

Resource Fragment

In case where the href points to a back-matter/resource, this value will indicate the URI fragment to append to any rlink associated with the resource. This value MUST be URI encoded.

Link Text

A textual label to associate with the link, which may be used for presentation in a tool.

Responsible Party

A reference to a set of persons and/or organizations that have responsibility for performing the referenced role in the context of the containing object.

Responsible Role

A reference to a role performed by a party.

Action

An action applied by a role within a given party to the content.

Action Universally Unique Identifier

A unique identifier that can be used to reference this defined action elsewhere in an OSCAL document. A UUID should be consistently used for a given location across revisions of the document.

Action Occurrence Date

The date and time when the action occurred.

Action Type

The type of action documented by the assembly, such as an approval.

Action Type System

Specifies the action type system used.

Responsible Role

A reference to a role with responsibility for performing a function relative to the containing object, optionally associated with a set of persons and/or organizations that perform that role.

Responsible Role ID

A human-oriented identifier reference to a role performed.

Hash

A representation of a cryptographic digest generated over a resource using a specified hash algorithm.

Hash algorithm

The digest method by which a hash is derived.

Remarks

Additional commentary about the containing object.

Publication Timestamp

The date and time the document was last made available.

Last Modified Timestamp

The date and time the document was last stored for later retrieval.

Document Version

Used to distinguish a specific revision of an OSCAL document from other previous and future versions.

OSCAL Version

The OSCAL model version the document was authored against and will conform to as valid.

Email Address

An email address as defined by RFC 5322 Section 3.4.1.

Telephone Number

A telephone service number as defined by ITU-T E.164.

type flag

Indicates the type of phone number.

Address

A postal address for the location.

Address Type

Indicates the type of address.

City

City, town or geographical region for the mailing address.

State

State, province or analogous geographical region for a mailing address.

Postal Code

Postal or ZIP code for mailing address.

Country Code

The ISO 3166-1 alpha-2 country code for the mailing address.

Address line

A single line of an address.

Document Identifier

A document identifier qualified by an identifier scheme.

Document Identification Scheme

Qualifies the kind of document identifier using a URI. If the scheme is not provided the value of the element will be interpreted as a string of characters.

Part

An annotated, markup-based textual element of a control's or catalog group's definition, or a child of another part.

Part Identifier

A unique identifier for the part.

Part Name

A textual label that uniquely identifies the part's semantic type, which exists in a value space qualified by the ns.

Part Namespace

An optional namespace qualifying the part's name. This allows different organizations to associate distinct semantics with the same name.

Part Class

An optional textual providing a sub-type or characterization of the part's name, or a category to which the part belongs.

Part Title

An optional name given to the part, which may be used by a tool for display and navigation.

Part Text

Permits multiple paragraphs, lists, tables etc.

Parameter

Parameters provide a mechanism for the dynamic assignment of value(s) in a control.

Parameter Identifier

A unique identifier for the parameter.

Parameter Class

A textual label that provides a characterization of the type, purpose, use or scope of the parameter.

Depends on

(deprecated) Another parameter invoking this one. This construct has been deprecated and should not be used.

Parameter Label

A short, placeholder name for the parameter, which can be used as a substitute for a value if no value is assigned.

Parameter Usage Description

Describes the purpose and use of a parameter.

Constraint

A formal or informal expression of a constraint or test.

Constraint Description

A textual summary of the constraint to be applied.

Constraint Test

A test expression which is expected to be evaluated by a tool.

Constraint test

A formal (executable) expression of a constraint.

Guideline

A prose statement that provides a recommendation for the use of a parameter.

Guideline Text

Prose permits multiple paragraphs, lists, tables etc.

Parameter Value

A parameter value or set of values.

Selection

Presenting a choice among alternatives.

Parameter Cardinality

Describes the number of selections that must occur. Without this setting, only one value should be assumed to be permitted.

Choice

A value selection among several such options.

Include All

Include all controls from the imported catalog or profile resources.

Binary data encoded using the Base 64 encoding algorithm as defined by RFC4648.

A string representing a point in time with a required timezone.

An email address string formatted according to RFC 6531.

A whole number value.

An integer value that is equal to or greater than 0.

A non-empty string with leading and trailing whitespace disallowed. Whitespace is: U+9, U+10, U+32 or [
	]+

A non-colonized name as defined by XML Schema Part 2: Datatypes Second Edition. https://www.w3.org/TR/xmlschema11-2/#NCName.

A universal resource identifier (URI) formatted according to RFC3986.

A URI Reference, either a URI or a relative-reference, formatted according to section 4.1 of RFC3986.

A type 4 ('random' or 'pseudorandom') or type 5 UUID per RFC 4122.

Provide a JSON object that satisfies the schema "oscal_component_schema". Here are the required top‑level fields: component-definition. Return only the valid JSON object.