Document Message
Le message-document — un fait qui circule, pas une commande.
Problème
Comment transmettre un document métier (facture, catalogue) sans confondre avec une commande d'action ?
Forces
- Les documents en EDI portent une responsabilité juridique (INVOIC = preuve fiscale).
- Le destinataire applique ses propres règles de traitement — l'émetteur ne dicte pas.
- L'acknowledgement attendu est différent (réception confirmée vs action effectuée).
Solution
Distinguer le Document Message du Command Message dans le typage. Conventions : (1) nom au substantif (Invoice, Catalogue), (2) acknowledgement = réception et bonne intégration, pas exécution d'action, (3) document immuable une fois envoyé (correction = nouveau document).
Implémentation EDI
En EDI, les Document Messages incluent : INVOIC (facture), DESADV (avis d'expédition), PRICAT (catalogue de prix), REMADV (avis de paiement). Le destinataire intègre, ne 'exécute' pas. L'acknowledgement (CONTRL/997, MDN AS2) confirme la réception, pas l'action métier — laquelle peut être asynchrone et indépendante (paiement de l'INVOIC).
Anti-patterns
- Document Message attendant une action immédiate — confusion de rôle.
- Document éphémère — un document doit être archivable (10 ans en fiscal).
- Document modifié en place — préférer émettre un document de correction.
Patterns liés
- Command Message — pattern complémentaire.
- Event Message — troisième style.
Sources
- Hohpe G., Woolf B. — EIP, Document Message (p. 147). www.enterpriseintegrationpatterns.com/patterns/messaging/DocumentMessage.html