[GeoNetwork-users] Problem with DISJOINT spatial operator via CSW GetRecords HTTP request

Hi, I have different result with a CSW GetRecords with spatial filter.

Via GeoNetwork I have a result number (k). In my example in "Advanced" I
select :

  * _Type:_ "is fully outside of"
  * _Region:_ Italy

Via HTTP request I have 0 result. In my example:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
xmlns:ns16="http://www.w3.org/2001/SMIL20/Language&quot;
xmlns:ns14="http://purl.org/dc/terms/&quot;
xmlns:ns15="http://www.opengis.net/gml/3.2&quot;
xmlns:gco="http://www.isotc211.org/2005/gco&quot;
xmlns:gmd="http://www.isotc211.org/2005/gmd&quot;
xmlns:gsr="http://www.isotc211.org/2005/gsr&quot;
xmlns:ns12="http://www.w3.org/2001/SMIL20/&quot;
xmlns:gss="http://www.isotc211.org/2005/gss&quot;
xmlns:ns13="http://purl.org/dc/elements/1.1/&quot;
xmlns:gts="http://www.isotc211.org/2005/gts&quot;
xmlns:gmx="http://www.isotc211.org/2005/gmx&quot;
xmlns:ns11="http://www.w3.org/1999/xlink&quot;
xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:ows="http://www.opengis.net/ows&quot;
xmlns:csw="http://www.opengis.net/cat/csw/2.0.2&quot;
xmlns:gml="http://www.opengis.net/gml&quot;&gt;
    <csw:Query typeNames="gmd:MD_Metadata" xmlns="">
        <csw:ElementSetName>summary</csw:ElementSetName>
        <csw:Constraint version="1.1.0">
            <ogc:Filter>
                <ogc:Contains>
                    <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
                    <gml:Envelope>
                        <gml:lowerCorner>6.624 36.6492</gml:lowerCorner>
                        <gml:upperCorner>18.5144 47.0946</gml:upperCorner>
                    </gml:Envelope>
                </ogc:Contains>
            </ogc:Filter>
        </csw:Constraint>
    </csw:Query>
</csw:GetRecords>

Why I don't have any result with DISJOINT spatial operator?

Thanks and best regards.

There is a typo: the spatial operator is Disjoint and not Contains.

On 24/05/2012 18:57, Vincenzo Monteverde wrote:

Hi, I have different result with a CSW GetRecords with spatial filter.

Via GeoNetwork I have a result number (k). In my example in "Advanced"
I select :

  * _Type:_ "is fully outside of"
  * _Region:_ Italy

Via HTTP request I have 0 result. In my example:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
xmlns:ns16="http://www.w3.org/2001/SMIL20/Language&quot;
xmlns:ns14="http://purl.org/dc/terms/&quot;
xmlns:ns15="http://www.opengis.net/gml/3.2&quot;
xmlns:gco="http://www.isotc211.org/2005/gco&quot;
xmlns:gmd="http://www.isotc211.org/2005/gmd&quot;
xmlns:gsr="http://www.isotc211.org/2005/gsr&quot;
xmlns:ns12="http://www.w3.org/2001/SMIL20/&quot;
xmlns:gss="http://www.isotc211.org/2005/gss&quot;
xmlns:ns13="http://purl.org/dc/elements/1.1/&quot;
xmlns:gts="http://www.isotc211.org/2005/gts&quot;
xmlns:gmx="http://www.isotc211.org/2005/gmx&quot;
xmlns:ns11="http://www.w3.org/1999/xlink&quot;
xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:ows="http://www.opengis.net/ows&quot;
xmlns:csw="http://www.opengis.net/cat/csw/2.0.2&quot;
xmlns:gml="http://www.opengis.net/gml&quot;&gt;
    <csw:Query typeNames="gmd:MD_Metadata" xmlns="">
        <csw:ElementSetName>summary</csw:ElementSetName>
        <csw:Constraint version="1.1.0">
            <ogc:Filter>
                <ogc:Contains>
                    <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
                    <gml:Envelope>
                        <gml:lowerCorner>6.624 36.6492</gml:lowerCorner>
                        <gml:upperCorner>18.5144 47.0946</gml:upperCorner>
                    </gml:Envelope>
                </ogc:Contains>
            </ogc:Filter>
        </csw:Constraint>
    </csw:Query>
</csw:GetRecords>

Why I don't have any result with DISJOINT spatial operator?

Thanks and best regards.

