org.deidentifier.arx.criteria

## Class HierarchicalDistanceTCloseness

- java.lang.Object
- - org.deidentifier.arx.criteria.PrivacyCriterion
  - - org.deidentifier.arx.criteria.ExplicitPrivacyCriterion
    - - org.deidentifier.arx.criteria.TCloseness
      - - org.deidentifier.arx.criteria.HierarchicalDistanceTCloseness

All Implemented Interfaces:
  java.io.Serializable

    public class HierarchicalDistanceTCloseness
    extends TCloseness

The t-closeness criterion with hierarchical-distance EMD.

Author:
  Fabian Prasser, Florian Kohlmayer
See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`HierarchicalDistanceTCloseness(java.lang.String attribute, double t, AttributeType.Hierarchy h)` Creates a new instance of the t-closeness criterion with hierarchical earth-movers-distance as proposed in: Li N, Li T, Venkatasubramanian S.

### Method Summary

All Methods Instance Methods Concrete Methods
`HierarchicalDistanceTCloseness` `clone()` Clone
`AttributeType.Hierarchy` `getHierarchy()` Returns the hierarchy backing the EMD calculations.
`void` `initialize(DataManager manager, ARXConfiguration config)` Override this to initialize the criterion.
`boolean` `isAnonymous(Transformation<?> node, 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.TCloseness

`getRequirements, getT`

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

`getAttribute`

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

`clone, getDataSubset, getMinimalClassSize, getPopulationModel, getRiskThresholdJournalist, getRiskThresholdMarketer, getRiskThresholdProsecutor, getSubset, isHeuristicSearchSupported, isHeuristicSearchWithTimeLimitSupported, isMinimalClassSizeAvailable, isMonotonicWithGeneralization, isMonotonicWithSuppression, isOptimalSearchSupported, isSampleBased, isSubsetAvailable`

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

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

### Constructor Detail

#### HierarchicalDistanceTCloseness

    public HierarchicalDistanceTCloseness(java.lang.String attribute,
                                          double t,
                                          AttributeType.Hierarchy h)

Creates a new instance of the t-closeness criterion with hierarchical earth-movers-distance as proposed in: Li N, Li T, Venkatasubramanian S. t-Closeness: Privacy beyond k-anonymity and l-diversity. 23rd International Conference on Data Engineering. 2007:106-115.

Parameters:
  `attribute` -
  `t` -
  `h` -

### Method Detail

#### clone

    public HierarchicalDistanceTCloseness clone()

Description copied from class: `PrivacyCriterion`
Clone

Specified by:
  `clone` in class `PrivacyCriterion`

#### getHierarchy

    public AttributeType.Hierarchy getHierarchy()

Returns the hierarchy backing the EMD calculations.

Returns:

#### initialize

    public void initialize(DataManager manager,
                           ARXConfiguration config)

Description copied from class: `PrivacyCriterion`
Override this to initialize the criterion.

Overrides:
  `initialize` in class `ExplicitPrivacyCriterion`
  `config` - TODO

#### isAnonymous

    public boolean isAnonymous(Transformation<?> node,
                               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`