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."
}
}
}
}