# Data Management

Data management components provide advanced data manipulation, updating, and management capabilities for comprehensive data operations.

## Update Data

This component dynamically updates or appends data with specified fields.

### Usage

Update Data functionality:

* Dynamic field addition
* Data modification
* Field validation
* Batch updates
* Metadata management

### Inputs

| Name                 | Display Name       | Info                             |
| -------------------- | ------------------ | -------------------------------- |
| old\_data            | Data               | The records to update            |
| number\_of\_fields   | Number of Fields   | Number of fields to add (max 15) |
| text\_key            | Text Key           | Key for text content             |
| text\_key\_validator | Text Key Validator | Validates text key presence      |

### Outputs

| Name | Display Name | Info                                                                                             |
| ---- | ------------ | ------------------------------------------------------------------------------------------------ |
| data | Data         | Updated [Data](https://github.com/GuidenAI/broxi_document/blob/main/components/data.md) objects. |

## Field Management

The Update Data component provides flexible field management:

### Dynamic Fields

* Add up to 15 new fields
* Configurable field names and values
* Type validation
* Default value assignment

### Field Types

* **Text Fields**: String data
* **Numeric Fields**: Integer and float values
* **Boolean Fields**: True/false values
* **JSON Fields**: Complex structured data
* **Array Fields**: List data structures

### Validation Features

* **Text Key Validation**: Ensures required text keys exist
* **Type Checking**: Validates field data types
* **Range Validation**: Numeric range constraints
* **Pattern Matching**: Regular expression validation
* **Required Fields**: Mandatory field enforcement

## Usage Examples

### Adding User Metadata

```
Field 1: user_id (Text)
Field 2: timestamp (Text) 
Field 3: status (Text)
Field 4: priority (Numeric)
```

### Document Processing

```
Field 1: processed_date (Text)
Field 2: word_count (Numeric)
Field 3: language (Text)
Field 4: confidence_score (Numeric)
```

### Data Enrichment

```
Field 1: enriched_flag (Boolean)
Field 2: source_system (Text)
Field 3: processing_time (Numeric)
Field 4: quality_score (Numeric)
```

## Usage Notes

* **Flexible Updates**: Support for various field types and structures
* **Validation**: Built-in validation for data integrity
* **Batch Operations**: Efficient processing of multiple records
* **Type Safety**: Maintains data type consistency
* **Metadata Preservation**: Preserves existing data while adding new fields
* **Performance Optimized**: Efficient field addition and validation
