[Mapserver-dev] OGC ServiceExceptions and invalid layers

Steve Lime steve.lime at dnr.state.mn.us
Thu Oct 23 16:02:27 EDT 2003


Anything that involves intersection tests (intersects, overlaps) can be
done now. That's basically
what a featurequery does. At present only polygons are supported but 10
lines of code would get
you linear features too. The beyond stuff also works. It's basically
the same a above but with
tolerances. This is the code I added for you guys last winter.

Any of the contain/within type of operators MAY be ready now. I'd have
to look at the code. If anything
the existing tests could be used with some minor revisions to exclude
anything external for a shape.

Touches, the basic code exists, you just need to test for a distance of
zero between all line segments 
of polygon/line features.

The contain/touches operations would need to find there way into the
query funtions.

Curiously a user just sent me a patch for the bison parser for string
<,>,... so that will be available
later today.

Steve

Stephen Lime
Data & Applications Manager

Minnesota DNR
500 Lafayette Road
St. Paul, MN 55155
651-297-2937

>>> Yewondwossen Assefa <assefa at dmsolutions.ca> 10/22/2003 2:00:38 PM
>>>
Here is the current status for OCG filter encoding support :


Spatial Capabilities Filters :

    - BBOX : supported

    - Equals : (compares if 2 geometries are equal) : Not suooprted but

could be easliy added to mapserver.

    - Disjoint : (opposite to bbox and exclude element that intersects

the query shape) Not supported. We need to add functions in mapserver 
that returns shapes that only intersects a certain query geometry and 
then we would be able to support it

     - Intersects : Not supported (see comments above)

      - Touches : Not supported (Touches definition differ depending on

the geometry it refers to but basically it means the edge of one 
geometry touches the other geometry without crossing it)

	
      - Within	Not support : Elements are inside the querieng shape
when 
It is a polygon, and when It is a line, elements are of linear types
and 
the segnments are a subset of the querying shape.

      - Contain : Not supported : opposite to Within

      - Overlaps	Not supported : The query shape and the queried

elements are of the same geometry. They have a common intersection.

      - Beyond	and DWithin : Not supported : The spatial operators 
DWithin and Beyond test whether the value of a geometric property is 
within or beyond a specified distance of the specified geometry.
This could be with the current mapserver code woth point query and a 
buffer but needs some works for other type of geometries


Scalar Capabilities	
	
Logical Operators	
       - And	: Supprted
        - Or	: Supported
        - Not : Supported

Comparison Operators:
   	PropertyIsEqualTo (=)	Yes
	PropertyIsNotEqualTo (<>)	Yes
	PropertyIsLessThan (<)	Yes
	PropertyIsGreaterThan (>)	Yes
	PropertyIsLessThanOrEqualTo (<=)	Yes
	PropertyIsGreaterThanOrEqualTo (>=)	Yes
	PropertyIsLike	Yes
	PropertyIsBetween (range)	Yes
	PropertyIsNull	No

  Limitiations with the comaparison operators :
     - we do not support in mapserver comparasion >, <, <=, <= on 
alphanumeric values.
	

Later,


Daniel Morissette wrote:

> Steve Lime wrote:
> 
>> Has anyone mapped OGC filters to MapServer queries explicitly? If so
I'd
>> love
>> to see the list and know where the gaps are. Many may already be
doable
>> or
>> easily added.
>>
> 
> Yes, Assefa has done that in 4.1... we really need to update everyone
on 
> what we're doing... what he's done is mapping of OGC filters to 
> MapServer expressions, and then specifically for the WFS he convert
WFS 
> requests with filters to MapServer queries.
> 
> Assefa has a list of filter types that are supported and not
supported. 
>  I'll let him follow up on that.
> 

-- 
----------------------------------------------------------------
Assefa Yewondwossen
Software Analyst

Email: assefa at dmsolutions.ca 
http://www.dmsolutions.ca/ 

Phone: (613) 565-5056 (ext 14)
Fax:   (613) 565-0925
----------------------------------------------------------------






More information about the mapserver-dev mailing list