# DataGeneralizationScheme (ARX GUI Documentation)

org.deidentifier.arx

## Class DataGeneralizationScheme

- java.lang.Object
- - org.deidentifier.arx.DataGeneralizationScheme

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable

      public class DataGeneralizationScheme
      extends java.lang.Object
      implements java.io.Serializable, java.lang.Cloneable

  This class encapsulates a generalization scheme
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `DataGeneralizationScheme.GeneralizationDegree` A specific generalization degree

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `DataGeneralizationScheme` | `clone()` Clone method
    `static DataGeneralizationScheme` | `create()` Creates a new data generalization scheme
    `static DataGeneralizationScheme` | `create(Data data)` Creates a new data generalization scheme
    `static DataGeneralizationScheme` | `create(Data data, DataGeneralizationScheme.GeneralizationDegree degree)` Creates a new data generalization scheme
    `static DataGeneralizationScheme` | `create(DataGeneralizationScheme.GeneralizationDegree degree)` Creates a new data generalization scheme
    `DataGeneralizationScheme` | `generalize(DataGeneralizationScheme.GeneralizationDegree degree)` Defines a specific generalization degree
    `DataGeneralizationScheme` | `generalize(java.lang.String attribute, DataGeneralizationScheme.GeneralizationDegree degree)` Defines a specific generalization degree
    `DataGeneralizationScheme` | `generalize(java.lang.String attribute, int level)` Defines a specific generalization level
    `DataGeneralizationScheme.GeneralizationDegree` | `getGeneralizationDegree()` Returns the overall generalization degree, if any
    `int` | `getGeneralizationLevel(java.lang.String attribute, DataDefinition definition)` Returns a generalization level as defined by this class

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

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

- - ### Method Detail

    - #### create

          public static DataGeneralizationScheme create()

      Creates a new data generalization scheme
      Returns:

    - #### create

          public static DataGeneralizationScheme create(Data data)

      Creates a new data generalization scheme
      Parameters:
        `data` -
      Returns:

    - #### create

          public static DataGeneralizationScheme create(Data data,
                                        DataGeneralizationScheme.GeneralizationDegree degree)

      Creates a new data generalization scheme
      Parameters:
        `data` -
        `degree` -
      Returns:

    - #### create

          public static DataGeneralizationScheme create(DataGeneralizationScheme.GeneralizationDegree degree)

      Creates a new data generalization scheme
      Parameters:
        `degree` -
      Returns:

    - #### clone

          public DataGeneralizationScheme clone()

      Clone method
      Overrides:
        `clone` in class `java.lang.Object`

    - #### generalize

          public DataGeneralizationScheme generalize(DataGeneralizationScheme.GeneralizationDegree degree)

      Defines a specific generalization degree
      Parameters:
        `degree` -
      Returns:

    - #### generalize

          public DataGeneralizationScheme generalize(java.lang.String attribute,
                                            DataGeneralizationScheme.GeneralizationDegree degree)

      Defines a specific generalization degree
      Parameters:
        `attribute` -
        `degree` -
      Returns:

    - #### generalize

          public DataGeneralizationScheme generalize(java.lang.String attribute,
                                            int level)

      Defines a specific generalization level
      Parameters:
        `attribute` -
        `level` -
      Returns:

    - #### getGeneralizationDegree

          public DataGeneralizationScheme.GeneralizationDegree getGeneralizationDegree()

      Returns the overall generalization degree, if any
      Returns:

    - #### getGeneralizationLevel

          public int getGeneralizationLevel(java.lang.String attribute,
                                   DataDefinition definition)

      Returns a generalization level as defined by this class
      Parameters:
        `attribute` -
        `definition` -
      Returns: