Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Questionnaire composition - Handle objects with same technical ID #660

Open
romaintailhurat opened this issue Mar 2, 2023 · 11 comments
Open
Assignees
Labels
Type: Bug Something isn't working

Comments

@romaintailhurat
Copy link
Collaborator

🇫🇷

Remonté par les premiers essais sur l'environnement de beta test :

  • sur ce questionnaire, deux refs à deux modules distincts du TCM ne permettent pas la génération
    • et ce pour toutes les cibles de génération
  • deux types d'erreur différentes visibles :
    • lorsque l'on produit le DDI, on obtient le message d'erreur EnoGeneration error : An error was occured during the POGUES_XML_INSERT_FILTER_LOOP_INTO_QUESTION_TREE transformation. A sequence of more than one item is not allowed as the first argument of fn:number() (@position="247", @position="247")
    • dans le document de spécification EnoGeneration error : An error has occurred during the DDI_MULTIMODAL_SELECTION transformation. org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog. : Error in :/xslt/pre-processing/ddi/multimodal-selection.xsl null
  • ce n'est pas un problème général, joindre plusieurs refs est possible (comme recetté en DV), ce que prouve le questionnaire suivant.
@romaintailhurat
Copy link
Collaborator Author

Cause non établie, mais on dispose d'une solution de correction globale, en cours de mise en place côté back-office.

@romaintailhurat romaintailhurat assigned nsenave and unassigned BulotF Mar 7, 2023
nsenave added a commit to InseeFr/Pogues-Back-Office that referenced this issue Mar 15, 2023
@romaintailhurat
Copy link
Collaborator Author

@nsenave an instance of the same technical id problem, isn't it?

@romaintailhurat romaintailhurat changed the title Questionnaire composition - Generation impossible with two TCM modules referenced Questionnaire composition - Handle objects with same technical ID Apr 12, 2023
@romaintailhurat
Copy link
Collaborator Author

Bug identified: we can't generate when two objects share the same technical ID. It only happens with fringe cases, when importing objects (like sequences) that have been duplicated.

@nsenave
Copy link

nsenave commented Apr 27, 2023

(Started working on it. To be finished after work on other issues with higher priority.)

@romaintailhurat
Copy link
Collaborator Author

Issue should probably be transfered to Pogues-Back-Office repo (i can't do that due to lack of a proper permission).

@laurentC35
Copy link
Contributor

laurentC35 commented Sep 29, 2023

Waiting for EnoV3

Linked with InseeFr/Concevoir-Workplace#43

@romaintailhurat
Copy link
Collaborator Author

Eno V3 is here, should we resume working on that @nsenave @laurentC35 ? Its back-office work.

@nsenave
Copy link

nsenave commented Mar 20, 2024

@romaintailhurat We need a bit more specification on this I think, do we want:

  • raise an exception if duplicate identifiers are detected: user saves the questionnaire in UI -> backend checks identifiers -> if duplicates -> throw an exception with a detailed error message -> the error message is prompted in UI.

or

  • if duplicates, change the identifier of concerned elements

The latter one looks better on a user perspective, yet it seems trickier, especially in the composition case (might result in modifying identifiers of external questionnaires that might cause incoherences between Pogues questionnaires and for instance DDI that might not be updated)

@romaintailhurat
Copy link
Collaborator Author

First, we need to address the problem at its core, ie when duplicating a questionnaire, should the technical id of every objects stays the same? From a metadata management / DDI perspective, i think they should not, but it could challenged (moreover our ID management are not perfect, see https://github.com/InseeFr/Concevoir-Workplace/issues/78)

So, with the current situation, ie possibly having identical IDs when composing, the best way would be to modify the imported ID (your 2nd solution) not by modifying the referenced questionnaire ID but only at the composed questionnaire.

@nsenave
Copy link

nsenave commented Mar 20, 2024

Ok, fair enough!

What about the case if duplicates exist within a single questionnaire? do we:

  • consider it impossible (-> the backend doesn't check)
  • make a check in backend with a warning message sent to UI if this happens?
  • modify concerned ids?

@AnneHuSKa
Copy link

@JulienCarmona @lailabent : intéressant à remonter

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants