---
title: XmlDocument Support
slug: blueprint/xmldocument-support
docTags: yO7XZ9PJxDCKZ-Mf4TSYB
createdAt: 2026-04-17T18:28:53.286Z
---

:::CtaButton{label="🟢 Migrator" openInNewTab="false"}

:::

UiPath selectors that are fully generated at runtime — as a variable or expression — are encoded internally as XML documents. When Blueprint migrates these, PAD needs the **System.Xml** namespace to parse and convert them to PAD selectors at runtime.

PAD only references a limited set of assemblies by default, so **System.Xml.dll** must be manually referenced. This assembly is part of the standard .NET framework.

***

# Recommended Setup: Install the .NET Developer Pack

Installing the .NET developer pack is the most complete solution — it resolves this issue and covers any other missing assembly references you may encounter in migrated flows.

::::WorkflowBlock
:::WorkflowBlockItem
Download the .NET 4.7.2 Developer Pack from Microsoft.
:::

:::WorkflowBlockItem
Run the installer — assemblies are installed to C:\Program Files (x86)\Reference Assemblies.
:::

:::WorkflowBlockItem
In that folder, **delete or move** the **System.EnterpriseServices** files — PAD cannot load these and they will cause errors.
:::

:::WorkflowBlockItem
In **Init\_Variables**, set %defaultRunDotNetScriptReferences% to:
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\\.NETFramework\v4.7.2
:::

:::WorkflowBlockItem
In **Init\_Variables**, set %defaultRunDotNetScriptImports% to:
System.Xml
:::
::::

***

## Alternative: Custom Modules Folder

If installing the developer pack isn't possible:

::::WorkflowBlock
:::WorkflowBlockItem
Create a **custom-modules** folder — Blueprint recommends placing it in the PAD installation folder.
:::

:::WorkflowBlockItem
Search your filesystem for **System.Xml.dll**.
:::

:::WorkflowBlockItem
Copy the file into your custom-modules folder.
:::

:::WorkflowBlockItem
In **Init\_Variables**, set %defaultRunDotNetScriptReferences% to the path of your custom-modules folder.
:::

:::WorkflowBlockItem
In **Init\_Variables**, set %defaultRunDotNetScriptImports% to:
System.Xml
:::
::::

:::hint{type="warning"}
The developer pack approach is strongly recommended — it's more robust and covers additional missing references you may encounter as you migrate more processes.
:::

