SynBioDex / SBOL-specification

The Synthetic Biology Open Language (SBOL)
http://sbolstandard.org
15 stars 9 forks source link

Representing circular elements #59

Closed jakebeal closed 7 years ago

jakebeal commented 8 years ago

The circularity flag was removed when moving from SBOL 1.1 to SBOL 2.0 because DnaComponent was generalized to Component, for which the question of topology is much less obvious.

We are running into issues, however, e.g., when importing from GenBank and running into sequences that cross the numbering boundary, so that they start at a larger index than they end at. We thus need some way of dealing with these sorts of issues at least, whether or not we attempt to tackle the larger problem of component topology.

graik commented 8 years ago

James M. suggested to use the existing role field for this. Needs SEP

cjmyers commented 8 years ago

As far as the locations go, I’ve been thinking if you have:

complement(150,50)

You could represent this with a set of Locations, perhaps:

range(150,200) cut(200) range(1,50)

If you then had a role that indicate that this was a circular annotation, then you could infer from the above that it runs to origin at 200, then continues.

Chris

On Mar 31, 2016, at 7:30 AM, Raik Grünberg notifications@github.com wrote:

James M. suggested to use the existing role field for this. Needs SEP

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/SynBioDex/SBOL-specification/issues/59#issuecomment-203936293

graik commented 8 years ago

This is addressed in SEP 008 which we intend to move forward on as a best practice without a vote (needs to be discussed on the list)

cjmyers commented 7 years ago

I’ve reviewed the changes to text that Raik has made, and I think they look good with the exception of the new validation rules. You have added a required rule about CD’s that are not DNA/RNA not being allowed to use specific terms from SO. I think this should be changed to a best practice. We have a similar rule for the use of SO in roles, and it is a best practice (see below). The reason is we might have someone want to specify a type which is essentially similar to a DNA/RNA molecule where this makes sense to use SO, and we don’t want to make this actually invalid. It does mean that it is harder to exchange, but we want to allow people to do these types of experimental things if they so desire.

I suggest perhaps changing this rule to match the one above to something like:

"The types property of a ComponentDefinition SHOULD NOT contain a URI that refers to a term from the topology attribute or strand attribute branches of the SO unless its types property also contains the DNA or RNA type URI listed in Table 2.”

I would also suggest re-wording the other rule to match the similar one below, to something like”

“If the types property of a ComponentDefinition contains the DNA or RNA type URI, then its types property SHOULD also contain exactly one URI that refers to a term from the topology attribute branch of the SO."

cjmyers commented 7 years ago

The updated text from Raik to address this issue has been merged along with the small changes to validation rules described above. Closing this issue.