G3W-SUITE: an OS framework dedicated to the publication and management of QGIS projects as WebGis services
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 351 | |
Author | ||
License | CC Attribution 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/69005 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Production Year | 2022 |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
| |
Keywords |
FOSS4G Firenze 2022239 / 351
1
7
13
22
25
31
33
36
39
41
43
44
46
52
53
55
58
59
60
76
80
93
98
104
108
127
128
133
135
141
142
143
150
151
168
173
176
178
190
196
200
201
202
204
211
219
225
226
236
242
251
258
263
270
284
285
292
00:00
Content (media)System programmingZugriffskontrolleService (economics)Modul <Datentyp>SoftwareClient (computing)Total S.A.Macro (computer science)Physical systemIndependence (probability theory)Configuration spaceParameter (computer programming)Graphical user interfaceAerodynamicsInterface (computing)Data acquisitionGroup actionConstraint (mathematics)Graphics softwareFile viewerDemo (music)Structured programmingRegulärer Ausdruck <Textverarbeitung>Web serviceField (computer science)Attribute grammarInterface (chemistry)Endliche ModelltheorieCartesian coordinate systemGame controllerInformation technology consultingGUI widgetConstraint (mathematics)Electronic mailing listData structureCache (computing)Client (computing)Server (computing)Service (economics)Data managementMoment (mathematics)Default (computer science)Suite (music)Physical systemLatent heatProjective planeMetadataRaster graphicsForm (programming)Interactive televisionLevel (video gaming)Graphical user interfaceOpen setSet (mathematics)EncryptionWeb serviceRepository (publishing)Asynchronous Transfer ModeModul <Datentyp>BijectionTelecommunicationGroup actionCharacteristic polynomialOpen sourceAttribute grammarScaling (geometry)Derivation (linguistics)Vector spaceResultantCore dumpView (database)NumberBootstrap aggregatingInformationFiltrationClassical physicsData storage deviceSlide rulePlug-in (computing)Basis <Mathematik>Different (Kate Ryan album)Term (mathematics)Context awarenessAuthenticationMobile appCoordinate systemMappingInterface (computing)TesselationFamilyExpressionPresentation of a groupDatabaseMacro (computer science)INTEGRALReliefRepresentational state transferDiallyl disulfideLetterpress printingMultiplication signCuboidSoftware frameworkGraphics softwareExtension (kinesiology)System administratorModule (mathematics)Front and back endsDebuggerOrder (biology)Web 2.0Type theoryComputer fileFile formatIntegrated development environmentGeometryPower (physics)Computer animationXMLSource code
08:42
Service (economics)Content (media)Field (computer science)Attribute grammarConstraint (mathematics)Modul <Datentyp>Client (computing)Web servicePolygonGoogolComputer-generated imageryQuery languageMultimediaLink (knot theory)Finitary relationSeries (mathematics)MetadataVector spaceRaster graphicsActive DirectoryAuthenticationPhysical systemData managementAreaProcess (computing)DisintegrationTraffic reportingMathematical analysisVector spaceLibrary (computing)Software frameworkAttribute grammarLine (geometry)Field (computer science)MultiplicationDefault (computer science)Cartesian coordinate systemPower (physics)Theory of relativityService (economics)Modul <Datentyp>Mathematical singularitySet (mathematics)Interface (computing)InformationData managementSingle-precision floating-point formatHuman migrationAuthenticationLevel (video gaming)Social classType theoryOpen setSuite (music)Client (computing)ReliefForm (programming)Uniform resource locatorDerivation (linguistics)GeometryConstraint (mathematics)Web serviceEndliche ModelltheorieView (database)ExpressionContent (media)State transition systemPoint (geometry)Symbol tableRevision controlPlug-in (computing)Integrated development environmentCategory of beingMappingDynamical systemFiltrationAdaptive behaviorGUI widgetFront and back endsLetterpress printingInformation technology consultingLatent heatLibrary catalogMedical imagingOperating systemElectronic visual displayException handlingMetadataError messageSoftware developerInterface (chemistry)Time seriesMoment (mathematics)Scaling (geometry)outputData structureINTEGRALCuboidLink (knot theory)Mathematics.NET FrameworkExtension (kinesiology)Physical systemAsynchronous Transfer ModeWeb 2.0Projective planeMehrplatzsystemImplementationStochastic processState of matterPresentation of a groupPolygonDifferent (Kate Ryan album)Order (biology)Mixed realityTime zoneInjektivitätRoutingQuery languageNatural numberUniverse (mathematics)Parameter (computer programming)VideoconferencingAbstractionLogicMultiplication signBijectionXML
Transcript: English(auto-generated)
00:00
Hi everybody, I'm Walter Lorenzetti, I'm a family member and a CEO of GIS 3W, an Italy company, and in this presentation I will talk about the GIS 3W framework, our framework, our application. G2W Suite is an application dedicated to the publication and management of QGIS projects as WebGI services.
00:28
About the history of G2W Suite, we can see that the idea behind the project is based on the needs of our customers, who needed an easy-to-use tool for publishing and management WebGI services in a structured way.
00:47
Above all there was the request to develop dedicated models that could be manageable in terms of access and use in a profilated way. So the targets were using QGIS projects as a basis for defining the context of WebGI services,
01:06
organizing the WebGI services in hierarchical, organized containers, being able to define the policies for access and management of individual services, and finding the possibility to activate specific modules, for example add-in function and individual service level.
01:27
The results of work is an application available in open source mode with Mozilla public licenses available on GitHub repositories.
01:42
G2W Suite is a modular application client server made by two components. G2W admin, the administration component at the backend, and G2W client, the cartographic client for consultation maps. It is a modular application, so there are other optional models among which you can find a front-end geographical portal
02:08
that is a simple and classic geographical portal for searching, accessing to WebGI services. In this slide you can see the technological stack of the application.
02:22
At the base you can find the POSGIS, POSGIS DB, that is used as a store for administration data of the G2W Suite structure and for geographical data. Clearly, using QGIS server, you can use data of any type, for example ship files, specialized geo-package that QGIS server can read and use normally.
02:49
At the scale of 11 you can find the G2W admin that is the core models of the suite and is developed with Django and Python. It allows the management of the user, the project, and it works as an API REST server for communication with the client.
03:08
And thanks to its integration with QG server by Python QGIS API, it also works as OWS services.
03:20
And finally on the top you can find the G2W client, the WebGIS client, built with JavaScript, obviously, with Open Layer 5 at the moment on reactive technology by UJS. This is, I want to show you, a standard, the default workflow and the use of G2W Suite.
03:46
This user makes his project on his QGIS desktop with his geodata. After that he uploaded a QGIS project on G2W admin interfaces where he can set the access control list for user and geo-pro-user,
04:02
and make other settings and activate other widgets, for example, such items and others, on the layer of his project. G2W admin stores this information inside the database DB and other meta-information. And on the bootstrap G2W client, first of all, asks to G2W admin by REST app interface
04:29
general aspect of the project for the bootstrap extension, number of layers, structure of the token, etc. After that, at runtime, G2W admin works as OGC services server and IP REST server service for the client.
04:48
In fact, when uploading a store of metadata information about the QGIS project and the layer, G2W admin get many features from the project.
05:03
An example, as I said before, WMS, WFS, etc. information about the layer, coordinate reference system, the talk structure, information about the form, if you have activated the form and view inside the project, etc.
05:24
In particular, you can look at several lists of the features and characteristics that are generated from QGIS project. In particular, embedded layer, for example, layer derivative from other project, views and themes,
05:41
one-to-one and end-to-end layers relationship, standard print out of the layout, other particular characteristics is the interactivity chart by that uploaded QGIS desktop plugin.
06:04
Now, I'll show you more in detail the features of main components of application. G2W min is, as I said before, is a graphical interface for create WebGI services. So this component, the system administrator, is completely independent in the publication of management of all aspects of WebGI services.
06:28
In fact, in the admin panel, all of you create cartographic groups and macro groups that are the boxes inside that you can find your WebGI services.
06:42
Create user and user groups and assign them role with different powers, administration, editors, viewer, etc. You can use the encrypted big authentication system given by the QGIS server based on Python QGIS API.
07:08
For example, for layers that require data, for example, POGIS, OGC services and other servers. And the administrator can activate specific function models and assign them to individual WebGI services or individual users.
07:31
Once a QGIS project is published for each layer, it's possible to create widget search tools, for example. Activate cache system powered by tile map services for each layer.
07:49
All downloading of vector and raster data in various formats, for example, JLTF, ship file, CSV, etc. Filters on attributes layer for user and user group.
08:02
Specify constraints of various kinds, for example, user or group of users based on geographical constraints and or QGIS expression constraints. And you can enable or disable online editing capabilities for the layers, for the vector layers.
08:26
Clearly, the results of all these settings are visible and they acts on WebGI's client. In fact, WebGI's client was a modeler approach and it allowed to have an interface that adapts to management of the currently available models.
08:49
For example, print, search, editing, etc. Always in a user provided way. In fact, on check the double client is possible too.
09:04
Clearly, browse the map because sometimes you have many widget but if you don't, browse the map. Use different types of interrogation, query by point, query by box, query by polygon. Change WebGI services maintaining extension scale so you can switch between service, between WebGI services.
09:30
Use search tool created in G2W admin interface. Look at attribute data through a strict route form as you define it inside your QGIS project.
09:45
Consult links and display image preview and look at relation one-to-one, one-to-one relation data in the other future. In fact, you can print maps that you define by layout inside your project.
10:02
Display single metadata derived also by general capabilities from the project. And if you have data plotted plugin, you can show at the dynamic chart based on active filter and on map content created in your QGIS data plotted plugin.
10:28
Thanks to Django and how Django works, it's possible to make all the models because it's modeler, G2W suite.
10:40
So we have developed private and free and open models for our customer. For example, for to read the time series, for example, netCDF data or for WMSD data, et cetera.
11:05
We can, thanks to integration with QGIS by Python, QGIS API, we can use the QGIS processing integration.
11:20
There is a model for other type of identification, for example, with LDAP. And we have developed other models specific for our customer, for example, for models for Italian public administration. A very strange future of G2W suite is the editing online model.
11:42
In fact, to make editing on vector lay online and to create a cartographic management application on QGIS and migrate it to them, to the web environment, to the web GIS.
12:05
Inside the editing online, naturally, it's possible to edit point, line, polygon in every type of geometry. So also for multi-forma, so multi-point, multi-polygon, multi-line, et cetera.
12:24
Thanks to Python integration with Python QGIS, you can have a granular management of editing power base for single user or group user.
12:41
So user can, some user can only edit, can only update or can only delete, but it's very strange, but it's possible. And it's possible to enable interlayer, so snap between layer.
13:01
And it's possible use to, in the view mode, in the editing mode, use a geographical constraint based on other layer or based on a QGIS fresh. That are differentiable according to individual user, group of user, that are settings before, that are set before in G2W admin.
13:26
As you can see, the permission on the layer can be defined at the level of the single layer inside the single web GIS services. The editing model supports multi-user editing through a future lock system applied on the future visible in the canvas when the editing starts.
13:49
So when the user start an editing on a particular zone or particular extension of the map, all the user can do editing until this user release the editing state.
14:06
For attribute data in an editing model, it's possible to use attribute form structure defined in QGIS project, use editing widget associated with single fields and edit the attribute data coordinated to main layer in editing by one-to-one or one-to-one relation like as it works in QGIS desktop too.
14:38
Where G2W suite at the moment is used, is used by public administration, university and research institutes,
14:48
UTD companies, parks, private companies and etc. What are the application field? They are various, cartographic port, sure, video editing map, natural data management, post-aircraft image, landslide, catalog management, etc.
15:15
Now we are at version 3.4.
15:22
And this 2022 October we release the new 3.5 version where the main feature released are management of single symbology category display, not only at layer level but also for the classes inside the layer,
15:44
implementation of future admin and client future in particular, more parameters in the URL for switching between map views, one-to-one, one-to-one relation based on multiple fields because now it's possible only with the relation with my one field relation,
16:08
improve abstract logic information on the backend and improve human readable exception on error on the interfaces. On editing function we are working and we release copy and paste future between layers and in particular,
16:26
Academy HTML multi-line input form widget. On April 2023 we hope to release the 4.0 version where there will be an upgrade of technological stack,
16:47
we pass from Python 3.8 to Python 3.10 support, Django migration to 3.2 LTS version and migration of open layer from 5 to 6 and update many libraries that frameworks are using, for example, and move the default operating system to Ubuntu 2.2.0.4.
17:18
Thank you. Thank you for following my presentation. Thank you for listening.