diff --git a/trytond/ir/ui/tree.rnc b/trytond/ir/ui/tree.rnc
index a8c1bd3c4a..04f81eeabe 100644
--- a/trytond/ir/ui/tree.rnc
+++ b/trytond/ir/ui/tree.rnc
@@ -1,6 +1,9 @@
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
-tree = element tree { attlist.tree, field+ }
+tree = element tree { attlist.tree,
+ (field
+ | button)*
+ }
attlist.tree &=
[ a:defaultValue = "Unknown" ] attribute string { text }?
attlist.tree &= attribute on_write { text }?
@@ -49,6 +52,16 @@ attlist.field &=
| "bottom_to_top"
| "top_to_bottom"
}
+button = element button { attlist.button, empty }
+attlist.button &= attribute help { text }?
+attlist.button &=
+ [ a:defaultValue = "Unknown" ] attribute string { text }?
+attlist.button &=
+ [ a:defaultValue = "workflow" ]
+ attribute type { "workflow" | "object" | "action" }?
+attlist.button &= attribute confirm { text }?
+attlist.button &= attribute name { text }
+attlist.button &= attribute states { text }?
data = element data { attlist.data, xpath+ }
attlist.data &= empty
xpath = element xpath { attlist.xpath, any }
diff --git a/trytond/ir/ui/tree.rng b/trytond/ir/ui/tree.rng
index 5f17050cd7..0331df6363 100644
--- a/trytond/ir/ui/tree.rng
+++ b/trytond/ir/ui/tree.rng
@@ -3,9 +3,10 @@
-
+
-
+
+
@@ -150,6 +151,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ workflow
+ object
+ action
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+