Interface IModelConstrained

All Superinterfaces:
IValueConstrained
All Known Subinterfaces:
IAssemblyDefinition, IBindingDefinitionModelAssembly, IBoundDefinitionModelAssembly, IFeatureModelConstrained
All Known Implementing Classes:
AbstractGlobalAssemblyDefinition, AbstractInlineAssemblyDefinition, AssemblyConstraintSet, AssemblyTargetedConstraints, ModelTargetedConstraints

public interface IModelConstrained extends IValueConstrained
Represents a container of rules constraining the effective model of a Metaschema assembly data instance.
  • Method Details

    • getIndexConstraints

      @NonNull List<? extends IIndexConstraint> getIndexConstraints()
      Get the collection of index constraints, if any.
      Returns:
      the constraints or an empty list
    • getUniqueConstraints

      @NonNull List<? extends IUniqueConstraint> getUniqueConstraints()
      Get the collection of unique constraints, if any.
      Returns:
      the constraints or an empty list
    • getHasCardinalityConstraints

      @NonNull List<? extends ICardinalityConstraint> getHasCardinalityConstraints()
      Get the collection of cardinality constraints, if any.
      Returns:
      the constraints or an empty list
    • addConstraint

      void addConstraint(@NonNull IIndexConstraint constraint)
      Add a new constraint.
      Parameters:
      constraint - the constraint to add
    • addConstraint

      void addConstraint(@NonNull IUniqueConstraint constraint)
      Add a new constraint.
      Parameters:
      constraint - the constraint to add
    • addConstraint

      void addConstraint(@NonNull ICardinalityConstraint constraint)
      Add a new constraint.
      Parameters:
      constraint - the constraint to add