XML: schemas: restructure rule schema for planned incompatible changes
This extends previous work to more exactly specify which rule syntax is allowed
in which contexts, specifically:
- The lifetime element (within constraints) is deprecated
- Node expressions are both allowed and implemented only in instance_attributes within bundle, clone, group, op, primitive, and template elements, and in meta_attributes in op and op_defaults elements
- value-source is allowed in expression elements, but only with literal as its value
- value is prohibited for defined and not_defined operations, and required for all other operations
- The role attribute of rule elements is used only within location constraints
- Support for multiple rules within a location constraint is deprecated.
To preserve backward compatibility, the invalid syntax is merely marked with
comments for now, for easier removal later.