Absolutely (for both points). I found HL7v2 to be more of a 'standard of communication of data' as opposed to a 'standard of data'. A lot of the work I did in my last job was dealing with these differences... I think the best investment of my time was the code I wrote to more easily interact with the messages, just to help alleviate those differences.
All in all, very fun times :)