Transformation vers corpusHM

Version 11 (Severine Gedzelman, 27/09/2017 11:46)

1 1 Severine Gedzelman
h1. Transformation vers un corpus parallèle (alignement HM)
2 1 Severine Gedzelman
3 2 Severine Gedzelman
Le document fourni par Uetani est un fichier word, organisé avec des tableaux à 3 colonnes :
4 7 Severine Gedzelman
** col 1 : nom du segment philologique (et notes diverses, dont certains acronymes sont à élucider pour moi)
5 7 Severine Gedzelman
** col 2 : version italienne
6 7 Severine Gedzelman
** col 3 : version française correspondante
7 2 Severine Gedzelman
8 2 Severine Gedzelman
L'enregistrement du .doc vers .odt est obligatoire chez moi, car je ne possède pas de logiciel Microsoft. Pour obtenir un corpus en XML-TEI, on a besoin de passer par deux scripts :
9 7 Severine Gedzelman
# le premier est fourni par le service "OXGarage":http://www.tei-c.org/oxgarage/ (transformateur en ligne pour la communauté TEI principalement) 
10 7 Severine Gedzelman
# le deuxième a été écrit en python par moi-même dont les détails sont après.
11 2 Severine Gedzelman
12 1 Severine Gedzelman
h2. ODT vers XML-TEI
13 1 Severine Gedzelman
14 2 Severine Gedzelman
* Le document de départ : attachment:CorpusSANAZIFR_Uetani_2017.odt 
15 2 Severine Gedzelman
* Le document de sortie : attachment:CorpusSANAZIFR_Uetani_2017.xml
16 2 Severine Gedzelman
17 6 Severine Gedzelman
Les choix ont été les suivants sur "OxGarage":http://www.tei-c.org/oxgarage/ : OpenOffice texte (odt) en entrée, TEI P5 XML Document en sortie
18 2 Severine Gedzelman
19 2 Severine Gedzelman
!{width:80%}OXGarage_convertODT-2-TEI.png!
20 2 Severine Gedzelman
21 8 Severine Gedzelman
Les tableaux sont restitués avec également les éléments de forme et les notes de bas de page, un exemple  de la dernière ligne (<row>) du dernier tableau (<table>) :
22 5 Severine Gedzelman
23 5 Severine Gedzelman
<pre><code> 
24 5 Severine Gedzelman
       <table rend="frame" xml:id="Tableau4">
25 5 Severine Gedzelman
                <row>
26 5 Severine Gedzelman
                    <cell>Ecloga II, vv. 1-12</cell>
27 5 Severine Gedzelman
                    <cell>....</cell>
28 5 Severine Gedzelman
                    <cell>....</cell>
29 5 Severine Gedzelman
               </row>
30 5 Severine Gedzelman
              ...
31 5 Severine Gedzelman
      </table>
32 5 Severine Gedzelman
      <table>
33 5 Severine Gedzelman
              ...
34 5 Severine Gedzelman
               <row>
35 5 Severine Gedzelman
                    <cell>A la Sampogna, 19-20</cell>
36 5 Severine Gedzelman
                    <cell rend="justify"><hi rend="bold italic">Benché</hi><hi rend="italic"> mi
37 5 Severine Gedzelman
                            pare esser certo che tal fatica a tenon fia necessaria, se tu tra le
38 5 Severine Gedzelman
                            selve, sí come io ti impongo, secretamente e senza pompe star ti vorrai.
39 5 Severine Gedzelman
                            Con ciò sia cosa che chi non sale, non teme di cadere ; e chi cade nel
40 5 Severine Gedzelman
                            piano, il che rare volte adiviene, con picciolo agiuto</hi><hi
41 5 Severine Gedzelman
                            rend="italic"><note xml:id="ftn529" place="foot" n="529">
42 5 Severine Gedzelman
                                <hi rend="italic">agiuto</hi> : aiuto (E).</note></hi><hi
43 5 Severine Gedzelman
                            rend="italic"> de la propria mano senza danno si rileva</hi><hi
44 5 Severine Gedzelman
                            rend="italic"><note xml:id="ftn530" place="foot" n="530"><hi
45 5 Severine Gedzelman
                                    rend="italic"> rileva</hi> : risolleva, rialza
46 5 Severine Gedzelman
                            (E).</note></hi><hi rend="italic">. Onde per cosa vera e indubitata
47 5 Severine Gedzelman
                            tener ti puoi che chi piú di nascoso e piú lontano da la moltitudine
48 5 Severine Gedzelman
                            vive, miglior vive ; e colui tra' mortali si può con piú verità chiamar
49 5 Severine Gedzelman
                            beato che, senza invidia de le altrui grandezze, </hi><hi
50 5 Severine Gedzelman
                            rend="bold italic">con modesto animo</hi><hi rend="italic"> de la sua
51 5 Severine Gedzelman
                            fortuna si contenta (p. 241).</hi></cell>
52 5 Severine Gedzelman
                    <cell rend="justify"><hi rend="bold">Nonobstant</hi> je pense estre aßeuré que
53 5 Severine Gedzelman
                        n'auras besoing de ce faire, si suyvant mon conseil, tu te veul tenir en ces
54 5 Severine Gedzelman
                        boys secretement, &amp; sans aucune pompe : Car qui ne saulte, n'a peur de
