Use of both Sequence and BBox in Annotation class

Thank you, I definitely agree that just always using a DataFrame as the underlying data structure would allow for things to be more consistent. A column would get added for each additional dimension that an annotation type has. E.g., single time points would have a single column. Segments that have two dimensions would have another column. Bounding boxes would add two more columns.

And then methods would allow for getting annotations in a certain format, as you suggest.

:thinking:

I can’t come up with names for the columns that would work across annotation types though. Like, for segments you could have “start” and “stop” but for a single time point it doesn’t make sense to have a “start” without a “stop”. You could do something generic like (“dim1”, “dim2”) and then have the accessor methods know which dims to access.

Definitely food for thought.
I’m not 100% sure it’s needed right at this exact moment but the approach appeals to me.

If you feel like raising an issue about this on Crowsetta I’d be happy to test this at some point, get feedback from you, and give you contribution credit: