Gå till innehållet

Filformat

.docx

Word-dokumentet är källan för text, bilder, tabeller och export. Appen bevarar originalets ZIP-innehåll och skriver till relevanta OOXML-delar vid export.

.json

Detaljplan-JSON används för geometrier. Original-JSON sparas så att den kan exporteras oförändrad eller med motiv.

Taggexport .zip

Taggexporten skapas som en ZIP-fil för vidare bearbetning i script, GIS-verktyg eller databaser. ZIP-filen separerar taggmetadata, geometrier och bildfiler.

Planbeskrivning_taggar.zip
├─ tags.json
├─ geometries.geojson
└─ images/
   └─ <tagg-uuid>.png
Fil/katalog Innehåll
tags.json Taggdata, kategorier, dokumentpositioner samt referenser till geometri- och bildfiler.
geometries.geojson GeoJSON FeatureCollection med unika länkade geometrier, utan appens presentationsmetadata.
images/ Bildfiler för taggade bilder när bilddata finns.

tags.json har schemaVersion 2. Taggar refererar till geometrier med geometryIds; dessa matchar features[].id i geometries.geojson. Bildtaggar refererar till filer i images/ med image.path.

Exempel på ett förkortat tags.json:

{
  "schemaVersion": 2,
  "exportedAt": "2026-06-27T12:00:00.000Z",
  "sourceDocument": {
    "fileName": "Planbeskrivning.docx",
    "activeGeometryDocId": "plan-1"
  },
  "summary": {
    "tagCount": 2,
    "linkedGeometryCount": 1,
    "categories": [
      {
        "categoryId": "detaljplanens-syfte--syfte",
        "level": "grupp",
        "temaId": "detaljplanens-syfte",
        "temaName": "Detaljplanens syfte",
        "gruppId": "syfte",
        "gruppName": "Syfte",
        "undergruppId": null,
        "undergruppName": null,
        "custom": false,
        "tagCount": 2
      }
    ],
    "unknownCategoryIds": []
  },
  "assets": {
    "geometries": {
      "path": "geometries.geojson",
      "linkedGeometryCount": 1,
      "featureCount": 1,
      "missingGeometryReferenceCount": 0
    },
    "images": {
      "directory": "images",
      "imageTagCount": 1,
      "exportedImageCount": 1,
      "missingImageCount": 0
    }
  },
  "tags": [
    {
      "uuid": "tag-1",
      "targetType": "text",
      "text": "Markerad text",
      "note": null,
      "createdAt": "2026-06-27T12:00:00.000Z",
      "paragraphIndex": 0,
      "startOffset": 10,
      "endParagraphIndex": 0,
      "endOffset": 24,
      "runId": null,
      "tableId": null,
      "categoryId": "detaljplanens-syfte--syfte",
      "categoryLevel": "grupp",
      "temaId": "detaljplanens-syfte",
      "temaName": "Detaljplanens syfte",
      "gruppId": "syfte",
      "gruppName": "Syfte",
      "undergruppId": null,
      "undergruppName": null,
      "customCategory": false,
      "geometryIds": ["geo-1"],
      "missingGeometryIds": [],
      "image": null,
      "missingImage": false
    },
    {
      "uuid": "tag-2",
      "targetType": "image",
      "text": "Bild",
      "paragraphIndex": 3,
      "startOffset": 0,
      "endParagraphIndex": 3,
      "endOffset": 0,
      "runId": "p3_r1",
      "tableId": null,
      "categoryId": "detaljplanens-syfte--syfte",
      "geometryIds": [],
      "missingGeometryIds": [],
      "image": {
        "path": "images/tag-2.png",
        "fileName": "tag-2.png",
        "mimeType": "image/png",
        "byteLength": 12345
      },
      "missingImage": false
    }
  ]
}

Exempel på ett förkortat geometries.geojson:

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "id": "geo-1",
      "geometry": {
        "type": "Point",
        "coordinates": [18.1, 59.3]
      },
      "properties": {}
    }
  ]
}

