Skip to content

Releases: opengisch/QgisModelBaker

7.9.3

18 Jul 11:01
9f5fdb1
Compare
Choose a tag to compare

Fixes

  • Remove override decorator

ili2db

Using ili2db version 5.1.0

Library

Using modelbaker library 1.8.1

7.9.2

16 Jul 11:58
f485ab0
Compare
Choose a tag to compare

Fixes

  • Set the list panel with the db_id instead of the mode.

ili2db

Using ili2db version 5.1.0

Library

Using modelbaker library 1.8.1

7.9.1

12 Jul 18:36
452be33
Compare
Choose a tag to compare

Fixes

  • Handle exceptions on no service file found.

ili2db

Using ili2db version 5.1.0

Library

Using modelbaker library 1.8.1

7.9.0

01 Jul 18:26
18ec6d5
Compare
Choose a tag to compare
7.9.0 Pre-release
Pre-release

With this release, Model Baker brings some cool improvements on the GUI like the consistent use of the data source settings and the dark mode. As well it fixes the missing GeoPackage part and offers optimization strategies on smart 1 inheritance implementations. As well it contains the handy detection and setting of unique and not-null constraints on OID fields.

GUI / UX

Night Model Baking

Many users work with QGIS in its velvety dark mode. Since this release Model Baker supports it as well.

Screenshot from 2024-06-27 12-18-24

As well the "Blend of Gray" theme is supported.

image

Concequent detecting of database settings

Dataset Manager

Because you barely want to edit datasets on another data source than the one you are using in your current project, Model Baker detects automatically the source (according to the selected layer). You cannot edit the data source in the Dataset Manager anymore. We removed it because it leaded to confusion.

Screenshot from 2024-06-21 13-04-34

And what if my current layer is not a valid layer (e.g. a group or a WMS)?

Then it goes through all the layers and takes the first valid one.

And what if I have no project opened at all?

Then it takes the last used connection (used anywhere - not only in Dataset Manager)

Export

On export it does the same. It checks for layers in the current project and takes their data source. If no project or valid layer present, it takes the last used connection. Unlike in the Dataset Manager the connection is still editable here.

Import / Generate

Although on schema import you usually create a new schema / data file we adapted the behavior here, because we I assume, that mostly the other parameters (like the db / host) are the same like the one of the opened project. If no project or valid layer present, it takes the last used connection.

On generating a project you usually have no project opened yet. But to have it everywhere in the same way, the behavior is everywhere the same.

Help in the Workflow Wizard

The workflow wizard provides support by help button. There is a summary about the current page and the description of the most important options. Then there are links to the corresponding chapter in the documentation, to the GitHub issues and to the discourse INTERLIS forum.

image

Other improvements

  • Remove button to manage baskets when the Dataset Manager is opened via the wizard (since in that case you created the basket before or you will create it by importing the data)
  • More descriptive baskets on export / validation by showing the attachement key
    image
  • Remember previous settings when using a PostgreSQL connection service file

Sponsors

Financed by the QGIS Model Baker Group

Mandatory and unique constraints on OIDs

The columns based on OIDs in physical databases (the t_ili_tid fields) contain neither a not-null nor a unique constraint when generated by ili2db. This is because some tables created based on special inheritance structures have a t_ili_tid but no OID. It may also be that you want to collect the data without filling in the OID.

Still, most of the time they must be unique and not null. At least as soon as you want to split or duplicate features in QGIS. This is why Model Baker sets the field widget of t_ili_tid to not-null and unique by default as soon as an OID is defined in the INTERLIS model. But as well, those settings are provided by the OID Manager, so you are free to change them.

image

Sponsors

Financed by Canton of Schwyz

Improvements on Smart 1 inheritance

When a physical database based on an INTERLIS model was created with the --smart1inheritance setting, this mostly means that multiple classes are "merged" to one table containing all the attributes. As well it contains a field t_type describing of what class the current object is.

Provide possible t_type values in dropdown

