Evaluate a saved decision (decision_id, no inline xml) or an inline document (xml, with decision_id optional). These two cases use decision_id differently: when evaluating a stored decision, decision_id is purely the storage path used to load the XML, not a selector into it. For inline xml, decision_id doubles as an in-document <decision id> selector, since the storage path and the document’s internal decision id are unrelated namespaces. To select a specific decision inside the document explicitly – including a non-first decision in a saved multi-decision document – supply decision_ref, which is always the in-document selector regardless of branch. An archived stored decision cannot be evaluated (400).
Evaluate one <decisionService> in a DMN document as a unit – the output decisions whose results compose the service result, plus the encapsulated decisions that feed them, ordered by their <informationRequirement> edges. The document comes from a saved decision_id or from inline xml (xml wins when both are present); decision_service_ref always names the <decisionService id> inside it. An archived stored decision cannot be evaluated (400). Malformed graphs are named, never silently empty: a required-decision cycle, an href pointing at an id nothing defines, an href into another document, a decision reached but listed in neither the output nor the encapsulated section, a decision with no <decisionTable> or no <variable>, and duplicate element ids all return 400 with the offending ids.