The AttributeDefinition.resolveModelAttribute() methods are written assuming the ModelNode to resolve is inside a ModelType.OBJECT structure stored under a key that is the attribute name.
Sometimes the node is in an operation under a different key, usually "value" (for a write attribute op). This happens when the operation is writing a runtime-only attribute, so there is no Stage.MODEL storage of the value to the Resource model.
A resolveParameterValue method would save some boilerplate code for operation handlers that have to deal with this kind of thing.
See https://github.com/wildfly/wildfly/pull/4378/files for an example case where this would be helpful.