# BasicDataPoint Class - preview

> * Namespace: `UiPath.DocumentProcessing.Contracts.Extensions.Navigator.V1`
* Assembly: `UiPath.DocumentProcessing.Contracts`

## Definition

* Namespace: `UiPath.DocumentProcessing.Contracts.Extensions.Navigator.V1`
* Assembly: `UiPath.DocumentProcessing.Contracts`

## Description

`BasicDataPoint` is a facade class for working with basic (non-complex) extraction fields in an `ExtractionResult`. It wraps a `ResultsDataPoint` and provides a fluent, strongly-typed API to read and manipulate the field’s values as `BasicValue` objects.

Use `BasicDataPoint` when you know the underlying `ResultsDataPoint` is a basic field type (for example: text, number, date, etc.) and not a `Table` or `FieldGroup`.

`BasicDataPoint` is typically obtained through `ExtractionResultHandler.FromBasicDataPoint(...)`, which converts raw `ResultsDataPoint` objects into the appropriate facade type (basic, table, field group, or wildcard).

Use `BasicDataPoint` to:

* Get the first extracted value (or all values) for a basic field,
* Read a value at a specific index (multi-value fields),
* Add values,
* Insert values at a specific position,
* Update existing values,
* Remove individual values,
* Clear all values from a field.

If you need to work with tables or field groups, use `TableDataPoint` or `FieldGroupDataPoint` instead.

## Members

#### Constructors

`BasicDataPoint()` - Initializes a new instance for a basic field type.

#### Methods

* `AddValue()` - Appends an existing `ResultsValue` to the end of the values list.
* `InsertValue()` - Inserts an existing value at the specified index.
* `UpdateValue()` - Updates the first value (index `0`) with a new `ResultsValue`.
* `Clear()` - Removes all values from the data point.
* `Remove()` - Removes the value at the specified index.

Properties

* `Value` `InArgument<Resultsvalue value>` - The data point to wrap. Must represent a basic (non-complex) field.
