Remove XML Empty Nodes Pipeline Component

  • Sandro Pereira
  • Feb 21, 2024
  • 3 min read

Another day, another BizTalk Server Pipeline Component! Today, I decided to release a brand new component called the Remove XML Empty Nodes Pipeline Component.

For those who aren’t familiar with it, the BizTalk Pipeline Components Extensions Utility Pack is a collection of reusable libraries that provide custom pipeline components. These components integrate seamlessly with both receive and send pipelines, helping address common integration challenges.

Most importantly, the utility pack expands BizTalk’s built‑in pipeline functionality, enabling more flexible message processing and better control over complex integration scenarios.

BizTalk Pipeline Components Extensions Utility Pack

📝 One-Minute Brief

XML messages often contain empty nodes that increase payload size and complicate downstream processing. This article introduces a custom pipeline component that removes empty XML elements, helping produce cleaner messages and more efficient integrations. The approach fits BizTalk scenarios where message normalization and optimized payloads matter.

Remove XML Empty Nodes Pipeline Component

As the name suggests, the Remove XML Empty Nodes Pipeline Component is a pipeline component that can be used to remove empty nodes present in an XML message. You can use this component in any stage of a receive or send pipeline.

This component has a single property that requires you to set up:

  • DisableRemoveBOM (boolean): This allows you to enable or disable the process of removing empty nodes from an XML message.

How to install it

As always, you just need to add these DLLs to the Pipeline Components folder, which by default is in the BizTalk Server 2020 installation folder. In the last version of the product, it will be:

  • C:\Program Files (x86)\Microsoft BizTalk Server\Pipeline Components

In this particular component, we need to have this  DLL

  • BizTalk.PipelineComponents.RemoveXmlEmptyNodes.dll

How to use it

As with previous pipelines, I recommend creating generic pipelines that you can reuse across all applications. When needed, you can also create multiple generic variants. This approach improves consistency and simplifies maintenance over time.

Next, add this pipeline component to the required stage of the pipeline. However, remember that you can use it in both send and receive pipelines, depending on your scenario.

Download

THIS COMPONENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND.

You can download the Remove XML Empty Nodes Pipeline Component from GitHub here:

Hope you find this helpful! So, if you liked the content or found it helpful and want to help me write more, you can help us buy a Star Wars Lego for Sandro’s son! 

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.

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