Richard and I just had this IRC discussion to try to sort out where the overlap is between mine and Matthew's work. I think we established three principle differences in our requirements:
- dynamic-types supports both creating new types and extending existing types - AMS is focused on extending existing types
- dynamic-types does not support permissioning individual attribute values - AMS does
- dynamic-types does not support versioning individual attribute values - AMS does
How our implementations address these differences will dictate how much overlap there is in our code.