TMT Collaborator Migration
Â
Make a branch of MMS version
Disable MBEE in Project Options
delete URLS in MBEE Project Options
Clone document View Hierarchies to make there the changes for collaborator and preserve the MBEE ones.
Change Type of MDK View Diagram to Collaborator View Diagram (it will load Cameo collaborator profile)
Â
Find all documents of MDK <<Document>> type in the cloned package
Â
Note there are two "Document". Pick the "MDK" one.
Â
Refactor it to View and then to Cameo Collaborator Document
Â
When trying too publish Collaborator documents, you should see the ones you refactored:
Â
Choose a name of the document based on this template - typically the same name:
Â
Â
One the collaborator webapp you'll see nw the document:
Â
Change the specification of the document to have a VE like layout and re-publish:
Â
Â
Add Collaborator libraries and templates in project usages:
Â
For views with exposed diagrams, make them conform to a new ViewPoint "Dump Diagram"
Â
Â
Switch to "Document View" (not Model View) in Collaborator Web top right menu.
Â
Export document as PDF
Â
Whole document PDF generation fails
Â
Procedure:
add paragraphs on web, commit on web
delete view documentation in CSM
refactor old <<Expose>> with more general SysML native <<expose>>
conform to "Dump Diagram" viewpoint for any view using <<expose>>
delete any old TMT conform relationship to dump images
commit model in CSM
publish document
Â
ViewPoint methods have to be migrated manually as the docgen stereotypes are similar in Cameo Collaborator but IDs and properties deviate.
So for every action you need to:
apply the corresponding Cameo stereotype and unapply the OpenMBEE docgen stereotype
Update the tag value accordingly. There is not a straightforward 1:1 mapping
Â
DDD throws some OCL errors when publishing the document:
[2023.10.27::16:09:02] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.appliedStereotypeInstance.slot->select(x|x.definingFeature.name = 'propertyPath' and x.value.oclAsType(ElementValue).element->exists(y|y.oclAsType(Property).type.name = 'Optical Bench')).value.oclAsType(ElementValue).element->select(z|z.oclAsType(Property).type.oclAsType(NamedElement).name |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.appliedStereotypeInstance.slot->select(x|x.definingFeature.name = 'propertyPath' and x.value.oclAsType(ElementValue).element->exists(y|y.oclAsType(Property).type.name = 'Controller Rack')).value.oclAsType(ElementValue).element->select(z|z.oclAsType(Property).type.oclAsType(NamedElement).name |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.role.type.oclAsType(Class).member->select(y|y.appliedStereotypeInstance.classifier->any(x|x.name = 'FlowProperty')->size() |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.appliedStereotypeInstance.slot->select(x|x.definingFeature.name = 'propertyPath' and x.value.oclAsType(ElementValue).element->exists(y|y.oclAsType(Property).type.name = 'Optical Bench')).value.oclAsType(ElementValue).element->select(z|z.oclAsType(Property).type.oclAsType(NamedElement).name |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.appliedStereotypeInstance.slot->select(x|x.definingFeature.name = 'propertyPath' and x.value.oclAsType(ElementValue).element->exists(y|y.oclAsType(Property).type.name = 'Controller Rack')).value.oclAsType(ElementValue).element->select(z|z.oclAsType(Property).type.oclAsType(NamedElement).name |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.role.type.oclAsType(Class).member->select(y|y.appliedStereotypeInstance.classifier->any(x|x.name = 'FlowProperty')->size() |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.appliedStereotypeInstance.slot->select(x|x.definingFeature.name = 'propertyPath' and x.value.oclAsType(ElementValue).element->exists(y|y.oclAsType(Property).type.name = 'Optical Bench')).value.oclAsType(ElementValue).element->select(z|z.oclAsType(Property).type.oclAsType(NamedElement).name |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.appliedStereotypeInstance.slot->select(x|x.definingFeature.name = 'propertyPath' and x.value.oclAsType(ElementValue).element->exists(y|y.oclAsType(Property).type.name = 'Controller Rack')).value.oclAsType(ElementValue).element->select(z|z.oclAsType(Property).type.oclAsType(NamedElement).name |
[2023.10.27::16:09:03] | ERR: Unrecognized variable: (appliedStereotypeInstance) for OCL query "end.role.type.oclAsType(Class).member->select(y|y.appliedStereotypeInstance.classifier->any(x|x.name = 'FlowProperty')->size() |
Â
Notes
The findings below have been reported here to DS/NoMagic:
Â
From Collaborator Resources WebApp I can't open a document in a new tab - I need to open and then copy/paste the link into a new tab
No search available when selecting an element to transclude - need to navigate the whole tree
After every switch to edit mode and saving, I have to go into edit mode again to add a new paragraph - the edit mode should be on until it's turned off and not depend on save
expand/collapse all option for view hierarchy in document/model view
no numbering for views - how can I get that?
no numbering of exposed diagrams as figures - how can I get that?
no last modified information about paragraphs
no history of paragraph and section elements
when clicking on a transclusion I get an error, instead I should get information about that element like in OpenMBEE VE with the transclusion spec pane.
Â
Â
Â
10) when adding paragraphs to a sub document and then publishing the sub document, the paragraphs are not showing.
In this example I published TMT-SE and added paragraphs in the TMT Observation Workflow.
Then I published TMT Observation workflow but the paragraphs exist only in the TMT-SE context.
How can I make them available in the TMT Observation Workflow?
paragraphs/sections are stored in the published document and not in the template. How can I re-use them in other documents where I use the same views from another template?
11) Documentation of views is displayed on collaborator but cannot be edited
12) no error/warning/log when viewpoint method doesn't work
13) no obvious Math-Tex support for formulas in Editor
14) when cross-referencing to another view, it should be possible to show the number of that view as it will appear in the document.
15) <<expose>> works only of the native sysml one but not with any specialization of it
16) If you publish a new document (or make a mistake with a typo which is very easy), how do can you re-use the paragraphs you created for a previous publication?
17) How are documents handled that are published from branches? They seem to end up in the same resource page, indistinguishable from the trunk
18) When publishing, the document name field should allow to select already existing documents. Now you have to retype every time which is very very annoying when publishing many different documents.
Â
19) There should be a mechanism just to re-publish a document, based on the previously selected template.
20) With hundreds of documents the resources page becomes quickly very crowded even with categories and difficult to navigate. There needs to be dashboard, that allows projects and different groups on a project organize the different documents and also have a cover page that provides some meta information about that document, such as authors, version, release date, status (draft, released), short description of purpose.
21) the drop down menu to select a template won't scale for 100s of documents.
22) There should be a context menu for documents to publish on right-click. The menu navigation is clumsy
23) diagram info shows up sometimes even when not displayed on the diagram in CSM
24) it's unclear how the versions for documents increase. Publishing doesn't seem to affect it. I also added a lot of paragraphs and the version doesn't change either.
25) references to views do not resolve properly in the exported HTML version, they are just mdel:// links. So I cannot navigate within the document
{}