-
Notifications
You must be signed in to change notification settings - Fork 1
suppression des xslt dans schematrons/profils #4
Comments
C’est noté, comme nous pouvons proposer la récupération dynamique de ces contenus sur les différents sites déployés, une génération via une gui risque d’être compliquer. On va essayer de contourner cette génération manuelle . Une autre solution serait que vous les générez lors de vos livraisons :) . Cordialement. |
+1 pour une génération automatique dans la CI, ou à minima une doc technique pour les générer automatiquement ? J'imagine que c'est possible de bypass l'UI avec un script java ? |
Bonjour, Exemple : |
Je comprends bien qu’il est possible de valider un cda via script un schematron. À l’heure actuelle, nous configurons nos clients déjà déployées de la manière suivante : devbox-sante.dmp.cda.validator.resourceName: https://github.com/ansforge/TestContenuCDA/releases/download/v2.40/testContenuCDA-2.40.zip Le fait de ne plus avoir ces feuilles de styles dans le livrable, nous bloque sur cette version 2.40 pour nos clients déjà déployés. Pour contourner le problème, il faudrait que nous retravaillons votre livrable et que nous le redéployons quelque part pour chacune de vos versions. Apparemment nous ne sommes pas les seuls. Ne serait-il pas plus simple que vous intégriez ces feuilles de styles dans vos releases ? Par avance merci, bien cordialement, |
Bonjour, Il n'est pas simple pour nous de les garder à jour, étant donné que des mises à jour sont régulièrement faites sur les schematrons, il faudra à chaque mise à jour regénérer tous les fichiers xslt du testContenuCDA car toute entrée/section peut être utilisée sur plusieurs des volets que nous utilisons. Nous ne pouvons pas toujours les maintenir à jour et n'avons pas les ressources suffisantes pour aller les générer à chaque modification sur des schematrons. Cordialement, |
Je comprends que vous ne devez pas les mettre à jour tout le temps et ça me paraît complètement normal. Je ne suis pas expert des actions github (https://github.com/features/actions) mais ça doit être possible d’automatiser. |
Hello #!/usr/bin/env bash
declare -r cda_git_folder="schematrontmp"
declare -r schematrons_assets="schematron-assets"
declare -r cda_git_url="https://github.com/ansforge/TestContenuCDA.git"
echo "Cloning TestContenuCDA"
echo "..."
rm -rf $cda_git_folder
mkdir $cda_git_folder
git clone $cda_git_url $cda_git_folder
cd "$cda_git_folder/schematrons/moteur"
schematrons=(
"../profils/IHE.sch"
"../profils/terminologies/schematron/terminologie.sch"
"../profils/CI-SIS_ModelesDeContenusCDA.sch"
"../profils/IHE_XDS-SD.sch"
"../profils/CI-SIS_StructurationMinimale.sch"
"../profils/CI-SIS_Modeles_ANS.sch"
$(ls ../*.sch)
)
for schema in "${schematrons[@]}"
do
rm -rf colle.sch concret.sch
echo "--------"
echo "Compilation du fichier $schema"
echo "--------"
echo "1) Pre-compilation du schematron : collage des include"
java -cp saxon9he.jar net.sf.saxon.Transform -s:$schema -xsl:iso_dsdl_include.xsl -o:colle.sch
echo "2) Pre-compilation du schematron : expansion des abstract"
java -cp saxon9he.jar net.sf.saxon.Transform -s:colle.sch -xsl:iso_abstract_expand.xsl -o:concret.sch
schPathToXsl="${schema%".sch"}.xsl"
echo "3) Compilation en xslt2 : production de $schPathToXsl"
java -cp saxon9he.jar net.sf.saxon.Transform -s:concret.sch -xsl:iso_svrl_for_xslt2.xsl -o:$schPathToXsl
echo ""
done
echo "Copying schematron assets"
echo "..."
cd ../../..
rm -rf $schematrons_assets
mkdir -p $schematrons_assets/schematrons
cp -R $cda_git_folder/schematrons $schematrons_assets
mkdir -p $schematrons_assets/infrastructure
cp -R $cda_git_folder/infrastructure $schematrons_assets
mkdir -p $schematrons_assets/jeuxDeValeurs
cp -R $cda_git_folder/jeuxDeValeurs $schematrons_assets
echo "Cleaning schematron assets"
echo "..."
find $schematrons_assets -name "*.sch" -type f -delete
find $schematrons_assets -name "*.docx" -type f -delete
find $schematrons_assets -name "*.exe" -type f -delete
find $schematrons_assets -name "*.bat" -type f -delete
find $schematrons_assets -name "*.java" -type f -delete
find $schematrons_assets -name "*.class" -type f -delete
find $schematrons_assets -name "*.docbook" -type f -delete
find $schematrons_assets -name "*.fo" -type f -delete
find $schematrons_assets -name "*.txt" -type f -delete
find $schematrons_assets/schematrons/moteur -name "*.xsl" -type f -delete
rm -rf $schematrons_assets/schematrons/abstract
rm -rf $schematrons_assets/schematrons/include
rm -rf $schematrons_assets/schematrons/profils/terminologies/programme
rm -rf $schematrons_assets/schematrons/rapports
rm -rf $schematrons_assets/schematrons/moteur/TCC-GUI
rm -rf $schematrons_assets/schematrons/moteur/tmp
rm -rf $schematrons_assets/schematrons/moteur/xsdvalidator-1.2.jar
rm -rf $cda_git_folder @nmahraz Si vous pouviez me confirmer que nous ne supprimons pas de fichier essentiel pour faire tourner le XSD validator et le XSL validateur. Ca fonctionne très bien comme ça, mais j'aimerais votre avis. @laurentforet Vous pouvez utiliser |
@blephy super ! Ça marche nickel pour moi, il me reste juste un test sur les bio d’exemples qui ne passent plus mais ça doit être de mon côté. Concernant l’action sur une pull-request,si je comprends bien, ne peut pas s’appliquer pour nous car nous n’utilisons pas github et ça ne résoudrait le problème que pour les phases de build de nos applications. @nmahraz l’execution du script fourni par @blephy sur une github action tag serait topissime. |
Bonjour, @blephy En lisant votre script, j'ai l'impression que c'est bon, il n'y a pas de suppression de fichiers essentiels. |
Bonjour @nmahraz ,
Je constate qu’avec le commit fb706dc vous supprimez les feuilles de styles xslt permettant la validation des schematron par processeur xsl.
C’est apparemment du code généré et qu’elles ne soient pas dans les sources n’est pas génant.
Par contre dans votre release 2.41, (https://github.com/ansforge/TestContenuCDA/releases/tag/v2.41) ces feuilles de style ne sont plus présentes également dans le livrable. Or, nous nous appuyons dessus pour gérer la validation des documents CDA dans notre composant DevBox-Santé DMP EAI :
Pour supporter les versions à partir de la 2.41 :
Cordialement,
The text was updated successfully, but these errors were encountered: