Skip to content

Dutch Compliance

Maarten Vroegindeweij edited this page Feb 18, 2026 · 1 revision

Dutch Compliance

Ifc-Factory includes built-in support for Dutch building regulation property sets: BBL (Besluit bouwwerken leefomgeving), BENG (Bijna Energieneutrale Gebouwen), and Aerius (stikstof).

These functions create standardized IFC property sets and assign them to elements, following Dutch regulatory naming conventions.


BBL — Brandveiligheid

BBL (Besluit bouwwerken leefomgeving) replaces the former Bouwbesluit 2012 as the primary building regulation in the Netherlands. The fire safety (brandveiligheid) module covers material fire reaction, fire resistance, and fire spread resistance.

Usage

import { createBBLPropertySet } from '@ifc-factory/core';

createBBLPropertySet(model, [wallId1, wallId2, wallId3], {
  brandklasse: 'A1',
  rookklasse: 's1',
  brandwerendheid: 60,
  wbdbo: 30,
});

Properties

Property Type Unit Description Standard
brandklasse string Fire reaction class NEN-EN 13501-1
rookklasse string Smoke production class NEN-EN 13501-1
brandwerendheid number minuten Fire resistance duration NEN-EN 13501-2
wbdbo number minuten Weerstand tegen branddoorslag en brandoverslag BBL Afd. 2.2

Fire Reaction Classes (Brandklasse)

Per NEN-EN 13501-1, materials are classified:

Class Description Example Materials
A1 Niet-brandbaar Beton, staal, steen, glas
A2 Beperkt brandbaar Gipsplaat, steenwol
B Nauwelijks bijdragend aan brand Bepaalde houtsoorten met coating
C Beperkt bijdragend aan brand Hout (sommige soorten)
D Bijdragend aan brand Onbehandeld hout
E Sterk bijdragend aan brand Polystyreen (EPS)
F Onbepaald / niet getest

Smoke Production Classes (Rookklasse)

Class Description
s1 Nauwelijks rookproductie
s2 Beperkte rookproductie
s3 Onbeperkte rookproductie

Applicable Element Types

BBL brandveiligheidsdata wordt typisch toegekend aan:

  • IfcWall — wanden (draaggevend en niet-draaggevend)
  • IfcSlab — vloeren en daken
  • IfcDoor — deuren (branddeuren)
  • IfcWindow — ramen
  • IfcColumn — kolommen
  • IfcBeam — liggers
  • IfcCovering — afwerkingen en bekleding
  • IfcCurtainWall — vliesgevels

BBL Afdeling Referenties

BBL Afdeling Onderwerp
Afd. 2.1 Sterkte bij brand
Afd. 2.2 Beperking van het ontstaan van brand (WBDBO)
Afd. 2.3 Beperking van ontwikkeling van brand
Afd. 2.4 Beperking van verspreiding van rook
Afd. 2.5 Vluchten bij brand
Afd. 2.6 Bestrijding van brand

BENG — Energieprestatie

BENG (Bijna Energieneutrale Gebouwen) is de Nederlandse implementatie van de Europese EPBD-richtlijn (Energy Performance of Buildings Directive). Sinds 1 januari 2021 moeten alle nieuwbouwgebouwen voldoen aan BENG-eisen.

Usage

import { createBENGPropertySet } from '@ifc-factory/core';

createBENGPropertySet(model, [buildingId], {
  energieBehoefte: 25.0,
  primairFossieleEnergie: 50.0,
  aandeelHernieuwbareEnergie: 40.0,
});

Properties

Property Type Unit BENG Indicator Description
energieBehoefte number kWh/m²/jaar BENG 1 Energiebehoefte voor verwarming en koeling
primairFossieleEnergie number kWh/m²/jaar BENG 2 Primair fossiel energiegebruik
aandeelHernieuwbareEnergie number % BENG 3 Aandeel hernieuwbare energie

BENG Indicatoren Uitgelegd

BENG 1 — Energiebehoefte (kWh/m²/jaar)

De hoeveelheid energie die nodig is voor verwarming en koeling, bepaald door de thermische kwaliteit van de gebouwschil (isolatie, kierdichting, oriëntatie, zonwering).

BENG 2 — Primair fossiel energiegebruik (kWh/m²/jaar)

Het totale fossiele energiegebruik voor verwarming, koeling, warm water, ventilatie en verlichting, minus de opbrengst van hernieuwbare energiebronnen.

BENG 3 — Aandeel hernieuwbare energie (%)

Het percentage van het totale energiegebruik dat wordt opgewekt met hernieuwbare bronnen (zonnepanelen, warmtepomp, etc.).

BENG Grenswaarden (per 2025)

Gebruiksfunctie BENG 1 (kWh/m²/jr) BENG 2 (kWh/m²/jr) BENG 3 (%)
Woonfunctie 65 50 50
Bijeenkomstfunctie 50 60 30
Celfunctie 65 80 30
Gezondheidszorgfunctie 65 120 30
Industriefunctie 65 40 30
Kantoorfunctie 50 40 30
Logiesfunctie 65 80 30
Onderwijsfunctie 50 60 30
Sportfunctie 50 50 30
Winkelfunctie 50 50 30

Applicable Element Types

BENG-data wordt typisch toegekend aan:

  • IfcBuilding — gebouw (meest gebruikelijk)
  • IfcBuildingStorey — per verdieping
  • IfcSpace — per ruimte/zone
  • IfcZone — thermische zones

Gerelateerde Normen

Norm Onderwerp
NTA 8800 Energieprestatie van gebouwen — Bepalingsmethode
NEN 7120 Energieprestatie van gebouwen (voorganger)
EPBD Energy Performance of Buildings Directive (EU)

Aerius — Stikstof

