#1605 closed enhancement (fixed)
Inherit annotations from a child path
Reported by: | Nicklas Nordborg | Owned by: | Nicklas Nordborg |
---|---|---|---|
Priority: | major | Milestone: | BASE 3.1 |
Component: | core | Version: | |
Keywords: | Cc: |
Description
This may seem contradicting, but the use case is some like follows:
- Let's say we have the usual chain of biomaterial items.
BioSource -> Sample -> Extract -> ... -> RawBioAssay
. - From the extract (E1) we make a child extract (E2) that we use for, for example, quality measurement. This is stored as an annotation on E2.
- We do now want to use this annotation as an experimental factor on the raw bioassay, but it is not possible since E2 is not a parent item.
Ok, in this case we could have stored the annotation on E1 instead of on E2, but lets say that we store what is remaining of E1 in a freezer and a year later we do another experiment with it. We need to redo the quality measurement since it may have changed during the storage time. So we create E3 as a child to E1 and annotate E3 with the new quality measurement. This time we can't store the annotation on E1 since it would conflict with the first measurement.
My current idea is that this should be be able to work if we had a flag on each item telling if annotations should be inherited up or down the path. Things to consider:
- Is one flag that flips the direction enough or do we need flags that turn on/off each direction independently?
- Should we have the flag(s) on the annotation set or on the items? If the flag(s) are on the annotation set the feature will be available on all annotatable items. I am not sure this makes sense but we could disable this feature on certain items programmatically since database-wise it makes sense to keep this information in a single place.
Change History (7)
comment:1 by , 13 years ago
Milestone: | BASE 3.0 → BASE 3.1 |
---|
comment:2 by , 13 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:3 by , 13 years ago
comment:4 by , 13 years ago
comment:5 by , 13 years ago
(In [5985]) References #1605: Inherit annotations from a child path
Implemented support in the "Item overview" functionality for biomaterial items and physical bioassays. Each loader implementation need to handle this case in the loadReverseChildNodes()
method which should create PROPERTY
-type nodes for the child items that have an item subtype with the pushAnnotations
flag set. The downwards path of that branch will then be followed even though the main direction is going upwards.
comment:6 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
The idea we have now that the nice feature with item subtypes (#1597) has been implemented is to have the flag on the subtype instead of on each individual item. This will prevent mistakes from forgetting to set the flag on the items and makes it easier to set up the correct workflow with item subtypes.