> For the complete documentation index, see [llms.txt](https://alex-robenko.gitbook.io/commsdsl-specification/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://alex-robenko.gitbook.io/commsdsl-specification/appendix/float.md).

# Properties of float Field

The **\<float>** field has all the [common](/commsdsl-specification/appendix/fields.md) properties as well as ones listed below. Refer to [\<float> Field](/commsdsl-specification/fields/float.md) chapter for detailed description.

|         Property Name        |                Allowed type / value                | DSL Version | Required |                     Default Value                     | Description                                                                                     |
| :--------------------------: | :------------------------------------------------: | :---------: | :------: | :---------------------------------------------------: | ----------------------------------------------------------------------------------------------- |
|           **type**           |                  "float", "double"                 |      1      |    yes   |                                                       | Underlying primitive type.                                                                      |
|       **defaultValue**       |  floating point value, **nan**, **inf**, **-inf**  |      1      |    no    |                          0.0                          | Default value. Must fit the underlying **type**.                                                |
|          **endian**          |                  "big" or "little"                 |      1      |    no    | endian of [schema](/commsdsl-specification/schema.md) | Endian of the field.                                                                            |
|           **units**          | [units](/commsdsl-specification/appendix/units.md) |      1      |    no    |                                                       | Units of the value.                                                                             |
|        **validRange**        |             "\[ fp\_value, fp\_value ]"            |      1      |    no    |                                                       | Range of valid values.                                                                          |
|        **validValue**        |  floating point value, **nan**, **inf**, **-inf**  |      1      |    no    |                                                       | Valid value.                                                                                    |
|         **validMin**         |                floating point value                |      1      |    no    |                                                       | Valid minimal value. All the numbers above it are considered to be valid.                       |
|         **validMax**         |                floating point value                |      1      |    no    |                                                       | Valid maximal value. All the numbers below it are considered to be valid.                       |
|      **validFullRange**      |     [bool](/commsdsl-specification/boolean.md)     |      1      |    no    |                         false                         | Mark all the range of existing FP values to be valid, excluding **nan**, **inf**, and **-inf**. |
|     **validCheckVersion**    |     [bool](/commsdsl-specification/boolean.md)     |      1      |    no    |                         false                         | Take into account protocol version when generating code for field's value validity check.       |
|      **displayDecimals**     |    [numeric](/commsdsl-specification/numeric.md)   |      1      |    no    |                           0                           | Indicates to GUI analysis how many digits need to be displayed after the fraction point.        |
| **nonUniqueSpecialsAllowed** |     [bool](/commsdsl-specification/boolean.md)     |      2      |    no    |                         false                         | Allow non unique **\<special>**-s.                                                              |
|      **displaySpecials**     |     [bool](/commsdsl-specification/boolean.md)     |      2      |    no    |                          true                         | Control displaying **\<special>** values in analysis tools.                                     |

## Properties of \<special> Child Element of \<float> Field

|   Property Name  |               Allowed type / value               | DSL Version | Required | Default Value | Description                                                                                                                   |
| :--------------: | :----------------------------------------------: | :---------: | :------: | :-----------: | ----------------------------------------------------------------------------------------------------------------------------- |
|     **name**     |  [name](/commsdsl-specification/names.md) string |      1      |    yes   |               | Name of the value.                                                                                                            |
|      **val**     | floating point value, **nan**, **inf**, **-inf** |      1      |    yes   |               | Numeric value.                                                                                                                |
|  **description** |                      string                      |      1      |    no    |               | Human readable description of the value.                                                                                      |
| **sinceVersion** |  [unsigned](/commsdsl-specification/numeric.md)  |      1      |    no    |       0       | Version of the protocol in which value was introduced.                                                                        |
|  **deprecated**  |  [unsigned](/commsdsl-specification/numeric.md)  |      1      |    no    |  max unsigned | <p>Version of the protocol in which value was deprecated.<br>Must be greater than value of <strong>sinceVersion</strong>.</p> |
|  **displayName** |                      string                      |      2      |    no    |               | Name to display in various analysis tools.                                                                                    |
