Skip to main content

Convertisseur XML annoté vers Excel (corpus littéraires PREFAB)

Project description

Documentation — xml2xlsx v0.2.7

Nouveautés

1️⃣ Schéma DTD pour plus de précision

Le script peut maintenant lire un fichier DTD (schéma XML) pour découvrir automatiquement:

  • Les éléments et leur hiérarchie
  • Les attributs déclarés pour chaque balise
  • L'ordre correct des balises

Utilisation:

--dtd /chemin/vers/schema.dtd

Sans DTD, le script utilise un schéma préfixé (INTRODD, PPI, VDD...).


2️⃣ Extraction généraliste

Le script n'est plus limité aux balises INTRODD/PPI/VDD. Il fonctionne avec n'importe quel XML tant que le DTD ou le schéma préfixé est fourni. Le script permet également d'extraire les commentaires et de les mettre dans leur propre colonne dans le fichier Excel. Exemple: Extraire un document avec tags <chapter>, <section>, <paragraph>:

$ xml2xlsx input.xml output.xlsx --dtd book.dtd

3️⃣ Test de conformité (Integrity Check)

Après conversion, le script compare automatiquement:

  • Nombre de balises en Excel vs XML
  • Nombre d'attributs par balise
  • Intégrité du contenu (texte supprimé, attributs modifiés)

Détecte:

  • Cellules vides manquantes (❌ Erreur: VDD_type: Excel=193, xml=195)
  • Tags malformés ou supprimés
  • Désynchronisation Excel ↔ XML

Exemple: Le test a détecté ❌ p: Excel=516, xml=517 — une balise <p> malformée à la ligne 3652 du fichier '4-cest-pas-croyable_04_06_26.xml': '

N.B: le test d'intégrité est conçu spécifiquement pour les balises INTRODD, VDD, etc., il ne supporte pas pour le moment d'autres types de corpus avec des balises différentes.

4️⃣ Mode Reverse: Injecter l'Excel vers XML

Modifiez le fichier Excel, puis réinjectez les changements dans l'XML original.

Comment utiliser le mode reverse?

Étape 1: Sélectionner le mode

Radio: "Réécrire XML depuis Excel"

Étape 2: Sélectionner le fichier Excel modifié

Chemin: /chemin/vers/document_modifié.xlsx

Étape 3: Sélectionner le XML original

XML original: /chemin/vers/document_original.xml

Étape 4: Lancer

Cliquer "▶ Lancer"

Résultat: document_original_updated.xml


Exemple: Ajouter une nouvelle balise

Colonne Excel:

INTRODD_2_zebbi_text

Résultat XML:

<INTRODD position="ante">
  <VDD type="parole">dit-il</VDD>
  <zebbi>nouveau contenu</zebbi>     CRÉÉ automatiquement
</INTRODD>

Exemple: Modifier un attribut

Colonne Excel:

VDD_type     →  "cognition"

Résultat XML:

<VDD type="cognition">dit</VDD>     Attribut modifié

Nommage des colonnes et ordre

Syntaxe:

[TAG]_[INDEX]_[TAG]_[ATTRIBUTE|_text]
Colonne Signification
INTRODD_text 1ère INTRODD, texte
INTRODD_2_text 2ème INTRODD, texte
INTRODD_position 1ère INTRODD, attribut "position"
INTRODD_VDD_type VDD imbriquée dans INTRODD, attribut "type"
INTRODD_2_VDD_3_text 3ème VDD dans 2ème INTRODD, texte

Important: L'ordre des colonnes dans l'Excel ne change rien. L'ordre final suit le schéma DTD (ou préfixé).


Vérification après reverse

Le script exécute automatiquement un test d'intégrité reverse qui vérifie:

  • ✓ Les balises existantes sont préservées
  • ✓ Aucune perte de contenu
  • ✓ Les nouvelles balises sont créées correctement
  • ⚠️ Alertes si des données manquent
▶ Vérification de l'intégrité…
  ✓ Tag 'p': 516 (inchangé)
  ✓ Tag 'INTRODD' augmenté (125 → 126)
  ✓ Tag 'VDD': 498 (inchangé)
  ➕ Nouveau tag 'zebbi' (1 instance(s))
  ✅ OK: 1 nouveau(x) tag(s) ajouté(s), aucune perte

Résumé

Fonctionnalité Avant Maintenant
Schéma Préfixé fixe Lisible depuis DTD ou préfixé
Tags supportés INTRODD, PPI, VDD... N'importe quel XML
Validation Manuelle Automatique (nombre, contenu)
Modification Non Oui (mode reverse)
Intégrité - Test avant/après reverse

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xml2xlsx_lidilem-0.2.7.3.tar.gz (19.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xml2xlsx_lidilem-0.2.7.3-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file xml2xlsx_lidilem-0.2.7.3.tar.gz.

File metadata

  • Download URL: xml2xlsx_lidilem-0.2.7.3.tar.gz
  • Upload date:
  • Size: 19.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for xml2xlsx_lidilem-0.2.7.3.tar.gz
Algorithm Hash digest
SHA256 403ce38eebf1c913462ebcd55ee49f3ad6d753b6719f059b7daf9fe7faab57bf
MD5 5212818bcf14d037cbc158437eb2756c
BLAKE2b-256 c3dd318acda5a1435480c020a14ad60ef2e99aa32638ace7d814463965855dbe

See more details on using hashes here.

File details

Details for the file xml2xlsx_lidilem-0.2.7.3-py3-none-any.whl.

File metadata

File hashes

Hashes for xml2xlsx_lidilem-0.2.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c0f75ac116fd32124ea1046fb8eb9657732ccd4aca4fd48a6705fe28b2fec6df
MD5 fb624cc4caf03f261cbcfb9e0a0351b2
BLAKE2b-256 b1b2d920099f4853263c26124026ebc0ebfec11dfc070a6aecd32b823763fe45

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page