While looking at this question: Why all the Active Record hate? I found myself thinking of a general theme that ActiveRecord pattern is good when you have little or no inheritence in your objects, and DataMapper, while more complex, works much better if you do.
Given that its never possible to perfectly match objects to relational databases, and that we don't have a really viable object database available, is it worth going to extra effort to avoid inheritence in our designs? This would allow the use of simpler solutions, like ActiveRecord, whilst avoiding their limitations.