Take a look here at this: this wonderful set of resources.
The argument that HL7RIM is incoherent is compelling. I'll admit that I've found HL7 RIM to be impossible confusing for years. The problem is that as a foundation for all-things-HL7, RIM causes a lot of trouble.
I've had some very interesting conversations recently with Neil Cowles – CEO of Tolven – where they have created TRIM – for the definition of RIM based templates. Neil argues that TRIM provides all of the functionality and interoperability of RIM without the complexity.