> For the complete documentation index, see [llms.txt](https://1spatial.gitbook.io/fme-form-beginner/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://1spatial.gitbook.io/fme-form-beginner/transformer-usage/managing-attributes/renaming-and-copying-attributes.md).

# Renaming and Copying Attributes

Renaming and, to a lesser extent, copying attributes are also key attribute functions within FME. When an attribute is renamed, it ceases to exist under its prior name; when it is copied, it exists both in its new and old names.

The transformers capable of renaming an attribute are:

<table><thead><tr><th width="198">Transformer</th><th width="542">Capability</th></tr></thead><tbody><tr><td>AttributeCopier</td><td>Copy</td></tr><tr><td>AttributeCreator</td><td>Copy</td></tr><tr><td>AttributeManager</td><td>Copy and Rename</td></tr><tr><td>AttributeRenamer</td><td>Rename</td></tr></tbody></table>

## Renaming

The fundamental purpose of renaming is to enter a new name for a selected attribute manually. The old attribute is removed and replaced with the newly named one:

<figure><img src="/files/rTqvN8lHHwIVF4LAv8lG" alt=""><figcaption></figcaption></figure>

Here an AttributeManager is used to rename a number of fields by entering a different name for the Output Attribute. The Action is automatically set to Rename. Notice that the user is also entering a new constant value for the PSTLCITY/PostalCity attribute.

This type of behaviour is obviously of use when the reader schema ('what we have') needs to be renamed to match the writer schema ('what we want').

{% hint style="info" %}
**TIP**

*Although you can manually type a new attribute name into the Output Attribute field, if the transformer is connected to a writer feature type with the correct attributes, its attribute names will be automatically available to select from.*
{% endhint %}

## Copying

Depending on the transformer, copying an attribute can be one of two styles.

<figure><img src="/files/0769j8GzS7v0xCOJe35d" alt=""><figcaption></figcaption></figure>

Here the AttributeCopier consists of selecting the existing attribute and entering a new name for it. Again, when connected to a writer feature type, its schema is available to use.

Note how both PSTLCITY and PostalCity exist on the output of the transformer, proving that it is copying the attribute rather than renaming it.

{% hint style="info" %}
**TIP**

*You can (as above) enter a constant attribute value in the AttributeCopier, but in reality it's hardly a copy operation in that case; it's more an attribute creation task.*
{% endhint %}

For other transformers, the setup style is reversed: a new attribute is created and given the value of an existing attribute:

<figure><img src="/files/BWTg9PhgJMFQDC6VID8h" alt=""><figcaption></figcaption></figure>

In this AttributeManager transformer, the user creates a new attribute (PostalCity) and assigns it the value from another (PSTLCITY). In effect, they have made a copy of the original attribute.

## Bulk Attribute Renaming

Usual attribute renaming involves selecting individual attributes to modify. However, in some cases, it's important to be able to carry out the same renaming operation on a large number of attributes.

This scenario is catered for by the BulkAttributeRenamer transformer.

<figure><img src="/files/7RxmxcutjLQEGbwD8Avd" alt=""><figcaption></figcaption></figure>

### BulkAttributeRenamer

The BulkAttributeRenamer carries out the core function of renaming attributes. But instead of manually specifying each attribute, this transformer lets the user select multiple attributes, or all of them:

<figure><img src="/files/hxbZhRVoItQXOzLEHMHJ" alt=""><figcaption></figcaption></figure>

When multiple attributes are selected, the action must - of course - carry out the same renaming action on them all. These actions are:

* Add String Prefix
* Add String Suffix
* Remove Prefix String
* Remove Suffix String
* Regular Expression
* Replace String Replace
* Change Case

<figure><img src="/files/O1gCfwdWzpv1uBQ3PepI" alt=""><figcaption></figcaption></figure>

The power of the transformer is also in its ability to manipulate multiple attributes at once, without having to select them all individually. Here, for example, the incoming attributes are all being renamed to lower case names to match a writer schema that does not support upper case:

<figure><img src="/files/ooAWMQYH2N6W5Q1rb5Gl" alt=""><figcaption></figcaption></figure>

Multiple transformers can be used to create a cumulative effect. Here, for example, the user has converted to lower case and then used a second transformer to add a prefix:

<figure><img src="/files/N908ZddKgtMtTNesZ2yz" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://1spatial.gitbook.io/fme-form-beginner/transformer-usage/managing-attributes/renaming-and-copying-attributes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
