001// Generated from: ../../../../../../../../oscal/src/metaschema/oscal_poam_metaschema.xml 002// Do not edit - changes will be lost when regenerated. 003package dev.metaschema.oscal.lib.model; 004 005import dev.metaschema.core.datatype.markup.MarkupLine; 006import dev.metaschema.core.datatype.markup.MarkupMultiline; 007import dev.metaschema.databind.IBindingContext; 008import dev.metaschema.databind.model.AbstractBoundModule; 009import dev.metaschema.databind.model.IBoundModule; 010import dev.metaschema.databind.model.annotations.MetaschemaModule; 011import java.net.URI; 012import java.util.List; 013 014/** 015 * OSCAL Plan of Action and Milestones (POA&M) Model 016 * <p>The OSCAL Plan of Action and Milestones (POA&M) format is used to describe the information typically provided by an assessor during the preparation for an assessment.</p> 017 * <p>The root of the OSCAL Plan of Action and Milestones (POA&M) format is <code>plan-action-milestones</code>.</p> 018 */ 019@MetaschemaModule( 020 assemblies = { 021 PlanOfActionAndMilestones.class, 022 LocalDefinitions.class, 023 PoamItem.class 024 }, 025 imports = { 026 OscalMetadataModule.class, 027 OscalImplementationCommonModule.class, 028 OscalAssessmentCommonModule.class 029 }, 030 remarks = "The OSCAL Plan of Action and Milestones (POA\\&M) format is used to describe the information typically provided by an assessor during the preparation for an assessment.\n" 031 + "\n" 032 + "The root of the OSCAL Plan of Action and Milestones (POA\\&M) format is `plan-action-milestones`." 033) 034public final class OscalPoamModule extends AbstractBoundModule { 035 private static final MarkupLine NAME = MarkupLine.fromMarkdown("OSCAL Plan of Action and Milestones (POA\\&M) Model"); 036 037 private static final String SHORT_NAME = "oscal-poam"; 038 039 private static final String VERSION = "1.2.0"; 040 041 private static final URI XML_NAMESPACE = URI.create("http://csrc.nist.gov/ns/oscal/1.0"); 042 043 private static final URI JSON_BASE_URI = URI.create("http://csrc.nist.gov/ns/oscal"); 044 045 private static final MarkupMultiline REMARKS = MarkupMultiline.fromMarkdown("The OSCAL Plan of Action and Milestones (POA\\&M) format is used to describe the information typically provided by an assessor during the preparation for an assessment.\n" 046 + "\n" 047 + "The root of the OSCAL Plan of Action and Milestones (POA\\&M) format is `plan-action-milestones`."); 048 049 /** 050 * Construct a new module instance. 051 * 052 * @param importedModules 053 * modules imported by this module 054 * @param bindingContext 055 * the binding context to associate with this module 056 */ 057 public OscalPoamModule(List<? extends IBoundModule> importedModules, 058 IBindingContext bindingContext) { 059 super(importedModules, bindingContext); 060 } 061 062 @Override 063 public MarkupLine getName() { 064 return NAME; 065 } 066 067 @Override 068 public String getShortName() { 069 return SHORT_NAME; 070 } 071 072 @Override 073 public String getVersion() { 074 return VERSION; 075 } 076 077 @Override 078 public URI getXmlNamespace() { 079 return XML_NAMESPACE; 080 } 081 082 @Override 083 public URI getJsonBaseUri() { 084 return JSON_BASE_URI; 085 } 086 087 @Override 088 public MarkupMultiline getRemarks() { 089 return REMARKS; 090 } 091}