Package com.example.metaschema
Class MetaschemaMetaConstraints
java.lang.Object
com.example.metaschema.MetaschemaMetaConstraints
- All Implemented Interfaces:
gov.nist.secauto.metaschema.core.model.IBoundObject
@MetaschemaAssembly(formalName="External Module Constraints",
description="Defines constraint rules to be applied to an existing set of Metaschema module-based models.",
name="metaschema-meta-constraints",
moduleClass=MetaschemaModelModule.class,
rootName="metaschema-meta-constraints",
valueConstraints=@ValueConstraints(lets=@Let(name="deprecated-type-map",target="map { \'base64Binary\':\'base64\',\'dateTime\':\'date-time\',\'dateTime-with-timezone\':\'date-time-with-timezone\',\'email\':\'email-address\',\'nonNegativeInteger\':\'non-negative-integer\',\'positiveInteger\':\'positive-integer\' }"),expect=@Expect(id="metaschema-deprecated-types",formalName="Avoid Deprecated Data Type Use",description="Ensure that the data type specified is not one of the legacy Metaschema data types which have been deprecated (i.e. base64Binary, dateTime, dateTime-with-timezone, email, nonNegativeInteger, positiveInteger).",level=WARNING,target=".//matches/@datatype|.//(define-field|define-flag)/@as-type",test="not(.=(\'base64Binary\',\'dateTime\',\'dateTime-with-timezone\',\'email\',\'nonNegativeInteger\',\'positiveInteger\'))",message="Use of the type \'{ . }\' is deprecated. Use \'{ $deprecated-type-map(.)}\' instead.")),
modelConstraints=@IsUnique(id="meta-constraints-namespace-unique-entry",formalName="Require Unique Namespace Entries",description="Ensures that all declared namespace entries are unique.",level=ERROR,target="namespace-binding",keyFields={@KeyField(target="@prefix"),@KeyField(target="@uri")}) @IsUnique(id="meta-constraints-namespace-unique-prefix",formalName="Require Unique Namespace Entry Prefixes",description="Ensures that all declared namespace entries have a unique prefix.",level=ERROR,target="namespace-binding",keyFields=@KeyField(target="@prefix")))
public class MetaschemaMetaConstraints
extends Object
implements gov.nist.secauto.metaschema.core.model.IBoundObject
Defines constraint rules to be applied to an existing set of Metaschema module-based models.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
Declares a set of Metaschema constraints from an out-of-line resource to import, supporting composition of constraint sets. -
Constructor Summary
ConstructorDescriptionMetaschemaMetaConstraints
(gov.nist.secauto.metaschema.core.model.IMetaschemaData data) -
Method Summary
Modifier and TypeMethodDescriptionboolean
addContext
(MetapathContext item) Add a newMetapathContext
item to the underlying collection.boolean
Add a newMetaschemaMetaConstraints.Import
item to the underlying collection.boolean
Add a newMetapathNamespace
item to the underlying collection.gov.nist.secauto.metaschema.core.model.IMetaschemaData
boolean
removeContext
(MetapathContext item) Remove the first matchingMetapathContext
item from the underlying collection.boolean
Remove the first matchingMetaschemaMetaConstraints.Import
item from the underlying collection.boolean
Remove the first matchingMetapathNamespace
item from the underlying collection.void
setContexts
(List<MetapathContext> value) void
void
void
toString()
-
Constructor Details
-
MetaschemaMetaConstraints
public MetaschemaMetaConstraints() -
MetaschemaMetaConstraints
-
-
Method Details
-
getMetaschemaData
- Specified by:
getMetaschemaData
in interfacegov.nist.secauto.metaschema.core.model.IBoundObject
-
getImports
-
setImports
-
addImport
Add a newMetaschemaMetaConstraints.Import
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeImport
Remove the first matchingMetaschemaMetaConstraints.Import
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getNamespaceBindings
-
setNamespaceBindings
-
addNamespaceBinding
Add a newMetapathNamespace
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeNamespaceBinding
Remove the first matchingMetapathNamespace
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getDefinitionContext
-
setDefinitionContext
-
getContexts
-
setContexts
-
addContext
Add a newMetapathContext
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeContext
Remove the first matchingMetapathContext
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
toString
-