Bug 486722 - [qvtr2qvtc] Make it useable
Summary: [qvtr2qvtc] Make it useable
Status: NEW
Alias: None
Product: QVTd
Classification: Modeling
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows NT
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 509858
Blocks: 515236
  Show dependency tree
 
Reported: 2016-01-28 09:12 EST by Ed Willink CLA
Modified: 2017-04-13 05:07 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ed Willink CLA 2016-01-28 09:12:32 EST
QVTr2QVTc is nominally working. There is only one test, which passes, but has invalid QVTc; see Bug 486636.
Comment 1 Ed Willink CLA 2016-03-26 12:39:19 EDT
UML2RDBMS in QVTc fixes pushed to master for M7.

Just QVTr2QVTc to go.
Comment 2 Ed Willink CLA 2016-08-11 04:54:09 EDT
A new design issue perhaps aggravated by multi-rooted domains. It causes the HierarchicalStateMachine2FlatStateMachine to fail with orphans for multiple states.

The synthesized trace has sensible forward properties and implicit opposites which currently default to unit multiplicity. Unit multiplicity is often wrong.

We must assume Bags unless we can prove unique/ordered/unit.

Unit is probably only true at traced roots of mappings with a single root in each of two domains. The unit can occasionally be propagated to the single parent / single child where containment guarantees unity.

unique seems hard to determine. What guarantees that a traced non-root reference in one pattern cannot also be the same traced non-root reference in another (unless we are following 1:1 containment relationships)?

ordered seems even harder. The root-variables might be ordered, but does that impose an ordering on the non-root traces?