View Javadoc
1   package gov.nist.secauto.oscal.lib.model;
2   
3   import gov.nist.secauto.metaschema.binding.IBindingContext;
4   import gov.nist.secauto.metaschema.binding.model.AbstractBoundMetaschema;
5   import gov.nist.secauto.metaschema.binding.model.annotations.Metaschema;
6   import gov.nist.secauto.metaschema.model.common.IMetaschema;
7   import gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupLine;
8   import gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline;
9   import java.lang.Override;
10  import java.lang.String;
11  import java.net.URI;
12  import java.util.List;
13  
14  @Metaschema(
15      assemblies = {
16          PlanOfActionAndMilestones.class,
17          LocalDefinitions.class,
18          PoamItem.class
19      },
20      imports = {
21          OscalMetadataMetaschema.class,
22          OscalImplementationCommonMetaschema.class,
23          OscalAssessmentCommonMetaschema.class
24      },
25      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"
26              + "\n"
27              + "The root of the OSCAL Plan of Action and Milestones (POA\\&M) format is `plan-action-milestones`."
28  )
29  public final class OscalPoamMetaschema extends AbstractBoundMetaschema {
30    private static final MarkupLine NAME = MarkupLine.fromMarkdown("OSCAL Plan of Action and Milestones (POA\\&M) Model");
31  
32    private static final String SHORT_NAME = "oscal-poam";
33  
34    private static final String VERSION = "1.1.2";
35  
36    private static final URI XML_NAMESPACE = URI.create("http://csrc.nist.gov/ns/oscal/1.0");
37  
38    private static final URI JSON_BASE_URI = URI.create("http://csrc.nist.gov/ns/oscal");
39  
40    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"
41        + "\n"
42        + "The root of the OSCAL Plan of Action and Milestones (POA\\&M) format is `plan-action-milestones`.");
43  
44    public OscalPoamMetaschema(List<? extends IMetaschema> importedMetaschema,
45        IBindingContext bindingContext) {
46      super(importedMetaschema, bindingContext);
47    }
48  
49    @Override
50    public MarkupLine getName() {
51      return NAME;
52    }
53  
54    @Override
55    public String getShortName() {
56      return SHORT_NAME;
57    }
58  
59    @Override
60    public String getVersion() {
61      return VERSION;
62    }
63  
64    @Override
65    public URI getXmlNamespace() {
66      return XML_NAMESPACE;
67    }
68  
69    @Override
70    public URI getJsonBaseUri() {
71      return JSON_BASE_URI;
72    }
73  
74    @Override
75    public MarkupMultiline getRemarks() {
76      return REMARKS;
77    }
78  }