🏆 Comprendre ce qu'est un document sur un ordinateur
🏆 Savoir différencier les catégories de fichiers et les standards et formats qui leur sont associés
🏆 Savoir différencier la mise en forme d'un fichier et sa structuration sémantique
🏆 Connaître théoriquement plusieurs modes d'organisation et de mise en forme d'un fichier textuel (XML, Markdown, LaTeX, ...)
🏆 Connaître théoriquement plusieurs modes de représentation de données organisées dans un fichier textuel (CSV, JSON)
🏆 Connaître les principaux standards XML et l'environnement technologique associé à ce standard
A l'aide de techniques de TAL
(Traitement Automatique des langues / du langage) aussi appelé NLP
(Natural Language Processing)
entités nommées
(NER, Named Entity Recognition)Rendre un document compatible avec des moteurs de recherche :
Voire réaliser une édition numérique !
faire ressortir une structure logique qui aide à la mise en forme du document, à sa lecture par un humain ou par la machine ;
...
Id_Monographie | Id_Enqueté | Serie_Tome | Prénom | Nom | Place dans la famille | Lieu de naissance |
---|---|---|---|---|---|---|
001a | 001aE1 | 1-1 (1857) | Jean | M** | Père | T** (Aube) |
001a | 001aE2 | 1-1 (1857) | Marie | R** | Mère | L** (Meurthe) |
001a | 001aE3 | 1-1 (1857) | Joseph | M** | Fils |
Id_Monographie,Id_Enqueté,Serie_Tome,Prénom,Nom,Place dans la famille,Lieu de naissance
001a,001aE1,1-1 (1857),Jean,M**,Père,T** (Aube)
001a,001aE2,1-1 (1857),Marie,R**,Mère,L** (Meurthe)
001a,001aE3,1-1 (1857),Joseph,M**,Fils,,
Ctilisation de structure similaire aux listes et aux dictionnaires en Python
Chaque valeur est associée à une étiquette, la structure peut fonctionner en arborescence, à plusieurs niveaux
[
{"Id_Monographie":"001a", "Id_Enqueté":"001aE1", "Serie_Tome":"1-1 (1857)", "Prénom":"Jean", "Nom":"M**", "Place dans la famille":"Père", "Lieu de naissance":"T** (Aube)"},
{"Id_Monographie":"001a", "Id_Enqueté":"001aE2", "Serie_Tome":"1-1 (1857)", "Prénom":"Marie", "Nom":"R**", "Place dans la famille":"Mère", "Lieu de naissance":"L** (Meurthe)"},
{"Id_Monographie":"001a", "Id_Enqueté":"001aE3", "Serie_Tome":"1-1 (1857)", "Prénom":"Joseph", "Nom":"M**", "Place dans la famille":"Fils", "Lieu de naissance":""}
]
vs.
Pratiques de l'édition numériques est un ouvrage a priori intéressant.
tous les mots en italiques ne sont pas des mots étrangers, mais tous les mots étrangers sont en italiques
titres d'ouvrages cités en italiques (ou pas) et mots étrangers en italiques (ou pas)
on peut extraire rapidement tous les mots étrangers sans récolter aussi les titres d'ouvrages cités
Dans Microsoft Word
ou LibreOffice Writer
:
dans un éditeur WYSIWYM : moindre confusion entre mise en forme et indication de la structure logique
la mise en forme apparaît après parsing du document (création d'un PDF ou ouverture dans un navigateur)
le paramétrage de la mise en forme peut être géré dans un fichier externe (ex: CSS pour HTML)
Ⓜ️ Markdown
est un langage de balisage léger qui permet d'encoder facilement la structure et certains éléments de mise en forme du texte sans gêner sa lecture.
Ⓜ️ Il permet de créer des fichiers HTML ou PDF et est beaucoup utilisé sur le web, notamment sur des plateformes comme Github
Ⓜ️ Même non compilé, un texte Markdown est facile à lire car les annotation sont légères et limitées ;
🤫 On peut utiliser Markdown ou un système similaire dans Whatsapp et Messenger ;
Non compilé :
# Titre 1
##### Titre 5
[lien hypertexte](http://perdu.com/)
**texte mis en gras** (mise en forme)
~~texte barré~~ (mise en forme)
Compilé :
lien hypertexte
texte mis en gras (mise en forme)
texte barré (mise en forme)
🇱 LaTeX
(prononcer "latek") est un langage et un système de composition de documents, + complet que Markdown ;
🇱 Utilisé dans le domaine des sciences car on peut facilement écrire des formules mathématiques ;
🇱 Les balises sémantiques de LaTeX
sont plus "invasives". Exemple : \chapter{Titre de chapitre}
;
🇱 Pour voir la mise en forme, on doit compiler le fichier .tex
. On obtient un PDF ou du HTML ;
🇱 LaTeX ne sert pas qu'à annoter la structuration logique : il prend en charge la mise en forme du document au sens large.
➡️ TEXTE : pont_mirabeau.txt | IMAGE : pont_mirabeau.png
➡️ Éditeurs en ligne : Dillinger ou HedgeDoc (collaboratif)
Faire un encodage en Markdown du poème :
🌳 XML signifie eXtensible Markup Language ;
🌳 XML est un langage de balisage générique ;
<balise>contenu</balise>
🌳 XML est extensible car on peut créer ses propres noms de balise ;
🌳 XML est apparu à la fin des années 1990, c'est un sous-ensemble du standard SGML (Standard Generalized Markup Language), comme HTML (Hypertext Markup Language)
🌳 Ces langages utilisent les chevrons (<>
) pour former des balises.
une balise XML est écrite entre chevrons (< nom_de_la_balise >
) et entoure généralement un contenu ;
une balise ouverte (<slide>
) doit donc être fermée (</slide>
);
une balise peut-être vide (elle n'encadre pas un contenu) : <nothing></nothing>
, ce qui peut aussi s'écrire : <nothing/>
les balises peuvent être imbriquées ;
un commentaire est écrit entre <!-- ... -->
;
une balise peut avoir des attributs qui possèdent des valeurs ;
<balise attribut="valeur">contenu</balise>
<slide>
<titre>Qu'est-ce que XML ?</titre>
<para>
<line n="001">🌳 XML signifie <anglais>eXtensible Markup Language</anglais></line>
<line n="002">🌳 XML est un <gras>langage</gras> de <gras>balisage</gras> générique. On le dit <gras>extensible</gras> car il propose une grammaire générale pour l'organisation du document, mais on peut créer ses propres noms de balises</line>
</para>
</slide>
<slide>
est une balise ou un élémentslide
est un nom de balisen
est un attribut de la balise "line"001
est la valeur de l'attribut "n"🌳 XML n'indique pas comment s'appellent les balises
<paragraph>
, <paragraphe>
, <para>
, <para_ph>
, <p>
sont tous des noms de balises valides ;🌳 XML ne correspond qu'à la syntaxe ;
🌳 Les standards
définissent le vocabulaire (ensemble de noms de balise) et des règles de compositions :
XML TEI
(Text Encoding Initiative) - description de documents textuels (1987)XML EAD
(Encoded Archival Description) - description archivistique (1998)XML SVG
(Scalable Vector Graphics) - descriptions d'images vectorielles (1999)XML ALTO
(Analysed Layout and Text Object) - description de la mise en page et du contenu d'un texte transcrit automatiquement (2004)🌳 Le schéma peut définir une sous-spécification au sein d'un standard ;
🌳 Un fichier XML est plusieurs choses :
🌳 Il existe plusieurs langages qui permettent d'interagir avec XML :
xPath
: formuler un chemin à l'intérieur d'un arbre XML ;XSLT
: transformer un arbre XML en un autre arbre XML ou en HTML ;xQuery
: permet de faire des requêtes dans une base XML ;Exemple : <l>
<?xml version="1.0" encoding="UTF-8"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0">
<teiHeader>
<fileDesc>
<titleStmt>
<title>Title</title>
</titleStmt>
<publicationStmt>
<p>Publication Information</p>
</publicationStmt>
<sourceDesc>
<p>Information about the source</p>
</sourceDesc>
</fileDesc>
</teiHeader>
<text>
<body>
<p>Some text here.</p>
</body>
</text>
</TEI>
<TEI xmlns="http://www.tei-c.org/ns/1.0">
Cette balise indique 2 choses :
TEI
<teiHeader>
<!-- métadonnées -->
</teiHeader>
Le teiHeader
est un élément XML qui contient les métadonnées (header = en-tête)
🌳 https://www.tei-c.org/release/doc/tei-p5-doc/fr/html/ref-teiHeader.html
<body>
<!-- corps du texte -->
</body>
Le body
reçoit le contenu du document, le corps du texte.
🌳 https://tei-c.org/release/doc/tei-p5-doc/fr/html/ref-body.html
➡️ TEXTE : pont_mirabeau.txt | IMAGE : pont_mirabeau.png
➡️ Éditeurs en ligne : Dillinger ou HedgeDoc (collaboratif)
S'appuyer sur les Guidelines de la TEI pour proposer un encodage du poème.
Quelques idées :
➡️ exemple : pont_mirabeau.xml