Validez une enveloppe RosettaNet RNIF 2.0 (multipart/related, Preamble + ServiceHeader + ServiceContent) ou un ServiceContent XML brut. 50 PIPs reconnus, du PIP3A4 PurchaseOrderRequest au PIP7B5 ManufacturingWorkOrder.
Collez un message RNIF 2.0 multipart/related, ou un ServiceContent XML brut, pour le valider.
Comment ça marche
RosettaNet est le standard B2B global de la supply chain
électronique / semi-conducteur, déployé par Intel, TSMC, Samsung, Sony,
Cisco, Lenovo, Foxconn, ASML et la quasi-totalité de la chaîne
high-tech. Le standard est aujourd'hui hébergé par GS1 US et continue
de tourner en production sur des PIPs (Partner Interface Processes)
de critique opérationnelle.
Le transport RNIF 2.0 (RosettaNet Implementation Framework) emballe
chaque message dans un multipart/related, avec trois
parties XML :
Preamble : GlobalAdministeringAuthorityCode,
GlobalUsageCode (Test / Production),
ProcessInstanceIdentifier et version.
ServiceContent : le document métier
lui-même, dont le nom de l'élément racine encode le PIP
(Pip3A4PurchaseOrderRequest,
Pip3B12ShipmentNotification…).
Pipeline du validateur :
Auto-détection : enveloppe RNIF complète ou ServiceContent XML
seul.
Découpage multipart/related, identification des
parties par Content-ID puis, en fallback, par nom de
l'élément racine XML.
Parsing XML par bloc, validation des champs obligatoires.
Reconnaissance du pipCode dans le catalogue embarqué,
lookup cluster, action et version.
Enveloppe : Content-Type: multipart/related
avec paramètre boundary obligatoire. Un type différent
déclenche E_NOT_MULTIPART, l'absence de boundary
déclenche E_NO_BOUNDARY.
Parties XML : Preamble, ServiceHeader et
ServiceContent sont obligatoires. Leur absence déclenche respectivement
E_NO_PREAMBLE, E_NO_SERVICE_HEADER et
E_NO_SERVICE_CONTENT.
GlobalUsageCode : doit valoir Test
ou Production. Toute autre valeur déclenche
E_INVALID_USAGE_CODE.
GlobalAdministeringAuthorityCode : la valeur
canonique est RosettaNet. Une autorité différente
déclenche un avertissement W_UNEXPECTED_AUTHORITY.
Type de signal : Action,
Signal, ReceiptAcknowledgement ou
ReceiptAcknowledgementException. Hors enveloppe RNIF
classique, ces valeurs sont parsées depuis l'élément
SignalKind.
pipCode : le code doit respecter le motif
cluster (0-7) + segment (lettre) + serial (digits), e.g. 3A4,
3B12, 7B5. Un code bien formé mais absent
du catalogue embarqué déclenche E_UNKNOWN_PIP ; un
code reconnu déclenche l'info I_PIP_RECOGNIZED.
Authority partenaire : DUNS,
GLN, EAN ou UPC. Une autorité
inconnue déclenche W_UNKNOWN_AUTHORITY.
Pièces jointes : leur absence déclenche
W_NO_ATTACHMENTS. Les pièces jointes sont identifiées
par leur Content-ID et leur Content-Type.
Signature S/MIME : l'absence de partie
application/pkcs7-signature déclenche
W_MISSING_SIGNATURE. La signature elle-même n'est pas
vérifiée cryptographiquement.
Clusters PIP
Les 200+ PIPs publiés par RosettaNet sont organisés en huit clusters.
Le cluster donne immédiatement le domaine fonctionnel d'un
pipCode :
Cluster
Domaine
0
RosettaNet Support
1
Partner Product & Service Review
2
Product Information
3
Order Management
4
Inventory Management
5
Marketing Information Management
6
Service Support
7
Manufacturing
Catalogue PIP embarqué (53)
Liste exhaustive des PIPs reconnus par le validateur. Pour chaque PIP, le
code, la version, le sens (Action / Signal) et la description bilingue
extraite du PIP Directory GS1 US.
Cluster 0 — RosettaNet Support
Code
Nom
Version
Sens
Description
0A1
NotificationOfFailure
V02.00
Signal
Notification d'échec asynchrone d'un PIP en cours.
0C1
AuthorizeTradingPartner
V01.00
Action
Demande d'autorisation d'un partenaire commercial.
Cluster 1 — Partner Product & Service Review
Code
Nom
Version
Sens
Description
1A1
RequestAccountSetup
V01.00
Action
Création d'un compte partenaire chez le respondent.
1B1
ManagePartnerProfile
V01.00
Action
Maintenance du profil métier d'un partenaire.
Cluster 2 — Product Information
Code
Nom
Version
Sens
Description
2A1
DistributeNewProductInformation
V02.02
Action
Diffusion d'une fiche produit nouvellement référencée.
2A2
DistributeNewProductDesignInformation
V01.00
Action
Diffusion d'un nouveau design produit en ingénierie.
2A8
DistributeProductMasterData
V01.00
Action
Diffusion des données maîtres produit (master data).
2A9
QueryTechnicalInformation
V01.00
Action
Requête des informations techniques d'un composant.
2A12
DistributeProductMasterData
V01.03
Action
Diffusion enrichie des données maîtres produit.
Cluster 3 — Order Management
Code
Nom
Version
Sens
Description
3A1
RequestQuote
V02.00
Action
Demande de devis (RFQ) à un partenaire.
3A2
RequestPriceAndAvailability
V02.01
Action
Demande de prix et disponibilité produit.
3A3
RequestShoppingCartTransfer
V01.00
Action
Transfert d'un panier d'achat entre systèmes.
3A4
PurchaseOrderRequest
V02.02
Action
Émission d'une commande d'achat ferme (bon de commande).
3A5
QueryOrderStatus
V01.02
Action
Requête sur le statut d'une commande existante.
3A6
DistributeOrderStatus
V02.02
Action
Diffusion non sollicitée du statut d'une commande.
3A7
NotifyOfPurchaseOrderUpdate
V02.02
Action
Notification d'une mise à jour de commande à l'initiative du vendeur.
3A8
RequestPurchaseOrderChange
V01.03
Action
Demande de modification d'une commande déjà émise.
3A9
RequestPurchaseOrderCancellation
V01.01
Action
Demande d'annulation d'une commande.
3A10
NotifyOfQuote
V01.00
Action
Notification d'un devis (réponse à 3A1).
3A12
NotifyOfPurchaseOrderInformation
V01.00
Action
Notification d'informations relatives à une commande.
3A13
NotifyOfPurchaseOrderAcknowledgement
V01.00
Action
Acquittement métier d'une commande reçue.
3A14
DistributeOrderToCash
V01.00
Action
Diffusion order-to-cash multi-document.
3B2
NotifyOfAdvanceShipment
V01.01
Action
Notification d'expédition anticipée (ASN).
3B3
DistributeShipmentStatus
V01.00
Action
Diffusion du statut d'expédition.
3B11
NotifyOfShippingOrder
V01.00
Action
Notification d'un ordre d'expédition (warehouse).
3B12
ShipmentNotification
V01.01
Action
Notification d'expédition logistique post-départ.
3B13
ShipmentReceiptNotification
V01.00
Action
Notification de réception d'expédition côté acheteur.
3B14
DistributeShipmentDocumentation
V01.00
Action
Diffusion des documents logistiques (BOL, packing list…).
3B18
NotifyOfShippingDocumentation
V01.00
Action
Notification d'envoi de la documentation d'expédition.
3C1
ReturnProduct
V01.00
Action
Retour produit / RMA initiation.
3C3
NotifyOfInvoice
V01.01
Action
Notification d'une facture émise (push invoicing).
3C4
NotifyOfInvoiceReject
V01.00
Action
Notification de rejet d'une facture reçue.
3C6
NotifyOfRemittanceAdvice
V01.00
Action
Avis de paiement / notification de remittance.
3C7
NotifyOfSelfBillingInvoice
V01.00
Action
Notification d'une facture auto-générée (self-billing).
3D8
DistributeWorkInProcess
V01.00
Action
Diffusion du WIP — duplique 7B1 en cluster Order.
Cluster 4 — Inventory Management
Code
Nom
Version
Sens
Description
4A1
NotifyOfStrategicForecast
V02.00
Action
Notification de prévision stratégique long terme.
4A2
NotifyOfEmbeddedRelease
V01.00
Action
Notification de lancement de production embarqué.
4A3
NotifyOfThresholdRelease
V01.00
Action
Notification de release sur seuil de stock.
4A4
NotifyOfPlanningRelease
V02.02
Action
Notification de release de planification.
4A5
NotifyOfForecastReply
V02.00
Action
Réponse de capacité aux prévisions transmises.
4B2
NotifyOfShipmentReceipt
V01.00
Action
Notification interne de réception en entrepôt.
4B3
NotifyOfConsumption
V01.00
Action
Notification de consommation de stock (VMI).
4C1
DistributeInventoryReport
V02.02
Action
Diffusion d'un état de stock VMI.
Cluster 5 — Marketing Information Management
Code
Nom
Version
Sens
Description
5C1
DistributeProductList
V01.00
Action
Diffusion de la liste catalogue produits.
5C2
RequestDesignRegistration
V01.00
Action
Demande d'enregistrement de design (design-win).
5C4
DistributeRegistrationStatus
V01.00
Action
Diffusion du statut des enregistrements design.
5D1
RequestShipFromStockAndDebit
V01.00
Action
Ship-from-stock-and-debit (SFSD) — distribution semi-conducteurs.
Cluster 6 — Service Support
Code
Nom
Version
Sens
Description
6C1
QueryServiceEntitlement
V01.00
Action
Requête sur les droits d'un client à un service après-vente.
6C2
RequestWarrantyClaim
V01.00
Action
Demande de prise en charge sous garantie.
Cluster 7 — Manufacturing
Code
Nom
Version
Sens
Description
7B1
DistributeWorkInProcess
V01.02
Action
Diffusion du WIP (work-in-process) en production.
7B5
NotifyOfManufacturingWorkOrder
V01.00
Action
Notification d'un ordre de fabrication.
7B6
NotifyOfManufacturingWorkOrderReply
V01.00
Action
Réponse à une notification d'ordre de fabrication.
7C1
DistributeProductionForecast
V01.00
Action
Diffusion des prévisions de production usine.
Limites
Pas de validation XSD complète du ServiceContent : le
validateur reconnaît la racine et l'action, mais ne valide pas le détail
des champs métier propres à chaque PIP. Pour PIP3A4 par exemple, la
complétude de PurchaseOrderLineItem n'est pas vérifiée.
Pas de vérification cryptographique de la signature S/MIME. Le validateur
indique sa présence et son type, mais ne calcule pas le digest.
Pas de réémission de l'acquittement ReceiptAcknowledgement
attendu par le partenaire — il s'agit d'un outil d'inspection passif.
Pas de prise en charge de RNIF 1.1 ni des extensions ebMS-over-RNIF
hybrides.