geometries.geojson innehåller bara geometrier som minst en tagg länkar till. Om flera taggar pekar på samma geometri skrivs den en gång. Kopplingen från tagg till geometri finns i tags.json genom geometryIds.

Råa properties från importerad detaljplan-JSON exporteras inte i tags.json. geometries.geojson innehåller endast Feature.id, geometry och ett tomt properties-objekt.

För bildtaggar pekar image.path på filen inne i samma ZIP. Om bilden inte kan hittas sätts image till null och missingImage till true.

.pbproject

Projektfilen är en ZIP som innehåller:

Fil Innehåll
document.docx Originaldokumentet.
project.json Projektmetadata, taggar, geometrier och aktiv geometri.
config.json Appkonfiguration.
geometry_doc.json Originalgeometri, om en geometri-JSON har importerats.

project.json och config.json har olika ansvar i projektfilen. project.json beskriver det aktuella arbetet: filnamn, taggar, geometrier och vilken geometri som är aktiv. config.json beskriver inställningarna runt arbetet: kartbakgrunder, vald WMS-karta och egna taggningskategorier.

Nyare .pbproject-filer innehåller config.json. Äldre projektfiler kan sakna den; då öppnas projektet med appens standardkonfiguration.

config.json

Konfigurationsfilen innehåller appinställningar som kan flyttas mellan projekt. Den innehåller kartkonfiguration och egna taggningskategorier.

Exempel med en sparad WMS-bakgrund:

{
  "version": 1,
  "map": {
    "activeBackgroundMapId": "kommun-wms",
    "backgroundMaps": [
      {
        "id": "kommun-wms",
        "type": "wms",
        "name": "Kommunens baskarta",
        "url": "https://example.se/wms",
        "layers": ["baskarta", "fastighetsgranser"]
      }
    ]
  },
  "categories": {
    "customGroups": [
      {
        "temaId": "beskrivning-av-detaljplanen",
        "id": "min-grupp",
        "name": "Min grupp",
        "undergrupper": [
          {
            "id": "min-undergrupp",
            "name": "Min undergrupp"
          }
        ]
      }
    ],
    "customUndergroups": [
      {
        "temaId": "genomforandefragor",
        "gruppId": "tekniska-fragor",
        "id": "drift",
        "name": "Drift"
      }
    ]
  }
}
Fält Beskrivning
version Konfigurationsversion. Nuvarande version är 1.
map.activeBackgroundMapId id för vald WMS-bakgrund, eller null för OpenStreetMap.
map.backgroundMaps Lista med sparade WMS-bakgrunder.
id Stabilt internt id för bakgrundskartan.
type Ska vara wms.
name Namnet som visas i kartinställningarna.
url WMS-adress som börjar med http:// eller https://.
layers Ett eller flera WMS-lagernamn. Det översta lagret i listan ritas överst i kartan.
categories.customGroups Egna grupper under befintliga teman.
categories.customGroups[].temaId ID för temat som gruppen hör till.
categories.customGroups[].id Stabilt grupp-ID.
categories.customGroups[].name Gruppnamn som visas i appen.
categories.customGroups[].undergrupper Egna undergrupper under den egna gruppen.
categories.customUndergroups Egna undergrupper under befintliga eller importerade grupper.
categories.customUndergroups[].temaId ID för temat som undergruppen hör till.
categories.customUndergroups[].gruppId ID för gruppen som undergruppen hör till.
categories.customUndergroups[].id Stabilt undergrupps-ID.
categories.customUndergroups[].name Undergruppsnamn som visas i appen.

Det rekommenderade sättet att ändra kartkonfiguration och egna kategorier är via appens gränssnitt. Om config.json redigeras manuellt måste varje WMS-karta ha namn, adress och minst ett lager. Egna kategorier måste ha temaId, id och name; undergrupper utanför customGroups måste även ha gruppId.

omfattningar.xml

Planbeskrivning v2.0-exporten skriver en custom XML-del i DOCX-filen. Den används för omfattningar, lägen, referenser och metadata enligt appens exportmodell.