Years ago, I contributed some code to Taverna, and to be honest, haven’t kept up with the project. I was wondering though, if in the intervening years, anyone has looked at how semantic annotations in workflows might be used to assess semantic correctness, and to communicate semantic information to users. Here are a few potential use cases:
*Using Semantic Metadata During Workflow Construction* Imagine if a user were including semantically annotated services in a workflow. And suppose that one of the services had an input field called “ID”, a semantic annotation for the field might point to the Entrez Gene ID definition in the EDAM ontology. If the user entered a UniProt ID into the field, the system could use the validation criteria defined in the EDAM ontology to alert the user that they’d entered the wrong information. The label on the data entry field could display the name “Entrez Gene ID” defined in the ontology, and perhaps display an information icon with a tooltip containing the description of the field. *Validating Semantic Correctness During Construction* Moreover, with such annotations, the application could provide the user with feedback in cases where they are connecting nodes in the network that aren’t semantically equivalent. For example, if the output of a process is a protein sequence, and the input that you are trying to connect it to requires a DNA sequence; then an error message or some other form of feedback might be displayed. *Annotating Database Columns* You often need to query a database for part of a workflow. It might be useful to be able to persist those semantic annotations for a database column in the REMARKS field for a column. And anyone consuming the database as part of a workflow, would be able to use the annotation. Anyway, my question is, has anything been done to support semantic correctness in workflows and to make better use of semantic annotations? Best, Mark Fortner -- Cheers, Mark
