=Paper= {{Paper |id=Vol-3633/paper13 |storemode=property |title=Validation of building models against legislation using SHACL |pdfUrl=https://ceur-ws.org/Vol-3633/paper13.pdf |volume=Vol-3633 |authors=Emma Nuyts,Jeroen Werbrouck,Ruben Verstraeten,Louise Deprez |dblpUrl=https://dblp.org/rec/conf/ldac/NuytsWVD23 }} ==Validation of building models against legislation using SHACL== https://ceur-ws.org/Vol-3633/paper13.pdf
                                Validation of building models against legislation using
                                SHACL
                                Emma Nuyts1,* , Jeroen Werbrouck1 , Ruben Verstraeten1 and Louise Deprez1
                                1
                                    Department of Architecture and Urban Planning, Ghent University, Ghent, Belgium


                                                                         Abstract
                                                                         Building information is commonly available in a machine-readable format, whereas normative knowledge
                                                                         is represented in a human-readable way, making human intervention mandatory. A solution for this
                                                                         manual checking procedure is Automated Compliance Checking (ACC). Commercial systems rely on
                                                                         hard-coded requirements, which are almost as error-prone and time-consuming as manually checking the
                                                                         compliance, or focus solely on one specific software package. Hence, this research focuses on Semantic
                                                                         Web technologies to enable a faster and more transparent rule-checking process. The requirements
                                                                         from the legislation will be defined using the Shapes Constraint Language (SHACL). This language
                                                                         facilitates defining constraints in the Terse RDF Triple Language (Turtle), making one set of constraints
                                                                         both human- and machine-readable. Additionally, SHACL enables compliance checking to be combined
                                                                         with quality constraints, ensuring that all necessary data is present in the building project. The proposed
                                                                         methodology is applicable to any type of prescriptive building legislation, provided that the data is
                                                                         defined in the building graph.

                                                                         Keywords
                                                                         Automated Compliance Checking, Linked Data, SHACL




                                1. Introduction
                                The use of Building Information Management (BIM) has seen a significant increase within the
                                Architecture Engineering and Construction (AEC) industry in recent years. However, the full
                                potential of BIM models is often not achieved. Specifically, compliance with building codes
                                remains a manual process, by retrieving information from the BIM model and reviewing this data
                                separately. This approach is not only time-consuming but also error-prone for both architects
                                and building permit reviewers. This issue is confirmed by research of 2019 by the Flemish
                                institute for accessibility Inter, which found that out of 147 reviewed building permits, only 9
                                were designed complying with the regulation on accessibility [1]. One way to overcome these
                                challenges is by implementing Automated Compliance Checking (ACC). This process utilizes
                                the BIM data directly to evaluate compliance, ensuring a more accurate checking procedure.
                                Furthermore, the use of ACC allows more frequent evaluations throughout the design process,
                                providing feedback early on in the process and ultimately leading to more cost-efficient designs.

                                Proceedings LDAC2023 – 11th Linked Data in Architecture and Construction, June 15–16, 2023, Matera, Italy
                                *
                                 Corresponding author
                                $ emma.nuyts@ugent.be (E. Nuyts); jeroen.werbrouck@ugent.be (J. Werbrouck); ruben.verstraeten@ugent.be
                                (R. Verstraeten); louise.deprez@ugent.be (L. Deprez)

                                                                       © 2023 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
                                    CEUR
                                    Workshop
                                    Proceedings
                                                  http://ceur-ws.org
                                                  ISSN 1613-0073
                                                                       CEUR Workshop Proceedings (CEUR-WS.org)




CEUR
                  ceur-ws.org
Workshop      ISSN 1613-0073
Proceedings

                                                                                                                                         164
2. Related work
2.1. Semantic Web and Linked Data
In 1990, Tim Berners-Lee envisioned the use of the World Wide Web as one central data storage
platform for use in CERN [2]. However, the Web evolved from a static and informative Web 1.0 to
an interactive Web 2.0. While this version of the Web mainly focused on human user experience,
a new development has taken place with Web 3.0: this most recent version entails an integrated
web experience where machines can understand data in a similar way as humans [3]. This
version of the Web is often referred to as the Semantic Web, of which the concept of Linked Data
lies at its core. The World Wide Web Consortium (W3C) defines Linked Data as ‘the collection
of interrelated datasets on the Web’, which is used for large-scale integration of, and reasoning
on, data across the Web [4]. To achieve full interoperability, the machine-readable description
is standardized in the Resource Description Framework (RDF). Furthermore, Semantic Web
technologies like the SPARQL Protocol and RDF Query Language (SPARQL) [5] and the Shapes
Constraints Language (SHACL) [6] can be used to respectively query and validate RDF graphs.

2.2. Linked Data in the AEC industry
While the open and neutral file-format Industry Foundation Classes (IFC) has improved interop-
erability in the AEC industry, it has some downsides when used in the context of the Semantic
Web: (a) the used EXPRESS and XSD languages lack methods for defining formal semantics,
making it difficult for reasoning and querying purposes, (b) it is complex to link the building
data stored in an IFC file to related data on the web and (c) the IFC schema is large and rather
complex, making it a challenge to implement it correctly [7].
   To address these limitations, new methods were developed with the Semantic Web in mind,
like ifcOWL and Linked Building Data (LBD). ifcOWL was developed as an ontology equivalent
to the original IFC schema but made available as a Semantic Web ontology. However, since this
ontology lies close to the original schema and contains a large amount of information, it has
some negative consequences: many of the EXPRESS-specific semantic constructs are maintained
and result in complex and counterintuitive constructs, and the resulting graphs are at least as
complex and large as the original IFC model [8]. Since the AEC industry needed a simplified
method for handling IFC models, LBD was introduced. For this, the IFC file is first converted
to ifcOWL, after which the topological ifcOWL classes are mapped to the related Building
Topology Ontology (BOT) classes [9]. Furthermore, the LBD Community Group proposes three
levels of modeling complexity (L1-L3) for properties. The complexity is defined depending on
the number of steps needed to navigate from an element to its property via the RDF graph [7].

2.3. Steps in the ACC process
2.3.1. Interpretation of normative knowledge
To use the normative data for compliance checking, it must first be processed. There are a few
methods for doing this, such as using Natural Language Processing (NLP), mark-up language,
or proposing a new methodology or framework.




                                              165
There is ongoing research [10] on how deep learning NLP techniques can extract Decision
Model and Notation (DMN) from text. The Object Management Group (OMG) introduced DMN
as a tool to model, communicate and execute operational decisions [11] and to be able to define
different criteria and present decision options more clearly than the Business Process Model
and Notation (BPMN) standard. These visual programming Languages have the advantage that
the checking process can be displayed graphically, which significantly increases readability [12].
Furthermore, research [12, 13] has shown BPMN and DMN are promising approaches for the
representation of guideline content. Especially since these notations are already used in the
AEC industry in the context of Information Delivery Manuals (IDMs).
   Another option for processing normative data is using mark-up language, such as Requirement
Applicabilities Selection and Exceptions (RASE) [14]. This is a promising methodology for use in
the AEC industry. This concept was specifically developed to transform normative documents
into a set of well-defined constraints which can be implemented in model-checking software.
RASE uses four tags with corresponding colors to differentiate sentences in legislation. However,
the biggest limitation is that the mark-up is done manually, meaning it is still laborious and
error-prone. The efficiency of the mark-up also heavily relies on sentence structures.
   A final possibility for processing normative data is by proposing a new methodology or
framework. This approach involves updating the building legislation to a machine-readable
format, by using a restricted set of grammar rules and vocabulary. These restrictions reduce the
ambiguity and complexity of natural language and improve human readability and machine
processability [15].
Since the main scope of this paper is to evaluate SHACL for use in compliance checking, and
not the full automation of the process, the manual RASE mark-up language will be used in this
paper to structure the normative data.

2.3.2. Mapping applicabilities to ontologies
Each article of the regulation applies to a building element, called the ‘applicability’ of that ar-
ticle. These applicabilities need to be mapped to the corresponding definition in the used
ontologies, to be able to create machine-readable constraints. For example, a stair with
properties like a riser height and tread length need to be mapped to a beo:StairFlight with
a props:riserHeightIfcStairFlight and a props:treadLengthIfcStairFlight. This can be done auto-
matically, for example using the npm package nlp.js [16], as demonstrated in the LD-BIM web
application developed by Rasmussen & Schlachter [17], where a user can search for doors, and
the webpage highlights all ifc:IfcDoors in the 3D building model. However, such automatic
mapping of terms lies out of scope of this paper, hence it will be done manually.

2.3.3. Creating machine-readable constraints
After processing the normative knowledge, these requirements need to be converted into
machine-readable constraints. Pauwels & Zhang [18] have defined three strategies for this
conversion: using hard-coded requirements, rule-checking by querying or using a dedicated
rule language such as the Semantic Web Rule Language (SWRL), N3Logic or the Drools Rule
Language (DRL). However, another method could be applied, by using the Shapes Constraint




                                                166
Language (SHACL). While this language was originally developed to check the completeness of
graphs [19], it can also be used to check the contents of the graph. Using SHACL for compliance
checking has been researched previously: Oraskari et al. [20] showed that SHACL allows
checking procedures on building models converted to LBD ontologies, by creating MVD views
ensuring the expected information is present in the graph. Furthermore, Elshani et al. [21]
argue that augmenting Building and Habitats object Model (BHoM) Knowledge Bases (KBs)
with Semantic Web rules, like SWRL or SHACL, would increase the usage of KBs in the AEC
industry. Moreover, Zentgraf et al. [22] demonstrate how quality assurance of properties can be
conducted using SHACL shapes. Lastly, Kovacs & Micsik [23] give an example of using SHACL
for compliance checking, by showing the shape for checking the thermal transmittance of a
window.


3. Building validation using SHACL
3.1. Research Question
While the use of SHACL for compliance checking has been evaluated in existing literature, the
examples provided have focused on relatively simple constraints. This study aims to assess
the suitability of SHACL for more complex constraints, including those that involve checking
relationships between building elements, performing calculations, and creating conditional
statements. The main research question is therefore: Can SHACL be used to evaluate more
complex constraints for compliance checking purposes?
In this paper, three different types of constraints (value, relational and mathematical) will be
proposed in the Terse RDF Triple Language (Turtle) format, as well as methods for combining
these different types. The illustrative examples in this paper will make use of the prefixes listed
in Listing 1 and are made available on GitHub1 . The examples will assume an L2 modeling
complexity of the Linked Building Data graph, as proposed in Bonduel et al. [7]. It is important
to note that this methodology focuses on the semantic information of a building, rather than its
geometric representation. For example, a ramp will be characterized by its numerical height and
length, leading to a calculated slope, rather than determining the geometrical angle between
the sloped surface and the ground plane.

                                    Listing 1: Prefixes used in this paper
@prefix beo:  .
@prefix bot:  .
@prefix ex:  .
@prefix props:  .
@prefix schema:  .
@prefix sh:  .
@prefix xsd:  .




1
    https://github.com/NuytsE/Validation-of-building-models-against-legislation-using-SHACL




                                                       167
3.2. Use case on accessibility
The Flemish regulation on accessibility is chosen as a use case for this paper, not only because
of the striking results of Inter [1] but also because it uses all types of constraints proposed
in this paper. However, the constraints can be applied to each kind of prescriptive building
code. The three types of constraints will be created using the steps explained in Section 2: the
normative knowledge will first be structured using the RASE mark-up language, after which
the applicabilities will be mapped to the corresponding classes and properties defined in the
ontology. The last step is to create machine-readable constraints using SHACL.

3.3. Ensuring model quality
To ensure all the necessary data is available in the building graph, thus prohibiting ‘false com-
pliance’, the Information Delivery Specification (IDS) can be used. This computer-interpretable
document defines Exchange Requirements of model-based exchange, defining how objects,
classifications, properties, and units need to be delivered and exchanged [24]. However, since
this standard is not fully implemented in the AEC industry, it is defined that every path used in
the SHACL shapes should have exactly one value. In the case of the regulation on accessibility,
we want to ensure that each door has a specified door height. This property should occur exactly
one time since a door with either zero or more than one door height is not desired, as shown in
Listing 2.
                            Listing 2: Example of a quality constraint
ex:DoorProperties
 a sh:NodeShape ; #apply the shape to a focus node
 sh:targetClass beo:Door ; #target all nodes with class 'Door'
 sh:property [ #target a property of each 'Door'
   sh:path props:overallHeightIfcDoor ; #target the height predicate
   sh:property ex:DoorHeightProperty ; #name the object of this predicate path
   sh:minCount 1 ; #each 'Door' should have at least one height property
   sh:maxCount 1 ; #each 'Door' should have at most one height property
   sh:message "Each door should have exactly one overallHeightIfcDoor" ; ] .

ex:DoorHeightProperty
 a sh:PropertyShape ; #target a property of the focus node
 sh:path schema:value ; #target the value predicate
 sh:minCount 1 ; #each 'overallHeightIfcDoor' property should have at least one value
 sh:maxCount 1 ; #each 'overallHeightIfcDoor' property should have at most one value
 sh:message "Each doorheight should have exactly one value" .



3.4. Value constraints
The first type of constraint is a so-called value constraint. This type allows checking if a property
is more/less than or equal to a given value. First, the interpretation of the normative knowledge
is done using the RASE mark-up on a (translated) paragraph of the Flemish regulation on
accessibility, shown in Listing 3. The second step is to map the applicabilities of the regulation
to the ontologies used in the building graph. Table 1 shows the corresponding classes and
properties of the running example.




                                                168
                Listing 3: Article 22 §1 of the Flemish regulation on accessibility
For entrances or doorways, a clear passage height of at least 2.09
    meters must be guaranteed after finishing.



Table 1
Mapping applicabilities of the regulation on accessibility to the corresponding classes and properties of
the BEO ontology
 Article            Type               Applicability                 Ontology
 Art.22 §1          class              entrances or doorways         beo:Door
                    property           clear passage height          props:overallHeightIfcDoor
 Art.20 §4          class              stair                         beo:Stair
                    class              railing                       beo:Railing
 Art.20 §3          property           riser                         props:riserHeightIfcStairFlight
                    property           tread                         props:treadLengthIfcStairFlight

The last step is to create a machine-readable rule, using SHACL. As shown in Listing 4, the
shape targets the class and property derived from the normative data and specifies that this
door height should be at least 2.09 meters, using sh:minInclusive. For other examples of value
constraints, sh:minExclusive, sh:maxInclusive, or sh:maxExclusive can be used in an analogous
way. This type of constraint has the limitation that the units of measurement in the SHACL
shape and the building data should be the same, to prohibit false compliance. To overcome this
challenge, the units can be checked in a quality constraint, or the general agreement is made
that the International System of Units (SI) is used.

                               Listing 4: Example of a value constraint
ex:Door
 a sh:NodeShape ; #apply the shape to a focus node
 sh:targetClass beo:Door ; #target all nodes with class 'Door'
 sh:property [ #target a property of each 'Door'
   sh:path props:overallHeightIfcDoor ; #target the height predicate
   sh:property ex:DoorHeight ; ] . #name the object of this predicate path

ex:DoorHeight #the named object is now a subject
 a sh:PropertyShape ; #target a property of the focus node
 sh:path schema:value ; #target the value predicate
 sh:minInclusive "2.09"^^xsd:double ; #the object should be more than 2.09 m
 sh:message "Art.22.1: For entrances or doorways, a clear passage height of at least
     2.09 meters must be guaranteed after finishing" .




3.5. Relational constraints
The second type of constraint is a relational constraint. Relational constraints are defined to
check if a building element is present in relation to another building element in the project.
The interpretation of the normative knowledge using the RASE mark-up language is shown in
Listing 5. The second step is to map the applicabilities to classes and properties defined in the
ontology, as shown in Table 1.




                                                  169
               Listing 5: Article 20 §4 of the Flemish regulation on accessibility
A railing should be fitted on both sides of the stair ...

The third step is to create a machine-readable SHACL shape. Listing 6 shows that the ‘Stair’ class
is targeted, after which it is defined that this ‘Stair’ should have two subelements of the type
‘Railing’, using sh:qualifiedValueShape en sh:qualifiedMinCount. Similarly, sh:qualifiedMaxCount
can be used for other paragraphs of the regulation. It should be noted that this shape does not
check the relative placement of the railings and the stair. The assumption is made that multiple
railings cannot be placed on the same side of the stair.

                          Listing 6: Example of a relational constraint
ex:Stair
 a sh:NodeShape ; #apply the shape to a focus node
 sh:targetClass beo:Stair ; #target all nodes with class 'Stair'
 sh:property [ #target a property of each 'Stair'
   sh:path bot:hasSubElement ; #target the subelement predicate
   sh:qualifiedValueShape [sh:class beo:Railing] ; #target the class 'Railing'
   sh:qualifiedMinCount 2 ; #two elements of this class should be present
   sh:message "Art.20.4: A railing should be fitted on both sides of the stair" ; ] .




3.6. Mathematical constraints
The last type of constraint is a mathematical constraint, which uses SHACL-SPARQL, the
extension of SHACL-Core. This type allows the evaluation of formulas, of which the result
can be checked in a separate value constraint. The interpretation of the normative knowledge
is shown in Listing 7. The second step is to map the applicabilities to classes and properties
defined in the ontology, as shown in Table 1.

               Listing 7: Article 20 §3 of the Flemish regulation on accessibility
... the sum of twice the riser and once the tread of each step must
    be between 57 cm and 63 cm ...

The last step is creating the SHACL shape. A mathematical constraint is created using a
sh:SPARQLFunction, which consists of a declaration of the parameters, which are the riser and
the tread in this case, and a return type. Listing 8 shows the shape of the running example.

                        Listing 8: Example of a mathematical constraint
ex:StairFormula
 a sh:SPARQLFunction ; #define a function
 sh:parameter [ #declare the first parameter
   sh:path ex:riser ; #first parameter is the riser height
   sh:datatype xsd:double ; #the riser is a decimal
 ] ;
 sh:parameter [ #declare the second parameter
   sh:path ex:tread ; #second parameter is the tread length
   sh:datatype xsd:double ; #the tread is a decimal
 ] ;
 sh:returnType xsd:double ; #the returned value is a decimal




                                               170
 sh:select """ #start a SPARQL select query
  SELECT ( (2 * $riser + $tread) AS ?result)
  WHERE {
  }
  """ .

The function can now be used in a value constraint, to evaluate the result, as shown in Listing 9.
This is done by a sh:expression and specifying the function parameters in the same order as they
were defined in the creation of the SPARQLfunction. For this example, an additional function
‘LessThan’ needs to be implemented.

              Listing 9: Example of a value constraint using predefined functions
ex:StairSlope
 a sh:NodeShape ; #apply the shape to a focus node
 sh:targetClass beo:StairFlight ; #target all nodes with class 'StairFlight'
 sh:message "Art.20.3: the sum of twice the riser and once the tread of each step
      must be higher than 0.57 m." ;
 sh:expression [
   ex:LessThan ( #refer to the LessThan(a,b) function
      0.57 #first parameter of LessThan
      [ #second parameter of LessThan
         ex:StairFormula ( #refer to the StairFormula(riser, tread) function
            [sh:path (props:riserHeightIfcStairFlight schema:value)]
            [sh:path (props:treadLengthIfcStairFlight schema:value)])])] .



3.7. Conditional statements
To be able to combine the constraints, some conditional statements (if...then...) have to be
created. In SHACL, this can be mainly done using sh:node, which enables defining that each
value node conforms to a given node shape. To properly define the conditional statements, some
logical constraint components like sh:and, sh:not, sh:or and sh:xone are also needed. Listing 10
shows a conditional statement of the regulation on accessibility, defining that if the slope is less
than 10%, an additional constraint should also be fulfilled.

                         Listing 10: Example of a conditional statement
ex:Slopes
 a sh:NodeShape ; #apply the shape to a focus node
 sh:targetClass beo:RampFlight ; #target all nodes with class 'Rampflight'
 sh:message "Art.19.1: The slope of a rampflight is maximally ten percent for level
      differences of up to 0.10 m" ;
 sh:and ( #both constraints should be fulfilled
   [sh:expression [ #first constraint: the slope is less than 10%
      ex:LessThan (
         [ex:Slope (
            [sh:path (props:heightIfcRampFlight schema:value)]
            [sh:path (props:lengthIfcRampFlight schema:value)])]
         10)]]
   sh:node ex:SlopeConstraint) . #if the slope is less than 10%, check the next
       constraint




                                                171
4. Proof of concept
4.1. Conversion workflow
To be able to check the compliance of the building design, the IFC file should be converted to an
RDF graph. To accomplish this, different converters exist, like IFCtoLBD [25]. This converter
first transforms the file to a temporary ifcOWL graph, which is then converted to an LBD graph.
The converter follows the graph traversal, using path templates. The newly created instances
get the right LBD OWL classes by using LBD modular ontologies like BOT, PRODUCT, and
PROPS. If a higher modeling complexity is chosen by the user, new instance nodes for the
properties are created [7].

4.2. Implementation
A proof of concept application is created using npm and pySHACL [26], since there is no
JavaScript implementation of SHACL-SPARQL available at the time of writing. The User
Interface (UI) is created using React, where a user can upload an LBD graph in Turtle syntax,
after which it is evaluated against the rulebook, containing both quality and accessibility shapes.
Figure 1 shows the validation report, where transparency to the user is key: apart from the
message containing the building legislation, both the source shape and the focus node are
returned, meaning it is easily checked exactly which building element does not comply with
which shape. Moreover, the identifier of the element is returned, ensuring that the building
element can be easily found and altered in the native modeling software.




Figure 1: User interface of the validation report




                                                    172
5. Discussion
5.1. Evaluation of SHACL for use in compliance checking
To evaluate the suitability of SHACL for use in compliance checking, the four key requirements
for automated code checking as defined by Greenwood et al. [27] can be used:

    • The computer-programmed rules must be easily understood by the regulation authors;
    • The lifecycle of the rule base must be independent of software and schema updates;
    • All development must comply with Open Standards;
    • Consideration must be given to the industry processes of model authoring.

While the first requirement is quite subjective, the Turtle syntax is generally seen as the most
human-readable syntax for RDF [28]. However, regulation authors without any knowledge of
programming, SHACL, or the ontology definitions will not understand this. Though, while the
regulation is specifically written to be understandable by architects (and is apparently not), this
rulebook is written to check compliance automatically. The user will have some understanding
of what is being checked, but a full understanding of the underlying structures is less necessary.
The RDF shapes can however be converted into a human-friendly interface if needed. The second
requirement is achieved by implementing LBD, which is independent of software packages since
it is derived from the open and neutral IFC schema. The third requirement is fulfilled by using
Semantic Web technology like SHACL, which is a W3C recommendation. The last requirement
is partially avoided by implementing quality constraints. This does not improve the quality
of the building model but does check if all the necessary data is present before applying the
constraints.

5.2. Limitations and future work
When using SHACL for compliance checking, the main challenge is that the shapes are dependent
on the level of modeling complexity of the RDF graph. This means that the same constraint
can result in three different SHACL shapes, depending on the level of complexity (L1-L3).
Additionally, low-level functions like ‘LessThan’ are necessary to check the outcome of a
SHACL-SPARQL function, which can result in complex value constraints. It is uncertain if this
method will be scalable for more complex regulations. Furthermore, the proposed methodology
is only suitable for evaluating prescriptive regulations, meaning that it may not be appropriate
for assessing acoustical codes, daylight regulations, or energy calculations. It is important to
note that a consistent unit system must be used in both the regulation and the building graph
to ensure accurate compliance checking.
   Possible future work can be done on developing a methodology for checking the compliance
of geometry or the relative positioning of building elements, whereas this paper focused on the
properties defined in the semantics of the building graph. For example, to be able to check the
layout of a sanitary cell for wheelchair-users, or to ensure there are no obstructing elements
(like a radiator or fire hose reel) that diminish the passage width. Furthermore, the automation
of the SHACL shapes from the building legislation would be a big improvement, since this
was done manually in this research. It would also be beneficial to create some form of visual




                                               173
programming SHACL shapes creator, as proposed in Senthilvel & Beetz [29], so constraints can
be customized or additional constraints can be created, depending on the needs of a specific
building project.


6. Conclusion
The methodology consisted of three main decisions: using RASE to structure the normative
data, using LBD to create the building graph, and using SHACL to define the constraints. While
the RASE mark-up proved to be an effective way to manually structure the legislation, it is
quite laborious and the efficiency is highly dependent on sentence structures. Representing the
building data in an LBD graph was successful since this graph is easy to query and understand.
Furthermore, SHACL constraints can easily be defined on the semantic data in an LBD graph,
although low-level functions were needed for the implementation, and the scalability of the
methodology requires further research.


Acknowledgments
The authors would like to acknowledge the support of the DigiChecks project, which has
received funding from the European Union’s Horizon Research and Innovation Program under
grant agreement no. 101058541 and by the Research Foundation Flanders (FWO), as a Strategic
Basic Research grant (grant no. 1S99020N).


References
 [1] Inter, Evaluatieonderzoek Vlaamse Toegankelijkheidsverordening, Final Report,
     Agentschap Toegankelijk Vlaanderen, 2019.
 [2] T. Berners-Lee, J. Hendler, O. Lassila, The semantic web, Scientific american 284 (2001)
     34–43.
 [3] R. Rudman, R. Bruwer, Defining Web 3.0: opportunities and challenges, The Electronic
     Library 34 (2016) 132–154.
 [4] W3C, Data, 2015. URL: https://www.w3.org/standards/semanticweb/data.
 [5] W3C, SPARQL 1.1 Overview, 2013. URL: https://www.w3.org/TR/sparql11-overview/.
 [6] W3C, Shapes Constraint Language (SHACL), 2017. URL: https://www.w3.org/TR/shacl/.
 [7] M. Bonduel, J. Oraskari, P. Pauwels, M. Vergauwen, R. Klein, The IFC to Linked Building
     Data Converter - Current Status, in: Proceedings of the 6th Linked Data in Architecture
     and Construction Workshop, London, UK, 2018, pp. 34–43.
 [8] P. Pauwels, A. Roxin, SimpleBIM: From full ifcOWL graphs to simplified building graphs,
     in: 11th European Conference on Product and Process Modelling, Limasol, Cyprus, 2016,
     pp. 11–18.
 [9] M. H. Rasmussen, M. Lefrançois, G. F. Schneider, P. Pauwels, BOT: The building topology
     ontology of the W3C linked building data group, Semantic Web 12 (2020) 143–161.
[10] A. Goossens, J. De Smedt, J. Vanthienen, Extracting Decision Model and Notation models
     from text using deep learning techniques, Expert Systems with Applications 211 (2023).




                                             174
[11] OMG, Decision Model and Notation, 2021. URL: https://www.omg.org/spec/DMN/1.4/
     Beta1/PDF.
[12] M. Häußler, S. Esser, A. Borrmann, Code compliance checking of railway designs by
     integrating BIM, BPMN and DMN, Automation in Construction 121 (2021).
[13] J. Dimyadi, R. Amor, Regulatory knowledge representation for automated compliance
     audit of BIM-based models, in: 30th International Conference on Applications of IT in the
     AEC, Beijing, China, 2013, pp. 68–78.
[14] E. Hjelseth, N. Nisbet, Capturing normative constraints by use of the semantic mark-up
     RASE methodology, in: Proceedings of the CIB W78-W102, Sophia Antipolis, France, 2011,
     pp. 1–10.
[15] P. Xue, S. Poteet, A. Kao, D. Mott, D. Braines, Constructing Controlled English for Both
     Human Usage and Machine Processing, International Web Rule Symposium (2013).
[16] A. G. O. S. S.A., nlp.js, 2020. URL: https://github.com/axa-group/nlp.js.
[17] M. H. Rasmussen, Schlachter, LD-BIM, 2023. URL: https://ld-bim.web.app/.
[18] P. Pauwels, S. Zhang, Semantic Rule-checking for Regulation Compliance Checking:
     An Overview of Strategies and Approaches, in: 32nd CIB W78 Conference, Eindhoven,
     Netherlands, 2015, pp. 619–628.
[19] J. Werbrouck, M. Senthilvel, J. Beetz, P. Pauwels, A Checking Approach for Distributed
     Building Data, in: 32. Forum Bauinformatik, Proceedings, Berlin, Germany, 2019, pp.
     173–181.
[20] J. Oraskari, M. Senthilvel, J. Beetz, SHACL is for LBD what mvdXML is for IFC, in: The
     38th CIB W78 conference on Information and Communication Technologies for AECO,
     Luxembourg, 2021, pp. 693–702.
[21] D. Elshani, A. Lombardi, A. Fisher, S. Staab, D. Hernández, Inferential Reasoning in Co-
     Design Using Semantic Web Standards alongside BHoM, in: 33. Forum Bauinformatik,
     München, Germany, 2022, pp. 89–97.
[22] S. Zentgraf, P. Hagedorn, M. König, Multi-requirements ontology engineering for auto-
     mated processing of document-based building codes to linked building data properties,
     IOP Conference Series: Earth and Environmental Science 1101 (2022).
[23] A. T. Kovacs, A. Micsik, BIM quality control based on requirement linked data, International
     Journal of Architectural Computing 19 (2021) 431–448.
[24] buildingSMART, Information Delivery Specification IDS, 2023. URL: https://technical.
     buildingsmart.org/projects/information-delivery-specification-ids/.
[25] J. Oraskari, IFCtoLBD, 2023. URL: https://github.com/jyrkioraskari/IFCtoLBD.
[26] A. Sommer, N. Car, pySHACL, 2022. URL: https://github.com/RDFLib/pySHACL.
[27] D. Greenwood, S. Lockley, S. Malsane, J. Matthews, Automated compliance checking using
     building information models, in: The construction, Building and Real Estate Research
     Conference of the Royal Institution of Chartered Surveyors, Dauphine Université, Paris,
     2010.
[28] A. Hogan, The Web of Data, Springer International Publishing, Cham, 2020.
[29] M. Senthilvel, J. Beetz, A Visual Programming Approach for Validating Linked Build-
     ing Data, in: EG-ICE 2020 Workshop on Intelligent Computing in Engineering, Berlin,
     Germany, 2020, pp. 403–411.




                                              175