Bug 506543 - Support for tracking changes in the generated documents.
Summary: Support for tracking changes in the generated documents.
Status: ASSIGNED
Alias: None
Product: Gendoc
Classification: Modeling
Component: UI (show other bugs)
Version: 0.6.0   Edit
Hardware: PC Windows 7
: P3 enhancement
Target Milestone: 0.5.1   Edit
Assignee: Antonio Campesino CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-10-26 04:03 EDT by Antonio Campesino CLA
Modified: 2017-06-26 02:41 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Antonio Campesino CLA 2016-10-26 04:03:24 EDT
In order to facilitate the review of the generated documents, it should be nice if a base document can be selected and once the document is generated, execute the document compare against this base document.

We have two approaches here.

1) Do the comparison in GenDoc. I don't think we have the resources and time to do it.
2) Use the build-in functionality in Microsoft Office(there is support for it, through a OLE interface), Open Office and LibreOffice (Not sure if it can be invoked headless)

About how to select the base document, I see this possibilities:

1) Select a local file.
2) Select a URL (HTTP / HTTPS) from where to download the base document.
3) Select a file using the Team support:
   3.1) For Git, we can select a Reference (HEAD, a commit, a branch, a Tag, ...)
   3.2) For other types (CVS or Subversion), I guess a TAG or a version will do it.

I am proposing to provide two new extension point in GenDoc:

1) One extension point to perform the comparison function based on the Document Type (DOCX, ODT, ...) and in the System Editor installed or configured in eclipse.
2) The other one to provide the different ways to select the base document.

All that should be taken in account by the GenDoc wizard and the standalone application (for that we will need to provide support for it, through command line parameters).
Comment 1 Tristan Faure CLA 2016-10-26 04:05:27 EDT
It is a very important feature indeed !
do you have experience of OLE function call ? I assume this feature would be available on windows system ?
Comment 2 Antonio Campesino CLA 2016-10-26 04:20:50 EDT
For Microsoft Office, I was looking how the System editor is launched, and it is possible to send parameters with the OLE request, so the document that is open it will be the merge of the new doc in the base doc with the deltas as changes(deletion, insertions and bar changes), and it should be for Windows, and I am almost sure there is a way to do it headless. 

About OpenOffice, No idea, it is not very active. They have the comparison functionality equivalent to the Microsoft office one... but I don't know if can be invoked headless.

Same for LibreOffice, here there is a way to get the engine in headless mode and execute some UNO (That is how the call the API for macros and so) calls... but I have not dig deeply enough to see if it is possible to launch the comparison function.

But before put some effort here, I would like to know what everybody thinking on that. Should we do it or not? And too what extend...
Comment 3 Emrah URHAN CLA 2017-06-22 09:38:29 EDT
Since Gendoc recreates the whole document in every time and being MS Office documents binary based XMLs, compare result will be whole document so comparing documents won't be convenient. 
My opinion is that it is better comparing models, generating change information from model changes than comparing office documents.
Comment 4 Antonio Campesino CLA 2017-06-26 02:41:53 EDT
(In reply to Emrah URHAN from comment #3)
> Since Gendoc recreates the whole document in every time and being MS Office
> documents binary based XMLs, compare result will be whole document so
> comparing documents won't be convenient. 
> My opinion is that it is better comparing models, generating change
> information from model changes than comparing office documents.

Well, Microsoft Word has a build-in feature that compare two versions of the documents and generate the track changing marks in the document, so it will be the best option for Document reviews. The idea is not to review a model, it is provide assistance for reviewing the Document, an normally the best way is by track changes marks.