Releases: opengisch/QgisModelBaker
7.8.4
7.8.3
7.8.2
Improvements / Fixes
- Wait for model refresh on local repository topping receiven #877
- Fix that when version output not valid we don't think we find a match in opengisch/QgisModelBakerLibrary#84
- Fix topic request, to list them even when no table is implemented in opengisch/QgisModelBakerLibrary#87
- Consider path when building up ilicache, fixes #861 in opengisch/QgisModelBakerLibrary#85
ili2db
Using ili2db version 5.0.1
Library
Using modelbaker library 1.7.1
7.8.1
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
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.
Get Topping by selection
Still it's possible to disable it and choose another project topping file (YAML
).
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.
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.
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.
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
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.
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.
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_id
s 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.
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.
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.
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
7.6.1
Improvements / Fixes
Filter in Relation Reference for Baskets
On extended class's layers all possible baskets (if NONE-Strategy) or only the relevant ones (if GROUP- or HIDE-Strategy) are listed in the widget of the t_basket
field.
Dataset Selector and Default Values
In the dataset selector all possible baskets (if NONE-Strategy) or only the relevant ones (if GROUP- or HIDE-Strategy) are listed. The chosen value is then written to the project variable and can be used as default value.
Library
Using modelbaker library 1.5.1
7.6.0
This release offers new features that make working with advanced capabilities of INTERLIS even more enjoyable, such as with advanced models and using validation configurations. Furthermore, it offers some enhancements and fixes, like clearing the cache, a pleasant log and the support of drag'n'drop of extra meta attribute files.
Improvements
Optimized Project Generation of extended INTERLIS Models
The problem
If a model or topic contains extended classes, the inclusive base classes are implemented in the physical database what leaded to a confusing layer tree, messy forms and lots of unused relations.
While the you only want to see, what is relevant for you, Model Baker detects the irrelevant layers and lets you to apply an optimization to the project.
The solution
When generating a project you can now choose one of the following strategies to optimize your project:
Hide strategy
Base class layers with extensions of the same name are hidden and base class layers with multiple extensions also. Unless the extension is in the same model, then it's not hidden but renamed.
Relations of hidden layers are not created and thus the widgets for them neither.
Group strategy
Base class layers with extensions of the same name are grouped, base class layers with multiple extensions also. Unless the extension is in the same model, then it's not grouped but renamed.
Relationships of grouped layers are created, but widgets are not applied to the form.
None strategy
Independently from extended models (but pretty much connected to it), we eliminate ambiguous layer naming in general. This means:
- If layername is ambiuous append topic name as suffix.
- If layername is still ambiguous append model name as suffix.
Sponsors
This feature has been financed by QGIS Anwendergruppe Schweiz - Groupe d'utilisateurs QGIS Suisse - Swiss QGIS User Group
Persistent Logging Functionality
Warning and information messages are printed to the log panel of the wizard dialog. This is good to see the information immediately, but to track down a problem, users and developers require the information of past actions. The new logging functionality saves each log output to a daily file (in the plugin directory, i.e. the QGIS profile folder) and keeps the last ten files accessible via the Model Baker menu.
Error dialog
If Java is not installed, a barely visible log line used to be output. For people using Model Baker (and thus ili2db) for the first time, this was quite confusing. Now a popup appears indicating that Java is not installed and pointing to a possible download source.
Clear Ilicache Button
In several places, but especially on the Source Selection Page, the user can select and use a model from the network of Swiss Geodata Repositories. These files are downloaded and cached locally. In case of immediate changes - which is not often the case, but can be if the model is in a test phase - the problem can occur that a different file (the one from the cache instead of the one from the repository) is used. Users had to delete the cache folder manually, which was usually too advanced and inconvenient. This is now solved by having a button do it for you.
Store Validator Config File in Project Variable
Since some time you have the possibility to select a config file in the validator and pass it to ili2db. Since it is meaningful to use this multiple times, it is handy that you can now store the path in the QGIS project variables. The path is stored relatively (so that the project can be exchanged to other systems), but passed absolutely to ili2db. Likewise, it is possible to pass (and store) a key to the ilidata repository, like ilidata:<key>
.
Drag&Drop Support for Extra Meta Attribute Files (toml/ini)
While Model Baker claims to do everything for you when dragging and dropping files into QGIS, the Extra Meta Attribute Files (the file formerly known as the toml file) were not considered. This is now fixed. When you drop an additional Extra Meta Attribute File, it is automatically set in the advanced schema import settings.
Other Improvements and Fixes
- Possibility to validate schemas based on ili2db 3.x.x
- Fix missing port parsing from layer to use in validator
- COMPOSITION strength relation on STRUCTURE childs: A
STRUCTURE
object cannot exist without a parent. This means when the parent is deleted the entry in the linking table (the structure) needs to be deleted. Means, every relation with a child that is a structure, shall have composition as strength. - Better default size for Layer Style Categories Dialog
- Add the icon for the main menu entry
- Remove old unused files
ili2db
Using ili2db version 5.0.0 fixing this #779
Library
Using modelbaker library 1.5.0