Atlas · change · Plate 05 of 16
change
Change
Diagram view views/Changes.lml composing
13 LML includes
and 13 associations.
Model definitions
Change¶
classmodels/change/Change.lml
Specification of an update action to be performed incrementally on an element within a BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+target |
ReferenceToIdElement | 1 | The element that this action should be applied to. |
+identifier |
UniqueIdentifier | 1 | A unique identifier of this change. |
+parentIdentifier |
UniqueIdentifier | 0..1 | One or more unique identifiers of _Change_ objects, that this change is supposed to follow after. |
+contribMetadata |
ContributionElementMetadata | 0..* | Metadata of the contributor responsible for the action. |
ChangeSet¶
classmodels/change/ChangeSet.lml
A collection of _Change_ data, specifying the document they should be applied to.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+changes |
Change | 0..* | The set of _Change_ data. |
+documentIdentifier |
UniqueIdentifier | 1 | The unique identifier that identifies the BasicDocument. |
UniqueIdentifier¶
classmodels/change/UniqueIdentifier.lml
Identifier used to uniquely identify a BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+value |
String
|
1 | A string that uniquely identifies a BasicDocument. |
NodeChange¶
classmodels/change/NodeChange.lml
Possible actions that involve modification of data elements at the node level within a BasicDocument. Add/remove node; Move node.
ContentChange¶
classmodels/change/ContentChange.lml
Possible actions that involve modification of content within a BasicDocument data element. Add text; Delete text; Modify text.
ContentModify¶
classmodels/change/ContentModify.lml
Container for a multiple _ContentChangeAction_ data
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+actions |
ContentChangeAction | 1..* | One or more `ContentChangeAction` data. |
NodeInsert¶
classmodels/change/NodeInsert.lml
Specification of the insertion of a data node in a BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+content |
BasicElement | 1 | A data element conforming to _BasicElement_ to be inserted into the specified BasicDocument. |
NodeDelete¶
classmodels/change/NodeDelete.lml
Specification of the deletion of a data node in a BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+hashValue |
String
|
1 | A string that contains the hash value of the node to be deleted for verification purposes. |
NodeMove¶
classmodels/change/NodeMove.lml
Specification of moving a particular node in a BasicDocument to another location within the same BasicDocument.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+positionOld |
ReferenceToIdElement | 1 | Indicates the position of the node's parent. While this seems redundant to the `target` attribute inherited from the _Change_ model, it is useful for verifying that the location has not changed. |
+positionNew |
ReferenceToIdElement | 1 | Indicates the new parent or sibling of the node. |
AttributeModify¶
classmodels/change/AttributeModify.lml
A container for a multiple _AttributeChangeAction_ data. Add attribute; Remove attribute; Modify attribute.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+actions |
AttributeChangeAction | 1..* | One or more `AttributeChangeAction` data. |
ContentChangeAction¶
classmodels/change/ContentChangeAction.lml
The actual content changes that applies to the specified portion of textual content. This is used both by the _ContentModify_ and _AttributeModify_ models as their content are treated as pure text.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+action |
ContentAction | 1 | Indication that text is to be inserted or deleted from the content. |
+from |
Integer
|
1 | An `Integer` that specifies the beginning cursor position of a textual change. |
+to |
Integer
|
1 | An `Integer` that specifies the ending cursor position of a textual change. |
+text |
String
|
0..1 | In the case of an `insert`, a `String` to be inserted or replace the substring referred to by `from` to `to`. |
+length |
Integer
|
0..1 | In the case of a `delete`, an `Integer` to indicate how many characters to be removed from the `from` position. In the case of an `insert`, an `Integer` to indicate the length of the `text` attribute. |
AttributeChangeAction¶
classmodels/change/AttributeChangeAction.lml
Possible actions that involve modification of an attribute within a BasicDocument data element.
| Attribute | Type | Cardinality | Definition |
|---|---|---|---|
+attributeId |
String
|
1 | A `String` that identifies the attribute where the attribute change should apply to. |
ContentAction¶
enummodels/change/ContentAction.lml
definitioninsertdefinitiondeletedefinition