add features to support semantic incompatiblity
System should check for semantic compatibility between ports:
1) either automatically
2) or upon user request to check for semantic compatibility
Visually indicate when ports don't match semantically:
1) at run time of a workflow
2) when two semantically incompatible ports are connected
3) or when user has indicated they are now ready for semantic compatibility to
Visually indicate and warn user when they attempt to run a workflow that
contains semantically incompatible components but allow them to go ahead and
run the workflow if so desired.
Visual indications for structural incompatibility and semantic compatability
will be different.
Upon discovery of semantic incompatibility, provide access to annnotation
dialog so user can adjust annotations of components if so desired.
There are three possibilities when checking for semantic compatibility:
1) semantically valid because ports are annotated
2) semantically invalid because ports are annotated and don't match
3) don't know semantics because ports are not annotated (unobstrusive)
Consider some visual indication of a workflow icon if it contains semantically
[decision from May 2005 Estes Park mtg]