# DistinctLDiversity (ARX GUI Documentation)

org.deidentifier.arx.criteria

## Class DistinctLDiversity

- java.lang.Object
- - org.deidentifier.arx.criteria.PrivacyCriterion
  - - org.deidentifier.arx.criteria.ExplicitPrivacyCriterion
    - - org.deidentifier.arx.criteria.LDiversity
      - - org.deidentifier.arx.criteria.DistinctLDiversity

- All Implemented Interfaces:
    java.io.Serializable

      public class DistinctLDiversity
      extends LDiversity

  The distinct l-diversity privacy criterion.
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.deidentifier.arx.criteria.LDiversity

      `l, minSize`

    - ### Fields inherited from class org.deidentifier.arx.criteria.ExplicitPrivacyCriterion

      `attribute, index`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DistinctLDiversity(java.lang.String attribute, int l)` Creates a new instance of the distinct l-diversity privacy criterion as proposed in Machanavajjhala A, Kifer D, Gehrke J.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `DistinctLDiversity` | `clone()` Clone
    `boolean` | `isAnonymous(org.deidentifier.arx.framework.lattice.Transformation node, org.deidentifier.arx.framework.check.groupify.HashGroupifyEntry entry)` Implement this, to enforce the criterion.
    `boolean` | `isLocalRecodingSupported()` Returns whether the criterion supports local recoding.
    `ElementData` | `render()` Renders the privacy model
    `java.lang.String` | `toString()` Returns a string representation.

    - ### Methods inherited from class org.deidentifier.arx.criteria.LDiversity

      `getL, getMinimalClassSize, getRequirements, getRiskThresholdJournalist, getRiskThresholdMarketer, getRiskThresholdProsecutor, isMinimalClassSizeAvailable`

    - ### Methods inherited from class org.deidentifier.arx.criteria.ExplicitPrivacyCriterion

      `getAttribute, initialize`

    - ### Methods inherited from class org.deidentifier.arx.criteria.PrivacyCriterion

      `clone, getDataSubset, getPopulationModel, getSubset, isMonotonicWithGeneralization, isMonotonicWithSuppression, isSampleBased, isSubsetAvailable`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### DistinctLDiversity

          public DistinctLDiversity(java.lang.String attribute,
                            int l)

      Creates a new instance of the distinct l-diversity privacy criterion as proposed in Machanavajjhala A, Kifer D, Gehrke J. l-diversity: Privacy beyond k-anonymity. Transactions on Knowledge Discovery from Data (TKDD). 2007;1(1):3.
      Parameters:
        `attribute` -
        `l` -

  - ### Method Detail

    - #### clone

          public DistinctLDiversity clone()

      Description copied from class: `PrivacyCriterion`
      Clone
      Specified by:
        `clone` in class `PrivacyCriterion`

    - #### isAnonymous

          public boolean isAnonymous(org.deidentifier.arx.framework.lattice.Transformation node,
                            org.deidentifier.arx.framework.check.groupify.HashGroupifyEntry entry)

      Description copied from class: `PrivacyCriterion`
      Implement this, to enforce the criterion.
      Specified by:
        `isAnonymous` in class `PrivacyCriterion`
      Parameters:
        `node` - TODO
      Returns:

    - #### isLocalRecodingSupported

          public boolean isLocalRecodingSupported()

      Description copied from class: `PrivacyCriterion`
      Returns whether the criterion supports local recoding.
      Specified by:
        `isLocalRecodingSupported` in class `PrivacyCriterion`
      Returns:

    - #### render

          public ElementData render()

      Description copied from class: `PrivacyCriterion`
      Renders the privacy model
      Specified by:
        `render` in class `PrivacyCriterion`
      Returns:

    - #### toString

          public java.lang.String toString()

      Description copied from class: `PrivacyCriterion`
      Returns a string representation.
      Specified by:
        `toString` in class `PrivacyCriterion`