Hello @stantf,
The update feature(s) must contain all required attributes in order for the document update to run correctly. In your workspace, the AttributeKeeper_3 feature contains the new values but not the XPath attributes, while the AttributeManager output contains the XPath attributes but not the new values.
Use a FeatureMerger/FeatureJoiner to merge the AttributeKeeper_3 and AttributeManager output before the feeding the merged feature into the XMLUpdater’s Update port.
Note: the reason why hard-coding the attribute values works is due to the first feature to reach the XMLUpdater is AttributeKeeper_3’s feature, which contains the new values but no XPath attribute--no updates are done. The second feature contains the XPath attribute and since the new values are hard-coded, the document update is performed successfully.