Connecting Neo4j to Building Information Models

Has anyone ever worked to connect a Neo4j database with a 3D building information model (BIM)? I'm interested in learning how to connect a smart building model with lots of information/metadata to a graph database to track building information across a campus environment and use it for asset management.

Hi, I'm a PhD candidate researching how we could link all kinds of built environment data using graphs, and created multiple graphs for BIM data. The easiest way currently seems to be this:

  1. Create an IFC export of your BIM model.
  2. Use the IFCtoLBD converter to create an RDF turtle. (it uses the BOT ontology as main ontology, and PROPS and PRODUCT ontology to describe all elements) GitHub - jyrkioraskari/IFCtoLBD: IFCtoLBD converts IFC (Industry Foundation Classes STEP formatted files into the Linked Building Data ontologies.
  • based on the PROPS level you get more complex graphs
  • nice thing is to create sensor objects in revit, the exporter also exports these (so you can later link IoT data easily)
  1. Import the RDF turtle using the NSMTX import function in Neo4j. (much documentation here: neosemantics (n10s): Neo4j RDF & Semantics toolkit - Neo4j Labs)

You can easily connect your building graph to other data (e.g. geographic location, weather data, sensor data etc.) through APIs.

There's a group of researchers working on Linked Building Data for quite a long time (Pieter Pauwels, Jacob Beetz, many others), mainly using RDF, you might want to check their work.

1 Like

Back to 2017 i published a paper about a workflow to convert IFC models to neo4j database. Hope this can hrlp you.

https://www.researchgate.net/publication/318600860_Application_of_graph_databases_and_graph_theory_concepts_for_advanced_analysing_of_BIM_models_based_on_IFC_standard