Aerius is het Nederlandse rekeninstrument voor stikstofemissies en -depositie. Sinds de PAS-uitspraak van de Raad van State (2019) is een Aerius-berekening verplicht voor bouwprojecten die stikstof uitstoten in de nabijheid van Natura 2000-gebieden.

Usage

import { createAeriusPropertySet } from '@ifc-factory/core';

createAeriusPropertySet(model, [projectId], {
  stikstofEmissie: 1.5,
  stikstofDepositie: 0.05,
  projectId: 'AERIUS-2024-001',
  referentieSituatie: 'bestaand',
  berekeningsmethode: 'AERIUS Calculator 2024',
});

Properties

Property Type Unit Description
stikstofEmissie number kg/jaar Totale NOx-emissie van het project
stikstofDepositie number mol/ha/jaar Stikstofdepositie op Natura 2000-gebieden
projectId string AERIUS Calculator project-ID
referentieSituatie string Referentiesituatie: 'bestaand' of 'vergund'
berekeningsmethode string Gebruikte berekeningsmethode

Context

Waarom stikstof in BIM?

Door stikstofdata direct in het BIM-model op te nemen:

  • Is de relatie tussen ontwerp en milieuimpact traceerbaar
  • Kunnen wijzigingen in het ontwerp direct worden doorgerekend
  • Is de informatie beschikbaar voor vergunningaanvragen
  • Wordt voldaan aan informatie-eisen van bevoegd gezag

Stikstof Terminologie

Term Uitleg
NOx Stikstofoxiden (NO + NO₂) — vrijkomend bij verbranding
NH₃ Ammoniak — voornamelijk uit landbouw
Depositie Neerslaan van stikstof op bodem/vegetatie
Natura 2000 Europees netwerk van beschermde natuurgebieden
KDW Kritische depositiewaarde — drempelwaarde voor schade
PAS Programma Aanpak Stikstof (ongeldig verklaard 2019)

Applicable Element Types

Aerius-data wordt typisch toegekend aan:

  • IfcProject — projectniveau (meest gebruikelijk)
  • IfcSite — locatieniveau

Gecombineerd Voorbeeld

Een compleet voorbeeld met alle drie de compliance-modules:

import {
  IfcModel,
  createSpatialStructure,
  createPropertySet,
  assignPropertySet,
  createBBLPropertySet,
  createBENGPropertySet,
  createAeriusPropertySet,
  generateIfcGuid,
} from '@ifc-factory/core';
import { writeFileSync } from 'node:fs';

// Model opzetten
const model = new IfcModel();
const { project, site, building, storeys } = createSpatialStructure(model, {
  projectName: 'Woningbouw De Straat',
  siteName: 'Locatie Amsterdam-Noord',
  buildingName: 'Blok A',
  storeyNames: ['Begane grond', '1e verdieping', '2e verdieping'],
});

// Wanden aanmaken
const walls: number[] = [];
for (let i = 0; i < 8; i++) {
  const wall = model.create('IfcWall', {
    GlobalId: generateIfcGuid(),
    Name: `Buitenwand ${i + 1}`,
    PredefinedType: 'SOLIDWALL',
  });
  model.containInSpatialStructure(storeys[0].expressID, wall.expressID);
  walls.push(wall.expressID);
}

// Deuren aanmaken
const doors: number[] = [];
for (let i = 0; i < 3; i++) {
  const door = model.create('IfcDoor', {
    GlobalId: generateIfcGuid(),
    Name: `Deur ${i + 1}`,
    OverallHeight: 2.1,
    OverallWidth: 0.9,
  });
  model.containInSpatialStructure(storeys[0].expressID, door.expressID);
  doors.push(door.expressID);
}

// === BBL: Brandveiligheid ===

// Buitenwanden: brandklasse A2, 90 minuten brandwerendheid
createBBLPropertySet(model, walls, {
  brandklasse: 'A2',
  rookklasse: 's1',
  brandwerendheid: 90,
  wbdbo: 60,
});

// Deuren: branddeuren EI30
createBBLPropertySet(model, doors, {
  brandklasse: 'B',
  rookklasse: 's2',
  brandwerendheid: 30,
  wbdbo: 30,
});

// === BENG: Energieprestatie ===

createBENGPropertySet(model, [building.expressID], {
  energieBehoefte: 22.0,            // BENG 1: ruim onder de eis van 65
  primairFossieleEnergie: 35.0,     // BENG 2: ruim onder de eis van 50
  aandeelHernieuwbareEnergie: 55.0, // BENG 3: boven de eis van 50%
});

// === Aerius: Stikstof ===

createAeriusPropertySet(model, [project.expressID], {
  stikstofEmissie: 0.8,
  stikstofDepositie: 0.02,
  projectId: 'AERIUS-2024-042',
  referentieSituatie: 'bestaand',
  berekeningsmethode: 'AERIUS Calculator 2024.1',
});

// === Aanvullende property sets ===

// Thermische eigenschappen
const thermalPset = createPropertySet(model, 'Pset_ThermalProperties', [
  { name: 'Rc-waarde', value: 6.5, type: 'IFCREAL' },
  { name: 'U-waarde', value: 0.15, type: 'IFCREAL' },
  { name: 'Luchtdichtheid', value: 0.6, type: 'IFCREAL' },
]);
assignPropertySet(model, thermalPset.expressID, walls);

// Exporteren
const output = model.toStep();
writeFileSync('woningbouw-compliant.ifc', output);
console.log(`Model: ${model.size} entities`);
console.log('BBL, BENG en Aerius property sets toegekend');

Referenties

See Also

  • core — Where compliance functions are implemented
  • Tutorials — Tutorial 5: Dutch Compliance
  • API Reference — Full function signatures

Clone this wiki locally