Lesson 2.4Lesson 2.4 · Understanding Building Regulations
The Ambiguity Problem
Regulation is full of words a machine cannot pin down - 'adequate', 'suitable', 'reasonable', 'appropriate' - and this is not sloppy drafting but the deliberate way law stays flexible enough to fit cases no drafter foresaw; the ambiguity that makes rules humane is exactly what makes so much of compliance resist automation, and understanding why is the heart of knowing what rules-as-code can and cannot ever do
'Adequate.' 'Suitable.' 'Reasonable.' A machine cannot check a single one of these words - and building regulation is full of them, on purpose.
You can encode 'the corridor shall be at least 2.0 m wide' in an afternoon. Now try to encode 'the building shall be provided with adequate ventilation', or 'access shall be suitable for use by disabled persons', or 'the works shall be carried out to a reasonable standard'. There is no number. There is no measurement. There is a word that deliberately refuses to name a threshold - and no honest encoding can turn it into a check, because the word's whole job is to require a judgement that fits the case in front of you.
This is the ambiguity problem, and it is the deepest reason so much of compliance resists automation. It is tempting to see these words as sloppy drafting, gaps a better-written code would close. Sometimes they are. But far more often the vagueness is *deliberate and valuable*: open-ended terms let a rule flex to circumstances a drafter could never foresee, tie the requirement to its real purpose rather than a brittle proxy, and leave room for an expert to exercise judgement where a fixed number would be absurd or unjust. Ambiguity, in other words, is often a feature of law, not a bug in it. This lesson looks squarely at that fact - the kinds of ambiguity, why it exists, why genuine experts disagree, and what it means for rules-as-code - because understanding it is the difference between respecting the limits of automated compliance and being fooled by the promise that the messiness can be engineered away.
'adequate' / 'suitable' / 'reasonable' = a standard to JUDGE, not a number to measure. Usually deliberate (law flexes to the unforeseen). Experts differ defensibly = the interpretation gap. Automate the determinate; defer the judgement.
The many faces of ambiguity in a rulebook
"Ambiguity" is a loose word for several distinct things a machine struggles with, and it helps to separate them. The most visible is judgement-laden or evaluative terms: "adequate", "suitable", "reasonable", "appropriate", "satisfactory", "sufficient", "proper". These words do not name a threshold; they name a *standard to be judged*. "Adequate ventilation" asks: adequate for what, in this room, for these occupants, in this climate? The rule deliberately declines to answer with a number and hands the assessment to a competent human.
A second face is vagueness proper - terms with fuzzy boundaries even when no evaluation is intended. When exactly does a "minor" alteration become a "major" one? When is a slope "gentle"? There is a clear core and a genuinely blurry edge, and cases fall in the blur. A third face is open texture: a term may be perfectly clear for the situations anyone anticipated and simply undetermined for a new one - a rule written before a technology or a building type existed does not tell you how it applies to that novelty, not because it is badly written but because no rule can anticipate everything. A fourth is context-dependence: the same word means different things in different settings. "Suitable access" for a warehouse and for a hospital are not the same standard, and the rule relies on the reader supplying the context. A fifth is semantic and referential ambiguity: a sentence that can be parsed two ways, or a term whose definition is itself partly qualitative or circular.
What unites these is that each requires a reader to *supply meaning the text does not fully fix* - by evaluating against a purpose, resolving a boundary, extending a rule to an unforeseen case, importing context, or choosing a reading. A prescriptive number leaves nothing to supply; that is why it automates. A judgement-laden term leaves the decisive step to a human by design; that is why it does not. For automated compliance the practical consequence is direct: whenever a rule turns on one of these words, the tool reaches the edge of what it can do. At best it can flag that the clause exists and route it to a person; it cannot pronounce on it. And building regulation is thick with such words, because so much of what we want from buildings - that they be safe, healthy, accessible, decent - is easier to state as a standard to be judged than as a number to be met.
Why the vagueness is there on purpose
The instinct of someone who wants to automate compliance is to treat every vague word as a defect - if only the code said "2.0 m" instead of "adequate", we could check it. But pause on why a skilled drafter chose the open word, because the reasons are good, and missing them leads to worse regulation, not better tools.
First, the future is unforeseeable. A rule must govern buildings, materials, uses and situations that did not exist when it was written. A fixed number bakes in the drafter's assumptions and breaks on the case they never imagined; an open term like "adequate" flexes to fit the novel case by referring to its purpose. Second, the purpose is what matters, not the proxy. "Adequate means of escape" ties the rule directly to the real goal - people getting out safely - whereas any specific number is only a proxy that is right for typical cases and wrong for some. When the proxy and the purpose diverge, the open term follows the purpose. Third, a fixed rule can produce absurd or unjust results. Rigid numbers applied literally to an odd case can demand something pointless or forbid something plainly fine; a judgement standard lets a competent human avoid the absurdity. Fourth, it delegates to expertise on purpose. "Suitable", "reasonable" and "adequate" are the law's way of saying: a qualified professional, and ultimately the authority, should judge this against the circumstances, because a central drafter cannot foresee them all. Fifth, over-specification is gameable and brittle - a rule reduced to a precise number invites designs that meet the letter and defeat the spirit, and shatters the moment reality steps outside its assumptions.
This is why legal systems everywhere are full of open-textured standards, and why the discipline of interpretation exists at all. Ambiguity is frequently the mechanism by which law stays humane, adaptable and tied to purpose. That does not mean all vagueness is virtuous - some really is careless drafting that clearer wording would improve, and reformers rightly push to sharpen rules that could be sharper without loss. But the crucial recognition for automated compliance is that a large, deliberate core of vagueness *cannot be engineered away without making the regulation worse* - more rigid, more gameable, blind to the unforeseen. The messiness is not always a bug to be fixed on the road to full automation; often it is the point. And a rule that has been forced into a fake precision just to please a checker is a rule that has quietly changed what the law requires - which is not a small thing to do by writing code.
When experts genuinely disagree - and no algorithm settles it
The sharpest evidence that ambiguity is real, and not merely a gap awaiting a better definition, is that competent, honest, qualified people read the same clause and reach different, defensible conclusions - and there is often no fact of the matter that settles which is right. Two experienced plans-examiners can look at the same design against "suitable access for disabled persons" and disagree: one holds that a code-compliant ramp and door width satisfy it, the other that "suitable" means usable in practice - real wayfinding, real turning space for this building's actual users - and is not yet met. Both readings are competent. Both are defensible. The disagreement is not ignorance; it is genuine interpretive divergence about what an open term requires in a particular case.
This matters enormously for rules-as-code, because it dismantles a seductive assumption: that if we just wrote the encoding carefully enough, we would capture "the" correct meaning of the rule. For a genuinely ambiguous term there may be no single correct meaning to capture - only a range of reasonable interpretations among which a human authority chooses, exercising discretion, often guided by purpose, precedent and context. An encoding cannot make that choice legitimately; if it hard-codes one interpretation, it silently substitutes the programmer's reading for the authority's, and presents a contested judgement as if it were a settled computation. That is not automating the rule; it is quietly rewriting it, and hiding the rewrite behind a green tick.
This is what this course calls the interpretation gap, and it is the heart of why compliance resists automation. It is not that machines are too slow or too dumb, or that the software is immature. It is that a large part of applying regulation *is* interpretation - deciding what an open term means here, which of several rules applies, how conflicting requirements reconcile, whether an unforeseen case falls inside or outside a rule - and interpretation, where reasonable experts genuinely differ, is a human and institutional act, not a calculation. The legal system has a whole apparatus for it: qualified professionals who form a view, authorities who decide, and above them the machinery of appeal and, ultimately, the courts. A checking engine sits outside all of that. It can help by handling the determinate parts and by surfacing the ambiguous clauses for a human to judge - a genuinely useful division of labour. What it cannot do is close the interpretation gap, and any tool or vendor that claims to has either narrowed "compliance" to only its checkable slice or is misrepresenting what it does.
Living with ambiguity - what it means for rules-as-code
So what should a compliance-literate designer *do* about the ambiguity problem? Not despair of automated compliance - and not pretend the vagueness away. The competent response is a division of labour that respects the boundary.
First, automate the determinate and route the rest. The right role for a checker facing a rulebook full of mixed content is to run the clear, quantitative, prescriptive rules confidently, and - crucially - to *flag* the judgement-laden clauses rather than fake a verdict on them. A tool that says "corridor widths: checked; 'adequate ventilation': requires human assessment - here is the clause" is being honest and genuinely helpful; a tool that silently scores "adequate ventilation" as pass or fail is misleading. Surfacing the ambiguous clauses to the right human at the right time is itself real value; pretending to resolve them is the failure mode. Second, read a green tick for what it covers. A pass means the encoded, checkable rules found no flaggable issue in the data given - it says nothing about the judgement-laden requirements the tool could not evaluate, which may be exactly the ones that decide whether the building is truly safe and decent. Third, keep the interpretation with the people the law gives it to. Where a term is genuinely open, the reading that binds is the qualified professional's considered judgement and, above all, the approving authority's decision - not the programmer's encoded guess. If you must adopt an interpretation to proceed, hold it as provisional and confirm it with the authority.
There is also a forward-looking point worth holding honestly. Some ambiguity can and should be reduced - careless vagueness clarified, terms defined, quantitative content separated from qualitative - and better drafting can enlarge the checkable subset over time. Emerging work in computational law even explores encoding rules and their interpretation together. But a deliberate, purposeful core of open-textured standards will and should remain, because it is how regulation stays flexible, purposive and humane. The mature stance, then, is neither the technologist's dream of dissolving all ambiguity into code nor the sceptic's dismissal of automation as hopeless. It is to see clearly that regulation is part determinate and part judgement, to automate the first part rigorously, to surface and defer the second part honestly, and to keep the interpretation gap firmly in human hands - the qualified professional of record, the approving authority, and the governing law itself (the NBC, local byelaws and IS standards), whose reading of an ambiguous rule is the only one that binds. Get that right and you have the central insight of the whole course: know exactly which rules can be run, which must be judged, and why the human stays accountable for the difference.
Judgement words are uncheckable
Where automation reaches its edge
'Adequate', 'suitable', 'reasonable', 'appropriate' name a standard to be judged, not a threshold to measure. A tool should flag such clauses for a human, never fake a pass/fail. Modules 4.3, 9.3.
Vagueness is often deliberate
Why the open terms are there
Open terms let law flex to the unforeseen, follow purpose over proxy, avoid absurd literal results and delegate to expertise. Forcing fake precision to suit a checker makes the rule worse, not clearer. Modules 8.1, 9.2.
The interpretation gap is intrinsic
Why experts genuinely differ
For a genuinely open term there may be no single correct meaning to encode - only reasonable readings a human authority chooses among. Encoding one silently rewrites the rule. Modules 9.1, 9.2.
Interpretation belongs to the authority
Whose reading binds
Where a term is open, the binding reading is the qualified professional's judgement and the approving authority's decision applying the actual code - not the programmer's encoded interpretation. Modules 8.3, 10.1.
Workshop - hunt the judgement words and test whether experts would agree
The ambiguity problem becomes concrete the moment you look for it in real rules. In this workshop you find the judgement-laden language in a set of clauses, classify why it is open, and probe whether two competent readers would actually agree - the test of genuine ambiguity.
Just real clauses and a notebook. No software - the whole point is to feel the interpretation gap by hand. The binding interpretation of any ambiguous rule stays with the professional, the approving authority and the actual code.
Goal: a sharp feel for where a rulebook crosses from checkable to judgement, and why Inputs: a handful of real building rules (include some with 'adequate', 'suitable', 'reasonable', 'sufficient') + a notebook Time: ~45 minutes
- 1Collect 6-8 real clauses, deliberately including several that use evaluative words ('adequate', 'suitable', 'reasonable', 'appropriate', 'sufficient') and a few purely quantitative ones for contrast.
- 2Mark the ambiguity type: for each open term, classify it - judgement-laden/evaluative, vague (fuzzy boundary), open texture (undetermined for a new case), or context-dependent - and say why the drafter might have chosen it.
- 3Run the two-reader test: for one open clause, write two competent, defensible but different interpretations of what it requires for a specific building, showing that no number settles it.
- 4Draft honest tool behaviour: for a mixed clause, write how a responsible checker should report it - what it can check, what it must flag for human judgement, and the wording it should use.
- 5Write a reflection: on whether the vagueness you found is deliberate-and-valuable or careless-and-clarifiable, and on why the interpretation of the open terms must stay with the professional and the authority - flagged as reasoning.
You’ll walk away with
A one-page ambiguity hunt: 6-8 clauses with their judgement words identified and classified, one clause given two defensible competing readings, an example of honest tool reporting for a mixed clause, and a reflection on deliberate-versus-careless vagueness and who owns the interpretation. Framed as reasoning; keep it.
Three altitudes on the same idea
Read the band that fits you — or all three.
A great deal of what a code actually demands turns on words a machine cannot check - 'adequate', 'suitable', 'reasonable' - so treat any clause that hinges on one of them as human territory, not tool territory. These terms are usually deliberate: they let the rule flex to your specific case and tie it to purpose rather than a brittle number, which is exactly why an automated checker cannot pronounce on them. The right tool behaviour is to run the determinate rules and flag the judgement-laden ones for you, not to fake a verdict; if a tool silently scores 'adequate ventilation' as pass, distrust it. Where a term is genuinely open, expect competent people - including plans-examiners - to disagree defensibly, hold your own reading as provisional, and confirm it with the approving authority, whose interpretation is the one that binds. Read every green tick as covering only the checkable slice, never the judgement that may decide whether the building is truly safe and decent. You and the authority own the interpretation; the authoritative rule is the actual code as read by the people the law empowers to read it.
Much of what makes an interior genuinely accessible, safe and healthy lives in exactly the judgement-laden language a checker cannot evaluate - whether access is 'suitable', ventilation 'adequate', a layout 'reasonable' in use. The quantitative rules (door and corridor widths, ramp slopes, turning space) a tool can check; but 'suitable access for disabled persons' is a standard to be judged against real usability - wayfinding, the actual users, the way the space is really occupied - and two competent people can read it differently. So treat a passing check as confirmation of the measurable recipe, never as proof the accessibility or safety outcome is met, and expect the open terms to require a human. When a clause turns on a word like 'adequate' or 'suitable', that is your cue to coordinate with the qualified professionals and confirm the reading with the authority rather than lean on a tool. Binding fire, egress and accessibility interpretation stays with the professionals, the authority and the governing code - your literacy is recognising when a rule has crossed from the checkable into the judgement-laden.
The deepest reason compliance resists automation is not that machines are slow or software immature - it is that a large part of regulation is genuine interpretation, and interpretation where reasonable experts differ is a human act, not a calculation. Learn the kinds of ambiguity: judgement-laden terms ('adequate', 'suitable', 'reasonable'), vagueness with fuzzy edges, open texture (rules undetermined for cases no one foresaw), and context-dependence. Learn why the vagueness is usually deliberate - it lets law flex to the unforeseen, tie rules to purpose, avoid absurd literal results, and delegate to expertise - so that forcing fake precision to please a machine makes the regulation worse. And learn the interpretation gap: for a genuinely open term there may be no single correct meaning to encode, only a range of reasonable readings among which a human authority chooses. This is the intellectual core of the whole field. Being able to explain why ambiguity is often a feature of law and why it cannot be engineered away is what marks someone who truly understands rules-as-code rather than its marketing.
“Vague words like 'adequate' and 'suitable' are just imprecise drafting. As building codes are modernised and rewritten more clearly, that ambiguity will be defined away and almost everything will become automatically checkable.”
Do it yourself
No software needed - reason it through.
- 1List four different kinds of ambiguity in regulation and give an example of each.
- 2Give three reasons a skilled drafter might deliberately choose a vague term like 'adequate' over a fixed number.
- 3What is the interpretation gap, and why is it the heart of why compliance resists automation?
- 4Why is it misleading for a tool to score 'adequate ventilation' as pass or fail, and what should it do instead?
- 5If two competent experts read the same open clause differently, whose interpretation binds - and why can't an encoding settle it?
The one line to carry out
Peer-reviewed journals & authoritative standards
- 01Statutory interpretation — Wikipedia - Statutory interpretation, 2026.
- 02Regulation — Wikipedia - Regulation, 2026.
- 03Rules as code — Wikipedia - Rules as code, 2026.
- 04Computational law — Wikipedia - Computational law, 2026.
- 05Legal informatics — Wikipedia - Legal informatics, 2026.
That completes the module: you now know what the rulebook is, how its rules are written, the prescriptive-performance divide, and why ambiguity keeps so much of compliance human. Next, Module 3 takes the rules that CAN be coded and shows exactly how a clear rule becomes machine-readable logic.
The author
Amogh N P
Architect, interior designer, and creative polymath. Studio Matrx began in his notebooks — his vision of design made honest, useful, and open to everyone. Its Academy is written and taught in his memory, and free, forever.
More about Amogh →