Files
boc/projects/landvex/db/load_graph.cypher
T
Bernt 7d40cf95bf landvex: IOL v3 + Identify API + Neo4j-graf + byggpipeline
- FastAPI Identify API (port 8081)
- Neo4j propertygraf (64 noder, 80 kanter)
- Ingest-pipeline (Python)
- Byggscript + integrationstester
- Docker Compose setup
2026-07-05 05:55:48 +00:00

37 lines
1004 B
Plaintext

// Landvex IOL — ladda grafen i Neo4j
// Kör: cat db/load_graph.cypher | cypher-shell -u neo4j -p landvex2024
CREATE CONSTRAINT lvx_id_unique IF NOT EXISTS
FOR (n:Objekt) REQUIRE n.lvx_id IS UNIQUE;
:auto LOAD CSV WITH HEADERS FROM 'file:///noder.csv' AS row
CALL {
WITH row
CREATE (o:Objekt {
lvx_id: row.lvx_id,
posttyp: row.posttyp,
namn_sv: row.namn_sv,
namn_en: row.namn_en,
doman: row.doman,
tier: toInteger(row.tier),
verifieringsniva: row.verifieringsniva,
konfidens: toFloat(row.konfidens)
})
} IN TRANSACTIONS OF 1000 ROWS;
:auto LOAD CSV WITH HEADERS FROM 'file:///kanter.csv' AS row
CALL {
WITH row
MATCH (a:Objekt {lvx_id: row.subjekt})
MATCH (b:Objekt {lvx_id: row.objekt})
CREATE (a)-[r:RELATION {
predikat: row.predikat,
niva: row.niva,
beskrivning: row.beskrivning
}]->(b)
} IN TRANSACTIONS OF 1000 ROWS;
// Index för snabb sökning
CREATE TEXT INDEX objekt_namn IF NOT EXISTS
FOR (o:Objekt) ON (o.namn_sv, o.namn_en);