Components and Component Profiles will be stored on myExperiment. Taverna (and other tools) will be able to search myExperiment to discover components.
Components will be structured as packs on myExperiment. A component pack contains the workflow that implements the component and (optionally) documentation, example data and any other information related to the component. Example at http://www.myexperiment.org/packs/351.html
Components will be grouped into component families: a collection of components that conform to the same component profile and have common purpose. Multiple component families may have the same component profile. For example, in SCAPE we may choose to create component families for Image Migration and Audio Migration that both use the Migration Component Profile. Component families may also contain documentation that is common to all components in the family. Example at http://www.myexperiment.org/packs/350.html
Component profiles are files on myExperiment. A component profile file will tagged with 'component profile'. Example at http://www.myexperiment.org/files/863.html
Components can be queried by their semantic annotations through myExperiment's REST API. A special endpoint /components.xml will be created, which will return a list of suitable components (as workflows) when a HTTP GET request, with a set of parameters detailing their required properties, is made. Each parameter is in the form of a variable representing a workflow feature (an input port, output port, processor, or the workflow itself), followed by one or more predicate-object pairs.
This will find all components that have an input port annotated with http://scape-project.eu/pc/vocab/profiles#hasPortType http://scape-project.eu/pc/vocab/profiles#FromURIPort.