In the past we talked about allowing resources to be defined, following a normal scoping mechanism, at the domain, cluster, or node level. An alternative approach would be to introduce a more limited notion of a homogenous group (1..many servers) which is the only location that things like resource definitions can occur. Creating server specific properties would require creating a new group definition. Clustering could even be viewed as a property of the homogenous group. The only issue is that some settings truly require scoping (like jvm parameters, sys properties, etc), so there would have to be special behavior there.
This would give us something like:
<domain>
<group name="Production">
<clustered-service>.....</clustered-service>
<resource name="Production DB">
....
</group>
<server name="MyServer" group="Production">
<jvm maxMemory="..." />
</server>
</domain>