Can SBOL encode DNA Assembly linkers? Where in an SBOL file could you specify the linkers that would be placed as prefixes / suffixes between parts for assembly? Lets say you have a final construct of your design and want to assemble the component parts - could you encode what linkers you used between each component, ie as an annotation? Would this be different between SBOL versions?
Every version of SBOL allows you to specify prefixes/suffixes as annotations on a sequence.

In SBOL 3, the construct would be a Component of type DNA (https://identifiers.org/SBO:0000251), and the linker a SequenceFeature on that Component. The role of the sequence feature might depend on the particular assembly you are describing, and whether you're talking before or after assembly (in those cases where the process changes the sequence), but a good one in many cases would be Nucleotide Binding Site (https://identifiers.org/SO:0001655)
In SBOL 2, the representation is the same, except the construct would be a ComponentDefinition and the linker a SequenceAnnotation.
In SBOL 1, the representation is still the same, except the construct would be a DnaComponent and the linker an SBOL 1 SequenceAnnotation (which has different fields than in SBOL 2).

If the assembly method does not change the sequence, then all three can represent this pretty much equally well.  If you want to represent a sequence that is modified by assembly or the plasmid carriers from which parts are extracted, then SBOL 3 is the best because it cleanly represents deletions during assembly via the sourceLocation field.