Repository navigation
Conversation
KerML 8.3.4.5.3 requires two related features of a concrete connector and 8.3.4.5.2 exactly two of any binding connector. The rules skipped a connector with no ends. A message has no ends and is always abstract (SysML 8.2.2.16, 7.16.2), but was lowered as concrete, so the wider rule needs the flag: the full form gets it for the 40 messages of the corpus. The opensysml fixture k49 gains the finding on its abstract binding with no ends. A typing test wrote an end-less connection as a shorthand; it is abstract now.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #27.
validateConnectorRelatedFeaturesnow reports a concrete connector with noends, and
validateBindingConnectorIsBinarya binding connector with noends, abstract or not
(KerML 1.0, 8.3.4.5.3,
8.3.4.5.2). A
messageis lowered with
isAbstract: true(SysML 2.0, 8.2.2.16,
7.16.2). Both
belong together: a message has no ends, so the wider rule alone would flag
every message.
How to test
Look closely at
isAbstractfix, 8messages in the training material, Annex A and the interaction examples
would be flagged.
FlowUsage isAbstractrow: 40 ofthe 138 corpus
FlowUsages are messages.negative/semantic/k49-binding-connector-with-three-ends.kermlgains afinding on its
abstract binding b2;, which the fixture marks as invalid.tests/check.rsusedconnection x : I;as a typing shorthand. It isabstract connection x : I;now, so the test keeps its intent: no findingat all.
assoc R;) are left out, as the issue explains.CHANGELOG.mdentry is under a newUnreleasedheading. Move or dropit as you prefer.