diff --git a/doc/parse_gx_xsd.py b/doc/parse_gx_xsd.py
index d7f3b631712d..84d51b2f98a5 100644
--- a/doc/parse_gx_xsd.py
+++ b/doc/parse_gx_xsd.py
@@ -167,6 +167,7 @@ def _build_attributes_table(tag, attributes, hide_attributes=False, attribute_na
use = attribute.attrib.get("use", "optional") == "required"
details = details.replace("\n", " ").strip()
+ details = details.replace("|", "\\|").strip()
best_practices = _get_bp_link(annotation_el)
if best_practices:
details += (
diff --git a/lib/galaxy/tool_util/xsd/galaxy.xsd b/lib/galaxy/tool_util/xsd/galaxy.xsd
index 8a0c234187dc..c8bd3bc260e3 100644
--- a/lib/galaxy/tool_util/xsd/galaxy.xsd
+++ b/lib/galaxy/tool_util/xsd/galaxy.xsd
@@ -5267,7 +5267,7 @@ If ``true``, this output will sniffed and its format determined automatically by
Sets the source of element identifier to the specified input.
-This only applies to collections that are mapped over a non-collection input and that have equivalent structures. If this references input elements in conditionals, this value should be qualified (e.g. ``cond\|input`` instead of ``input`` if ``input`` is in a conditional with ``name="cond"``).
+This only applies to collections that are mapped over a non-collection input and that have equivalent structures. If this references input elements in conditionals, this value should be qualified (e.g. ``cond|input`` instead of ``input`` if ``input`` is in a conditional with ``name="cond"``).