+* The "declaration" of a field or an event, is the structure which contains
+ the representaion of an object as declared in the metadata. All the
+ declarations of all events and fields can be accessed as soon as the trace is
+ open, but of course they contain no trace data, just the layout.
+
+* The "definition" of a field or an event is the structure in which the actual
+ trace data is contained. When we read an event in the trace, we access its
+ definition and we can access all the field definitions contained in all the
+ scopes of this event to the get the actual data.
+
+* "Scopes" allow specifying the level at which the information about the
+ current event must be fetched: event header, event payload, event context,
+ stream context. Compound-type (arrays, structures, sequences and variants)
+ fields are relative scopes which contain fields.