With QGIS projects based on PostgreSQL this was already provided before this release, but now it's also possible with GeoPackage. As well the names of the possible classes are more descriptive.

image

Project optimization

Projects based on the smart 1 inheritance, can now be optimized. Means on "Hide"-strategy all the irrelevant classes will be filtered out from the t_type dropdown.

image

As well the irrelevant baskets are deselected per default.

Sponsors

Financed by the QGIS Model Baker Group

ili2db

Using ili2db version 5.1.0

Library

Using modelbaker library 1.8.0

7.8.4

13 May 08:24
Compare
Choose a tag to compare

Fixes

  • use nice prefix for meta attribut form_order
  • use 'obsolete' parameter createEnumTabs on ili2db 3 only
  • improve tags to find plugin (by modelbaker, qgismodelbaker etc.)

ili2db

Using ili2db version 5.0.1

Library

Using modelbaker library 1.7.3

7.8.3

13 Mar 08:31
fc29024
Compare
Choose a tag to compare

Fixes

  • Fix python error wrapped C/C++ object of type xy has been deleted
  • unchain the optimize combo from topping results
  • Don't make topics irrelevant that are extended by itself (in Basket Page)

ili2db

Using ili2db version 5.0.1

Library

Using modelbaker library 1.7.2

7.8.2

08 Mar 15:14
2f0fa4b
Compare
Choose a tag to compare

Improvements / Fixes

ili2db

Using ili2db version 5.0.1

Library

Using modelbaker library 1.7.1

7.8.1

22 Dec 12:57
6f93dbc
Compare
Choose a tag to compare

Improvements / Fixes

  • display --- when no bid-domain defined in #869
  • accept xml files in wizard in #870
  • Return the import models from repository in one entry, what leads to one command for all repo models by in #871
  • Keep Settings in UsabILIty Exporter on Navigation in #873

ili2db

Using ili2db version 5.0.1

Library

Using modelbaker library 1.7.0

7.8.0

13 Dec 09:07
b5808b2
Compare
Choose a tag to compare
7.8.0 Pre-release
Pre-release

This release focuses on topping handling (UsabILIty Hub) but brings as well some improvements of the workflow wizard in general. It makes some missing bits available like for example the using of a project topping on generating a project and the possiblity to delete the data in the schema before import.

Improvements

UsabILIty Hub: Topping on Generate Project

Since ili2db 4.11 the id of the metaconfiguration file used to create the physical database is stored in the meta-tables. This means, on Project Creation we consider this id and provide the linked project topping.

Screenshot from 2023-12-04 14-41-47

Get Topping by selection

Still it's possible to disable it and choose another project topping file (YAML).

image

You can choose a project topping file (identified by model, db-type etc.) from the UsabILITy Hub repositories or as well a YAML file from the local system.

Why, project topping file

... and not "metaconfiguration* file?

Because on this step only project topping files are relevant. Metaconfiguration files are only relevant, when the schema is created. We thought about to provide them, to choose the same like on schema import, but this part is already provided by getting the topping from the DB.

Sponsors

Financed by Canton of Schwyz and the QGIS Model Baker Group

UsabILIty Hub: Filter Toppings according to the Database Source

Model Baker only provides the toppings that are made for the current database source (GeoPackage, PostgreSQL etc.) in case it's defined in the ilidata at the category with the key http://codes.modelbaker.ch/preferredDataSource. If there is no such category it's always displayed - so there are no backwards compatibility issues.

UsabILIty Topping Exporter

Here it detects what database sources are used and suggests you to optimize. You still can choose none.

Screenshot from 2023-12-01 09-09-18

Sponsors

Financed by the QGIS Model Baker Group

Delete before import

It is now possible to delete the existing data before importing new data. This means on using baskets, the ili2db parameter --replace is executed instead of --update. On not using baskets, the parameter --deleteData is added to the command. Note that on using baskets, only the data from the corresponding dataset is deleted, whereas on not using baskets all data from the schema is deleted.

