Can the same field have both a foreignkey annotation and a field.property (SemanticType)? Are there rules governing the interactions between different annotations?
Yes, a field can be used in multiple annotations. No rules. One item of note is that foreign keys and indexs are limited to single fields.