MERGE будет здесь решением, создавая схему аэропорта, включая терминал, но не создавая: терминальные узлы заранее.
Когда вы используете MERGE для шаблона, и один из узлов уже связан (узел: Airport), а другой нет (терминал:), тогда, если необходимо создать шаблон, будет создан несвязанный узел вдоль с отношениями между узлами. Так вы создаете терминалы для каждого аэропорта.
MATCH (a:Airport{name:"Schiphol"})
MERGE (a)-[:INCLUDES]->(termA:Terminal{name:"A"})
А если вы хотите создать все терминалы одновременно для аэропорта:
MATCH (a:Airport{name:"Schiphol"})
UNWIND ['A','B','C','D','E'] as term
MERGE (a)-[:INCLUDES]->(terminal:Terminal{name:term})