gov.nist.secauto.oscal.lib.model.OscalSspMetaschema Maven / Gradle / Ivy
package gov.nist.secauto.oscal.lib.model;
import gov.nist.secauto.metaschema.binding.IBindingContext;
import gov.nist.secauto.metaschema.binding.model.AbstractBoundMetaschema;
import gov.nist.secauto.metaschema.binding.model.annotations.Metaschema;
import gov.nist.secauto.metaschema.model.common.IMetaschema;
import gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupLine;
import gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline;
import java.lang.Override;
import java.lang.String;
import java.net.URI;
import java.util.List;
@Metaschema(
assemblies = {
SystemSecurityPlan.class,
ImportProfile.class,
SystemCharacteristics.class,
SystemInformation.class,
Impact.class,
SecurityImpactLevel.class,
Status.class,
AuthorizationBoundary.class,
Diagram.class,
NetworkArchitecture.class,
DataFlow.class,
SystemImplementation.class,
ControlImplementation.class,
ImplementedRequirement.class,
Statement.class,
ByComponent.class
},
imports = {
OscalMetadataMetaschema.class,
OscalImplementationCommonMetaschema.class
},
remarks = "The OSCAL Control SSP format can be used to describe the information typically specified in a system security plan, such as those defined in NIST SP 800-18.\n"
+ "\n"
+ "The root of the OSCAL System Security Plan (SSP) format is `system-security-plan`."
)
public final class OscalSspMetaschema extends AbstractBoundMetaschema {
private static final MarkupLine NAME = MarkupLine.fromMarkdown("OSCAL System Security Plan (SSP) Model");
private static final String SHORT_NAME = "oscal-ssp";
private static final String VERSION = "1.0.4";
private static final URI XML_NAMESPACE = URI.create("http://csrc.nist.gov/ns/oscal/1.0");
private static final URI JSON_BASE_URI = URI.create("http://csrc.nist.gov/ns/oscal");
private static final MarkupMultiline REMARKS = MarkupMultiline.fromMarkdown("The OSCAL Control SSP format can be used to describe the information typically specified in a system security plan, such as those defined in NIST SP 800-18.\n"
+ "\n"
+ "The root of the OSCAL System Security Plan (SSP) format is `system-security-plan`.");
public OscalSspMetaschema(List extends IMetaschema> importedMetaschema,
IBindingContext bindingContext) {
super(importedMetaschema, bindingContext);
}
@Override
public MarkupLine getName() {
return NAME;
}
@Override
public String getShortName() {
return SHORT_NAME;
}
@Override
public String getVersion() {
return VERSION;
}
@Override
public URI getXmlNamespace() {
return XML_NAMESPACE;
}
@Override
public URI getJsonBaseUri() {
return JSON_BASE_URI;
}
@Override
public MarkupMultiline getRemarks() {
return REMARKS;
}
}