There was a failure executing the send pipeline: “Microsoft.BizTalk.DefaultPipelines.XMLTransmit, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, ….” – This Assembler cannot retrieve a document specification using this type: “namespace#rootnode”

  • Sandro Pereira
  • Jul 24, 2009
  • 3 min read

When trying to receive an XML document from a Receive Port, the following error message occurs, and the message is suspended:

“… Error Description: There was a failure executing the send pipeline:
“Microsoft.BizTalk.DefaultPipelines.XMLTransmit, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35” Source: “XML assembler” Send Port: “portname” URI: “uri” Reason: This Assembler cannot retrieve a document specification using this type: namespace#rootnode …”

This is a strange behavior because the schema was deployed

📝 One-Minute Brief

Encountering the error “This Assembler cannot retrieve a document schema” in a BizTalk Send Pipeline usually points to a schema resolution conflict. This occurs when multiple schemas share the same MessageType (Namespace + Root Node) or when a schema is not properly deployed/accessible to the Host Instance. This guide explains how to resolve these ambiguities by explicitly setting the DocumentSpecNames or ensuring unique message types across your BizTalk environment.

This error is BizTalk’s way of saying: “I found a message, but I can’t find the ‘blueprint’ (schema) to process it.” Here is how to fix it.

Cause

The BizTalk XML Assembler looks for schemas in the Management Database based on the MessageType (Namespace#RootNode). The failure happens for two main reasons:

  • Multiple Matches: You have two different schemas deployed that share the same Namespace and Root Node.
    • The Application made a reference to another Application that contained one schema with the same namespace#rootnode name
    • The Application has different resources (DLL) that contain more than one schema with the same namespace#rootnode name
  • No Match: The schema is not deployed, or the Host Instance cannot “see” it due to missing project references or a failure to restart the host.
    • The schema defined by namespace#rootnode does not exist (not my case, because it was deployed)

Solution

  • You need to change the namespace or the root node of one of the schemas. If it’s a common schema, you can deploy it separately to a common application and add a reference to that application.

In my case, I have one BizTalk Application with 4 resources (DLL), and the problem was that two of these resources (DLL) had one schema with the same namespace#rootnode. I removed one of the schemas, and the problem was solved.

Best practice dictates that every schema should have a unique Target Namespace.

Hope you find this helpful! If you liked the content or found it useful and would like to support me in writing more, consider buying (or helping to buy) a Star Wars Lego set for my son. 

Thanks for Buying me a coffe
Author: Sandro Pereira

Sandro Pereira lives in Portugal and works as a consultant at DevScope. In the past years, he has been working on implementing Integration scenarios both on-premises and cloud for various clients, each with different scenarios from a technical point of view, size, and criticality, using Microsoft Azure, Microsoft BizTalk Server and different technologies like AS2, EDI, RosettaNet, SAP, TIBCO etc. He is a regular blogger, international speaker, and technical reviewer of several BizTalk books all focused on Integration. He is also the author of the book “BizTalk Mapping Patterns & Best Practices”. He has been awarded MVP since 2011 for his contributions to the integration community.

4 thoughts on “There was a failure executing the send pipeline: “Microsoft.BizTalk.DefaultPipelines.XMLTransmit, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, ….” – This Assembler cannot retrieve a document specification using this type: “namespace#rootnode””

  1. Hi Sandro,

    I was recenly following your blog! and it was aweome. Can you please help me with this error?

    Error: There was a failure executing the send pipeline:
    “Microsoft.BizTalk.DefaultPipelines.XMLTransmit,
    Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral,
    PublicKeyToken=31bf3856ad364e35” Source: “XML assembler” Send Port: “LEAN MDN
    to File” URI: “\aaarcwivsap11630BiztalkDataBizTalk.AS2LEANLoad Status
    MDN%MessageID%.txt” Reason: Data at the root level is invalid. Line 1,
    position 1.

  2. I have two schemas with different target namespace but same root element: CompositeOperation

    I use these schemas for the same WCF-Custom send port to access various stored procedures in the same SQL Server DB. The SOAP Action header is configured to CompositeOperation. That results in the error message mentioned in this blog post. I haven’t found the solution yet.

  3. SendPort9
    There was a failure executing the send pipeline: “SBH.BT.MulesoftOracleCE.POSCEOracle, SBH.BT.MulesoftOracleCE, Version=1.0.0.0, Culture=neutral, PublicKeyToken=70943164b7713899” Source: “PosCeAuthorizationComponent” Send Port: “SendPort9” URI: “D:\Deployment\%MessageID%.xml” Reason: The application does not exist.

  4. Getting below error:

    SendPort9
    There was a failure executing the send pipeline: “SBH.BT.MulesoftOracleCE.POSCEOracle, SBH.BT.MulesoftOracleCE, Version=1.0.0.0, Culture=neutral, PublicKeyToken=70943164b7713899” Source: “PosCeAuthorizationComponent” Send Port: “SendPort9” URI: “D:\Deployment\%MessageID%.xml” Reason: The application does not exist.

Leave a Reply

Your email address will not be published. Required fields are marked *

The Ultimate Cloud
Management Platform for Azure

Supercharge your Azure Cost Saving

Learn More
Turbo360 Widget

Back to Top