@abc.abstractmethod<EOL><INDENT>def get_spatial_unit_conversion_session_for_type(self, source_spatial_unit_record_type, target_spatial_unit_record_type):<DEDENT>
return<EOL>
Gets an ``OsidSession`` associated with the spatial unit conversion service and the given spatial unit record types.

        :param source_spatial_unit_record_type: the type of the source spatial unit record
        :type source_spatial_unit_record_type: ``osid.type.Type``
        :param target_spatial_unit_record_type: the type of the target spatial unit record
        :type target_spatial_unit_record_type: ``osid.type.Type``
        :return: a ``SpatialUnitConversionSession``
        :rtype: ``osid.locale.SpatialUnitConversionSession``
        :raise: ``NullArgument`` -- ``source_spatial_unit_record_type`` or ``target_spatial_unit_record_type`` is ``null``
        :raise: ``OperationFailed`` -- unable to complete request
        :raise: ``Unimplemented`` -- ``supports_spatial_unit_conversion()`` or ``supports_visible_federation()`` is ``false``
        :raise: ``Unsupported`` -- ``supports_spatial_unit_record_types_for_conversion(source_spatial_unit_record_type, target_spatial_unit_record_type)`` is ``false``

        *compliance: optional -- This method must be implemented if
        ``supports_spatial_unit_conversion()`` and
        ``supports_visible_federation()`` are ``true``.*