# Metadata XML Examples: Flows [← Back to Metadata XML Examples Index](metadata-xml-examples.md) ## Example 5: Require Flow Auto-Layout **Problem:** Flows should use Auto-Layout canvas for consistency and maintainability. **Target file:** `*.flow-meta.xml` **Sample violating metadata:** ```xml 58.0 CanvasMode FREE_FORM_CANVAS ``` **XPath (PMD 7 — flags FREE_FORM_CANVAS):** ```xpath //*[@Text='FREE_FORM_CANVAS']/../.. [local-name()='value'] [ancestor::*[local-name()='processMetadataValues'][.//*[@Text='CanvasMode']]] ``` **How it works:** Finds text nodes with "FREE_FORM_CANVAS", navigates up to the `` element, then confirms it's inside a `processMetadataValues` block that also contains "CanvasMode". **PMD ruleset:** ```xml Enforces auto-layout canvas mode on all flows for consistency 3 ``` --- ## Example 6: Flow Missing Fault Handler **Problem:** Flow actions without fault connectors can fail silently. **Target file:** `*.flow-meta.xml` **Sample violating metadata:** ```xml Create_Account Account Next_Step ``` **XPath:** ```xpath //*[local-name()='Flow']/*[ local-name()='recordCreates' or local-name()='recordUpdates' or local-name()='recordDeletes' or local-name()='recordLookups' ][ not(*[local-name()='faultConnector']) ] ``` **PMD ruleset:** ```xml Ensures all data operations in flows have fault paths 2 ```