> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # renderXml > Render all sections as a combined XML document. [ref-rendermarkdown]: /docs/server-sdks/reference/typescript/agents/pom-builder/render-markdown Render all top-level sections as a single XML document wrapped in a `` root element. Each section becomes a nested XML element with its title as the tag text or attribute, and bullets/numbered lists rendered as child elements. > **Note** > > The markdown variant -- [`renderMarkdown()`][ref-rendermarkdown] -- is the > default render format. Use `renderXml()` only for prompts where the > downstream LLM or template expects XML-structured input. ## **Returns** `string` -- XML document starting with `` and wrapping all sections in a `` root. ## **Example** ```typescript {7} import { PomBuilder } from '@signalwire/sdk'; const pom = new PomBuilder(); pom.addSection('Intro', { body: 'Welcome.' }); pom.addSection('Rules', { bullets: ['Be nice.', 'Stay on topic.'] }); console.log(pom.renderXml()); // // //
// Welcome. //
// ... //
``` > Render all sections as a combined XML document.