diff --git a/xml/test-2/023-rsc-requires-no-override.ref b/xml/test-2/023-rsc-requires-no-override.ref
new file mode 100644
index 0000000000..233a66acb2
--- /dev/null
+++ b/xml/test-2/023-rsc-requires-no-override.ref
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/test-2/023-rsc-requires-no-override.ref.err b/xml/test-2/023-rsc-requires-no-override.ref.err
new file mode 100644
index 0000000000..84a51c9556
--- /dev/null
+++ b/xml/test-2/023-rsc-requires-no-override.ref.err
@@ -0,0 +1,4 @@
+Resources-operation: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: stateful-promote: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: stateful-demote: dropping requires
+Resources-operation: ... only start/promote operation taken into account
diff --git a/xml/test-2/023-rsc-requires-no-override.xml b/xml/test-2/023-rsc-requires-no-override.xml
new file mode 100644
index 0000000000..5de3efebf1
--- /dev/null
+++ b/xml/test-2/023-rsc-requires-no-override.xml
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/test-2/024-rsc-requires-no-selfclash.ref b/xml/test-2/024-rsc-requires-no-selfclash.ref
new file mode 100644
index 0000000000..0ea8203e91
--- /dev/null
+++ b/xml/test-2/024-rsc-requires-no-selfclash.ref
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/test-2/024-rsc-requires-no-selfclash.ref.err b/xml/test-2/024-rsc-requires-no-selfclash.ref.err
new file mode 100644
index 0000000000..f1025f81ed
--- /dev/null
+++ b/xml/test-2/024-rsc-requires-no-selfclash.ref.err
@@ -0,0 +1,14 @@
+Resources-operation: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: myAddr1-start: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: myAddr2-start: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: stateful1-demote: dropping requires
+Resources-operation: ... only start/promote operation taken into account
+Resources-operation: stateful2-promote: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: stateful2-promote: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: stateful2-promote: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: stateful2-start: moving requires under meta_attributes as requires unless already defined there for matching start|promote
+Resources-operation: stateful2-demote: dropping requires
+Resources-operation: ... only start/promote operation taken into account
diff --git a/xml/test-2/024-rsc-requires-no-selfclash.xml b/xml/test-2/024-rsc-requires-no-selfclash.xml
new file mode 100644
index 0000000000..f44737e2d4
--- /dev/null
+++ b/xml/test-2/024-rsc-requires-no-selfclash.xml
@@ -0,0 +1,140 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/upgrade-2.10.xsl b/xml/upgrade-2.10.xsl
index 11e7aa5166..f4c083eff1 100644
--- a/xml/upgrade-2.10.xsl
+++ b/xml/upgrade-2.10.xsl
@@ -1,758 +1,845 @@
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+ not(
+ contains($SimulateAttrOverrides,
+ concat(@name, ' '))
+ )">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ $Replacement/@where = 'meta_attributes'
+ and
+ not(
+ $EnclosingTag/meta_attributes[
+ not(rule)
+ and
+ nvpair/@name = $Replacement/@with
+ ]
+ )">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+