# Association Class Mapper

## 1. Introduction

(since v2.2.0)

This transformation maps an association class into a semantically equivalent class and set of associations, as defined by the OGC GML 3.3 standard.

### 1.1. Role Tagging

(since v2.4.0)

Subsequent processing steps may want to identify association roles that originate from mapping an association class, for example to avoid encoding a role that represents a self reference to a feature type (see for example rule-trf-prop-flatten-types-ignoreSelfReferenceByPropertyWithAssociationClassOrigin).

To support this, tagged values are added to the roles of the two new associations between a former association class and the other two classes. Tagged value fromAssociationClassTo is added to the roles that belong to the association class, while tagged value toAssociationClassFrom is added to the roles that belong to the other classes. The value of these tagged values on the roles of one of the two associations is the name of the other class, i.e. the class that is not the former association class.

## 2. Configuration

The following sections specifiy the configuration options for this transformation.

### 2.1. Class

The class for this transformer implementation is de.interactive_instruments.ShapeChange.Transformation.Flattening.AssociationClassMapper

### 2.2. Parameters

None at present

### 2.3. Rules

None at present

### 2.4. Map Entries

None at present

### 2.5. Advanced Process Configuration

None at present

## 3. Sample Configuration

      1

      <Transformer id="TRF1" class="de.interactive_instruments.ShapeChange.Transformation.Flattening.AssociationClassMapper"/>