Skip to content

ST6RI-929 KerML 1.1 Ballot #2 - Model Library#757

Open
seidewitz wants to merge 3 commits into
masterfrom
ST6RI-929
Open

ST6RI-929 KerML 1.1 Ballot #2 - Model Library#757
seidewitz wants to merge 3 commits into
masterfrom
ST6RI-929

Conversation

@seidewitz

@seidewitz seidewitz commented May 22, 2026

Copy link
Copy Markdown
Member

This PR updates the KerML library model files Transfer::isInstant and Collections per the resolutions to the following issues approved on KerML 1.1 RTF Ballot 2. Note that both issues primarily require updates to documentation, except as noted below.

  • KERML11-9 Typo in documentation of Transfer::isInstant
  • KERML11-144 Discrepancy between documentation of Collections library in spec and textual notation file
    Note. The resolution to this issue includes two functional changes to Collections.kerml:
    1. Added an invariant to Map.
    2. Added specialization of OrderCollection to OrderedMap.

The resolution to the following issue also approved on Ballot 2 was already proactively implemented in PR #660 (ST6RI-859).

  • KERML11-2 Occurrences::surroundedByOccurrences::surroundingSpace should not be an end feature

@seidewitz seidewitz added this to the 2026-05 milestone May 22, 2026
@seidewitz seidewitz self-assigned this May 22, 2026

@vincemolnar vincemolnar left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The diffs demonstrate the correct implementation of the resolution. My comments all refer to problems that should have been addressed in the resolution - feel free to ignore them if they are out of scope.

feature elements[0..*] ordered nonunique :>> Collection::elements;
doc
/*
* An OrderedCollection is a Collection of which the elements are ordered and not necessarily unique.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"of which the elements" sounds a bit awkward to me - changing it to "whose elements" or "in which elements" would make it read more natural. Feel free to ignore if it cannot be changed at this point. I will note other occurrences, though.

}
doc
/*
* A UniqueCollection is a Collection of which the elements are unique and not necessarily ordered.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same wording ("of which")

*/

feature elements[0..*] :>> Collection::elements {
doc

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was not a doc comment, and it does not look like documentation. Are you sure it shouldn't stay a simple comment?


doc
/*
* An Array is a fixed size, multi-dimensional Collection of which the elements are nonunique and ordered.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"of which"

* Feature elements is a flattened sequence of all elements of an Array and can be accessed by a tuple of indices.
* The number of indices is equal to rank. The elements are packed according to row-major convention.
*
* The elements of an Array can be assessed by a tuple of indices. The number of indices in such tuple is equal to rank.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"assessed" should probably be "accessed", but this was probably not reported in the issue.

datatype List :> OrderedCollection {
doc
/*
* A List is a variable-size Collection of which the elements are nonunique and ordered.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"of which"

*/

feature elements[0..*] ordered :>> OrderedCollection::elements, UniqueCollection::elements {
doc

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was not a doc comment before

*/

feature elements: KeyValuePair[0..*] :>> Collection::elements {
doc

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was not a doc comment before

/* Note: Redefinition of `elements` is unique by default. */
}
feature elements: KeyValuePair[0..*] ordered :>> Map::elements, OrderedCollection::elements {
doc

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was not a doc comment before

doc
/*
* A KeyValuePair is a DataValue that represents a pair of a key and an associated val,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't "val" be "value" in the documentation?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants