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 fields = { 16 Hash.class, 17 TelephoneNumber.class, 18 DocumentId.class 19 }, 20 assemblies = { 21 Metadata.class, 22 BackMatter.class, 23 Property.class, 24 Link.class, 25 ResponsibleParty.class, 26 Action.class, 27 ResponsibleRole.class, 28 Address.class 29 } 30 ) 31 public final class OscalMetadataMetaschema extends AbstractBoundMetaschema { 32 private static final MarkupLine NAME = MarkupLine.fromMarkdown("OSCAL Document Metadata Description"); 33 34 private static final String SHORT_NAME = "oscal-metadata"; 35 36 private static final String VERSION = "1.1.2"; 37 38 private static final URI XML_NAMESPACE = URI.create("http://csrc.nist.gov/ns/oscal/1.0"); 39 40 private static final URI JSON_BASE_URI = URI.create("http://csrc.nist.gov/ns/oscal"); 41 42 public OscalMetadataMetaschema(List<? extends IMetaschema> importedMetaschema, 43 IBindingContext bindingContext) { 44 super(importedMetaschema, bindingContext); 45 } 46 47 @Override 48 public MarkupLine getName() { 49 return NAME; 50 } 51 52 @Override 53 public String getShortName() { 54 return SHORT_NAME; 55 } 56 57 @Override 58 public String getVersion() { 59 return VERSION; 60 } 61 62 @Override 63 public URI getXmlNamespace() { 64 return XML_NAMESPACE; 65 } 66 67 @Override 68 public URI getJsonBaseUri() { 69 return JSON_BASE_URI; 70 } 71 72 @Override 73 public MarkupMultiline getRemarks() { 74 return null; 75 } 76 }