001package gov.nist.secauto.oscal.lib.model;
002
003import gov.nist.secauto.metaschema.binding.IBindingContext;
004import gov.nist.secauto.metaschema.binding.model.AbstractBoundMetaschema;
005import gov.nist.secauto.metaschema.binding.model.annotations.Metaschema;
006import gov.nist.secauto.metaschema.model.common.IMetaschema;
007import gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupLine;
008import gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline;
009import java.lang.Override;
010import java.lang.String;
011import java.net.URI;
012import java.util.List;
013
014@Metaschema(
015    assemblies = {
016        ControlPart.class,
017        Parameter.class,
018        ParameterConstraint.class,
019        ParameterGuideline.class,
020        ParameterSelection.class,
021        IncludeAll.class
022    },
023    imports = OscalMetadataMetaschema.class
024)
025public final class OscalControlCommonMetaschema extends AbstractBoundMetaschema {
026  private static final MarkupLine NAME = MarkupLine.fromMarkdown("OSCAL Control Catalog Format -- Common Models");
027
028  private static final String SHORT_NAME = "oscal-control-common";
029
030  private static final String VERSION = "1.0.4";
031
032  private static final URI XML_NAMESPACE = URI.create("http://csrc.nist.gov/ns/oscal/1.0");
033
034  private static final URI JSON_BASE_URI = URI.create("http://csrc.nist.gov/ns/oscal");
035
036  public OscalControlCommonMetaschema(List<? extends IMetaschema> importedMetaschema,
037      IBindingContext bindingContext) {
038    super(importedMetaschema, bindingContext);
039  }
040
041  @Override
042  public MarkupLine getName() {
043    return NAME;
044  }
045
046  @Override
047  public String getShortName() {
048    return SHORT_NAME;
049  }
050
051  @Override
052  public String getVersion() {
053    return VERSION;
054  }
055
056  @Override
057  public URI getXmlNamespace() {
058    return XML_NAMESPACE;
059  }
060
061  @Override
062  public URI getJsonBaseUri() {
063    return JSON_BASE_URI;
064  }
065
066  @Override
067  public MarkupMultiline getRemarks() {
068    return null;
069  }
070}