Thanks Andrea, it work now!

I have an other problem, maybe you can help me:

I am trying to filter the rows in my vector file such that it matches words
00: or 01: or 02: (and after rows containing 03: or 04: or 05:)
I did not find documentation with examples that can help me to correctly
write filters like these. Is there a place where you can direct me?

Example:
My filed "acq_time" in the file vector contains: (acq_time: string type)

00:02
01:13
02:00
03:19
04:22
05:45

I tried various regex and they don't work on my geoserver SLD, but they do
work according to this site https://regexr.com/

expression 1: \b(00:|01:|02:)\b
expression 2: .*\b(00:|01:|02:)\b.*
expression 3: 00:|01:|02:

In my SLD:

           <ogc:Filter>
            <ogc:PropertyIsEqualTo>
              <ogc:Function name="strMatches">
                <ogc:Literal>acq_time</ogc:Literal>
                <ogc:Literal>.*\b(00:|01:|02:)\b.*</ogc:Literal>
              </ogc:Function>
              <ogc:Literal>true</ogc:Literal>
            </ogc:PropertyIsEqualTo>
          </ogc:Filter>
Or this:
           <ogc:Filter>
            <ogc:PropertyIsEqualTo>
              <ogc:Function name="strMatches">
                <ogc:Literal>acq_time</ogc:Literal>
                <ogc:Literal>\b(00:|01:|02:)\b</ogc:Literal>
              </ogc:Function>
              <ogc:Literal>true</ogc:Literal>
            </ogc:PropertyIsEqualTo>
          </ogc:Filter>

or this:
           <ogc:Filter>
            <ogc:PropertyIsEqualTo>
              <ogc:Function name="strMatches">
                <ogc:Literal>acq_time</ogc:Literal>
                <ogc:Literal> 01:|02:|03:</ogc:Literal>
              </ogc:Function>
              <ogc:Literal>true</ogc:Literal>
            </ogc:PropertyIsEqualTo>
          </ogc:Filter>

Cheers
Pablo

El sáb., 10 oct. 2020 a las 4:35, Andrea Aime (<[email protected]>)
escribió:

> On Sat, Oct 10, 2020 at 4:35 AM Pablo J. Zader <[email protected]> wrote:
>
>>           <ogc:Filter>
>>               <ogc:Function name="strMatches">
>>                 <ogc:PropertyName>acq_time</ogc:PropertyName>
>>                 <ogc:Literal>[00 | 01| 02]:</ogc:Literal>
>>               </ogc:Function>
>>           </ogc:Filter>
>>
>
> The error message is misleading, the real problem is that this is not a
> filter... a function is just an expression,
> a function evaluating to a boolean is still not a filter. This is instead:
>
>           <ogc:Filter>
>             <ogc:PropertyIsEqualTo>
>               <ogc:Function name="strMatches">
>                 <ogc:Literal>acq_time</ogc:Literal>
>                 <ogc:Literal>[00 | 01| 02]:</ogc:Literal>
>               </ogc:Function>
>               <ogc:Literal>true</ogc:Literal>
>             </ogc:PropertyIsEqualTo>
>           </ogc:Filter>
>
> (looked a bit at the weird error message... failing to parse the SLD as
> 1.0 it tries parsing it as SLD 1.1,
> which makes it go down a weird Filter 1.1 feature called "extended
> operator", and tries to lookup
> "ogc:Function" as one, failing to do so)
>
> Cheers
> Andrea
>
> == GeoServer Professional Services from the experts! Visit
> http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf
> Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa
> (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549
> http://www.geo-solutions.it http://twitter.com/geosolutions_it
> ------------------------------------------------------- *Con riferimento
> alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 -
> Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni
> circostanza inerente alla presente email (il suo contenuto, gli eventuali
> allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i
> destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per
> errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le
> sarei comunque grato se potesse darmene notizia. This email is intended
> only for the person or entity to which it is addressed and may contain
> information that is privileged, confidential or otherwise protected from
> disclosure. We remind that - as provided by European Regulation 2016/679
> “GDPR” - copying, dissemination or use of this e-mail or the information
> herein by anyone other than the intended recipient is prohibited. If you
> have received this email by mistake, please notify us immediately by
> telephone or e-mail.*
>


-- 

Pablo J. Zader
Lic. en Cs. de la Computación + MSc. en Aplicaciones Espaciales de Alerta y
Respuesta Temprana a Emergencias
[email protected]

Universidad Nacional de Córdoba
Av. Valpáraíso s/n Ciudad Universitaria
 [image: skype] [image: linkedIn]
<http://linkedin.com/in/pablo-javier-zader-7a232125>

*"Los Grandes Hombres hablan sobre ideas...  Los Hombres Promedio hablan
sobre cosas...  Los Hombres Pequeños hablan.. de otros Hombres.*

*del libro Matemática estas ahí? A. Paenza "*
_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this 
list:
- Earning your support instead of buying it, but Ian Turton: 
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: 
http://geoserver.org/comm/userlist-guidelines.html

If you want to request a feature or an improvement, also see this: 
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer


[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Reply via email to