# Properties of int Field

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

|         Property Name        |                                         Allowed type / value                                        | DSL Version | Required |                     Default Value                     | Description                                                                                                                             |
| :--------------------------: | :-------------------------------------------------------------------------------------------------: | :---------: | :------: | :---------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------------- |
|           **type**           |    "int8", "uint8", "int16", "uint16", "int32", "uint32", "int64", "uint64", "intvar", "uintvar"    |      1      |    yes   |                                                       | Underlying primitive type.                                                                                                              |
|       **defaultValue**       |      [numeric](/commsdsl-specification/numeric.md) or [name](/commsdsl-specification/names.md)      |      1      |    no    |                           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.                                                                                                                    |
|          **length**          |                            [unsigned](/commsdsl-specification/numeric.md)                           |      1      |    no    |                   length of **type**                  | Forced serialization length.                                                                                                            |
|         **bitLength**        |                            [unsigned](/commsdsl-specification/numeric.md)                           |      1      |    no    |               length of **type** in bits              | Serialization length in bits, applicable only to a member of [\<bitfield>](/commsdsl-specification/fields/bitfield.md).                 |
|         **serOffset**        |                            [numeric](/commsdsl-specification/numeric.md)                            |      1      |    no    |                           0                           | Extra value that needs to be added to the field's value when the latter is being serialized.                                            |
|          **signExt**         |                              [bool](/commsdsl-specification/boolean.md)                             |      1      |    no    |                          true                         | Enable / Disable sign extension of the signed value when **length** property is used to reduce the default serialization length.        |
|          **scaling**         |   "[numeric](/commsdsl-specification/numeric.md) / [numeric](/commsdsl-specification/numeric.md)"   |      1      |    no    |                          1/1                          | Scaling ratio.                                                                                                                          |
|           **units**          |                          [units](/commsdsl-specification/appendix/units.md)                         |      1      |    no    |                                                       | Units of the value.                                                                                                                     |
|        **validRange**        | "\[ [numeric](/commsdsl-specification/numeric.md), [numeric](/commsdsl-specification/numeric.md) ]" |      1      |    no    |                                                       | Range of valid values.                                                                                                                  |
|        **validValue**        |                            [numeric](/commsdsl-specification/numeric.md)                            |      1      |    no    |                                                       | Valid value.                                                                                                                            |
|         **validMin**         |                            [numeric](/commsdsl-specification/numeric.md)                            |      1      |    no    |                                                       | Valid minimal value. All the numbers above it are considered to be valid.                                                               |
|         **validMax**         |                            [numeric](/commsdsl-specification/numeric.md)                            |      1      |    no    |                                                       | Valid maximal value. All the numbers below it are considered to be valid.                                                               |
|     **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 tools to display this field as floating point value with specified number of digits after the fraction point. |
|       **displayOffset**      |                            [numeric](/commsdsl-specification/numeric.md)                            |      1      |    no    |                           0                           | Indicates to GUI analysis tools to add specified offset value to a field's value when displaying it.                                    |
| **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 \<int> 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**     |  [numeric](/commsdsl-specification/numeric.md)  |      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.                                                                                    |


---

# Agent Instructions: 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://alex-robenko.gitbook.io/commsdsl-specification/appendix/int.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.
