001// Generated from: ../../../../../../../oscal/src/metaschema/oscal_metadata_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 Document Metadata Description
016 */
017@MetaschemaModule(
018    fields = {
019        Hash.class,
020        TelephoneNumber.class,
021        DocumentId.class
022    },
023    assemblies = {
024        Metadata.class,
025        BackMatter.class,
026        Property.class,
027        Link.class,
028        ResponsibleParty.class,
029        Action.class,
030        ResponsibleRole.class,
031        Address.class
032    }
033)
034public final class OscalMetadataModule extends AbstractBoundModule {
035  private static final MarkupLine NAME = MarkupLine.fromMarkdown("OSCAL Document Metadata Description");
036
037  private static final String SHORT_NAME = "oscal-metadata";
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  /**
046   * Construct a new module instance.
047   *
048   * @param importedModules
049   *           modules imported by this module
050   * @param bindingContext
051   *           the binding context to associate with this module
052   */
053  public OscalMetadataModule(List<? extends IBoundModule> importedModules,
054      IBindingContext bindingContext) {
055    super(importedModules, bindingContext);
056  }
057
058  @Override
059  public MarkupLine getName() {
060    return NAME;
061  }
062
063  @Override
064  public String getShortName() {
065    return SHORT_NAME;
066  }
067
068  @Override
069  public String getVersion() {
070    return VERSION;
071  }
072
073  @Override
074  public URI getXmlNamespace() {
075    return XML_NAMESPACE;
076  }
077
078  @Override
079  public URI getJsonBaseUri() {
080    return JSON_BASE_URI;
081  }
082
083  @Override
084  public MarkupMultiline getRemarks() {
085    return null;
086  }
087}