DataPrep Annotation Types
DataPrep Annotation Types
The Ann.Dp* annotation types define metadata for DataPrep pipeline operators. They are consumed by DataPrep.allOperatorDefinitions(), which reads annotated types and emits DataPrep.OperatorDefinition objects for the frontend.
Type-level annotations
| Annotation | Description |
|---|---|
@dpOperator | Marks a type as a pipeline operator (classId, displayName, etc) |
@dpPropertyGroups | Array of collapsible property-group definitions |
@dpPropertyLists | Array of repeatable add/remove property-list definitions |
Field-level annotations
| Annotation | Description |
|---|---|
@dpProperty | Declares a property in the operator's property panel |
@dpConditions | Array of conditional behavior rules for a property |
@dpInput | Declares an input port (Data.Spark.DataFrame) |
@dpOutput | Declares an output port (function returning DataFrame) |
The @dpPropertyGroups, @dpPropertyLists, and @dpConditions annotations use a single json array field (groups, lists, conditions respectively) instead of stacking multiple annotations with the same name — C3 validation does not allow duplicate annotation names on a single type or field.
See dataPrepEngine/specs/annotation-based-operators.md for full annotation schemas and examples.