Bom dia!
Durante essa semana, precisei trabalhar com uma tabela que possuía algumas colunas do tipo SDO_GEOMETRY. Basicamente eu precisava montar uma querie para converter esse dado em LATITUDE e LONGITUDE para que a aplicação .NET, pudesse "plotar" o ponto, utilizando uma api do google/maps. (Isso deveria ser uma querie que o .net iria utilizar internamente, para consumir as informações do banco produto).
Além disso a grande dificuldade era que isso deveria ser extraído de um ambiente, onde não poderia ser criado nenhum tipo de objeto (type,tabelas temporarias,functions, etc). Basicamente, a solução encontrada dada as limitações (não elegante, na minha opinião, mas funcional), foi retornar para aplicação uma string, concatenando o retorno.
Deixo abaixo, um código com tabelas "fictícias" ,para ilustrar a forma e as funções que utilizei para conversão do SDO_GEOMETRY em LAT/LON.
DECLARE
CURSOR CDADOS IS
SELECT C.ID_PONTO "ID_PONTO",
C.LOCATION "LOCATION" ---COLUNA DO TIPO SDO_GEOMTRY
FROM TABLE_GEOMETRY C;
TYPE TDADOS IS TABLE OF CDADOS%ROWTYPE INDEX BY BINARY_INTEGER;
VDADOS TDADOS;
V_CONVERTED SDO_GEOMETRY;
VRETORNO CLOB;
FUNCTION FUN_MONTA_RETORNO(ID_PONTO VARCHAR2, LAT VARCHAR2, LON VARCHAR2)
RETURN CLOB IS
BEGIN
RETURN TO_CHAR(ID_PONTO) || ';' ||
TO_CHAR(LAT) || ';' ||
TO_CHAR(LON) || '||';
END FUN_MONTA_RETORNO;
BEGIN
OPEN CDADOS;
FETCH CDADOS BULK COLLECT INTO VDADOS;
CLOSE CDADOS;
FOR L IN 1..VDADOS.COUNT()
LOOP
BEGIN
V_CONVERTED:= SDO_CS.TRANSFORM(SDO_GEOMETRY(VDADOS(L).LOCATION.SDO_GTYPE,
VDADOS(L).LOCATION.SDO_SRID,
NULL,
VDADOS(L).LOCATION.SDO_ELEM_INFO,
SDO_ORDINATE_ARRAY(VDADOS(L).LOCATION.SDO_ORDINATES(1) / 100,
VDADOS(L).LOCATION.SDO_ORDINATES(2) / 100,
0)),8307);
BEGIN
VRETORNO := VRETORNO || FUN_MONTA_RETORNO(
TO_CHAR(VDADOS(L).ID_PONTO),
TO_CHAR(V_CONVERTED.SDO_ORDINATES(2)),
TO_CHAR(V_CONVERTED.SDO_ORDINATES(1))
);
END;
END;
END LOOP;
SELECT VRETORNO INTO :PRM_SAIDA FROM DUAL;
END;
SELECT VRETORNO INTO :PRM_SAIDA FROM DUAL
FUN_MONTA_RETORNO

Caso alguém conheça, alguma forma mais elegante/eficaz para converter um SDO_GEOMETRY em LAT/LON (googles_maps), por favor, compartilhe.
Abraço pessoal!