55 5 Severine Gedzelman
                        tumber : &amp; qui chet en la plaine (ce que n'advient gueres) se relieve
56 5 Severine Gedzelman
                        sans dommage, seulement avec un peu de secours de ses propres mains. Parquoy
57 5 Severine Gedzelman
                        tu peux tenir pour chose indubitable, que celuy peult vivre en plus grand
58 5 Severine Gedzelman
                        repos, qui est plus loingtain &amp; retiré de la multitude confuse. Et entre
59 5 Severine Gedzelman
                        les hommes se peult plus veritablement estimer bien heureux celuy qui sans
60 5 Severine Gedzelman
                        envie des grandeßes d'aultruy,<hi rend="bold">par </hi><hi
61 5 Severine Gedzelman
                            rend="bold italic">modestie</hi><hi rend="bold"> de courage</hi> se
62 5 Severine Gedzelman
                        contente de sa fortune (fol. 114 v°).</cell>
63 5 Severine Gedzelman
                </row>
64 5 Severine Gedzelman
     </table>
65 5 Severine Gedzelman
</code></pre>
66 5 Severine Gedzelman
67 1 Severine Gedzelman
h2. XML-TEI vers XML-TEI-HM
68 2 Severine Gedzelman
69 9 Severine Gedzelman
70 1 Severine Gedzelman
Le script attachment:tei2teiHM.py permet de 
71 9 Severine Gedzelman
* récupérer l'ensemble des deux textes :
72 1 Severine Gedzelman
** sans les notes (de bas de page)
73 3 Severine Gedzelman
** sans les indications graphiques (qui sont dans des balises <hi> avec attributs : italic, bold, ...)
74 9 Severine Gedzelman
* et de préparer la structure et les noms des divisions, et des segments contenus dans celles-ci. Par exemple la division est "Prosa_X" et les segments sont "Prosa_X_1", "Prosa_X_2", ... 
75 1 Severine Gedzelman
76 9 Severine Gedzelman
Pour plus d'info, voir le chapitre dédié à la [[structure philologique]], et les opérations de nettoyage effectuées jusqu'à présent.
77 9 Severine Gedzelman
78 11 Severine Gedzelman
Le document XML-TEI a été légèrement modifié à la main (attachment:)
79 11 Severine Gedzelman
# avec une substitution des "Egloga" en "Ecloga" (peut refaire la modification dans le sens inverse si besoin)
80 11 Severine Gedzelman
# avec remplacement des valeurs des attributs "xml:id" des tableaux afin de permettre la création de divisions philologiques plus méta comme "Prosa_X", dans lesquels s'inséreront automatiquement les segments philologiques "Prosa_X_1", "Prosa_X_2". L'attribut notait jusqu'à présent seulement l'incrémentation des tableaux  : "Tableau1", "Tableau2". Cela donne pour le premier tableau : *<table rend="frame" xml:id="Prologo I">*
81 9 Severine Gedzelman
82 1 Severine Gedzelman
<pre><code>
83 11 Severine Gedzelman
   ### anciennement xml:id="Tableau1"
84 9 Severine Gedzelman
</code></pre>
85 9 Severine Gedzelman
86 10 Severine Gedzelman
<pre><code>
87 10 Severine Gedzelman
<table rend="frame" xml:id="Ecloga_XI">
88 10 Severine Gedzelman
                <row>
89 10 Severine Gedzelman
                    <cell>Ecloga XI, 0</cell> ### deviendra <head>
90 10 Severine Gedzelman
                    <cell rend="center">ERGASTO<hi rend="italic"> solo</hi></cell>
91 10 Severine Gedzelman
                    <cell>ERGASTO SEVL.</cell>
92 10 Severine Gedzelman
                </row>
93 10 Severine Gedzelman
</code></pre>
94 10 Severine Gedzelman
95 9 Severine Gedzelman
Pour appeler le script, il faut installer le programme "python" sur notre machine (par défaut, il existe une version sur les Mac, comme pour Java) et mettre les ressources côte à côte (fichier source de donnée .xml et fichier script .py) et indiquer le chemin du dossier où se trouve ces dernières :
96 9 Severine Gedzelman
97 9 Severine Gedzelman
<pre><code>
98 1 Severine Gedzelman
$ python tei2teiHM.py CorpusSANAZIFR_Uetani_2017.xml ~/Documents/Travail_ENS/Projets/Exterieurs/CESR_Uetani/Transformations
99 9 Severine Gedzelman
</code></pre>
100 9 Severine Gedzelman
101 11 Severine Gedzelman
Le résultat avec le même extrait 'XML-TEI' donné plus haut (A_la_Sampogna_19-20): 
102 9 Severine Gedzelman
103 9 Severine Gedzelman
<pre><code>
104 11 Severine Gedzelman
 <seg n="15" type="Segment"  rend="A_la_Sampogna_19-20" xml:id="i1_Ch25-Seg15">
105 11 Severine Gedzelman
          Bench&#233; mi pare esser certo che tal fatica a tenon fia necessaria, se tu tra le selve, s&#237; 
106 11 Severine Gedzelman
          come io ti impongo, secretamente e senza pompe star ti vorrai. Con ci&#242; sia cosa 
107 11 Severine Gedzelman
          che chi non sale, non teme di cadere ; e chi cade nel piano, il che rare volte adiviene, 
108 11 Severine Gedzelman
          con picciolo agiuto de la propria mano senza danno si rileva. Onde per cosa vera e 
109 11 Severine Gedzelman
          indubitata tener ti puoi che chi pi&#250; di nascoso e pi&#250; lontano da la moltitudine vive, 
110 11 Severine Gedzelman
          miglior vive ; e colui tra' mortali si pu&#242; con pi&#250; verit&#224; chiamar beato che, 
111 11 Severine Gedzelman
          senza invidia de le altrui grandezze, con modesto animo de la sua fortuna si contenta (p. 241).
112 11 Severine Gedzelman
</seg>
113 2 Severine Gedzelman
</code></pre>