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.9.tar.gz (20.7 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.9-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: xml2xlsx_lidilem-0.2.7.9.tar.gz
  • Upload date:
  • Size: 20.7 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.9.tar.gz
Algorithm Hash digest
SHA256 38d2e5c2531eb0d5e0d77535e58ef18051e3bac8fb4524e7f20235634b1caabd
MD5 e74bcf120b9773ade4b5bbfd30149536
BLAKE2b-256 cb6c30ac320c5f4b5c82522e9f9dbbfd934968e387b1bdffa7d23040c0147285

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xml2xlsx_lidilem-0.2.7.9-py3-none-any.whl
Algorithm Hash digest
SHA256 7f07a2a7f6965dec2e1a080140db8e66e26e8da3935b86d90e516ef61aaa2d2b
MD5 79298443fcfa5cbf5ce2702d0d474f14
BLAKE2b-256 8408723787e20d8e9a67421616ec7a5ffbf73f93f719accf33047cc90b6b2a53

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