1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
//! The applicable/failed/not-applicable trichotomy.
/// The result of checking one requirement against one element.
///
/// # Why three states and not a `bool`
///
/// A check that reports "data missing" as "passed" is worse than no check: it
/// launders absence into compliance. Every openBIM validation surface
/// (`openbim-ids` audits, `openbim-loin` conformance) must therefore be able
/// to say *"this did not apply"* distinctly from *"this passed"*.
///
/// The sibling `../vendor/solibri` engine makes the same distinction explicit
/// in its rule layer; its notes record what breaks when it does not.