# Can I set language-specific multi-fields?

**URL:** <https://discuss.elastic.co/t/can-i-set-language-specific-multi-fields/117667>\
**Category:** Elasticsearch\
**Created:** [January 30, 2018, 4:55pm UTC](https://discuss.elastic.co/t/can-i-set-language-specific-multi-fields/117667 "2018-01-30T16:55:07Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![IanRC72](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ianrc72/32/26086_2.png) [@IanRC72](https://discuss.elastic.co/u/IanRC72)\
**Post date:** [January 30, 2018, 4:55pm UTC](https://discuss.elastic.co/t/can-i-set-language-specific-multi-fields/117667/1 "2018-01-30T16:55:07Z")

</div>

Is it possible to use multi-fields to set and query multilingual fields?

Consider this mapping:

```
PUT multi_test
{
  "mappings": {
    "data": {
      "_field_names": {
        "enabled": false
      },
      "properties": {
        "book_title": {
          "type": "text",
          "fields": {
            "english": {
              "type": "text",
              "analyzer": "english"
            },
            "german": {
              "type": "text",
              "analyzer": "german"
            },
            "italian": {
              "type": "text",
              "analyzer": "italian"
            }
          }
        }
      }
    }
  }
}

```

I tried the following, but it doesn't work:

```
PUT multi_test/data/1
{
  "book_title.english": "It's good",
  "book_title.german": "Das gut"
}

```

The error seems to indicate I'm trying to add new fields:

> {  
> "error": {  
> "root\_cause": [  
> {  
> "type": "mapper\_parsing\_exception",  
> "reason": "Could not dynamically add mapping for field [book\_title.english]. Existing mapping for [book\_title] must be of type object but found [text]."  
> }  
> ],  
> "type": "mapper\_parsing\_exception",  
> "reason": "Could not dynamically add mapping for field [book\_title.english]. Existing mapping for [book\_title] must be of type object but found [text]."  
> },  
> "status": 400  
> }

What am I doing wrong here?

If my approach is unworkable, what is a better way to do this?

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [February 27, 2018, 4:55pm UTC](https://discuss.elastic.co/t/can-i-set-language-specific-multi-fields/117667/2 "2018-02-27T16:55:07Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
