[Geoserver-devel] GSIP-205 Add Styles support to LayerGroup

Dear all,

I would like to propose the addition of style support for LayerGroup.
Please consider reviewing the proposal available here.

The improvement aims to add a notion of style to LayerGroup as the possibility to define multiple sets of layers and styles as different named configurations.
The various named configurations will be advertised in the WMS getCapabilities response as styles so that can be requested through the usage of the styles parameter in WMS operations.

Regards,

···

Marco Volpini

==
GeoServer Professional Services from the experts!

Visit http://bit.ly/gs-services-us for more information.

Marco Volpini

Software Engineer

GeoSolutions Group
phone: +39 0584 962313

fax: +39 0584 1660272

https://www.geosolutionsgroup.com/

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.

This idea would pair well with the style group concept, which defines a set of layers and their styling. We just do not have a way presently to switch between them.

Do keep in mind that layer groups are very simple right now and are pretty much unpacked into GetMap request parameters. I am not sure about swapping between different sets of layers (ie contents), as that starts to feel more like defining a new layer group mode, rather than a styling of its contents.

I guess I will need to read your proposal to learn more.

Jody

···


Jody Garnett

You are thinking structure of the object here, we are proposing an end-user functionality instead. When your car navigator switches from day mode to night mode, is that the same map?
From the user POV, it is, the implementation requires having a layer group with styles. In this case, the same layers, a different array of styles.
Another situation is switching between a map with lots of detail to one that has less. To the user, that’s still “OSM”, but one is “OSM bright” with all the details, while
the other is “light background”, in this case, with different styles and fewer layers (the high detail ones are omitted): same dataset, two different styles.
I guess one could achieve the same using a fixed array of layers and using styles that never display anything to take out the unwanted layers but… that’s really clumsy.

Cheers
Andrea

···

GeoServer Professional Services from the experts!

Visit http://bit.ly/gs-services-us for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions Group
phone: +39 0584 962313

fax: +39 0584 1660272

mob: +39 333 8128928

https://www.geosolutionsgroup.com/

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

+0

···

Regards,
Simone Giannecchini

GeoServer Professional Services from the experts!
Visit http://bit.ly/gs-services for more information.

Ing. Simone Giannecchini
@simogeo
Founder/Director GeoSolutions Italy
President GeoSolutions USA

phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 333 8128928

http://www.geosolutionsgroup.com
http://twitter.com/geosolutions_it


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.

+1

···

Regards,

Alessio Fabiani

==
GeoServer Professional Services from the experts!

Visit http://bit.ly/gs-services-us for more information.

Ing. Alessio Fabiani

@alfa7691
Founder/Technical Lead

GeoSolutions Group
phone: +39 0584 962313

fax: +39 0584 1660272

mob: +39 333 8128928

https://www.geosolutionsgroup.com/

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.

And oh, Marco did not mention it, but the functionality in the proposal was already discussed a few
years ago, but then we did not move forward due to resourcing issues.
For reference:
https://sourceforge.net/p/geoserver/mailman/geoserver-devel/thread/CA%2BnxMTtD2My%3DM5_fjFWwG_Z6CnV-RxfDwgS0q3Ai%2BxpNzwuEfQ%40mail.gmail.com/#msg36251493

Cheers
Andrea

···

Regards,

Andrea Aime

==
GeoServer Professional Services from the experts!

Visit http://bit.ly/gs-services-us for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions Group
phone: +39 0584 962313

fax: +39 0584 1660272

mob: +39 333 8128928

https://www.geosolutionsgroup.com/

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

+1

···

Regards,

Nuno Oliveira

==
GeoServer Professional Services from the experts!

Visit http://bit.ly/gs-services-us for more information.

Nuno Miguel Carvalho Oliveira
@nmcoliveira
Technical Lead / Project Manager

GeoSolutions Group
phone: +39 0584 962313
fax: +39 0584 1660272

https://www.geosolutionsgroup.com/
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.

I was also thinking about the end-user - an opaque layer group is a good candidate to switch styles as it is then not shown to the user (in the get capabilities document) about the contents of the layer group.

Reading proposal now:

The proposal describes this as a choice: different LayerGroup named configurations, each comprising different sets of layers’ styles and eventually layers, in addition to the default one.

For the “eventually layers” part of the proposal I think we would end up with:

  • single: no problem as no structure is generated
  • opaque container: no problem as no structure is generated
  • named tree: suggest listing all the layers from all the the named options (not sure what order to list in, perhaps does not matter?)
  • container tree: not applicable to have named options, disable styling completely
  • earth observation: probably watch to associate a different root layer with each “named configuration”

