thanks a lot for your replies!

On Thursday 17 April 2008 11:16:21 Andrea Aime wrote:
> Mauricio Pazos ha scritto:
> > Hi, we was preparing the land to extend CQL. You could see the scope in
> > the following link:
> >
> > http://docs.codehaus.org/display/GEOTOOLS/TXT+Language+Analysis
> >
> > Now I have some doubt about the ID Predicate, that is:
> >
> > #road.1, #road.2, #road.47
> >
> > As you can see it is a sequence of "fids" preceded by  "#" and separated
> > by comma (","). Then the fid can not contain "#"  or ",". Is this a valid
> > hypothesis for all DBMS?
>
> Saul's right, we just need escaping. Yet, jdeolive made me notice that
> in WFS 1.1 there is the "@gml:id" expression that can be used to
> signify the id of a feature. This open two possibilities.
> TXT (and CQL) could simply use @gml:id = 'states.1' as an expression
> that gets parsed as a FidFilter.
> But here comes the twist. If my understading is correct, the above
> expression could be used to build a PropertyIsEqualTo filter to, like in:
>
> <PropertyIsEqualTo>
>    <PropertyName>@gml:id</PropertyName>
>    <Literal>states.1</Literal>
> </PropertyIsEqualTo>
>
> The bad news is that I can't find any data store able to encode the
> above filter... All support I could find is a property accessor that
> can handle @gml:id or @id and extract the feature id.
>
> Glub... confused... anyone has a better understading of what's going
> on with this @gml:id thing?
>
> Cheers
> Andrea
In gml v2, I think the FidFilter should be 

<Filter>
   <FeatureId fid="states.1"/>
</Filter>

about the expression @gml:id = 'states.1', I agree with Jody that is 
@states.1
to avoid the gml token in TXT context.

other possibility could be

        fid='states.1' 
or a list 

        fid='states.1', fid='states.2', fid='states.3', 

"fid" is used in the filter especification

<xsd:element name="FeatureId" type="ogc:FeatureIdType"/>
<xsd:complexType name="FeatureIdType">
   <xsd:attribute name="fid" type="xsd:anyURI" use="required"/>
</xsd:complexType>

then "fid" could be a TXT keyword.
I think it is a better option because:

1 - doesn't introduce extra symbols (# or @)
2- it uses the "fid" word that is in the specification
3- solves part of problem about the fid value problem.

What do you think?

cheers
-- 

Mauricio Pazos
www.axios.es
Tel.: +34 94 682 42 86

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to