--
E-MAIL FIRMATA DIGITALMENTE

I thing this is a bug of GeoNetwork.

I fix with a workaround: the spatial operator DISJOIT is equal to
NOT(INTERSECTS).
This is the workaround request:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
xmlns:ns16="http://www.w3.org/2001/SMIL20/Language&quot;
xmlns:ns14="http://purl.org/dc/terms/&quot;
xmlns:ns15="http://www.opengis.net/gml/3.2&quot;
xmlns:gco="http://www.isotc211.org/2005/gco&quot;
xmlns:gmd="http://www.isotc211.org/2005/gmd&quot;
xmlns:gsr="http://www.isotc211.org/2005/gsr&quot;
xmlns:ns12="http://www.w3.org/2001/SMIL20/&quot;
xmlns:gss="http://www.isotc211.org/2005/gss&quot;
xmlns:ns13="http://purl.org/dc/elements/1.1/&quot;
xmlns:gts="http://www.isotc211.org/2005/gts&quot;
xmlns:gmx="http://www.isotc211.org/2005/gmx&quot;
xmlns:ns11="http://www.w3.org/1999/xlink&quot;
xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:ows="http://www.opengis.net/ows&quot;
xmlns:csw="http://www.opengis.net/cat/csw/2.0.2&quot;
xmlns:gml="http://www.opengis.net/gml&quot;&gt;
    <csw:Query typeNames="gmd:MD_Metadata" xmlns="">
        <csw:ElementSetName>summary</csw:ElementSetName>
        <csw:Constraint version="1.1.0">
            <ogc:Filter>
                <ogc:Not>
                    <ogc:Intersects>
                        <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
                        <gml:Envelope>
                            <gml:lowerCorner>6.624 36.6492</gml:lowerCorner>
                            <gml:upperCorner>18.5144
47.0946</gml:upperCorner>
                        </gml:Envelope>
                    </ogc:Intersects>
                </ogc:Not>
            </ogc:Filter>
        </csw:Constraint>
    </csw:Query>
</csw:GetRecords>

On 24/05/2012 23:25, Vincenzo Monteverde wrote:

There is a typo: the spatial operator is Disjoint and not Contains.

On 24/05/2012 18:57, Vincenzo Monteverde wrote:

Hi, I have different result with a CSW GetRecords with spatial filter.

Via GeoNetwork I have a result number (k). In my example in
"Advanced" I select :

  * _Type:_ "is fully outside of"
  * _Region:_ Italy

Via HTTP request I have 0 result. In my example:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
xmlns:ns16="http://www.w3.org/2001/SMIL20/Language&quot;
xmlns:ns14="http://purl.org/dc/terms/&quot;
xmlns:ns15="http://www.opengis.net/gml/3.2&quot;
xmlns:gco="http://www.isotc211.org/2005/gco&quot;
xmlns:gmd="http://www.isotc211.org/2005/gmd&quot;
xmlns:gsr="http://www.isotc211.org/2005/gsr&quot;
xmlns:ns12="http://www.w3.org/2001/SMIL20/&quot;
xmlns:gss="http://www.isotc211.org/2005/gss&quot;
xmlns:ns13="http://purl.org/dc/elements/1.1/&quot;
xmlns:gts="http://www.isotc211.org/2005/gts&quot;
xmlns:gmx="http://www.isotc211.org/2005/gmx&quot;
xmlns:ns11="http://www.w3.org/1999/xlink&quot;
xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:ows="http://www.opengis.net/ows&quot;
xmlns:csw="http://www.opengis.net/cat/csw/2.0.2&quot;
xmlns:gml="http://www.opengis.net/gml&quot;&gt;
    <csw:Query typeNames="gmd:MD_Metadata" xmlns="">
        <csw:ElementSetName>summary</csw:ElementSetName>
        <csw:Constraint version="1.1.0">
            <ogc:Filter>
                <ogc:Contains>
                    <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
                    <gml:Envelope>
                        <gml:lowerCorner>6.624 36.6492</gml:lowerCorner>
                        <gml:upperCorner>18.5144
47.0946</gml:upperCorner>
                    </gml:Envelope>
                </ogc:Contains>
            </ogc:Filter>
        </csw:Constraint>
    </csw:Query>
</csw:GetRecords>

Why I don't have any result with DISJOINT spatial operator?

Thanks and best regards.

--
E-MAIL FIRMATA DIGITALMENTE

--
E-MAIL FIRMATA DIGITALMENTE