Feedback:

  • “named configuration” - would like to just call this “style” if that is how this is going to be presented in the get capabilities document
  • the ui option 1 matches the workflow on wps security and other security screens where we edit parts of a larger document
  • I like the ui option 2 and think it would be a good experiment. Suggestion arranging the “Add Layer” " Add Layer Group" “Add Style Group” horizontally, recommend placing an empty “StyleName” heading with an empty label at the end of the list with “Add” at the end of the table (this would result in less scrolling up and down the page).
···


Jody Garnett

I was also thinking about the end-user - an opaque layer group is a good candidate to switch styles as it is then not shown to the user (in the get capabilities document) about the contents of the layer group.

Reading proposal now:

The proposal describes this as a choice: different LayerGroup named configurations, each comprising different sets of layers’ styles and eventually layers, in addition to the default one.

For the “eventually layers” part of the proposal I think we would end up with:

  • single: no problem as no structure is generated
  • opaque container: no problem as no structure is generated
  • named tree: suggest listing all the layers from all the the named options (not sure what order to list in, perhaps does not matter?)
  • container tree: not applicable to have named options, disable styling completely
  • earth observation: probably watch to associate a different root layer with each “named configuration”

Quoting from the proposal:
“The functionality will be available for layer group with mode SINGLEor OPAQUE only, since TREE groups can show only one sub-tree in capabilities.”

Feedback:

  • “named configuration” - would like to just call this “style” if that is how this is going to be presented in the get capabilities document

Agree, that’s indeed how the mocks show it to the user, they are called “layer group styles”

  • the ui option 1 matches the workflow on wps security and other security screens where we edit parts of a larger document
  • I like the ui option 2 and think it would be a good experiment. Suggestion arranging the “Add Layer” " Add Layer Group" “Add Style Group” horizontally, recommend placing an empty “StyleName” heading with an empty label at the end of the list with “Add” at the end of the table (this would result in less scrolling up and down the page).

The reorg of the existing style editor (which has the three “add” links stacked vertically) makes indeed sense.
Having the controls to add a new layer at the end also makes sense. We want to keep the ability to copy another style, since
we expect users to want to start from a base, and customize from there, rather than re-enter layers one by one.

Cheers
Andrea

···

GeoServer Professional Services from the experts!

Visit http://bit.ly/gs-services-us for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions Group
phone: +39 0584 962313

fax: +39 0584 1660272

mob: +39 333 8128928

https://www.geosolutionsgroup.com/

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

+1

This is going to be a much appreciated improvement

Quoting from the proposal:
“The functionality will be available for layer group with mode SINGLEor OPAQUE only, since TREE groups can show only one sub-tree in capabilities.”

Thanks for pointing that out.

Feedback:

  • “named configuration” - would like to just call this “style” if that is how this is going to be presented in the get capabilities document

Agree, that’s indeed how the mocks show it to the user, they are called “layer group styles”

The mocks show “Configuration/Style Name” a bit further down the page; consistently using “layer group style” would be good.

Questions:

  • Should the first style be the “default” style for the layer group?
  • WMS capabilities also name / title / abstract / legend graphic URL. Ideas? Perhaps two tabs here, one for the layers and the panel from the style editor
  • I like the ui option 2 and think it would be a good experiment. Suggestion arranging the “Add Layer” " Add Layer Group" “Add Style Group” horizontally, recommend placing an empty “StyleName” heading with an empty label at the end of the list with “Add” at the end of the table (this would result in less scrolling up and down the page).

The reorg of the existing style editor (which has the three “add” links stacked vertically) makes indeed sense.

Having the controls to add a new layer at the end also makes sense. We want to keep the ability to copy another style, since
we expect users to want to start from a base, and customize from there, rather than re-enter layers one by one.

Right - that is a good workflow.

Ideas?

  • Have a select button next to “Add Style” at the bottom to select “New” or choose from the existing layer group styles.
  • Or make a duplicate button next to each style (with some space between that and remove). Clear what is to be copied, but then have to scroll to find it.

Cheers,
Jody

+1

···

Regards,

Nuno Oliveira

==
GeoServer Professional Services from the experts!

Visit http://bit.ly/gs-services-us for more information.

Nuno Miguel Carvalho Oliveira
@nmcoliveira
Technical Lead / Project Manager

GeoSolutions Group
phone: +39 0584 962313
fax: +39 0584 1660272

https://www.geosolutionsgroup.com/
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.