Releases: opengisch/QgisModelBaker
7.5.2
7.5.1
7.5.0
This release brings better support of working with extended models concerning export and validation.
Improvements
Export the data in the base model format
If your data is in the format of the cantonal model, but you want to export it in the format of the national model, you have to pass --exportModels
to ili2db, otherwise (or if the data cannot be exported/validated in the selected model because it's not an extension of it) the data is exported in the model it is stored.
Usually, this is one single model. However, it is also possible to pass multiple models, which makes sense if there are multiple base models in the schema you want to export.
Note that this implementation works as addition (and not replacement) of the filters where models can be passed to define what data (not what format) should be exported.
The tool tip is listing all the relevant parent models (the ones that are listed as well, means are exportable).
The export session visualization has been improved, helping for more clearity.
Validate the data in the base model format
Same is now supported in the validator as well.
When the data are validated in the model where they are stored (here Staedtischer_Ortsplanung_V1_1
extending Kantonale_Ortsplanung_V1_1
, all the constraints are considered. Means the one of the extended model and of its parents.
And when validating according to the parent model, only the parent model's constraints are checked (and the parent's parent's constraints of course 😄
Sponsors
This feature has been financed by QGIS Anwendergruppe Schweiz - Groupe d'utilisateurs QGIS Suisse - Swiss QGIS User Group
ili2db
Using ili2db version 4.10.0
Library
Using modelbaker library 1.4.3
7.4.2
7.4.1
Fixes
- Allow
ini
for the Extra Meta Attribute File in #778 - Consider base config in the validation configuration in #783
- Reset Metaconfig on Data Import / Update in #787
- Passing
--sqlColAsText
when importing schema without constraints in opengisch/QgisModelBakerLibrary#51 - Workaround to add the usabilityhub repository when a metaconfig is passed to ili2db in opengisch/QgisModelBakerLibrary#53
Library
Using modelbaker library 1.4.1
7.4.0
This release brings support of map themes, layer styles, custom variables and print layouts in the UsabILIty Hub Toppings.
Improvements
UsabILIty Hub passing metaconfig to ili2db
ili2db configurations are defined in the metaconfiguration file.
[ch.ehi.ili2db]
defaultSrsCode = 2056
smart2Inheritance = true
strokeArcs = false
importTid = true
ili2db will be called like this:
ili2db --metaConfig ilidata:metconfigId --schemaimport
Some parameters are automatically set in the background when ili2db is called by the Model Baker (like --coalesceCatalogueRef --createEnumTabs --createNumChecks --createUnique --createFk --createFkIdx --coalesceMultiSurface --coalesceMultiLine --coalesceMultiPoint --coalesceArray --beautifyEnumDispName --createGeomIdx --createMetaInfo --expandMultilingual --createTypeConstraint --createEnumTabsWithId --createTidCol --importTid
), and others can be configured by the user in the input mask of the Model Baker (like --smart1Inheritance
/--smart2Inheritance
, --createBasketCol
, --strokeArcs
, --iliMetaAttrs
(for ini
/toml
), --preScript
and --postScript
or --models
). In addition, the relevant metaconfiguration file is passed to ili2db. But parameters passed directly to ili2db override the configurations of the passed metaconfiguration file.
The Model Baker reads the ili2db parameters from the metaconfiguration file. The parameters that can be set via the input mask of the Model Baker are loaded from the metaconfiguration file into the input mask. The user can now customize them. The Model Baker now passes the metaconfiguration file and the parameters from the input mask (whether customized or not) to ili2db. So if the parameters were listed in the metaconfiguration file but then disabled in the input mask, they will be passed to ili2db as false
.
Changes are marked visually in the input mask for ili2db Options:
The parameters set by the Model Baker in the background are still set. But they can be overridden in the metaconfiguration file. However, if in the metaconfiguration file such parameters are not mentioned, then they are also not overridden with false
.
Exception is the setting to consider only the metaconfiguration file. If this is set, then only the parameters configured in the metaconfiguration file should be set and no others (Exception from the exception is --models
and --sqlEnableNull
on "Run withouth constraints"):
[CONFIGURATION]
qgis.modelbaker.metaConfigParamsOnly = True
When this parameter is set the Advanced Options and CRS settings are disabled in the input mask.
Known Issues (workaround provided in 7.4.2)
Be aware that the UsabILIty Hub Repository (located at http://models.opengis.ch) is not found by ili2db what means that when using qgis.modelbaker.metaConfigParamsOnly
toppingfiles referenced in metaconfig file with ilidata:
should not be located there. Other repositories (like e.g. from the cantons) can be used without any restrictions. Still you can add http://models.opengis.ch as a directory in the Model Baker Settings.
Sponsors
This feature has been financed by the canton of Schaffhausen
ili2db
Using new ili2db version 4.10.0
Library
Using modelbaker library 1.4.0
7.3.2
7.3.1
7.3.0
This release brings support of map themes, layer styles, custom variables and print layouts in the UsabILIty Hub Toppings.
Improvements
UsabILIty Hub support for Map Themes and Styles
A qmlstylefile
is stored for each style ("default" style is keeped in the root):
layertree:
- Street:
tablename: street
geometrycolumn: geometry
checked: true
expanded: true
qmlstylefile: ilidata:layerstyle_street_qml_001
styles:
french:
qmlstylefile: ilidata:layerstyle_street_french_qml_001
robot:
qmlstylefile: ilidata:layerstyle_street_robot_qml_001
- Park:
tablename: park
geometrycolumn: geometry
checked: false
expanded: true
qmlstylefile: ilidata:layerstyle_park_qml_001
provider: ogr
uri: /home/freddy/qgis_projects/bakery/cityandcity.gpkg|layername=park
The mapthemes are stored in this struture.
mapthemes:
"French Theme":
Street:
style: french
visible: true
expanded: true
Park:
style: default
visible: false
expanded: true
"Robot Theme":
Street:
style: robot
expanded_items:
[
"{f6c29bf7-af28-4d88-8092-ee9568ac731f}",
"{fc48a8d7-d774-46c7-97c7-74ecde13a3ec}",
]
checked_items:
[
"{f6c29bf7-af28-4d88-8092-ee9568ac731f}",
"{dc726dd5-d0d7-4275-be02-f6916df4fa29}",
]
Park:
style: default
visible: true
expanded: false
Other_Layers_Group:
group: true
checked: true
expanded: false
Other_Layers_Group/SubGroup:
group: true
checked: true
expanded: false
Subgroups are separated with /
.
UsabILIty Hub support for Variables and Print Layouts
variables:
"first_variable": "This is a test value."
"Another_Variable": "2"
layouts:
"Layout One":
templatefile: "../layouttemplate/freddys_qgis_project_layout_one.qpt"
"Layout Three":
templatefile: "../layouttemplate/freddys_qgis_project_layout_three.qpt"
The print layouts are exported as template files qpt
and loaded according the name.
Additive settings in the UsabILIty Hub Exporter
The Map Themes, the Variables and the Print Layout are parsed from the project. There is a minimal configuration option to decide what should be considered.
The layer styles are exported automatically considering the general category setting per layer. The export configuration per style (like categories) is not yet supported by in the GUI. See: #766
Known Issues
settHasCheckedStateInfo(True)
is not available in the PyQGIS API, what makes it impossible to control the checked state of a group. See qgis/QGIS#33099 (review)
Sponsors
This feature has been financed by the cantons of Schaffhausen and Solothurn
ili2db
Using ili2db version 4.9.0
Library
Using modelbaker library 1.3.7
7.2.7
Fixes
- Topping Exporter: Add prefix to source loaded from repository in #755
- Topping Exporter: Use semicolons as delimiter instead of commas in opengisch/QgisModelBakerLibrary#37
- UsabILIty Hub: Support layer styles in opengisch/QgisModelBakerLibrary#36
- Topping Exporter:: Store tablename and geometrycolumn to allow layer naming when no source or datadefinition file is used opengisch/toppingmaker#5
Library
Using modelbaker library 1.3.5