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.2.tar.gz (19.2 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.2-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: xml2xlsx_lidilem-0.2.7.2.tar.gz
  • Upload date:
  • Size: 19.2 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.2.tar.gz
Algorithm Hash digest
SHA256 8ac972cda6ce4a28e62839b15646db917e69d1d8c0e651c7daf80cb3b1f90b7a
MD5 f973c5e9e071f5a6b33a64e37700a003
BLAKE2b-256 96a9b0cef132a4a3b28fb09ca94fc68eca194687706c21a43dd4f8c4c18de114

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xml2xlsx_lidilem-0.2.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4b1b23567af2649e00dd00bc3060331c964414a795ab150e1342e5c73e480757
MD5 7602492323fcf0555eb3134292e420e1
BLAKE2b-256 599b9cd43129d3b055c048306d53074739a291cfad1c4560004c88395d17ec50

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