I have created a custom Entity Type system using Watson Knowledge Studio following these guidelines: https://www.ibm.com/watson/developercloud/doc/wks/typesystem.html
For each entity type, the annotator can add attributes to a mention, e.g. role, subtype, class, type, etc.
I am specifically using the "role" attribute, to annotate a mention in different contexts. For example, here is a subset of my entity type system:
Entities - AREA, SYMPTOM, RESOLUTION, CUSTOMER, FAULT, COMPLAINT
Thus, for a mention annotated as AREA, I assign the role CUSTOMER, FAULT or COMPLAINT, depending on the context of the mention.
When the model is sufficiently trained, I would like to use Natural Language Understanding to extract entity types (https://www.ibm.com/watson/developercloud/natural-language-understanding/api/v1/)
The problem is the API does not expose any of the entity attributes, e.g. role, class, type, etc.
My question is therefore, how does one extract the entity attributes when you've trained your model and wish to extract entities and relations from an unseen text? What is the point of role, class and mention type if NLU cannot extract it (unless you can, but I've missed it somehow)?
Currently, as you mentioned, entity attributes cannot be extracted in NLU and the only way to extract entity attributes from an unseen text would be to run ML annotator as pre-annotator within WKS. We are investigating to enhance this in future.