> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# UserDictionaryDescription Object (IUserDictionaryDescription Interface)

This object provides access to a [user dictionary](/fine-reader/engine/guided-tour/advanced-techniques/working-with-dictionaries#user). The IUserDictionaryDescription interface is derived from the [IDictionaryDescription](/fine-reader/engine/api-reference/language-related-objects/dictionarydescription) interface and inherits all its properties.

A user dictionary can be created by the user with the help of the [Dictionary](/fine-reader/engine/api-reference/language-related-objects/dictionary) object. The path to the created dictionary is specified in the FileName property of the UserDictionaryDescription object. Then the configured object is added to the collection of dictionary descriptions of a language.

## Properties

| Name     | Type                                                                                                    | Description                                                                                                                                              |
| -------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FileName | [BSTR](/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties) | The path to the user dictionary file. This property does not check the validity of the dictionary, which will be done later when the dictionary is used. |

## Related objects

<img src="https://mintcdn.com/abbyy/B_SRGbkkbQ9YH40E/images/fine-reader/engine/userdictionarydescription.gif?s=ebed54b3aa4b3f489d312cf16a0f6b50" alt="UserDictionaryDescription" width="352" height="108" data-path="images/fine-reader/engine/userdictionarydescription.gif" />[](/fine-reader/engine/api-reference/language-related-objects/textlanguage#prohibitingdictionaries)[](/fine-reader/engine/api-reference/language-related-objects/baselanguage#dictionarydescriptions)[](/fine-reader/engine/visual-components-reference/supplementary-objects/spellwordcollection/element-property)[](/fine-reader/engine/api-reference/language-related-objects/dictionarydescription)[](/fine-reader/engine/api-reference/language-related-objects/dictionarydescriptions)[](/fine-reader/engine/api-reference/language-related-objects/baselanguage)[](/fine-reader/engine/api-reference/language-related-objects/textlanguage)

[Object Diagram](/fine-reader/engine/api-reference/object-diagram)

## Output parameter

This object is the output parameter of the [Item](/fine-reader/engine/visual-components-reference/supplementary-objects/spellwordcollection/item-method), [AddNew](/fine-reader/engine/api-reference/language-related-objects/dictionarydescriptions/addnew-method) methods of the [DictionaryDescriptions](/fine-reader/engine/api-reference/language-related-objects/dictionarydescriptions) object.

## Samples

<Accordion title="C# code">
  ```csharp theme={null}
  FREngine.IFRDocument frdoc;
  FREngine.IBaseLanguage baseLanguage;
  string dictionaryFileName = "D:\\sample.amd";
  // We presume that a user dictionary has already been created
  // Assigning a user dictionary to a base language
  // Get the collection of dictionary descriptions and remove all items
  IDictionaryDescriptions dictionaryDescriptions = baseLanguage.DictionaryDescriptions;
  dictionaryDescriptions.DeleteAll();
  // Create a user dictionary description and add it to the collection
  IDictionaryDescription dictionaryDescription = dictionaryDescriptions.AddNew( DictionaryTypeEnum.DT_UserDictionary );
  IUserDictionaryDescription userDictionaryDescription = dictionaryDescription.GetAsUserDictionaryDescription();
  userDictionaryDescription.FileName = dictionaryFileName;
  ```
</Accordion>

The object is used in the following code samples for Linux and Windows: [CustomLanguage](/fine-reader/engine/guided-tour/samples#customlanguage)

## See also

[Working with Dictionaries](/fine-reader/engine/guided-tour/advanced-techniques/working-with-dictionaries)

[Dictionary](/fine-reader/engine/api-reference/language-related-objects/dictionary)

[DictionaryDescription](/fine-reader/engine/api-reference/language-related-objects/dictionarydescription)

[DictionaryDescriptions](/fine-reader/engine/api-reference/language-related-objects/dictionarydescriptions)

[Working with Properties](/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties)
