# Package org.apache.avro.path

Interfaces and base classes for AvroPath.

See: Description

Interface Summary
PathElement: root interface for all pieces of an AvroPath expression
PathPredicate: a predicate is a filter that restricts items selected by a `LocationStep`
PathTracingException<T extends Throwable>: interface for exceptions that can trace the AvroPath of an error
PositionalPathPredicate: filters items by their context position

Class Summary
ArrayPositionPredicate: Returns items by their position (numeric index) in an array
LocationStep: Selects items based on their "path" (name of a property under which they are stored) relative to the context.
MapKeyPredicate: Returns items by their position (string key under which they are stored) in a map
UnionTypePredicate: Returns items by their position (numeric index of type) in a union schema

Exception Summary
TracingAvroTypeException: an `AvroTypeException` with extra fields used to trace back the path to a bad value through an object graph
TracingClassCastException: a `ClassCastException` with extra fields used to trace back the path to a bad value through an object graph
TracingNullPointException: a `NullPointerException` with extra fields used to trace back the path to a null value through an object graph

## Package org.apache.avro.path Description

Interfaces and base classes for AvroPath. This functionality is experimental, meaning these APIs are not expected to be stable any time soon so use at your own risk. Feedback, however, would be very appreciated :-)