---
title: IEdiDataElement
summary: API reference for IEdiDataElement.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-09-15
library: SAIF.Framework.Common.Files
reference_type: package
---

# IEdiDataElement

`IEdiDataElement` is the contract for `EdiDataElement`; it is an intentionally empty marker interface that extends `IEdiElement` without adding members, used to type data-element collections (e.g. `EdiSegment.DataElements`) more specifically than the base element contract while still allowing `EdiCompositeDataElement` to satisfy it too.

## Purpose
- Marks a type as "a data element" (simple or composite) distinct from a segment, letting collections like `EdiSegment.DataElements` be typed as `IEnumerable<IEdiDataElement>` rather than the more generic `IEdiElement`.
- Adds no members of its own beyond those inherited from `IEdiElement`; both `EdiDataElement` and `EdiCompositeDataElement` implement it.

## Context
- Namespace: `SAIF.Common.Files.Edi`
- Assembly/package: `SAIF.Framework.Common.Files`
- Extends: `IEdiElement`

## Public members
This interface declares no members of its own.

## Inherited public members

Members in this section are inherited from `IEdiElement` in `SAIF.Framework.Common.Files`. They are available on this type through inheritance.

| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| Index | `int Index { get; set; }` | The element's ordinal position within its parent. | `SAIF.Framework.Common.Files` — `IEdiElement` |
| Value | `string Value { get; set; }` | The raw text value of this element. | `SAIF.Framework.Common.Files` — `IEdiElement` |
| Type | `ElementType Type { get; }` | Identifies which concrete element kind this instance is. | `SAIF.Framework.Common.Files` — `IEdiElement` |

## Sources
- Common\SAIF.Common.Files\Edi\IEdiDataElement.cs
