ErwinKomen / RU-passim

0 stars 0 forks source link

Stemmatology: section within MyPassim #691

Closed ErwinKomen closed 1 year ago

ErwinKomen commented 1 year ago

Overflow from issue #664

  1. In “My PASSIM”, similarly to the “Dynamic Comparative table”, there should be a new section, the “Stemmatizer” (at first, available only for the members of the project).
    1. In this section, similarly to the “Dynamic Comparative table”, the user should be able to:
      1. Have access to their “Stemmatological research set”;
      2. Rename or edit it by adding additional transcriptions/editions;
      3. Once a “Stemmatological research set” is created, the user should be able to launch Roelli’s software by pressing the “Analyse” button. This will initiate the process described in this brief user manual.
        1. This command will automatically group all the texts from the “Stemmatological research set” into a single .txt file, as described in the brief manual and shown in the sample input file;
        2. Launch Roelli’s Perl script and output a list of Leitfehler;
        3. With phylip, produce an unoriented stemma which should be downloadable.
        4. The user should be able to edit the list of Leitfehler generated by the script (delete or add Leitfehler) but also augment their weight of Leitfehler and re-run the script with modified parameters [Samples of all the mentioned files are available in this folder].
        5. All the produced files should be downloadable.
        6. As in the case of the DCT, it would be helpful if all the steps were tracked.
ErwinKomen commented 1 year ago

Okay, added this section to MyPassim. The actual analysis still needs to be implemented. And I also need to have the code for that!

ErwinKomen commented 1 year ago

What is still needed here is the code that wraps the stemmatology analysis. That is to say:

  1. The user presses "analyze", then some code is called,
  2. That code will ultimately execute the analysis (see #665, #666, #667 ),
  3. then the analysis results are fetched by that code
  4. then the results are presented to the user (issue #668 )
  5. and the results are also shown in a visual way (issue #669).
  6. The user should then also be able to download the results (according to issue #670 ).

So what is needed for the wrapper is first of all step 1. Then while the analysis runs, the user should be kept up to date with its status. THe status might be: "running", "error" or "finished". Each of these situations needs the proper treatment.

The process separation could be done the same way that Synchronization is done with Zotero. That would mean:

  1. When the user presses "analyze", an HTML page (similar to syncpassim.html) opens for that stemmatology research set, and the url sync_start is called (from Javascript upon finishing loading the page) with synctype = stemma
ErwinKomen commented 1 year ago

Well, we need a slightly different approach. At any time, only one person may be working with a stemmaset (well, stemmasets are restricted to persons anyway). SO it would be better to have a status field inside the StemmaSet, and monitor that status.

ErwinKomen commented 1 year ago

Okay, done that. Works