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      imports = {
16          OscalCatalogMetaschema.class,
17          OscalProfileMetaschema.class,
18          OscalComponentDefinitionMetaschema.class,
19          OscalSspMetaschema.class,
20          OscalApMetaschema.class,
21          OscalArMetaschema.class,
22          OscalPoamMetaschema.class
23      },
24      remarks = "This format represents a combination of all of the OSCAL models."
25  )
26  public final class OscalCompleteMetaschema extends AbstractBoundMetaschema {
27    private static final MarkupLine NAME = MarkupLine.fromMarkdown("OSCAL Unified Model of Models");
28  
29    private static final String SHORT_NAME = "oscal-complete";
30  
31    private static final String VERSION = "1.1.2";
32  
33    private static final URI XML_NAMESPACE = URI.create("http://csrc.nist.gov/ns/oscal/1.0");
34  
35    private static final URI JSON_BASE_URI = URI.create("http://csrc.nist.gov/ns/oscal/1.0");
36  
37    private static final MarkupMultiline REMARKS = MarkupMultiline.fromMarkdown("This format represents a combination of all of the OSCAL models.");
38  
39    public OscalCompleteMetaschema(List<? extends IMetaschema> importedMetaschema,
40        IBindingContext bindingContext) {
41      super(importedMetaschema, bindingContext);
42    }
43  
44    @Override
45    public MarkupLine getName() {
46      return NAME;
47    }
48  
49    @Override
50    public String getShortName() {
51      return SHORT_NAME;
52    }
53  
54    @Override
55    public String getVersion() {
56      return VERSION;
57    }
58  
59    @Override
60    public URI getXmlNamespace() {
61      return XML_NAMESPACE;
62    }
63  
64    @Override
65    public URI getJsonBaseUri() {
66      return JSON_BASE_URI;
67    }
68  
69    @Override
70    public MarkupMultiline getRemarks() {
71      return REMARKS;
72    }
73  }