It turns out that you have to explicitly tell InSync (via the oracle_objects_dataset.dataset_instance_metadata shared constant) that you want text and/or points to retain their orientation.
An example of the parameters in the context of the dataset_instance_metadata...
oracle_objects_dataset.define_shared_constant(
:dataset_instance_metadata,
property_list.new_with( :customer_oracle,
property_list.new_with( <other_properties>,
:options,property_list.new_with(:oriented_texts,_true,
:oriented_points,_true)
) ),
:private )
I would have thought that the default should be to always include oriented points and texts. But short of patching the InSync code, you will need to be aware of this unintuitive assumption of orientations and explicitly set the property to _true.
One other note about text geometry. While InSync allows you to set up a field mapping between a Smallworld text geometry and an Oracle geometry field, there is no functionality to store the actual Smallworld text geometry character string in the Oracle geometry field. All that gets copied into Oracle is the text location (and possibly orientation). If you want to get an actual character string to appear on the map in Oracle you will need to make use of Oracle text labelling at that "text" location. You would typically use the Oracle Map Builder application to configure what string is drawn at the "text" location.