I don't know any coding practices, model designs and documentation standards that address Key-Value coding properly, but maybe there is and I've missed it. Standard UML lists members and methods but how do you handle the planning of possible keys for members that are dictionaries of key-value pairs? .h files with method prototypes makes documenting the purpose and the way to use a class easy, with the exception of key-value based methods. Is there a recommended way and place to document the key-value behaviour of a class in the .h file? Is there a best practice standard for documenting key-value properties when used with cocoa bindings?