# Overview
[Example 1](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example1.java) - how to use the API by directly providing the input datasets

[Example 2](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example2.java) - how to use the API by providing CSV files as input

[Example 3](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example3.java) - how to use the API by directly providing the input datasets

[Example 4](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example4.java) - how to use the API for tools such as GUIs

[Example 5](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example5.java) - how to use the API by directly providing the input datasets

[Example 6](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example6.java) - how to use the API for tools such as GUIs

[Example 7](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example7.java) - how to use the API for tools such as GUIs

[Example 8](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example8.java) - how to apply the t-closeness criterion

[Example 9](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example9.java) - how to apply the d-presence criterion

[Example 10](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example10.java) - how to apply the d-presence privacy model and create a research subset by providing a data subset

[Example 11](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example11.java) - how to apply the d-presence privacy model and create a research subset by providing a data selector

[Example 12](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example12.java) - how to apply the d-presence privacy model and create a research subset by providing a complex data selector

[Example 13](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example13.java) - a simple example for using multiple sensitive attributes and different privacy models

[Example 14](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example14.java) - how to use the Loss Metric

[Example 16](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example16.java) - how to use the API for access to basic statistics about the data

[Example 17](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example17.java) - how to list the available data types

[Example 18](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example18.java) - how to use the builders for generalization hierarchies

[Example 19](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example19.java) - how to use the API for creating different output representations of an input dataset

[Example 20](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example20.java) - how to use aggregate functions

[Example 21](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example21.java) - demonstrates the use of the data import facilities provided by the ARX framework. Data can be imported from various types of sources, e.g. CSV files, Excel files and databases (using JDBC). The API is mostly the same for all of these sources, although not all options might be available in each case. Refer to the comments further down below for details about particular sources. 

[Example 22](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example22.java) - how to use the l-diversity privacy model without protecting sensitive assocations

[Example 23](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example23.java) - how to use multiple instances of l-diversity without protecting sensitive associations

[Example 24](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example24.java) - how to directly use empty and functional hierarchies

[Example 25](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example25.java) - an example for using the generalized loss metric with different types of generalization hierarchies

[Example 26](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example26.java) - how to use an interval-based hierarchy builder with high precision

[Example 27](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example27.java) - how to use data cleansing capabilities

[Example 28](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example28.java) - how to use data cleansing using the DataSource functionality

[Example 29](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example29.java) - how to perform risk analyses with the API

[Example 30](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example30.java) - how to compute summary statistics

[Example 31](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example31.java) - how to use microaggregation

[Example 32](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example32.java) - how to use microaggregation with generalization

[Example 33](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example33.java) - how to use microaggregation. It also demonstrates how, since version 3.1. of ARX attribute types and transformation methods should be specified separately

[Example 34](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example34.java) - how to use a heuristic search algorithm

[Example 35](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example35.java) - how to find HIPAA identifiers

[Example 36](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example36.java) - how to use utility-based microaggregation

[Example 37](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example37.java) - how to use data-dependent and data-independent (e,d)-DP

[Example 38](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example38.java) - how to use local recoding with ARX

[Example 39](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example39.java) - how to compare data mining performance

[Example 40](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example40.java) - how to compare data mining performance

[Example 41](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example41.java) - how to use the k-map model

[Example 42](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example42.java) - how to use the k-map and d-presence models combined

[Example 43](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example43.java) - how to evaluate combined risk metrics

[Example 44](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example44.java) - how to use the k-map privacy model with a statistical estimator

[Example 45](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example45.java) - how to use the mixed risk model

[Example 46](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example46.java) - how to use the distribution of risks

[Example 47](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example47.java) - an example for evaluating distinction and separation of attributes as described in R. Motwani et al. "Efficient algorithms for masking and finding quasi-identifiers" Proc. VLDB Conf., 2007.

[Example 48](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example48.java) - how to use ordered distance t-closeness. Implements Example 3 from the paper Li et al. "t-Closeness: Privacy Beyond k-Anonymity and l-Diversity" 

[Example 49](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example49.java) - examples of using the no-attack variant of the game-theoretic approach for performing a monetary cost/benefit analysis using prosecutor risk

[Example 50](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example50.java) - examples of using the no-attack variant of the game-theoretic approach for performing a monetary cost/benefit analysis using journalist risk

[Example 51](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example51.java) - examples of using the game-theoretic approach for performing a monetary cost/benefit analysis using prosecutor risk

[Example 52](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example52.java) - examples of using the game-theoretic approach for performing a monetary cost/benefit analysis using journalist risk

[Example 53](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example53.java) - how to generate reports

[Example 54](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example54.java) - how to access quality statistics

[Example 55](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example55.java) - how to use a fast algorithm for local recoding with ARX

[Example 56](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example56.java) - how to evaluate risk with wildcard matching

[Example 57](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example57.java) - how to analyze risks with wildcards for data transformed with cell suppression

[Example 58](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example58.java) - an example that shows consistent handling of suppressed records in input and output

[Example 59](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example59.java) - an example that shows handling of suppressed values and records in input data

[Example 60](https://github.com/arx-deidentifier/arx/blob/master/src/example/org/deidentifier/arx/examples/Example60.java) - an example of processing high-dimensional data
