Semantic Annotation as Design Recovery