29 SDO_OLSパッケージ(OpenLS)

MDSYS.SDO_OLSパッケージには、Spatial and GraphのOpenLSをサポートするためのサブプログラムが含まれています。

この章で説明するサブプログラムを使用する場合は、OpenLSの概念および使用方法を理解しておく必要があります(「OpenLSのサポート」を参照)。

この章では、これらのサブプログラムのリファレンス情報をアルファベット順に説明します。

トピック:

29.1 SDO_OLS.MakeOpenLSClobRequest

構文

SDO_OLS.MakeOpenLSClobRequest(
     request  IN CLOB 
     ) RETURN CLOB;

説明

CLOBオブジェクトを使用してOpenLSリクエストを送信し、結果をCLOBオブジェクトとして戻します。

パラメータ

request

CLOBオブジェクト形式のOpenLSリクエストを指定します。

使用上の注意

入力リクエストをXMLTypeオブジェクトとして指定してXMLTypeオブジェクトを戻すには、SDO_OLS.MakeOpenLSRequestファンクションを使用します。

OpenLSのサポートについては、「OpenLSのサポート」を参照してください。

次の例では、指定したカテゴリで(つまり、指定したSIC_code値を使用して)、指定した場所(経度: -122.4083257、緯度: 37.788208)に最も近いビジネス情報を要求します。

DECLARE
  request CLOB;
  result CLOB;
BEGIN
request := TO_CLOB(
'<?xml version="1.0" encoding="UTF-8"?>
<XLS xmlns="http://www.opengis.net/xls" xmlns:gml="http://www.opengis.net/gml" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1">
 <RequestHeader clientName="someName" clientPassword="password"/>
 <Request requestID="123" maximumResponses="100" version="1.1" 
      methodName="DirectoryRequest">
  <DirectoryRequest>
   <POILocation>
    <Nearest nearestCriterion="Proximity">
     <Position>
      <gml:Point xmlns:gml="http://www.opengis.net/gml">
       <gml:pos dimension="2" srsName="4326">-122.4083257 37.788208</gml:pos>
      </gml:Point>
     </Position>
    </Nearest>
   </POILocation>
   <POIProperties>
    <POIProperty name="SIC_code" value="1234567890"/>
   </POIProperties>
  </DirectoryRequest>
 </Request>
</XLS>');
 
result := SDO_OLS.makeOpenLSClobRequest(request);
 
END;
/

29.2 SDO_OLS.MakeOpenLSRequest

構文

SDO_OLS.MakeOpenLSRequest(
     request  IN XMLTYPE 
     ) RETURN XMLTYPE;

説明

XMLTypeオブジェクトを使用してOpenLSリクエストを送信し、結果をXMLTypeオブジェクトとして戻します。

パラメータ

request

XMLTypeオブジェクト形式のOpenLSリクエストを指定します。

使用上の注意

入力リクエストをCLOBとして指定してCLOBを戻すには、SDO_OLS.MakeOpenLSClobRequestファンクションを使用します。

OpenLSのサポートについては、「OpenLSのサポート」を参照してください。

次の例では、指定したカテゴリで(つまり、指定したSIC_code値を使用して)、指定した場所(経度: -122.4083257、緯度: 37.788208)に最も近いビジネス情報を要求します。

SELECT SDO_OLS.makeOpenLSRequest(XMLTYPE(
'<?xml version="1.0" encoding="UTF-8"?>
<XLS xmlns="http://www.opengis.net/xls" xmlns:gml="http://www.opengis.net/gml" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1">
 <RequestHeader clientName="someName" clientPassword="password"/>
 <Request requestID="123" maximumResponses="100" version="1.1" 
      methodName="DirectoryRequest">
  <DirectoryRequest>
   <POILocation>
    <Nearest nearestCriterion="Proximity">
     <Position>
      <gml:Point xmlns:gml="http://www.opengis.net/gml">
       <gml:pos dimension="2" srsName="4326">-122.4083257 37.788208</gml:pos>
      </gml:Point>
     </Position>
    </Nearest>
   </POILocation>
   <POIProperties>
    <POIProperty name="SIC_code" value="1234567890"/>
   </POIProperties>
  </DirectoryRequest>
 </Request>
</XLS>')) "OpenLS Response" FROM DUAL;