image

Sponsors

Financed by the QGIS Model Baker Group

Busy bar to indicate that Model Baker is doing something

Sometimes the wizard has to load - mostly checking the repos to suggest data / reload the comboboxes. And there users are confused, what's happening. For this reason it does now disable the page (instead of just freeze) and show a busy indicator as a bar below the log panel.

Screenshot from 2023-12-08 13-50-00

Sponsors

Financed by the QGIS Model Baker Group

Other improvements

  • Introduce prefix qgis.modelbaker for Model Baker specific Meta Attributes. See documentation
  • With the UsabILIty Hub Topping Exporter the transaction mode of the project is exported as well and considered on generating a project using this topping.
  • On generating a project the optimize strategy is stored to the project variables. This setting is then exported by the UsabILIty Hub Topping Exporter and considered on generating a project using this topping.
  • Checkbox to use superuser in OID Manager
  • Name OID and TID strictly "OID" to avoid confusions

Fixes

  • Update schemas in separate task to avoid freezes in #854
  • Check if the layer is a QgsVectorLayer before getting the fields in opengisch/QgisModelBakerLibrary#77
  • Don't handle xml files 2 times in #845
  • Display --- when no oid-domain defined in the OID Managerin #864

ili2db

Using ili2db version 5.0.1

Library

Using modelbaker library 1.7.0

7.7.0

24 Nov 13:11
Compare
Choose a tag to compare
7.7.0 Pre-release
Pre-release

Main feature of this release is all about OIDs, a pain point that has existed for quite some time. First thing is the OIDs generated for the single objects, means the TID (or t_ili_tid in the physical database) what is done with default value expressions. The second thing is the OIDs generated for basket-objects, means the BID (and as well t_ili_tid in the physical database), when creating baskets, what now can be controlled by the user as well.

Improvements

TID (OID) Generation for Objects

Often the models definition requires a cross-system unique identificator. The so called OID.

Model Baker detects the OID domain (like UUIDOID, I32OID, STANDARDOID, ANYOID or user defined OID) and suggests default value expressions used in the t_ili_tid fields.

Since the user have to be able to edit those values, they are provided in the GUI.

See documentation

In the wizard

There is an additional page after the generation of the QGIS project.

image

You can use the QGIS Expression Dialog to edit the default value expression for the t_ili_tid field of each layer.

See documentation

On existing projects

Find the TID (OID) Manager via the Database > Model Baker menu.

image

If you need a counter in the expressions, you can use the t_id field, that has a schema-wide sequence counting up. This sequence can be reset as well by the user, but be carefull not to set it lower than already existing t_ids in your project.

Sponsors

This feature has been financed in a crowdfunding project by geostandards.ch, Canton of Schaffhausen and the QGIS Model Baker Group

Basket Generation with BID (OID)

In case you create a new dataset (e.g. the Baseset that is created by Model Baker automatically) and you want to collect fresh data in QGIS (no import of existing data), the baskets have to be created as well.

Here the BID definition needs to be considered.

In the wizard

There is an additional page after the schema import when the Baseset is created.

image

Reasonable BIDs are suggested, but of course some of them (like STANDARDOID) need editing by the user.

As well Model Baker suggests what baskets should be created or not (it sees it as relevant in case it's not extended by other topics).

See documentation

In the Dataset Manager

Of course you might want to create additional Datasets and with it the Baskets. Here is a new option Manage baskets of selected dataset to create the baskets you want.

image

See documentation

Sponsors

This feature has been financed in a crowdfunding project by geostandards.ch, Canton of Schaffhausen and the QGIS Model Baker Group

Schema section in drop down

On PostgreSQL connections you are now able to select your schema.

Screenshot from 2023-11-24 13-12-40

Sponsors

This feature has been financed by the Canton of Schaffhausen

ili2db

Using ili2db version 5.0.1

Library

Using modelbaker library 1.6.0