Class MappingEntry

java.lang.Object
dev.metaschema.oscal.lib.model.MappingEntry
All Implemented Interfaces:
dev.metaschema.core.model.IBoundObject

@MetaschemaAssembly(formalName="Mapping Entry", description="A relationship-based mapping between a source and target set consisting of members (i.e., controls, control statements) from the respective source and target.", name="map", moduleClass=OscalMappingCommonModule.class) public class MappingEntry extends Object implements dev.metaschema.core.model.IBoundObject
A relationship-based mapping between a source and target set consisting of members (i.e., controls, control statements) from the respective source and target.
  • Constructor Details

    • MappingEntry

      public MappingEntry()
      Constructs a new dev.metaschema.oscal.lib.model.MappingEntry instance with no metadata.
    • MappingEntry

      public MappingEntry(dev.metaschema.core.model.IMetaschemaData data)
      Constructs a new dev.metaschema.oscal.lib.model.MappingEntry instance with the specified metadata.
      Parameters:
      data - the metaschema data, or null if none
  • Method Details

    • getMetaschemaData

      public dev.metaschema.core.model.IMetaschemaData getMetaschemaData()
      Specified by:
      getMetaschemaData in interface dev.metaschema.core.model.IBoundObject
    • getUuid

      @NonNull public UUID getUuid()
      Get the "Mapping Entry Identifier".

      The unique identifier for the mapping entry.

      Returns:
      the uuid value
    • setUuid

      public void setUuid(@NonNull UUID value)
      Set the "Mapping Entry Identifier".

      The unique identifier for the mapping entry.

      Parameters:
      value - the uuid value to set
    • getNs

      @Nullable public URI getNs()
      Get the "Relationship Value Namespace".

      A namespace qualifying the relationship's value. This allows different organizations to associate distinct semantics for relationships with the same name.

      Returns:
      the ns value, or null if not set
    • setNs

      public void setNs(@Nullable URI value)
      Set the "Relationship Value Namespace".

      A namespace qualifying the relationship's value. This allows different organizations to associate distinct semantics for relationships with the same name.

      Parameters:
      value - the ns value to set, or null to clear
    • getMatchingRationale

      @Nullable public String getMatchingRationale()
      Get the "Matching".

      The method used for relating controls within the mapping. The supported methods are aligned with the NIST Interagency Report (IR) 8477, Section 4.3 Set Theory Relationship Mapping.

      Returns:
      the matching-rationale value, or null if not set
    • setMatchingRationale

      public void setMatchingRationale(@Nullable String value)
      Set the "Matching".

      The method used for relating controls within the mapping. The supported methods are aligned with the NIST Interagency Report (IR) 8477, Section 4.3 Set Theory Relationship Mapping.

      Parameters:
      value - the matching-rationale value to set, or null to clear
    • getRelationship

      @NonNull public String getRelationship()
      Get the "Mapping Entry Relationship".

      The relationship type for the mapping entry, which describes the relationship between the effective requirements of the specified source and target sets in the context of the matching-rationale method globaly defined in the provenance unless overwritten locally in the map. The relationship type and the matching-rationale must be used together. However, more than one matching-rationale method may apply to a source and target pair.

      Returns:
      the relationship value
    • setRelationship

      public void setRelationship(@NonNull String value)
      Set the "Mapping Entry Relationship".

      The relationship type for the mapping entry, which describes the relationship between the effective requirements of the specified source and target sets in the context of the matching-rationale method globaly defined in the provenance unless overwritten locally in the map. The relationship type and the matching-rationale must be used together. However, more than one matching-rationale method may apply to a source and target pair.

      Parameters:
      value - the relationship value to set
    • getSources

      @NonNull public List<MappingItem> getSources()
      Get the "Mapping Entry Item (source or target)".

      A specific edge within a source or target that is the subject of a mapping.

      Returns:
      the source value
    • setSources

      public void setSources(@NonNull List<MappingItem> value)
      Set the "Mapping Entry Item (source or target)".

      A specific edge within a source or target that is the subject of a mapping.

      Parameters:
      value - the source value to set
    • addSource

      public boolean addSource(MappingItem item)
      Add a new MappingItem item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeSource

      public boolean removeSource(MappingItem item)
      Remove the first matching MappingItem item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getTargets

      @NonNull public List<MappingItem> getTargets()
      Get the "Mapping Entry Item (source or target)".

      A specific edge within a source or target that is the subject of a mapping.

      Returns:
      the target value
    • setTargets

      public void setTargets(@NonNull List<MappingItem> value)
      Set the "Mapping Entry Item (source or target)".

      A specific edge within a source or target that is the subject of a mapping.

      Parameters:
      value - the target value to set
    • addTarget

      public boolean addTarget(MappingItem item)
      Add a new MappingItem item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeTarget

      public boolean removeTarget(MappingItem item)
      Remove the first matching MappingItem item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getQualifiers

      @NonNull public List<QualifierItem> getQualifiers()
      Get the "Relationship Qualifier".

      Describes requirements, incompatibilities and gaps that are identified between a target and source in a mapping item.

      Returns:
      the qualifier value
    • setQualifiers

      public void setQualifiers(@NonNull List<QualifierItem> value)
      Set the "Relationship Qualifier".

      Describes requirements, incompatibilities and gaps that are identified between a target and source in a mapping item.

      Parameters:
      value - the qualifier value to set
    • addQualifier

      public boolean addQualifier(QualifierItem item)
      Add a new QualifierItem item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeQualifier

      public boolean removeQualifier(QualifierItem item)
      Remove the first matching QualifierItem item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getConfidenceScore

      @Nullable public ConfidenceScore getConfidenceScore()
      Get the "Confidence Score".

      This records either a string category or a decimal value from 0-1 representing a percentage. Both of these values describe an estimation of the author's confidence that this mapping is correct and accurate.

      Returns:
      the confidence-score value, or null if not set
    • setConfidenceScore

      public void setConfidenceScore(@Nullable ConfidenceScore value)
      Set the "Confidence Score".

      This records either a string category or a decimal value from 0-1 representing a percentage. Both of these values describe an estimation of the author's confidence that this mapping is correct and accurate.

      Parameters:
      value - the confidence-score value to set, or null to clear
    • getCoverage

      @Nullable public Coverage getCoverage()
      Get the "Coverage".

      A decimal value from 0-1, representing the percentage coverage of the targets by the sources.

      Returns:
      the coverage value, or null if not set
    • setCoverage

      public void setCoverage(@Nullable Coverage value)
      Set the "Coverage".

      A decimal value from 0-1, representing the percentage coverage of the targets by the sources.

      Parameters:
      value - the coverage value to set, or null to clear
    • getProps

      @NonNull public List<Property> getProps()
      Get the "Property".

      An attribute, characteristic, or quality of the containing object expressed as a namespace qualified name/value pair.

      Returns:
      the prop value
    • setProps

      public void setProps(@NonNull List<Property> value)
      Set the "Property".

      An attribute, characteristic, or quality of the containing object expressed as a namespace qualified name/value pair.

      Parameters:
      value - the prop value to set
    • addProp

      public boolean addProp(Property item)
      Add a new Property item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeProp

      public boolean removeProp(Property item)
      Remove the first matching Property item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getLinks

      @NonNull public List<Link> getLinks()
      Get the "Link".

      A reference to a local or remote resource, that has a specific relation to the containing object.

      Returns:
      the link value
    • setLinks

      public void setLinks(@NonNull List<Link> value)
      Set the "Link".

      A reference to a local or remote resource, that has a specific relation to the containing object.

      Parameters:
      value - the link value to set
    • addLink

      public boolean addLink(Link item)
      Add a new Link item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeLink

      public boolean removeLink(Link item)
      Remove the first matching Link item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getRemarks

      @Nullable public dev.metaschema.core.datatype.markup.MarkupMultiline getRemarks()
      Get the "Remarks".

      Additional commentary about the containing object.

      Returns:
      the remarks value, or null if not set
    • setRemarks

      public void setRemarks(@Nullable dev.metaschema.core.datatype.markup.MarkupMultiline value)
      Set the "Remarks".

      Additional commentary about the containing object.

      Parameters:
      value - the remarks value to set, or null to clear
    • toString

      public String toString()
      Overrides:
      toString in class Object