Segmentation Schema
Universal Ink Model content type segmentation schema.
Includes
| Name | Value |
|---|---|
| Schema URI | schema will:uim/1.1 |
| Class Count | 5 |
| Classes | will:uim/1.1/InkModel, will:uim/1.1/InkNode, will:uim/1.1/Root, will:uim/1.1/StrokeNode, will:uim/1.1/StrokeGroupNode |
Classes
Root
Root of the ink content type segmentation schema.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Root |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/Root |
Properties
| Property | Attribute | Value |
|---|---|---|
| generatedBy | Data Type(s) | @uri |
| Description | URI identifying the creator of the logical tree. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasChild | Data Type(s) | will:seg/0.3/ContentBlock,will:seg/0.3/Annotation |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Description | Roots can't have parents. | |
| Association Type | composition | |
| Cardinality | [0, 0] overridden to [0, 1] (optional) | |
| hasParentInkModel | Data Type(s) | will:uim/1.1/InkModel |
| Description | Referencing the parent InkModel. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| representsView | Data Type(s) | @string |
| Description | The name of the view this node is a root of. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) |
ContentBlock
Abstract block for grouping content.
| Name | Value |
|---|---|
| Class | will:seg/0.3/ContentBlock [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
| Specialized By | will:seg/0.3/TextRegion,will:seg/0.3/ExtendedTextRegion,will:seg/0.3/UnlabelledBlock,will:seg/0.3/Drawing,will:seg/0.3/ExpressionBlock,will:seg/0.3/ContentBlockOfStrokeNodes,will:seg/0.3/Diagram,will:seg/0.3/Table,will:seg/0.3/List |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
TextRegion
Defines a region of text content, such as a paragraph.
| Name | Value |
|---|---|
| Class | will:seg/0.3/TextRegion |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/TextLine |
| Description | Contains multiple TextLine(s). | |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) (ordered) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
TextLine
Annotates a group of strokes (StrokeGroupNode) that define a text line within a TextRegion.
| Name | Value |
|---|---|
| Class | will:seg/0.3/TextLine |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/Word |
| Description | Links to a list of ordered Word(s). | |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) (ordered) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
Word
An abstract word class.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Word [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
| Specialized By | will:seg/0.3/WordOfStrokes |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasAltContent | Data Type(s) | @i18n_string |
| Description | Defines the localized content of an alternative recognition result. | |
| Association Type | composition | |
| Cardinality | [0, inf] (optional) (ordered) | |
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode |
| Association Type | composition | |
| Cardinality | [0, inf] (optional) | |
| hasContent | Data Type(s) | @i18n_string |
| Description | Defines the localized content. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasLanguage | Data Type(s) | @language |
| Description | Defines the language of the Word. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
WordOfStrokes
Annotates strokes (StrokeNode) that are composing a word.
| Name | Value |
|---|---|
| Class | will:seg/0.3/WordOfStrokes |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/Word |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasAltContent | Data Type(s) | @i18n_string |
| Description | Defines the localized content of an alternative recognition result. | |
| Association Type | composition | |
| Cardinality | [0, inf] (optional) (ordered) | |
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) (ordered) | |
| hasContent | Data Type(s) | @i18n_string |
| Description | Defines the localized content. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasLanguage | Data Type(s) | @language |
| Description | Defines the language of the Word. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
ExtendedTextRegion
Defines a region that contains not only text content but also drawings, math, etc.
| Name | Value |
|---|---|
| Class | will:seg/0.3/ExtendedTextRegion |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/Line,will:seg/0.3/ExpressionBlock,will:seg/0.3/Drawing |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) (ordered) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Line
Defines a line of items that are assigning different content types Word(s), math ExpressionBlock(s), or Drawing(s).
| Name | Value |
|---|---|
| Class | will:seg/0.3/Line |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/Word,will:seg/0.3/ExpressionBlock,will:seg/0.3/Drawing |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) (ordered) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
UnlabelledBlock
Defines a block of UnlabelledItemGroup and UnlabelledItem, which is used if none of the defined types matches stroke(s) and can be grouped within an UnlabelledBlock.
| Name | Value |
|---|---|
| Class | will:seg/0.3/UnlabelledBlock |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| categoryHint | Data Type(s) | @string |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasChild | Data Type(s) | will:seg/0.3/UnlabelledItemGroup,will:seg/0.3/UnlabelledItem |
| Description | Adding unlabeled atomic items to the block. | |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
UnlabelledItemGroup
Defines a group of logical units, e.g., either another group (UnlabelledItemGroup) or an atomic item (UnlabelledItem).
| Name | Value |
|---|---|
| Class | will:seg/0.3/UnlabelledItemGroup |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/UnlabelledItemGroup,will:seg/0.3/UnlabelledItem |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
UnlabelledItem
Annotates strokes (StrokeNode) to an atomic UnlabelledItem.
| Name | Value |
|---|---|
| Class | will:seg/0.3/UnlabelledItem |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
Drawing
Defines a drawing that is grouping non-diagram sketches.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Drawing |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/DrawingItemGroup,will:seg/0.3/DrawingItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
DrawingItemGroup
Defines a logical entity (DrawingItemGroup) within a Drawing.
| Name | Value |
|---|---|
| Class | will:seg/0.3/DrawingItemGroup |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/DrawingItemGroup,will:seg/0.3/DrawingItem,will:seg/0.3/TextRegion |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
DrawingItem
Annotates strokes (StrokeNode) that are associated with an atomic entity (DrawingItem) within a Drawing.
| Name | Value |
|---|---|
| Class | will:seg/0.3/DrawingItem [final] |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
ExpressionBlock
Defines an abstract block of expressions.
| Name | Value |
|---|---|
| Class | will:seg/0.3/ExpressionBlock [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
| Specialized By | will:seg/0.3/GenericExpressionBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
GenericExpressionBlock
Defines an abstract generic block of expressions.
| Name | Value |
|---|---|
| Class | will:seg/0.3/GenericExpressionBlock [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ExpressionBlock |
| Specialized By | will:seg/0.3/MathBlock,will:seg/0.3/ChemistryBlock,will:seg/0.3/PhysicsBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/GenericExpressionItemGroup,will:seg/0.3/GenericExpressionItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
GenericExpressionItemGroup
Defines an abstract generic item group (GenericExpressionItemGroup) of an expression.
| Name | Value |
|---|---|
| Class | will:seg/0.3/GenericExpressionItemGroup [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
| Specialized By | will:seg/0.3/MathItemGroup,will:seg/0.3/ChemistryItemGroup,will:seg/0.3/PhysicsItemGroup |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/GenericExpressionItemGroup,will:seg/0.3/GenericExpressionItem |
| Association Type | composition | |
| Cardinality | [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
GenericExpressionItem
Defines an abstract generic atomic item (GenericExpressionItem) of expressions.
| Name | Value |
|---|---|
| Class | will:seg/0.3/GenericExpressionItem [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
| Specialized By | will:seg/0.3/MathItem,will:seg/0.3/ChemistryItem,will:seg/0.3/PhysicsItem |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
MathBlock
Defines a math block that groups math statements.
| Name | Value |
|---|---|
| Class | will:seg/0.3/MathBlock |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasASCIIMath | Data Type(s) | @string |
| Description | An ASCII Math expression representing the content of the MathBlock. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasChild | Data Type(s) | will:seg/0.3/MathItemGroup,will:seg/0.3/MathItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasLatex | Data Type(s) | @latex |
| Description | A latex expression representing the content of the MathBlock. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasMathML | Data Type(s) | @mathml |
| Description | A MathML expression representing the content of the MathBlock. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
MathItemGroup
Defines a math item group (MathItemGroup), such as fenced-, indexed expressions.
| Name | Value |
|---|---|
| Class | will:seg/0.3/MathItemGroup |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionItemGroup |
| Specialized By | will:math/0.6/CompoundTerm,will:math/0.6/Expression,will:math/0.6/Fenced,will:math/0.6/System,will:math/0.6/RootExpression,will:math/0.6/Fraction,will:math/0.6/Row,will:math/0.6/Matrix,will:math/0.6/Indexed |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/MathItemGroup,will:seg/0.3/MathItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasOperandLabel | Data Type(s) | @string |
| Description | Reserved for debug purposes. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasOperandType | Data Type(s) | @string |
| Description | Reserved for debug purposes. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| isStructuralItem | Data Type(s) | @bool |
| Description | Reserved for debug purposes. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) |
MathItem
Defines an atomic math item (MathItem), such as number, symbols, operators, etc..
| Name | Value |
|---|---|
| Class | will:seg/0.3/MathItem |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionItem |
| Specialized By | will:math/0.6/Term,will:math/0.6/Operator,will:math/0.6/Relation,will:math/0.6/FractionLine |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasOperandLabel | Data Type(s) | @string |
| Description | Reserved for debug purposes. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasOperandType | Data Type(s) | @string |
| Description | Reserved for debug purposes. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| isStructuralItem | Data Type(s) | @bool |
| Description | Reserved for debug purposes. | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) |
ChemistryBlock
Defines a block of a chemistry expression.
| Name | Value |
|---|---|
| Class | will:seg/0.3/ChemistryBlock |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/ChemistryItemGroup,will:seg/0.3/ChemistryItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
ChemistryItemGroup
Defines a chemistry item group (ChemistryItemGroup).
| Name | Value |
|---|---|
| Class | will:seg/0.3/ChemistryItemGroup |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionItemGroup |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/ChemistryItemGroup,will:seg/0.3/ChemistryItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
ChemistryItem
Defines an atomic chemistry item (ChemistryItem).
| Name | Value |
|---|---|
| Class | will:seg/0.3/ChemistryItem |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionItem |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
PhysicsBlock
Defines a block of a physics expression.
| Name | Value |
|---|---|
| Class | will:seg/0.3/PhysicsBlock |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/PhysicsItemGroup,will:seg/0.3/PhysicsItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
PhysicsItemGroup
Defines a physics item group (PhysicsItemGroup).
| Name | Value |
|---|---|
| Class | will:seg/0.3/PhysicsItemGroup |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionItemGroup |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/PhysicsItemGroup,will:seg/0.3/PhysicsItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
PhysicsItem
Describes an atomic physics item (PhysicsItem).
| Name | Value |
|---|---|
| Class | will:seg/0.3/PhysicsItem |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/GenericExpressionItem |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
ContentBlockOfStrokeNodes
Defines an abstract content block.
| Name | Value |
|---|---|
| Class | will:seg/0.3/ContentBlockOfStrokeNodes [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
| Specialized By | will:seg/0.3/ChemicalStructure,will:seg/0.3/Signature,will:seg/0.3/Garbage,will:seg/0.3/Unlabeled,will:seg/0.3/Doodle |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
ChemicalStructure
Annotates strokes (StrokeNode) that are associated with a chemical structure.
| Name | Value |
|---|---|
| Class | will:seg/0.3/ChemicalStructure |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlockOfStrokeNodes |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Signature
Annotates strokes (StrokeNode) that are associated with a handwritten signature.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Signature |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlockOfStrokeNodes |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Garbage
Annotates strokes (StrokeNode) that cannot be assigned to any class (blank class).
| Name | Value |
|---|---|
| Class | will:seg/0.3/Garbage |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlockOfStrokeNodes |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Unlabeled
Annotates strokes (StrokeNode) that are not yet annotated.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Unlabeled |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlockOfStrokeNodes |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Doodle
Annotates strokes (StrokeNode) that are sketches which are neither technical diagrams (Diagram) nor drawings (Drawing).
| Name | Value |
|---|---|
| Class | will:seg/0.3/Doodle |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlockOfStrokeNodes |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Diagram
Defines a block which is a technical diagram using basic shapes.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Diagram |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/ContentBlock,will:seg/0.3/DiagramConnector,will:seg/0.3/DiagramPart |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
DiagramConnector
Annotates strokes (StrokeNode) that are connectors which are describing arrows and lines connecting logical units.
| Name | Value |
|---|---|
| Class | will:seg/0.3/DiagramConnector |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
DiagramPart
Annotates strokes (`StrokeNode) that describe diagram parts which are logical units of a diagram.
| Name | Value |
|---|---|
| Class | will:seg/0.3/DiagramPart [final] |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
Table
Annotates strokes (StrokeNode) that are associated with handwritten tables.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Table |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/Border,will:seg/0.3/ContentBlock |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Border
Annotates strokes (StrokeNode) that are a border instance, e.g., dashed top border
| Name | Value |
|---|---|
| Class | will:seg/0.3/Border |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
List
Annotates strokes (StrokeNode) that are associated with a list grouping items (ListItem) including bullets and list items.
| Name | Value |
|---|---|
| Class | will:seg/0.3/List |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/ContentBlock |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:seg/0.3/ListItem |
| Association Type | composition | |
| Cardinality | [0, 1] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Description | The dataType is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
ListItem
Annotates strokes (StrokeNode) that are associated with a list item (ListItem) describing the whole list item.
| Name | Value |
|---|---|
| Class | will:seg/0.3/ListItem |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| body | Data Type(s) | will:seg/0.3/ContentBlock |
| Description | Links the content (ContentBlock) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] (mandatory) | |
| Inverse Of | hasParent | |
| bullet | Data Type(s) | will:seg/0.3/ListItemBullet |
| Description | List the bullet of the list item (ListItemBullet) | |
| Association Type | composition | |
| Cardinality | [0, 1] (optional) | |
| Inverse Of | hasParent | |
| hasChild | Data Type(s) | |
| Association Type | composition | |
| Cardinality | [0, 0] overridden to [0, inf] (optional) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
ListItemBullet
Annotates strokes (StrokeNode) that are associated with a list item bullet (ListItemBullet).
| Name | Value |
|---|---|
| Class | will:seg/0.3/ListItemBullet |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) |
Annotation
Annotates strokes (StrokeNode) that are associated with a content annotation.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Annotation [abstract] |
| Defined In | will:seg/0.3 |
| Specializes | will:uim/1.1/StrokeGroupNode |
| Specialized By | will:seg/0.3/Marking,will:seg/0.3/Connector,will:seg/0.3/Correction |
Properties
| Property | Attribute | Value |
|---|---|---|
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Marking
Annotates strokes (StrokeNode) that are associated with a marking within a text, such as encircling, underlining, strike-through, or other.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Marking |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/Annotation |
Properties
| Property | Attribute | Value |
|---|---|---|
| annotates | Data Type(s) | will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode |
| Description | Strokes (StrokeNode) that are annotated by marking. | |
| Association Type | aggregation | |
| Cardinality | [1, inf] (mandatory) | |
| hasChild | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild | |
| markingType | Data Type(s) | @string |
| Description | Defines the marking type. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] (mandatory) |
Connector
Annotates strokes (StrokeNode) that are associated with a connector.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Connector |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/Annotation |
Properties
| Property | Attribute | Value |
|---|---|---|
| connectorType | Data Type(s) | @string |
| Description | Defines the connector type. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] (mandatory) | |
| connects | Data Type(s) | will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode |
| Description | StrokeNode(s) and StrokeGroupNode(s) that are connected by the connector. | |
| Association Type | aggregation | |
| Cardinality | [2, inf] (mandatory) (ordered) | |
| hasChild | Data Type(s) | |
| Association Type | aggregation | |
| Cardinality | [1, inf] overridden to [0, inf] (mandatory) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild |
Correction
Annotates strokes (StrokeNode) that are associated with a correction markup.
| Name | Value |
|---|---|
| Class | will:seg/0.3/Correction |
| Defined In | will:seg/0.3 |
| Specializes | will:seg/0.3/Annotation |
Properties
| Property | Attribute | Value |
|---|---|---|
| correctionType | Data Type(s) | @string |
| Description | Defines the correction type, such as overwrite, insertion, or other. | |
| Association Type | aggregation | |
| Cardinality | [1, 1] (mandatory) | |
| hasChild | Data Type(s) | will:uim/1.1/StrokeNode |
| Association Type | composition | |
| Cardinality | [0, inf] (optional) | |
| hasParent | Data Type(s) | will:uim/1.1/InkNode |
| Association Type | aggregation | |
| Cardinality | [1, 1] overridden to [0, 1] (mandatory) | |
| Inverse Of | hasChild | |
| modifier | Data Type(s) | will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode |
| Description | StrokeNode(s) and StrokeGroupNode(s) that are associated to the modifier strokes. | |
| Association Type | composition | |
| Cardinality | [0, inf] (optional) (ordered) | |
| source | Data Type(s) | will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode |
| Description | StrokeNode(s) and StrokeGroupNode(s) modified by the correction, the source. | |
| Association Type | aggregation | |
| Cardinality | [1, inf] (mandatory) (ordered) |
Schema Definition
{
"head": {
"uri": "will:seg/0.3",
"version": "0.3",
"description": "Universal Ink Model content type segmentation schema.",
"classUriTemplate": "will:seg/0.3/[class]",
"propertyUriTemplate": "will:seg/0.3/[class]#[property]",
"includes": [
{
"namespace": "u",
"schema": "will:uim/1.1"
}
]
},
"body": {
"extensions": {},
"classes": {
"will:seg/0.3/Root": {
"subclassOf": "will:uim/1.1/Root",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/ContentBlock,will:seg/0.3/Annotation",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Root of the ink content type segmentation schema."
},
"will:seg/0.3/ContentBlock": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasParent": {
"dataType": "will:uim/1.1/InkNode",
"minCardinality": 1,
"maxCardinality": 1,
"isFinal": false,
"inverseOf": "hasChild",
"@desc": "The `dataType` is can't be u:StrokeGroupNode or its specialization, because the u:StrokeGroupNode class requires exactly one parent, but the Root class is not allowed to have any."
},
"hasChild": {
"dataType": "",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": true,
"isFinal": false,
"@desc": "Abstract block for grouping content."
},
"will:seg/0.3/TextRegion": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/TextLine",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"isOrdered": true,
"@desc": "Contains multiple `TextLine`(s)."
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a region of text content, such as a paragraph."
},
"will:seg/0.3/TextLine": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/Word",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": true,
"@desc": "Links to a list of ordered `Word`(s)."
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates a group of strokes (`StrokeGroupNode`) that are defining a text line within a `TextRegion`."
},
"will:seg/0.3/Word": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasLanguage": {
"dataType": "@language",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Defines the language of the `Word`."
},
"hasContent": {
"dataType": "@i18n_string",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Defines the localized content."
},
"hasAltContent": {
"dataType": "@i18n_string",
"minCardinality": 0,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": true,
"@desc": "Defines the localized content of an alternative recognition result."
}
},
"isAbstract": true,
"isFinal": false,
"@desc": "An abstract word class."
},
"will:seg/0.3/WordOfStrokes": {
"subclassOf": "will:seg/0.3/Word",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": true
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are composing a word."
},
"will:seg/0.3/ExtendedTextRegion": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/Line,will:seg/0.3/ExpressionBlock,will:seg/0.3/Drawing",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"isOrdered": true
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a region which contains not only text content, but also drawings, math, etc.."
},
"will:seg/0.3/Line": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/Word,will:seg/0.3/ExpressionBlock,will:seg/0.3/Drawing",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": true
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a line of items that are assigning different content types `Word`(s), math `ExpressionBlock`(s), or `Drawing`(s)."
},
"will:seg/0.3/UnlabelledBlock": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/UnlabelledItemGroup,will:seg/0.3/UnlabelledItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Adding unlabeled atomic items to the block."
},
"categoryHint": {
"dataType": "@string",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a block of `UnlabelledItemGroup` and `UnlabelledItem`, which is used if none of the defined types matches stroke(s) can be grouped a within an `UnlabelledBlock`."
},
"will:seg/0.3/UnlabelledItemGroup": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/UnlabelledItemGroup,will:seg/0.3/UnlabelledItem",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a group of logical units, e.g., either a another group (`UnlabelledItemGroup`) are an atomic item (`UnlabelledItem`)."
},
"will:seg/0.3/UnlabelledItem": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) to an atomic `UnlabelledItem`."
},
"will:seg/0.3/Drawing": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/DrawingItemGroup,will:seg/0.3/DrawingItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a drawing which is grouping non-diagram sketches."
},
"will:seg/0.3/DrawingItemGroup": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/DrawingItemGroup,will:seg/0.3/DrawingItem,will:seg/0.3/TextRegion",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a logical entity (`DrawingItemGroup`) within a `Drawing`."
},
"will:seg/0.3/DrawingItem": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": true,
"@desc": "Annotates strokes (`StrokeNode`) that are associated a atomic entity (`DrawingItem`) within a `Drawing`."
},
"will:seg/0.3/ExpressionBlock": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {},
"isAbstract": true,
"isFinal": false,
"@desc": "Defines an abstract block of expressions."
},
"will:seg/0.3/GenericExpressionBlock": {
"subclassOf": "will:seg/0.3/ExpressionBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/GenericExpressionItemGroup,will:seg/0.3/GenericExpressionItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": true,
"isFinal": false,
"@desc": "Defines an abstract generic block of expressions."
},
"will:seg/0.3/GenericExpressionItemGroup": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/GenericExpressionItemGroup,will:seg/0.3/GenericExpressionItem",
"minCardinality": 0,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": true,
"isFinal": false,
"@desc": "Defines an abstract generic item group (`GenericExpressionItemGroup`) of an expression."
},
"will:seg/0.3/GenericExpressionItem": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": true,
"isFinal": false,
"@desc": "Defines an abstract generic atomic item (`GenericExpressionItem`) of expressions."
},
"will:seg/0.3/MathBlock": {
"subclassOf": "will:seg/0.3/GenericExpressionBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/MathItemGroup,will:seg/0.3/MathItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
},
"hasLatex": {
"dataType": "@latex",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "A latex expression representing the content of the `MathBlock`."
},
"hasMathML": {
"dataType": "@mathml",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "A MathML expression representing the content of the `MathBlock`."
},
"hasASCIIMath": {
"dataType": "@string",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "An ASCII Math expression representing the content of the `MathBlock`."
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a math block which groups math statements."
},
"will:seg/0.3/MathItemGroup": {
"subclassOf": "will:seg/0.3/GenericExpressionItemGroup",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/MathItemGroup,will:seg/0.3/MathItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
},
"hasOperandType": {
"dataType": "@string",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Reserved for debug purposes."
},
"hasOperandLabel": {
"dataType": "@string",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Reserved for debug purposes."
},
"isStructuralItem": {
"dataType": "@bool",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Reserved for debug purposes."
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a math item group (`MathItemGroup`), such as fenced-, indexed expressions."
},
"will:seg/0.3/MathItem": {
"subclassOf": "will:seg/0.3/GenericExpressionItem",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
},
"hasOperandType": {
"dataType": "@string",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Reserved for debug purposes."
},
"hasOperandLabel": {
"dataType": "@string",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Reserved for debug purposes."
},
"isStructuralItem": {
"dataType": "@bool",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Reserved for debug purposes."
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines an atomic math item (`MathItem`), such as number, symbols, operators, etc.."
},
"will:seg/0.3/ChemistryBlock": {
"subclassOf": "will:seg/0.3/GenericExpressionBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/ChemistryItemGroup,will:seg/0.3/ChemistryItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a block of a chemistry expression."
},
"will:seg/0.3/ChemistryItemGroup": {
"subclassOf": "will:seg/0.3/GenericExpressionItemGroup",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/ChemistryItemGroup,will:seg/0.3/ChemistryItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a chemistry item group (`ChemistryItemGroup`)."
},
"will:seg/0.3/ChemistryItem": {
"subclassOf": "will:seg/0.3/GenericExpressionItem",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines an atomic chemistry item (`ChemistryItem`)."
},
"will:seg/0.3/PhysicsBlock": {
"subclassOf": "will:seg/0.3/GenericExpressionBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/PhysicsItemGroup,will:seg/0.3/PhysicsItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a block of a physics expression."
},
"will:seg/0.3/PhysicsItemGroup": {
"subclassOf": "will:seg/0.3/GenericExpressionItemGroup",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/PhysicsItemGroup,will:seg/0.3/PhysicsItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a physics item group (`PhysicsItemGroup`)."
},
"will:seg/0.3/PhysicsItem": {
"subclassOf": "will:seg/0.3/GenericExpressionItem",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Describes an atomic physics item (`PhysicsItem`)."
},
"will:seg/0.3/ContentBlockOfStrokeNodes": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": true,
"isFinal": false,
"@desc": "Defines an abstract content block."
},
"will:seg/0.3/ChemicalStructure": {
"subclassOf": "will:seg/0.3/ContentBlockOfStrokeNodes",
"properties": {},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to a chemical structure."
},
"will:seg/0.3/Signature": {
"subclassOf": "will:seg/0.3/ContentBlockOfStrokeNodes",
"properties": {},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to a handwritten signature."
},
"will:seg/0.3/Garbage": {
"subclassOf": "will:seg/0.3/ContentBlockOfStrokeNodes",
"properties": {},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that cannot be assigned to any class (blank class)."
},
"will:seg/0.3/Unlabeled": {
"subclassOf": "will:seg/0.3/ContentBlockOfStrokeNodes",
"properties": {},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that not yet annotated."
},
"will:seg/0.3/Doodle": {
"subclassOf": "will:seg/0.3/ContentBlockOfStrokeNodes",
"properties": {},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are sketches which are neither technical diagram (`Diagram`) nor drawings (`Drawing`)."
},
"will:seg/0.3/Diagram": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/ContentBlock,will:seg/0.3/DiagramConnector,will:seg/0.3/DiagramPart",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Defines a block which is a technical diagram using basic shapes."
},
"will:seg/0.3/DiagramConnector": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are connectors which are describing arrows and lines connecting logical units."
},
"will:seg/0.3/DiagramPart": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": true,
"@desc": "Annotates strokes (`StrokeNode`) that are describing diagram parts which are logical units of a diagram."
},
"will:seg/0.3/Table": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/Border,will:seg/0.3/ContentBlock",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to handwritten tables."
},
"will:seg/0.3/Border": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are a border instance, e.g., dashed top border"
},
"will:seg/0.3/List": {
"subclassOf": "will:seg/0.3/ContentBlock",
"properties": {
"hasChild": {
"dataType": "will:seg/0.3/ListItem",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to a list grouping items (`ListItem`) including bullets and list items."
},
"will:seg/0.3/ListItem": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"bullet": {
"dataType": "will:seg/0.3/ListItemBullet",
"minCardinality": 0,
"maxCardinality": 1,
"isFinal": false,
"inverseOf": "hasParent",
"@desc": "List the bullet of the list item (`ListItemBullet`)"
},
"body": {
"dataType": "will:seg/0.3/ContentBlock",
"minCardinality": 1,
"maxCardinality": 1,
"isFinal": false,
"inverseOf": "hasParent",
"@desc": "Links the content (`ContentBlock`)"
},
"hasChild": {
"dataType": "",
"minCardinality": 0,
"maxCardinality": 0,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to a list item (`ListItem`) describing the whole list item."
},
"will:seg/0.3/ListItemBullet": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to a list item bullet (`ListItemBullet`)."
},
"will:seg/0.3/Annotation": {
"subclassOf": "will:uim/1.1/StrokeGroupNode",
"properties": {
"hasParent": {
"dataType": "will:uim/1.1/InkNode",
"minCardinality": 1,
"maxCardinality": 1,
"isFinal": false,
"inverseOf": "hasChild"
},
"hasChild": {
"dataType": "will:uim/1.1/StrokeNode",
"minCardinality": 0,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": true,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to a content annotation."
},
"will:seg/0.3/Marking": {
"subclassOf": "will:seg/0.3/Annotation",
"properties": {
"markingType": {
"dataType": "@string",
"minCardinality": 1,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Defines the marking type.",
"dataRange": [
"other,encircling,underlining,strikethrough"
]
},
"annotates": {
"dataType": "will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": false,
"@desc": "Strokes (`StrokeNode`) that are annotated by marking."
},
"hasChild": {
"dataType": "",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isAbstract": false,
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated to a marking of within a text, such as encircling, underlining, strike-through, or other."
},
"will:seg/0.3/Connector": {
"subclassOf": "will:seg/0.3/Annotation",
"properties": {
"connectorType": {
"dataType": "@string",
"minCardinality": 1,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Defines the connector type.",
"dataRange": [
"directed,undirected"
]
},
"connects": {
"dataType": "will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode",
"minCardinality": 2,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": true,
"@desc": "`StrokeNode`(s) and `StrokeGroupNode`(s) that are connected by the connector."
},
"hasChild": {
"dataType": "",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false
}
},
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated by a connector."
},
"will:seg/0.3/Correction": {
"subclassOf": "will:seg/0.3/Annotation",
"properties": {
"correctionType": {
"dataType": "@string",
"minCardinality": 1,
"maxCardinality": 1,
"isFinal": false,
"@desc": "Defines the correction type, such as overwrite, insertion, or other.",
"dataRange": [
"other,insertion,overwrite"
]
},
"source": {
"dataType": "will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode",
"minCardinality": 1,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": true,
"@desc": "`StrokeNode`(s) and `StrokeGroupNode`(s) modified by the correction, the source."
},
"modifier": {
"dataType": "will:uim/1.1/StrokeNode,will:uim/1.1/StrokeGroupNode",
"minCardinality": 0,
"maxCardinality": -1,
"isFinal": false,
"isOrdered": true,
"@desc": "`StrokeNode`(s) and `StrokeGroupNode`(s) that are associated to the modifier strokes."
}
},
"isFinal": false,
"@desc": "Annotates strokes (`StrokeNode`) that are associated by a correction markup."
}
}
}
}