aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2025-06-06 01:46:06 +0200
committerGuilhem Moulin <guilhem@fripost.org>2025-06-07 18:31:59 +0200
commit5f9d4e4cc914f10c6cfd3ee06405f18b880ba82d (patch)
treef2c57c771006a37a433e32acc4cbcffdcd082e3b
parent50c4e7c2a3b61acc980afb1b7c041ac43d5d1bf0 (diff)
Add various nature value layers.
Including k-skog, but we leave that one alone for now as the script lacks some logic to process raster files.
-rw-r--r--config.yml653
-rw-r--r--import_source.py15
-rw-r--r--schema.sql483
3 files changed, 1150 insertions, 1 deletions
diff --git a/config.yml b/config.yml
index 9c7bcdc..c6b94fb 100644
--- a/config.yml
+++ b/config.yml
@@ -60,7 +60,10 @@ layer-groups:
# anyway since both refer to restricted/protected nature and users
# are likely to be interested in both
- 'nva:*'
- sks: 'sks:*'
+ - 'sks:atervatningsavtal'
+ sks:
+ - 'sks:AvverkAnm'
+ - 'sks:UtfordAvverk'
ren:
- 'sametinget:*'
- 'ren:*'
@@ -71,6 +74,13 @@ layer-groups:
misc:
- dammar
- gigafactories
+ nv:
+ - 'sks:nyckelbiotop'
+ - 'sks:nyckelbiotop_storskogsbruk'
+ - 'sks:naturvarde'
+ - 'sks:sumpskog'
+ - 'nvk:skyddsvard_statlig_skog'
+ - 'lst:pagaende_naturreservatsbildning'
# Global GDAL/OGR configuration options, cf. https://gdal.org/user/configoptions.html and
@@ -177,6 +187,13 @@ downloads:
url: https://geodata.naturvardsverket.se/nedladdning/naturvardsregistret/SCI_Rikstackande.zip
max-size: 134217728 # 128MiB
+ - path: nvk/Skyddsvarda_statliga_skogar.zip
+ url: https://geodata.naturvardsverket.se/nedladdning/skog/Skyddsvarda_statliga_skogar.zip
+
+ - path: nvk/k-skog/Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024.zip
+ url: https://geodata.naturvardsverket.se/nedladdning/Kartering_av_kontinuitetsskog/Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024.zip
+ max-size: 268435456 # 256MiB
+
- basedir: nvk/
baseurl: https://geodata.naturvardsverket.se/nedladdning/riksintresse/
files:
@@ -190,12 +207,21 @@ downloads:
- lst.LST_RI_Obruten_kust_MB4kap3.zip
- lst.Lst_RI_Obrutet_fjall_MB4kap5.zip
- lst.LST_RI_Skyddade_vattendrag_MB4kap6.zip
+ - lstext.Pagaende_reservatsbildning.zip
- basedir: sks/
baseurl: https://geodpags.skogsstyrelsen.se/geodataport/data/
files:
- sksBiotopskydd_gpkg.zip
- sksNaturvardsavtal_gpkg.zip
+ - sksNyckelbiotoper_gpkg.zip
+ - sksStorskogsbrNyckelb_gpkg.zip
+ - sksNaturvarden_gpkg.zip
+ - sksAtervatningYta_gpkg.zip
+
+ - path: sks/sksSumpskogar_gpkg.zip
+ url: https://geodpags.skogsstyrelsen.se/geodataport/data/sksSumpskogar_gpkg.zip
+ max-size: 268435456 # 256MiB
- path: sks/sksAvverkAnm_gpkg.zip
url: https://geodpags.skogsstyrelsen.se/geodataport/data/sksAvverkAnm_gpkg.zip
@@ -381,6 +407,18 @@ license-info:
license:
name: CC0 1.0 Universiell
url: https://creativecommons.org/publicdomain/zero/1.0/deed.sv
+ nvk/Skyddsvarda_statliga_skogar.zip:
+ description: "Skyddsvärda statliga skogar"
+ copyright: © Naturvårdsverket
+ product_url: https://geodatakatalogen.naturvardsverket.se/geonetwork/srv/swe/catalog.search#/metadata/3919E66E-2E09-440D-9171-B5074DF0C0ED
+ license: Inga begränsningar
+ lst/lstext.Pagaende_reservatsbildning.zip:
+ description: "LstBD Pågående naturreservatsbildning"
+ copyright: © Länsstyrelsen i Norrbottens län
+ product_url: https://ext-geodatakatalog.lansstyrelsen.se/GeodataKatalogen/srv/api/records/GetMetaDataById?id=8c0b5c30-806d-49e9-8d8d-1f866c354386
+ license:
+ name: CC BY 4.0
+ url: https://creativecommons.org/licenses/by/4.0/deed.sv
sks/sksAvverkAnm_gpkg.zip:
description: "Avverkningsanmälningar"
copyright: © Skogsstyrelsen
@@ -397,6 +435,52 @@ license-info:
# https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/geodatatjanster/villkor/
name: CC0 1.0 Universiell
url: https://creativecommons.org/publicdomain/zero/1.0/deed.sv
+ sks/sksNyckelbiotoper_gpkg.zip:
+ description: "Nyckelbiotoper - Skogsstyrelsen"
+ copyright: © Skogsstyrelsen
+ product_url: https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/skogsstyrelsens-geodata/
+ license:
+ # https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/geodatatjanster/villkor/
+ name: CC0 1.0 Universiell
+ url: https://creativecommons.org/publicdomain/zero/1.0/deed.sv
+ sks/sksStorskogsbrNyckelb_gpkg.zip:
+ description: "Nyckelbiotoper - storskogsbruket"
+ copyright: © Skogsstyrelsen
+ product_url: https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/skogsstyrelsens-geodata/
+ license:
+ # https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/geodatatjanster/villkor/
+ name: CC0 1.0 Universiell
+ url: https://creativecommons.org/publicdomain/zero/1.0/deed.sv
+ sks/sksNaturvarden_gpkg.zip:
+ description: "Objekt med naturvärden"
+ copyright: © Skogsstyrelsen
+ product_url: https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/skogsstyrelsens-geodata/
+ license:
+ # https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/geodatatjanster/villkor/
+ name: CC0 1.0 Universiell
+ url: https://creativecommons.org/publicdomain/zero/1.0/deed.sv
+ sks/sksSumpskogar_gpkg.zip:
+ description: "Sumpskogar"
+ copyright: © Skogsstyrelsen
+ product_url: https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/skogsstyrelsens-geodata/
+ license:
+ # https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/geodatatjanster/villkor/
+ name: CC0 1.0 Universiell
+ url: https://creativecommons.org/publicdomain/zero/1.0/deed.sv
+ sks/sksAtervatningYta_gpkg.zip:
+ description: "Återvätningsavtal"
+ copyright: © Skogsstyrelsen
+ product_url: https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/skogsstyrelsens-geodata/
+ license:
+ # https://www.skogsstyrelsen.se/e-tjanster-och-kartor/karttjanster/geodatatjanster/villkor/
+ name: CC0 1.0 Universiell
+ url: https://creativecommons.org/publicdomain/zero/1.0/deed.sv
+ nvk/k-skog/Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024.zip:
+ description: "Sannolikt och potentiell kontinuitetsskog (preciserad 2024)"
+ #product_url: https://geodatakatalogen.naturvardsverket.se/geonetwork/srv/swe/catalog.search#/metadata/2b9d4c76-3b0e-4a55-a16c-51513da84558
+ product_url: https://geodata.naturvardsverket.se/nedladdning/Kartering_av_kontinuitetsskog/Leverans-PM_Sannolikt_och_potentiell_kontinuitetsskog_i_Boreal_Region_2024.pdf
+ copyright: © Naturvårdsverket
+ license: Inga begränsningar
mrr/mineralrattigheter.zip:
description: "Mineralrättigheter och prospektering"
copyright: © Sveriges geologiska undersökning (utdrag ur Bergsstatens mineralrättsregister)
@@ -2383,6 +2467,171 @@ layers:
with: null
publish: naturvardsavtal_skogsstyrelsen
+ 'nvk:skyddsvard_statlig_skog':
+ description: Skyddsvärda statliga skogar
+ create:
+ geometry-type: MULTIPOLYGON
+ fields:
+ # https://www.naturvardsverket.se/4ac2d0/contentassets/ca013e1f046749e9b01f8bc6f7733626/statlig-skog-skyddsvarda-s-norrbotten-objekt-del1.pdf
+ - name: ID
+ type: Integer
+ nullable: false
+ # XXX how come there is no UNIQUE constraint here?
+ #unique: true
+ - name: NAMN
+ type: String
+ width: 62
+ nullable: false
+ - name: AR
+ type: Integer
+ subtype: Int16
+ nullable: false
+ comment: År
+ - name: NATURGEOGR
+ type: String
+ width: 62
+ comment: Naturgeografisk region
+ - name: OBJEKTKATE
+ type: String
+ width: 12
+ comment: Objektskategori
+ - name: MARKAGARE
+ type: String
+ width: 254
+ comment: Markägare
+ - name: VARDEKARNA
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal värdekärna (ha)
+ - name: UTV_MARK
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal utvecklingsmark (ha)
+ - name: TOTAL_AREA
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Totalareal (ha)
+ - name: LAND
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal land (ha)
+ - name: VATTEN
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal vatten (ha)
+ - name: PROD_SKOG
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal produktiv skogsmark (ha)
+ - name: SKOG_O_FJG
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal produktiv skogsmark ovanför fjällnära gräns (ha)
+ - name: SKOG_N_FJG
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal produktiv skogsmark dedanför fjällnära gräns (ha)
+ - name: SKYDDSZON
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal skyddszon (ha)
+ - name: ARRO_MARK
+ # XXX convert to m²?
+ type: Real
+ nullable: false
+ comment: Areal arronderingsmark (ha)
+ - name: KRITERIER
+ type: String
+ width: 254
+ nullable: false
+ - name: BESKRIVN
+ type: String
+ width: 254
+ nullable: false
+ - name: LST_BEDOMN
+ type: String
+ width: 254
+ nullable: false
+ - name: KALLOR
+ type: String
+ width: 254
+ source:
+ path: nvk/Skyddsvarda_statliga_skogar.zip
+ unar:
+ format: zip
+ patterns:
+ - 'SNUS.*'
+ import:
+ path: SNUS.shp
+ format: ESRI Shapefile
+ layername: SNUS
+ value-map:
+ KRITERIER:
+ - replace: '(.*[^.])\.\.\.'
+ with: '{0}…'
+ type: regex
+ BESKRIVN:
+ - replace: '(.*[^.])\.\.\.'
+ with: '{0}…'
+ type: regex
+ LST_BEDOMN:
+ - replace: '(.*[^.])\.\.\.'
+ with: '{0}…'
+ type: regex
+ KALLOR:
+ - replace: '(.*[^.])\.\.\.'
+ with: '{0}…'
+ type: regex
+ publish: snus
+
+ 'lst:pagaende_naturreservatsbildning':
+ description: LstBD Pågående naturreservatsbildning
+ create:
+ geometry-type: MULTIPOLYGON
+ fields:
+ - name: OBJECTID
+ type: Integer
+ unique: true
+ nullable: false
+ comment: Unik identitet
+ - name: NAMN
+ type: String
+ width: 62
+ nullable: false
+ - name: GRANSJUST
+ type: Date
+ - name: DOS_ID
+ type: Integer
+ source:
+ path: lst/lstext.Pagaende_reservatsbildning.zip
+ unar:
+ format: zip
+ patterns:
+ - 'lstext.Pagaende_reservatsbildning.*'
+ import:
+ path: lstext.Pagaende_reservatsbildning.shp
+ format: ESRI Shapefile
+ layername: lstext.Pagaende_reservatsbildning
+ value-map:
+ GRANSJUST:
+ # 1900-01-01 innebär att datum ej identifierats
+ - replace: '19000101'
+ with: null
+ - replace: '([0-9]{4})([0-9]{2})([0-9]{2})'
+ with: '{0}-{1}-{2}'
+ type: regex
+ publish: pagaende_naturreservatsbildning
+
+
'sks:AvverkAnm':
# https://geodpags.skogsstyrelsen.se/geodataport/feeds/AvverkAnm.xml
description: Avverkningsanmälningar (Skogsstyrelsen)
@@ -4739,3 +4988,405 @@ layers:
dammar:
where: |
"Status" = 1 AND "XX_Distance" BETWEEN 0 AND 2000
+
+ 'sks:nyckelbiotop':
+ description: Nyckelbiotoper - Skogsstyrelsen
+ create:
+ geometry-type: MULTIPOLYGON
+ fields:
+ # https://skogsstyrelsen.se/globalassets/sjalvservice/karttjanster/geodatatjanster/produktbeskrivningar/nyckelbiotoper---produktbeskrivning.pdf
+ - name: Beteckn
+ type: String
+ width: 12
+ unique: true
+ nullable: false
+ comment: Ärendebeteckning
+ - name: Objnamn
+ type: String
+ width: 62
+ comment: Namn på objektet
+ - name: Datinv
+ type: Date
+ nullable: false
+ comment: Datum för fältinventering
+ - name: Biotop1
+ type: String
+ width: 62
+ - name: Biotop2
+ type: String
+ width: 62
+ - name: Biotop3
+ type: String
+ width: 62
+ - name: Beskrivn1
+ type: String
+ width: 62
+ - name: Beskrivn2
+ type: String
+ width: 62
+ - name: Beskrivn3
+ type: String
+ width: 62
+ - name: Beskrivn4
+ type: String
+ width: 62
+ - name: Beskrivn5
+ type: String
+ width: 62
+ - name: Beskrivn6
+ type: String
+ width: 62
+ - name: Beskrivn7
+ type: String
+ width: 62
+ - name: Beskrivn8
+ type: String
+ width: 62
+ - name: Url
+ type: String
+ width: 254
+ nullable: false
+ comment: Länk till visningsformulär i Skogens Pärlor
+ source:
+ path: sks/sksNyckelbiotoper_gpkg.zip
+ unar:
+ format: zip
+ import:
+ path: sksNyckelbiotoper.gpkg
+ format: GPKG
+ layername: NyckelbiotopYta
+ value-map:
+ Biotop1:
+ - replace: 'saknas'
+ with: null
+ Biotop2:
+ - replace: 'saknas'
+ with: null
+ Biotop3:
+ - replace: 'saknas'
+ with: null
+ Beskrivn1:
+ - replace: 'saknas'
+ with: null
+ Beskrivn2:
+ - replace: 'saknas'
+ with: null
+ Beskrivn3:
+ - replace: 'saknas'
+ with: null
+ Beskrivn4:
+ - replace: 'saknas'
+ with: null
+ Beskrivn5:
+ - replace: 'saknas'
+ with: null
+ Beskrivn6:
+ - replace: 'saknas'
+ with: null
+ Beskrivn7:
+ - replace: 'saknas'
+ with: null
+ Beskrivn8:
+ - replace: 'saknas'
+ with: null
+ publish: nyckelbiotop
+
+ 'sks:nyckelbiotop_storskogsbruk':
+ description: Nyckelbiotoper - storskogsbruket
+ create:
+ geometry-type: MULTIPOLYGON
+ fields:
+ # https://skogsstyrelsen.se/globalassets/sjalvservice/karttjanster/geodatatjanster/produktbeskrivningar/storskogsbrukets-nyckelbiotoper---produktbeskrivning.pdf
+ - name: objectid
+ type: Integer
+ unique: true
+ nullable: false
+ comment: Unik identitet
+ - name: Org
+ type: String
+ width: 62
+ nullable: false
+ comment: Namn på Organisation som gjort inventeringen
+ - name: InkomDatum
+ type: Date
+ nullable: false
+ comment: Datum då data inkommit till Skogsstyrelsen
+ - name: Url
+ type: String
+ width: 254
+ nullable: false
+ comment: Länk till Skogens Pärlors visningsformulär
+ source:
+ path: sks/sksStorskogsbrNyckelb_gpkg.zip
+ unar:
+ format: zip
+ import:
+ path: sksStorskogsbrNyckelb.gpkg
+ format: GPKG
+ layername: StorskogsbuketsNyckelbiotop
+ publish: nyckelbiotop_storskogsbruk
+
+ 'sks:naturvarde':
+ description: Objekt med naturvärden - Skogsstyrelsen
+ create:
+ geometry-type: MULTIPOLYGON
+ fields:
+ # https://skogsstyrelsen.se/globalassets/sjalvservice/karttjanster/geodatatjanster/produktbeskrivningar/objekt-med-naturvarden---produktbeskrivning.pdf
+ - name: ObjectId
+ type: Integer
+ unique: true
+ nullable: false
+ comment: Unik identitet
+ - name: Beteckn
+ type: String
+ width: 12
+ unique: true
+ nullable: false
+ comment: Ärendebeteckning
+ - name: Objnamn
+ type: String
+ width: 62
+ comment: Namn på objektet
+ - name: Datinv
+ type: Date
+ nullable: false
+ comment: Datum för fältinventering
+ - name: Biotop1
+ type: String
+ width: 62
+ - name: Biotop2
+ type: String
+ width: 62
+ - name: Biotop3
+ type: String
+ width: 62
+ - name: Beskrivn1
+ type: String
+ width: 62
+ - name: Beskrivn2
+ type: String
+ width: 62
+ - name: Beskrivn3
+ type: String
+ width: 62
+ - name: Url
+ type: String
+ width: 254
+ nullable: false
+ comment: Länk till visningsformulär i Skogens Pärlor
+ source:
+ path: sks/sksNaturvarden_gpkg.zip
+ unar:
+ format: zip
+ import:
+ path: sksNaturvarden.gpkg
+ format: GPKG
+ layername: NaturvardeYta
+ value-map:
+ Biotop1:
+ - replace: saknas
+ with: null
+ Biotop2:
+ - replace: saknas
+ with: null
+ Biotop3:
+ - replace: saknas
+ with: null
+ Beskrivn1:
+ - replace: saknas
+ with: null
+ Beskrivn2:
+ - replace: saknas
+ with: null
+ Beskrivn3:
+ - replace: saknas
+ with: null
+ publish: naturvarde_sks
+
+ 'sks:sumpskog':
+ description: Sumpskogar
+ create:
+ geometry-type: MULTIPOLYGON
+ fields:
+ # https://skogsstyrelsen.se/globalassets/sjalvservice/karttjanster/geodatatjanster/produktbeskrivningar/sumpskog---produktbeskrivning.pdf
+ - name: OBJECTID
+ type: Integer
+ unique: true
+ nullable: false
+ comment: Unik identitet
+ - name: Namn
+ type: String
+ width: 62
+ comment: Objektnamn
+ - name: Hydrtext
+ type: String
+ width: 62
+ comment: Hydrologisk text, ex. kärrskog, mosseskog
+ - name: Tradtext
+ type: String
+ width: 62
+ nullable: false
+ comment: Trädslag
+ - name: Delklass
+ type: String
+ width: 62
+ comment: Klass på delobjektet
+ - name: Klassu
+ type: String
+ width: 62
+ comment: Klass på objektet
+ - name: Lovandel
+ type: String
+ width: 62
+ comment: Lövandel
+ - name: Krontakn
+ type: String
+ width: 62
+ comment: Krontäckning
+ - name: Huggklas
+ type: String
+ width: 62
+ comment: Huggningsklass
+ - name: Andelva
+ type: String
+ width: 62
+ comment: Andel öppet vatten
+ - name: Ingrepp
+ type: String
+ width: 62
+ comment: Ingrepp på delobjekt (max 4)
+ - name: Ingrpavv
+ type: String
+ width: 62
+ comment: Grad av påverkan på delobjekt (max 4)
+ - name: Objnyck
+ type: String
+ width: 62
+ comment: Nyckelord på objektnivå
+ - name: Delnyck
+ type: String
+ width: 62
+ comment: Nyckelord på delobjektsnivå
+ - name: Flygar
+ type: Integer
+ subtype: Int16
+ comment: Flygbildsår
+ - name: Faltdat
+ type: Date
+ comment: Faltdat
+ - name: Invtekn
+ type: String
+ width: 62
+ nullable: false
+ comment: Inventeringsteknik
+ - name: Invdat
+ type: Date
+ nullable: false
+ comment: Inventeringdatum
+ - name: Ansvmynd
+ type: String
+ width: 62
+ nullable: false
+ comment: Ansvarig myndighet
+ - name: Url
+ type: String
+ width: 252
+ nullable: false
+ comment: Länk till Skogens pärlors formulär för objektet
+ source:
+ path: sks/sksSumpskogar_gpkg.zip
+ unar:
+ format: zip
+ import:
+ path: sksSumpskogar.gpkg
+ format: GPKG
+ layername: SumpskogYta
+ rstrip-strings: true
+ value-map:
+ Namn:
+ - replace: 'Namn ej angivet'
+ with: null
+ Klassu:
+ - replace: 'saknas'
+ with: null
+ Krontakn:
+ - replace: 'saknas'
+ with: null
+ Huggklas:
+ - replace: 'saknas'
+ with: null
+ Andelva:
+ - replace: 'saknas'
+ with: null
+ Ingrepp:
+ - replace: 'saknas'
+ with: null
+ Ingrpavv:
+ - replace: 'saknas'
+ with: null
+ Objnyck:
+ - replace: 'saknas'
+ with: null
+ Delnyck:
+ - replace: 'saknas'
+ with: null
+ Flygar:
+ - replace: 'saknas'
+ with: null
+ publish: sumpskog
+
+ 'sks:atervatningsavtal':
+ description: Återvätningsavtal
+ create:
+ geometry-type: MULTIPOLYGON
+ fields:
+ # https://skogsstyrelsen.se/globalassets/sjalvservice/karttjanster/geodatatjanster/produktbeskrivningar/atervatningsavtal---produktbeskrivning.pdf
+ - name: Uuid
+ type: String
+ subtype: UUID
+ #width: 36
+ unique: true
+ nullable: false
+ comment: Unikt ID
+ - name: Beteckn
+ type: String
+ width: 12
+ nullable: false
+ comment: Ärendebeteckning
+ - name: ArendeAr
+ type: Integer
+ subtype: Int16
+ nullable: false
+ comment: Ärendeår
+ - name: AvtalatDatum
+ type: Date
+ comment: Avtalat datum
+ - name: Url
+ type: String
+ width: 252
+ comment: Länk till Skogens pärlors formulär för objektet
+ source:
+ path: sks/sksAtervatningYta_gpkg.zip
+ unar:
+ format: zip
+ import:
+ path: sksAtervatningYta.gpkg
+ format: GPKG
+ layername: AtervatningYta
+ value-map:
+ Url:
+ - replace: ''
+ with: null
+ publish: atervatningsavtal
+
+ 'nvk:kskog':
+ description: "Sannolikt och potentiell kontinuitetsskog (preciserad 2024)"
+ source:
+ path: nvk/k-skog/Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024.zip
+ unar:
+ format: zip
+ patterns:
+ - 'Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024/Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024.*'
+ import:
+ path: Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024/Sannolikt_och_potentiell_kontinuitetsskog_BorealRegion_2024.tif
+ format: GeoTIFF
diff --git a/import_source.py b/import_source.py
index 13a8e6c..16284b9 100644
--- a/import_source.py
+++ b/import_source.py
@@ -758,6 +758,15 @@ def _importSource2(lyr_dst : ogr.Layer, path : str, args : dict[str,Any],
if nullReplacement is not None or len(mapping) > 0:
valueMap.append( (i, nullReplacement, mapping) )
+ if args.get('rstrip-strings', False):
+ stringFieldsIdx = [ i for i in range(fieldCount)
+ if defn.GetFieldDefn(i).GetType() == ogr.OFTString and
+ fieldMap[i] >= 0 ]
+ logging.debug('Source field indices to rstrip: %s', str(stringFieldsIdx))
+ bStringFields = len(stringFieldsIdx) > 0
+ else:
+ bStringFields = False
+
bValueMap = len(valueMap) > 0
defn = None
@@ -774,6 +783,12 @@ def _importSource2(lyr_dst : ogr.Layer, path : str, args : dict[str,Any],
mismatch = {}
feature = lyr.GetNextFeature()
while feature is not None:
+ if bStringFields:
+ for i in stringFieldsIdx:
+ if feature.IsFieldSetAndNotNull(i):
+ v = feature.GetField(i)
+ feature.SetField(i, v.rstrip())
+
if bValueMap:
for i, nullReplacement, mapping in valueMap:
if not feature.IsFieldSet(i):
diff --git a/schema.sql b/schema.sql
index 573587d..53cf6dc 100644
--- a/schema.sql
+++ b/schema.sql
@@ -2796,6 +2796,261 @@ ALTER SEQUENCE postgis."sks:UtfordAvverk_ogc_fid_seq" OWNED BY postgis."sks:Utfo
--
+-- Name: sks:atervatningsavtal; Type: TABLE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE TABLE postgis."sks:atervatningsavtal" (
+ ogc_fid bigint NOT NULL,
+ "Uuid" uuid NOT NULL,
+ "Beteckn" character varying(12) NOT NULL,
+ "ArendeAr" smallint NOT NULL,
+ "AvtalatDatum" date,
+ "Url" character varying(252),
+ wkb_geometry postgis.geometry(MultiPolygon,3006) NOT NULL
+);
+
+
+ALTER TABLE postgis."sks:atervatningsavtal" OWNER TO webmap_import;
+
+--
+-- Name: TABLE "sks:atervatningsavtal"; Type: COMMENT; Schema: postgis; Owner: webmap_import
+--
+
+COMMENT ON TABLE postgis."sks:atervatningsavtal" IS 'Återvätningsavtal';
+
+
+--
+-- Name: sks:atervatningsavtal_ogc_fid_seq; Type: SEQUENCE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE SEQUENCE postgis."sks:atervatningsavtal_ogc_fid_seq"
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE postgis."sks:atervatningsavtal_ogc_fid_seq" OWNER TO webmap_import;
+
+--
+-- Name: sks:atervatningsavtal_ogc_fid_seq; Type: SEQUENCE OWNED BY; Schema: postgis; Owner: webmap_import
+--
+
+ALTER SEQUENCE postgis."sks:atervatningsavtal_ogc_fid_seq" OWNED BY postgis."sks:atervatningsavtal".ogc_fid;
+
+
+--
+-- Name: sks:naturvarde; Type: TABLE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE TABLE postgis."sks:naturvarde" (
+ ogc_fid bigint NOT NULL,
+ "ObjectId" integer NOT NULL,
+ "Beteckn" character varying(12) NOT NULL,
+ "Objnamn" character varying(62),
+ "Datinv" date NOT NULL,
+ "Biotop1" character varying(62),
+ "Biotop2" character varying(62),
+ "Biotop3" character varying(62),
+ "Beskrivn1" character varying(62),
+ "Beskrivn2" character varying(62),
+ "Beskrivn3" character varying(62),
+ "Url" character varying(254) NOT NULL,
+ wkb_geometry postgis.geometry(MultiPolygon,3006) NOT NULL
+);
+
+
+ALTER TABLE postgis."sks:naturvarde" OWNER TO webmap_import;
+
+--
+-- Name: TABLE "sks:naturvarde"; Type: COMMENT; Schema: postgis; Owner: webmap_import
+--
+
+COMMENT ON TABLE postgis."sks:naturvarde" IS 'Objekt med naturvärden - Skogsstyrelsen';
+
+
+--
+-- Name: sks:naturvarde_ogc_fid_seq; Type: SEQUENCE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE SEQUENCE postgis."sks:naturvarde_ogc_fid_seq"
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE postgis."sks:naturvarde_ogc_fid_seq" OWNER TO webmap_import;
+
+--
+-- Name: sks:naturvarde_ogc_fid_seq; Type: SEQUENCE OWNED BY; Schema: postgis; Owner: webmap_import
+--
+
+ALTER SEQUENCE postgis."sks:naturvarde_ogc_fid_seq" OWNED BY postgis."sks:naturvarde".ogc_fid;
+
+
+--
+-- Name: sks:nyckelbiotop; Type: TABLE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE TABLE postgis."sks:nyckelbiotop" (
+ ogc_fid bigint NOT NULL,
+ "Beteckn" character varying(12) NOT NULL,
+ "Objnamn" character varying(62),
+ "Datinv" date NOT NULL,
+ "Biotop1" character varying(62),
+ "Biotop2" character varying(62),
+ "Biotop3" character varying(62),
+ "Beskrivn1" character varying(62),
+ "Beskrivn2" character varying(62),
+ "Beskrivn3" character varying(62),
+ "Beskrivn4" character varying(62),
+ "Beskrivn5" character varying(62),
+ "Beskrivn6" character varying(62),
+ "Beskrivn7" character varying(62),
+ "Beskrivn8" character varying(62),
+ "Url" character varying(254) NOT NULL,
+ wkb_geometry postgis.geometry(MultiPolygon,3006) NOT NULL
+);
+
+
+ALTER TABLE postgis."sks:nyckelbiotop" OWNER TO webmap_import;
+
+--
+-- Name: TABLE "sks:nyckelbiotop"; Type: COMMENT; Schema: postgis; Owner: webmap_import
+--
+
+COMMENT ON TABLE postgis."sks:nyckelbiotop" IS 'Nyckelbiotoper - Skogsstyrelsen';
+
+
+--
+-- Name: sks:nyckelbiotop_ogc_fid_seq; Type: SEQUENCE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE SEQUENCE postgis."sks:nyckelbiotop_ogc_fid_seq"
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE postgis."sks:nyckelbiotop_ogc_fid_seq" OWNER TO webmap_import;
+
+--
+-- Name: sks:nyckelbiotop_ogc_fid_seq; Type: SEQUENCE OWNED BY; Schema: postgis; Owner: webmap_import
+--
+
+ALTER SEQUENCE postgis."sks:nyckelbiotop_ogc_fid_seq" OWNED BY postgis."sks:nyckelbiotop".ogc_fid;
+
+
+--
+-- Name: sks:nyckelbiotop_storskogsbruk; Type: TABLE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE TABLE postgis."sks:nyckelbiotop_storskogsbruk" (
+ ogc_fid bigint NOT NULL,
+ objectid integer NOT NULL,
+ "Org" character varying(62) NOT NULL,
+ "InkomDatum" date NOT NULL,
+ "Url" character varying(254) NOT NULL,
+ wkb_geometry postgis.geometry(MultiPolygon,3006) NOT NULL
+);
+
+
+ALTER TABLE postgis."sks:nyckelbiotop_storskogsbruk" OWNER TO webmap_import;
+
+--
+-- Name: TABLE "sks:nyckelbiotop_storskogsbruk"; Type: COMMENT; Schema: postgis; Owner: webmap_import
+--
+
+COMMENT ON TABLE postgis."sks:nyckelbiotop_storskogsbruk" IS 'Nyckelbiotoper - storskogsbruket';
+
+
+--
+-- Name: sks:nyckelbiotop_storskogsbruk_ogc_fid_seq; Type: SEQUENCE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE SEQUENCE postgis."sks:nyckelbiotop_storskogsbruk_ogc_fid_seq"
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE postgis."sks:nyckelbiotop_storskogsbruk_ogc_fid_seq" OWNER TO webmap_import;
+
+--
+-- Name: sks:nyckelbiotop_storskogsbruk_ogc_fid_seq; Type: SEQUENCE OWNED BY; Schema: postgis; Owner: webmap_import
+--
+
+ALTER SEQUENCE postgis."sks:nyckelbiotop_storskogsbruk_ogc_fid_seq" OWNED BY postgis."sks:nyckelbiotop_storskogsbruk".ogc_fid;
+
+
+--
+-- Name: sks:sumpskog; Type: TABLE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE TABLE postgis."sks:sumpskog" (
+ ogc_fid bigint NOT NULL,
+ "OBJECTID" integer NOT NULL,
+ "Namn" character varying(62),
+ "Hydrtext" character varying(62),
+ "Tradtext" character varying(62) NOT NULL,
+ "Delklass" character varying(62),
+ "Klassu" character varying(62),
+ "Lovandel" character varying(62),
+ "Krontakn" character varying(62),
+ "Huggklas" character varying(62),
+ "Andelva" character varying(62),
+ "Ingrepp" character varying(62),
+ "Ingrpavv" character varying(62),
+ "Objnyck" character varying(62),
+ "Delnyck" character varying(62),
+ "Flygar" smallint,
+ "Faltdat" date,
+ "Invtekn" character varying(62) NOT NULL,
+ "Invdat" date NOT NULL,
+ "Ansvmynd" character varying(62) NOT NULL,
+ "Url" character varying(252) NOT NULL,
+ wkb_geometry postgis.geometry(MultiPolygon,3006) NOT NULL
+);
+
+
+ALTER TABLE postgis."sks:sumpskog" OWNER TO webmap_import;
+
+--
+-- Name: TABLE "sks:sumpskog"; Type: COMMENT; Schema: postgis; Owner: webmap_import
+--
+
+COMMENT ON TABLE postgis."sks:sumpskog" IS 'Sumpskogar';
+
+
+--
+-- Name: sks:sumpskog_ogc_fid_seq; Type: SEQUENCE; Schema: postgis; Owner: webmap_import
+--
+
+CREATE SEQUENCE postgis."sks:sumpskog_ogc_fid_seq"
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE postgis."sks:sumpskog_ogc_fid_seq" OWNER TO webmap_import;
+
+--
+-- Name: sks:sumpskog_ogc_fid_seq; Type: SEQUENCE OWNED BY; Schema: postgis; Owner: webmap_import
+--
+
+ALTER SEQUENCE postgis."sks:sumpskog_ogc_fid_seq" OWNED BY postgis."sks:sumpskog".ogc_fid;
+
+
+--
-- Name: svk:ledningar; Type: TABLE; Schema: postgis; Owner: webmap_import
--
@@ -3564,6 +3819,41 @@ ALTER TABLE ONLY postgis."sks:UtfordAvverk" ALTER COLUMN ogc_fid SET DEFAULT nex
--
+-- Name: sks:atervatningsavtal ogc_fid; Type: DEFAULT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:atervatningsavtal" ALTER COLUMN ogc_fid SET DEFAULT nextval('postgis."sks:atervatningsavtal_ogc_fid_seq"'::regclass);
+
+
+--
+-- Name: sks:naturvarde ogc_fid; Type: DEFAULT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:naturvarde" ALTER COLUMN ogc_fid SET DEFAULT nextval('postgis."sks:naturvarde_ogc_fid_seq"'::regclass);
+
+
+--
+-- Name: sks:nyckelbiotop ogc_fid; Type: DEFAULT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:nyckelbiotop" ALTER COLUMN ogc_fid SET DEFAULT nextval('postgis."sks:nyckelbiotop_ogc_fid_seq"'::regclass);
+
+
+--
+-- Name: sks:nyckelbiotop_storskogsbruk ogc_fid; Type: DEFAULT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:nyckelbiotop_storskogsbruk" ALTER COLUMN ogc_fid SET DEFAULT nextval('postgis."sks:nyckelbiotop_storskogsbruk_ogc_fid_seq"'::regclass);
+
+
+--
+-- Name: sks:sumpskog ogc_fid; Type: DEFAULT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:sumpskog" ALTER COLUMN ogc_fid SET DEFAULT nextval('postgis."sks:sumpskog_ogc_fid_seq"'::regclass);
+
+
+--
-- Name: svk:ledningar ogc_fid; Type: DEFAULT; Schema: postgis; Owner: webmap_import
--
@@ -4532,6 +4822,94 @@ ALTER TABLE ONLY postgis."sks:UtfordAvverk"
--
+-- Name: sks:atervatningsavtal sks:atervatningsavtal_Uuid_key; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:atervatningsavtal"
+ ADD CONSTRAINT "sks:atervatningsavtal_Uuid_key" UNIQUE ("Uuid");
+
+
+--
+-- Name: sks:atervatningsavtal sks:atervatningsavtal_pkey; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:atervatningsavtal"
+ ADD CONSTRAINT "sks:atervatningsavtal_pkey" PRIMARY KEY (ogc_fid);
+
+
+--
+-- Name: sks:naturvarde sks:naturvarde_Beteckn_key; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:naturvarde"
+ ADD CONSTRAINT "sks:naturvarde_Beteckn_key" UNIQUE ("Beteckn");
+
+
+--
+-- Name: sks:naturvarde sks:naturvarde_ObjectId_key; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:naturvarde"
+ ADD CONSTRAINT "sks:naturvarde_ObjectId_key" UNIQUE ("ObjectId");
+
+
+--
+-- Name: sks:naturvarde sks:naturvarde_pkey; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:naturvarde"
+ ADD CONSTRAINT "sks:naturvarde_pkey" PRIMARY KEY (ogc_fid);
+
+
+--
+-- Name: sks:nyckelbiotop sks:nyckelbiotop_Beteckn_key; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:nyckelbiotop"
+ ADD CONSTRAINT "sks:nyckelbiotop_Beteckn_key" UNIQUE ("Beteckn");
+
+
+--
+-- Name: sks:nyckelbiotop sks:nyckelbiotop_pkey; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:nyckelbiotop"
+ ADD CONSTRAINT "sks:nyckelbiotop_pkey" PRIMARY KEY (ogc_fid);
+
+
+--
+-- Name: sks:nyckelbiotop_storskogsbruk sks:nyckelbiotop_storskogsbruk_objectid_key; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:nyckelbiotop_storskogsbruk"
+ ADD CONSTRAINT "sks:nyckelbiotop_storskogsbruk_objectid_key" UNIQUE (objectid);
+
+
+--
+-- Name: sks:nyckelbiotop_storskogsbruk sks:nyckelbiotop_storskogsbruk_pkey; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:nyckelbiotop_storskogsbruk"
+ ADD CONSTRAINT "sks:nyckelbiotop_storskogsbruk_pkey" PRIMARY KEY (ogc_fid);
+
+
+--
+-- Name: sks:sumpskog sks:sumpskog_OBJECTID_key; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:sumpskog"
+ ADD CONSTRAINT "sks:sumpskog_OBJECTID_key" UNIQUE ("OBJECTID");
+
+
+--
+-- Name: sks:sumpskog sks:sumpskog_pkey; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
+--
+
+ALTER TABLE ONLY postgis."sks:sumpskog"
+ ADD CONSTRAINT "sks:sumpskog_pkey" PRIMARY KEY (ogc_fid);
+
+
+--
-- Name: svk:ledningar svk:ledningar_pkey; Type: CONSTRAINT; Schema: postgis; Owner: webmap_import
--
@@ -5013,6 +5391,41 @@ CREATE INDEX "sks:UtfordAvverk_wkb_geometry_geom_idx" ON postgis."sks:UtfordAvve
--
+-- Name: sks:atervatningsavtal_wkb_geometry_geom_idx; Type: INDEX; Schema: postgis; Owner: webmap_import
+--
+
+CREATE INDEX "sks:atervatningsavtal_wkb_geometry_geom_idx" ON postgis."sks:atervatningsavtal" USING gist (wkb_geometry);
+
+
+--
+-- Name: sks:naturvarde_wkb_geometry_geom_idx; Type: INDEX; Schema: postgis; Owner: webmap_import
+--
+
+CREATE INDEX "sks:naturvarde_wkb_geometry_geom_idx" ON postgis."sks:naturvarde" USING gist (wkb_geometry);
+
+
+--
+-- Name: sks:nyckelbiotop_storskogsbruk_wkb_geometry_geom_idx; Type: INDEX; Schema: postgis; Owner: webmap_import
+--
+
+CREATE INDEX "sks:nyckelbiotop_storskogsbruk_wkb_geometry_geom_idx" ON postgis."sks:nyckelbiotop_storskogsbruk" USING gist (wkb_geometry);
+
+
+--
+-- Name: sks:nyckelbiotop_wkb_geometry_geom_idx; Type: INDEX; Schema: postgis; Owner: webmap_import
+--
+
+CREATE INDEX "sks:nyckelbiotop_wkb_geometry_geom_idx" ON postgis."sks:nyckelbiotop" USING gist (wkb_geometry);
+
+
+--
+-- Name: sks:sumpskog_wkb_geometry_geom_idx; Type: INDEX; Schema: postgis; Owner: webmap_import
+--
+
+CREATE INDEX "sks:sumpskog_wkb_geometry_geom_idx" ON postgis."sks:sumpskog" USING gist (wkb_geometry);
+
+
+--
-- Name: svk:ledningar_wkb_geometry_geom_idx; Type: INDEX; Schema: postgis; Owner: webmap_import
--
@@ -5880,6 +6293,76 @@ GRANT SELECT,USAGE ON SEQUENCE postgis."sks:UtfordAvverk_ogc_fid_seq" TO webmap_
--
+-- Name: TABLE "sks:atervatningsavtal"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT ON TABLE postgis."sks:atervatningsavtal" TO webmap_guest;
+
+
+--
+-- Name: SEQUENCE "sks:atervatningsavtal_ogc_fid_seq"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT,USAGE ON SEQUENCE postgis."sks:atervatningsavtal_ogc_fid_seq" TO webmap_guest;
+
+
+--
+-- Name: TABLE "sks:naturvarde"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT ON TABLE postgis."sks:naturvarde" TO webmap_guest;
+
+
+--
+-- Name: SEQUENCE "sks:naturvarde_ogc_fid_seq"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT,USAGE ON SEQUENCE postgis."sks:naturvarde_ogc_fid_seq" TO webmap_guest;
+
+
+--
+-- Name: TABLE "sks:nyckelbiotop"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT ON TABLE postgis."sks:nyckelbiotop" TO webmap_guest;
+
+
+--
+-- Name: SEQUENCE "sks:nyckelbiotop_ogc_fid_seq"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT,USAGE ON SEQUENCE postgis."sks:nyckelbiotop_ogc_fid_seq" TO webmap_guest;
+
+
+--
+-- Name: TABLE "sks:nyckelbiotop_storskogsbruk"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT ON TABLE postgis."sks:nyckelbiotop_storskogsbruk" TO webmap_guest;
+
+
+--
+-- Name: SEQUENCE "sks:nyckelbiotop_storskogsbruk_ogc_fid_seq"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT,USAGE ON SEQUENCE postgis."sks:nyckelbiotop_storskogsbruk_ogc_fid_seq" TO webmap_guest;
+
+
+--
+-- Name: TABLE "sks:sumpskog"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT ON TABLE postgis."sks:sumpskog" TO webmap_guest;
+
+
+--
+-- Name: SEQUENCE "sks:sumpskog_ogc_fid_seq"; Type: ACL; Schema: postgis; Owner: webmap_import
+--
+
+GRANT SELECT,USAGE ON SEQUENCE postgis."sks:sumpskog_ogc_fid_seq" TO webmap_guest;
+
+
+--
-- Name: TABLE spatial_ref_sys; Type: ACL; Schema: postgis; Owner: postgres
--