My apologies - you are right - I realize now that if you open a wfbundle (as opposed to a .t2flow) - then getAnnotations() is always empty.
It should work if you open a .t2flow as the T2flow parser populates wfbundle.getAnnotations(). The reason is that the annotation links in wfbundle.getAnnotations() are not stored in the wfbundle manifest (and not parsed). some preliminary code for this was at: https://github.com/apache/incubator-taverna-language/blob/0.15.1-incubating/taverna-scufl2-wfbundle/src/main/java/org/apache/taverna/scufl2/rdfxml/RDFXMLSerializer.java#L549 To put it blunt - the t2flow parsed adds <annotation/02a6e877-a4f0-44f9-9730-6b60a55092a6.ttl> that describes <workflow/Workflow1/in/DataSetPath> - however the link between <workflow/Workflow1/in/DataSetPath> and <annotation/02a6e877-a4f0-44f9-9730-6b60a55092a6.ttl> is not serialized - and so the only way to find annotation/ now is to go through the annotation/ folder. I think this relates to https://issues.apache.org/jira/browse/TAVERNA-965 as the UCFPackage or WorkflowBundle didn't have a mechanism to serialize which annotations exist (it would basically need to replicate https://w3id.org/bundle/#manifest-annotations ) - and so there would not be any point in not moving to taverna-robundle for managing the bundle and the annotations. This bug was already tracked at https://issues.apache.org/jira/browse/TAVERNA-71 - I've promoted this to be Fix For Language 0.16.0. I've shown you a workaround in https://github.com/enridaga/taverna-sandbox/pull/1 to parse the wfbundle annotations and I'm testing to add this to taverna-scufl2-wfbundle as a workaround. On 3 May 2016 at 11:19, Enrico Daga (enridaga) <[email protected]> wrote: > Hi Stian, > > I tried with the latest release but I am still struggling on getting this > work. > > I prepared a minimal project to test the issue [1], which contains a single > test using a workflow downloaded from my experiment (and converted to > wfbundle) [2]. > > This wf contains a set of annotations, particularly from input ports. I can > see them unpacking the bundle [3]. > > However, I cannot access them in the way you suggested (replicated here [4]). > > Best, > > Enrico > > > > [1] https://github.com/enridaga/taverna-sandbox > <https://github.com/enridaga/taverna-sandbox> > [2] http://www.myexperiment.org/workflows/4303.html > <http://www.myexperiment.org/workflows/4303.html> > [3] > https://github.com/enridaga/taverna-sandbox/tree/master/src/test/resources/bundles/3Drec-v1/annotation > > <https://github.com/enridaga/taverna-sandbox/tree/master/src/test/resources/bundles/3Drec-v1/annotation> > [4] > https://github.com/enridaga/taverna-sandbox/blob/master/src/test/java/enridaga/AppTest.java > > <https://github.com/enridaga/taverna-sandbox/blob/master/src/test/java/enridaga/AppTest.java> > > — > Enrico Daga (enridaga) > http://www.enridaga.net <http://www.enridaga.net/> > Il budda e’ nel parco. > > > > > >> On 3 May 2016, at 09:01, Enrico Daga (enridaga) <[email protected]> wrote: >> >> Thank you Stian, this is gold. >> >> Will try the new release as well. >> >> It's good to have Taverna at Apache! >> >> Best, >> Enrico >> >> >> — >> Enrico Daga (enridaga) >> http://www.enridaga.net <http://www.enridaga.net/> >> Il budda e’ nel parco. >> >> >> >> >> >>> On 2 May 2016, at 17:19, Stian Soiland-Reyes <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> BTW - another alternative - if you convert to wfdesc with tavlang convert - >>> see >>> https://github.com/apache/incubator-taverna-language/tree/master/taverna-tavlang-tool >>> >>> <https://github.com/apache/incubator-taverna-language/tree/master/taverna-tavlang-tool> >>> >>> then you should also get all the annotations across the workflow - but >>> you will loose the information about when it was made as it comes back >>> as a single Triple file. >>> >>> On 28 April 2016 at 16:25, Enrico Daga (enridaga) <[email protected] >>> <mailto:[email protected]>> wrote: >>>> Hi, >>>> >>>> I am using the taverna API to explore workflows downloaded from >>>> MyExperiment. >>>> At the moment, I converted the files to the .wfbundle format using the >>>> taverna command line tools. Everything looks fine. >>>> Unzipping a wfbundle I can read a set of .ttl files in the annotations/ >>>> folder, but I am not able to do that through the Java API. >>>> In the simplest form, my code is as follows: >>>> >>>> WorkflowBundleIO io = new WorkflowBundleIO(); >>>> final WorkflowBundle wb = >>>> io.readBundle(__f(“file.wfbundle"), null); >>>> System.out.println("Annotations: " + >>>> wb.getAnnotations().size()); >>>> >>>> What is the recommended way to get: >>>> - The description of a workflow (as I can see it on the myexperiment >>>> portal) >>>> - All the annotations in a bundle >>>> - The annotations of a given WorkflowBean element >>>> - To access/modify/extend the annotations >>>> >>>> I am using release 0.15.0-incubating. >>>> >>>> Thank you in advance for your help, >>>> >>>> Enrico >>>> >>>> >>>> >>>> >>>> >>>> — >>>> Enrico Daga (enridaga) >>>> http://www.enridaga.net <http://www.enridaga.net/> >>>> <http://www.enridaga.net/ <http://www.enridaga.net/>> >>>> Il budda e’ nel parco. >>>> >>>> >>>> >>>> >>>> >>> >>> >>> >>> -- >>> Stian Soiland-Reyes >>> Apache Taverna (incubating), Apache Commons RDF (incubating) >>> http://orcid.org/0000-0001-9842-9718 <http://orcid.org/0000-0001-9842-9718> > -- Stian Soiland-Reyes Apache Taverna (incubating), Apache Commons RDF (incubating) http://orcid.org/0000-0001-9842-9718
