Hi Jake,
Let me see if I can illustrate this with a use case from SBOLDesigner. Assume you are building a GeneticToggleSwitch. If I’m doing top down design, I might start out by instantiating two Engineered Regions as shown below. Currently, these do not have sub-structure, though certainly they are intended to eventually have sub-structure. So, if I were to stop here to have a coffee, this would be a fine rendering of two Engineered Regions which are not composites. Later, I may come back and fill in the details for these genetic inverters. At this point, they are composites. We could put two little dashes now above/below the boxes (consistent with Composite dashed lines approved now) to indicate that these Engineered Regions are now composites.
Now, consider again looking at my attached diagram with the idea that rectangle is No Assigned Glyph (including Engineered Region). If this is the case, I don’t know if this is two sequence features which I don’t know how to render OR two Engineered Regions that I have not yet filled in the details for. These are VERY different things, and I would like them to be rendered differently.
This entire discussion started because when Michael and I were considering which SO terms to use for this Glyph, we realized that while we were thinking that these were Engineered Regions and should use that SO term for this Glyph, we realized that was not what the specification says, that it could indeed represent any SO term with no glyph. This is very problematic for the UI as the default sort of SO terms provided as choices to the user for role refinement on these glyphs is very different depending on whether it should be Engineered Region and all it children OR Sequence Feature and all its children (over 2800 choices!!!).
Hope this clarifies the problem this issue is causing our development.
Thanks,
Chris