XMLWordPrintableJSON

Details

    Description

      API for getting/setting annotations on beans.

      Probably pretty much using the PropertyResource hierarchy.

      Should be kept under WorkflowBundle.getAnnotations() (a Set<PropertyResource>) and stored in the bundle under say annotation/workflow/HelloWorld.rdf for annotations of workflow/HelloWorld.rdf.

      The API (probably in Scufl2Tools) should have something like:

      PropertyResource annotationsFor(WorkflowBean)

      which would use URITools to find the matching property resource.

      The annotation should have the possibility of annotating relatively, URIs are like {../../../workflow/HelloWorld/processor/hello/}}, or absolutely like http://ns.taverna.org.uk/2010/workflowBundle/ffefefe-fefefefef/workflow/HelloWorld/processor/soup/. The difference is that the last is a historical annotation which is not to be updated - the processor 'soup' might not even exist any more. On the other hand the relative annotations will be updated when workflow beans are renamed, deleted, copied, etc. - on saving of a workflow bundle the objects and subject URIs pointing to relative objects should be updated to reflect the current relative URIs. If the bean is no longer there - the relative annotation can also be scrapped.

      Serialisation-wise the annotations can be stored in the same way as PropertyResource (as they will be PropertyResources) which should allow for arbitrary annotations as long as a certain schema is followed.

      It should not be needed to have corresponding PropertyDefinition's - but it might be useful to have a class with constants for the most typical Dublin Core attributes like DC.title.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              stain Stian Soiland-Reyes
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: