Atomic should provide tagset support as follows.
- The core plugin should provide
- An object model for tagsets as per the definition further below
- A related API for constructing object models for a tagset, from some sort of tagset config file
- Methods for loading tagsets for a corpus in the editor-related API
- (Perhaps also tagset-aware default implementations for widgets)
and
- Editor plugins should provide
- Implementations of tagset-aware editor API (where needed)
- Logic to provide widgets (comboboxes, etc.) backed by a tagset
In Atomic, a tagset is a definition of annotation values that are valid for a given combination of layers, Salt model elements, namespaces, names and values.
|
Layer (SLayer) |
Model element (SSpan, SSpanningRelation, etc.) |
Namespace (for SAnnotation) |
Name (SAnnotation name) |
Values (SAnnotation value) |
| Valid values |
List of layers || regex || null |
List of elements || null |
Empty string || List of namespaces || regex || null |
List of names || regex || null |
List of values || regex || null |
|
A list of layers (defined by SLayer names |
A list of Salt element types (defined by SALT_TYPE) |
A list of namespaces (defined by namepsace Strings) |
A list of annotation names (defined by SAnnotation names) |
A list of valid annotation values (defined as pairs of value and description, i.e. [value, value description] or [regex, regex decription] |
Atomic should provide tagset support as follows.
and
In Atomic, a tagset is a definition of annotation values that are valid for a given combination of layers, Salt model elements, namespaces, names and values.
SLayer)SSpan,SSpanningRelation, etc.)SAnnotation)SAnnotationname)SAnnotationvalue)regex ||
nullnullList of namespaces ||
regex ||
nullregex ||
nullregex ||
nullSLayernamesSALT_TYPE)Strings)SAnnotationnames)