-
Notifications
You must be signed in to change notification settings - Fork 4
GSIP 85 Nested layer groups
Add nested layer groups support, allowing a layer group to be a child of another layer group.
Davide Savazzi
2.3.0
Under Discussion, In Progress, Completed, Rejected, Deferred
Motivation is the same as GSIP 84 : our objective is to manage a layer tree using layer groups. With GSIP 84 we introduced one level hierarchies, introducing a layer group type that exposes its nested layers. To manage a layer tree with more than one level, layer groups must be able to contain other layer groups as children.
A layer group will contain layers and layer groups in the same children list. To have an homogeneous list we’ll extract a common interface from LayerInfo and LayerGroupInfo. They both extend the CatalogInfo interface, but they share other properties so we could create a new super interface: PublishedInfo.
These are the properties that LayerInfo and LayerGroupInfo share and that can be included in the new super interface:
- name
- prefixedName
- workspace
- title
- abstract
- metadata
- authorityURLs
- identifiers
LayerGroupInfo method getLayers () will return a list of layers and layer groups. Method getStyles () will contain null entries for layer groups.
The work will be based on changes already made for GSIP 84 where LayerGroupInfo has two new methods layers () and styles (). These methods are used by the WMS service to retrieve layers and styles.
layers () will continue to return a list of LayerInfo, so the LayerGroup will expand nested LayerGroups to expose only a list of Layers.
styles () will continue to return a list of StyleInfo with a 1–1 correspondence to layers (), so the LayerGroup will expand nested LayerGroups styles.
This section should contain feedback provided by PSC members who may have a problem with the proposal.
WMS Path feature will be deprecated and we will create documentation on how replace its usage using nested layer groups.
Alessio Fabiani: +0 Andrea Aime: +1 Ben Caradoc Davies: +0 Christian Mueller +0 Gabriel Roldan: +1 Jody Garnett: +1 Jukka Rahkonen: +0 Justin Deoliveira: +1 Phil Scadden: +0 Simone Giannecchini: +0
JIRA Task Email Discussion
Wiki Page