Skip to content

Commit

Permalink
polished diagrams annd modules for journal paper
Browse files Browse the repository at this point in the history
  • Loading branch information
maximelefrancois86 committed Feb 28, 2024
1 parent 394245a commit 20e4058
Show file tree
Hide file tree
Showing 27 changed files with 2,079 additions and 7,494 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ rule formalization tool (Task 2.3), facilitating seamless communication and coll
8. What type of check methods need to be performed for a Statement to comply?
9. Which check statement does a check method operationalize?
10. What are the required data to perform a check?
11. Which feature of interest needs to be checked and how it is designed?
11. Is a property of a feature of interest greater than a value?
12. Which checking act needs to be made and which check method it uses?
13. How to access the outcomes of a checking act?
14. How to transform normative documents into a single well-defined rule that can be implemented into BIM / IFC based model checking software using RASE methodology?
Expand Down
9,058 changes: 1,948 additions & 7,110 deletions src/aec3po.drawio

Large diffs are not rendered by default.

13 changes: 4 additions & 9 deletions src/aec3po.overview.html
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
6. **Module 6: FeatureOfInterest**: A feature of a building that is of interest. Typically, this will be a building component that needs to be compliant to regulations, or be documented in the permitting process.
<!-- This module describes objects whose conformance against checks is verified, and those aspects of a feature of interest that are intrinsic to and cannot exist without the feature of interest, that must be checked for conformance. -->
- Classes: _FeatureOfInterest_, _Property_, _PropertyKind_, _QuantityKind_
- Properties: _hasProperty_, _hasQuantityKind_, _hasPropertyKind_, _hasDesign_, _hasContext_, _etc_.
- Properties: _hasProperty_, _hasQuantityKind_, _hasPropertyKind_, _hasContext_, _etc_.

7. **Module 7: CheckingAct**
- Classes: _CheckingAct_, _ProcessVerifier_, etc.
Expand All @@ -49,19 +49,14 @@
- Classes: _ComplianceVerificationReport_, _result_, _ValidationResult_,_Severity_, _etc_.
- Properties: _conforms_, _focus_, _resultMessage_, _resultSeverity_, _Info_, _Violation_, _Severity_,_etc._

9. **Module 9: Design**: This AEC3PO module describes descriptions of some design of features of interest, in terms of structure, geometry, and function.
- Classes: _Design_, _PropertyDesign_.
- Properties: _hasDesign_.

10. **Module 10: Legal Verifier**: This AEC3PO module defines state and private verifiers.
9. **Module 9: Legal Verifier**: This AEC3PO module defines state and private verifiers.
- Classes: _LegalVerifier_, _PrivateVerifier_, _StateVerifier_.
- Properties: _hasDesign_.

11. **Module 11: Model**: A model representing part or the entirety of a site, building, or piece of infrastructure.
10. **Module 10: Model**: A model representing part or the entirety of a site, building, or piece of infrastructure.
- Classes: _Model_, _Phase_, _Element_, _Classification_ etc.
- Properties: _name_, _description_, _location_, _locationCoverage_, _material_, _hasBuildingPhase_, _hasDimension_, _hasElementPhase_, _hasClassification_, _etc._

12. **Module 12: Table**: This AEC3PO module describes tables as representations of data in rows and columns. Tables are described by captions.
11. **Module 11: Table**: This AEC3PO module describes tables as representations of data in rows and columns. Tables are described by captions.
- Classes: _Container_, _Table_, _Column_, _Row_, _Cell_.
- Properties: _contains_, _isContainedIn_, _caption_.

Expand Down
17 changes: 6 additions & 11 deletions src/aec3po.overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
AEC3PO aims to model all aspects of compliance and permitting on the AEC domain, across different regulatory systems.
It is organised into modules, comprising of classes and properties. The figure below shows an overview of these modules and their relations.

![AEC3PO Overview](diagrams/OverviewAEC3PO.png)
![AEC3PO Overview](diagrams/aec3po-overview-modules.png)

Below is an overview of the core modules and their components:

Expand All @@ -30,7 +30,7 @@ Below is an overview of the core modules and their components:

6. **[FeatureOfInterest](https://ci.mines-stetienne.fr/aec3po/feature_of_interest)**: An element of a site, building, or piece of infrastructure that is of interest. Typically, this will be a building component that needs to be compliant to regulations, or be documented in the permitting process.
- Classes: _FeatureOfInterest_, _Property_, _PropertyKind_, _QuantityKind_, _etc_.
- Properties: _hasProperty_, _hasQuantityKind_, _hasPropertyKind_, _hasDesign_, _hasContext_, _etc_.
- Properties: _hasProperty_, _hasQuantityKind_, _hasPropertyKind_, _hasContext_, _etc_.

7. **[CheckingAct](https://ci.mines-stetienne.fr/aec3po/checking_act)**: The act of checking an entity for compliance, and producing the respective report.
- Classes: _CheckingAct_, _ProcessVerifier_, _etc_.
Expand All @@ -40,23 +40,18 @@ Below is an overview of the core modules and their components:
- Classes: _ComplianceverificationReport_, _result_, _ValidationResult_,_Severity_, _etc_.
- Properties: _conforms_, _focus_, _resultMessage_, _resultSeverity_, _Info_, _Violation_, _Severity_,_etc._

9. **[Design](https://ci.mines-stetienne.fr/aec3po/design)**: This AEC3PO module describes descriptions of some design of features of interest, in terms of structure, geometry, and function.
- Classes: _Design_, _PropertyDesign_.
- Properties: _hasDesign_.

10. **[Legal Verifier](https://ci.mines-stetienne.fr/aec3po/legal_verifier)**: This AEC3PO module defines state and private verifiers.
9. **[Legal Verifier](https://ci.mines-stetienne.fr/aec3po/legal_verifier)**: This AEC3PO module defines state and private verifiers.
- Classes: _LegalVerifier_, _PrivateVerifier_, _StateVerifier_.
- Properties: _hasDesign_.

11. **[Model](https://ci.mines-stetienne.fr/aec3po/model)**: A model representing part or the entirety of a site, building, or piece of infrastructure. Typically these will be Building Information Models.
10. **[Model](https://ci.mines-stetienne.fr/aec3po/model)**: A model representing part or the entirety of a site, building, or piece of infrastructure. Typically these will be Building Information Models.
- Classes: _Model_, _Phase_, _Element_, _Classification_, _etc_.
- Properties: _name_, _description_, _location_, _locationCoverage_, _material_, _hasBuildingPhase_, _hasDimension_, _hasElementPhase_, _hasClassification_, _etc._

12. **[Table](https://ci.mines-stetienne.fr/aec3po/table)**:A table as representations of data in rows and columns. Tables are described by captions.
11. **[Table](https://ci.mines-stetienne.fr/aec3po/table)**:A table as representations of data in rows and columns. Tables are described by captions.
- Classes: _Container_, _Table_, _Column_, _Row_, _Cell_.
- Properties: _contains_, _isContainedIn_, _caption_.

13. **[RASEStatement](https://ci.mines-stetienne.fr/aec3po/rase_statement)**: This AEC3PO module describes statements decomposed following the Requirement Application Selection and Exception (RASE) methodology.
12. **[RASEStatement](https://ci.mines-stetienne.fr/aec3po/rase_statement)**: This AEC3PO module describes statements decomposed following the Requirement Application Selection and Exception (RASE) methodology.
- Classes: _RequirementStatement_, _ApplicationStatement_, _SelectionStatement_, _ExceptionStatement_.
- Properties: _requires_, _appliesTo_, _selects_, _except_.

Expand Down
17 changes: 0 additions & 17 deletions src/aec3po.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -134,20 +134,3 @@ aec3po:asText a owl:DatatypeProperty, owl:FunctionalProperty ;
skos:hiddenLabel "text" ;
rdfs:range xsd:string.


# candidates for deletion as these classes are not used at all in the examples

# aec3po:ClassificationDesign a owl:Class ;
# rdfs:label "classification design"@en ;
# rdfs:comment "Designs that take values in classification schemes, described using SKOS"@en ;
# owl:equivalentClass [ owl:intersectionOf ( skos:Concept [ a owl:Restriction ;
# owl:onProperty skos:inScheme ;
# owl:someValuesFrom skos:ConceptScheme ] ) ] ;
# skos:note """classification design are expected to be taken in existing concept schemes. AEC3PO defines some concept schemes such as aec3po:building_structure. Existing concept schemes may also be used such as Ifc classes, or bSDD."""@en .
# aec3po:hasComparisonOperator a owl:FunctionalProperty,
# owl:ObjectProperty ;
# rdfs:label "has comparisonOperator"@en ;
# rdfs:comment "The comparisonOperator of a property kind design. A set of values is defined by C3PO in the corresponding concept scheme."@en ;
# rdfs:range aec3po:ComparisonOperator ;
# rdfs:subPropertyOf aec3po:hasDesign .

2 changes: 1 addition & 1 deletion src/check_method.description.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ <h2>Description</h2>
<p>Check Method is a piece of information that operationalizes check statements in documents, usually executed in order to control the conformance of some entity. A Check Method is re-usable, and may be executed several times. </p>

<figure>
<img src="diagrams/check_method.png" alt="Illustration of the core concepts in the CheckMethod module" />
<img src="diagrams/aec3po-check_method.png" alt="Illustration of the core concepts in the CheckMethod module" />
<figcaption> Illustration of the core concepts in the CheckMethod module </figcaption>
</figure>
38 changes: 20 additions & 18 deletions src/check_method.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,13 @@ aec3po:NumericalCheckMethod a owl:Class ;
rdfs:isDefinedBy aec3po:check_method ;
rdfs:subClassOf aec3po:CheckMethod .

aec3po:hasComparator a owl:ObjectProperty ;
rdfs:label "has comparator"@en ;
rdfs:comment "Links a numerical check method to the check method comparator it uses (=, <, >, etc.)"@en ;
rdfs:domain aec3po:NumericalCheckMethod ;
rdfs:range aec3po:CheckMethodComparator ;
rdfs:isDefinedBy aec3po:check_method .

aec3po:CertificateCheckMethod a owl:Class ;
rdfs:label "Certificate Check Method"@en ;
rdfs:comment "Certificate check method is a formal process used to verify and validate the authenticity and compliance of certificates related to construction projects. It involves a systematic review and examination of certificates issued by authorised entities to ensure that they meet all the necessary regulatory requirements, standards, and specifications."@en ;
Expand Down Expand Up @@ -123,8 +130,7 @@ aec3po:CompositeCheckMethod a owl:Class ;
rdfs:comment "The target refers to either the name of an object, the name of property or a function."@en ;
rdfs:domain [ a owl:Class ;
owl:unionOf ( aec3po:FeatureOfInterest aec3po:Property aec3po:CheckMethod) ] ;
rdfs:isDefinedBy aec3po:check_method ;
rdfs:subPropertyOf aec3po:hasDesign .
rdfs:isDefinedBy aec3po:check_method .

## hasValue has been defined in the core ontology
#aec3po:hasValue a owl:FunctionalProperty,
Expand All @@ -136,24 +142,13 @@ aec3po:CompositeCheckMethod a owl:Class ;
# rdfs:isDefinedBy aec3po:check_method ;
# rdfs:subPropertyOf aec3po:hasDesign .

aec3po:hasUnit a owl:FunctionalProperty,
owl:ObjectProperty ;
aec3po:hasUnit a owl:FunctionalProperty, owl:ObjectProperty ;
rdfs:label "hasUnit"@en ;
rdfs:comment "the hasUnit property is used to link a specific property or feature of interest to its corresponding unit of measurement. For example, it could be a property related to physical quantities, such as temperature, length, or weight."@en ;
rdfs:comment "the hasUnit property is used to link a specific property or feature of interest to its corresponding unit of measurement. For example, it could be a property related to physical quantities, such as temperature, length, or weight."@en ;
owl:eqivalentProperty qudt:hasValue ;
rdfs:domain qudt:Unit ;
rdfs:range [ a owl:Class ;
owl:unionOf ( aec3po:FeatureOfInterest aec3po:Property aec3po:CheckMethod) ] ;
rdfs:isDefinedBy aec3po:check_method ;
rdfs:subPropertyOf aec3po:hasDesign .

# Removed - no longer needed
#aec3po:nests a owl:ObjectProperty ;
# rdfs:label "nests"@en ;
# rdfs:comment "Links an ACCORDCheckMethod to another ACCORDCheckMethod that is nested within it."@en ;
# rdfs:domain aec3po:ACCORDCheckMethod ;
# rdfs:range aec3po:ACCORDCheckMethod ;
# rdfs:isDefinedBy aec3po:check_method .
rdfs:domain [ a owl:Class ; owl:unionOf ( aec3po:FeatureOfInterest aec3po:Property aec3po:CheckMethod) ] ;
rdfs:range qudt:Unit ;
rdfs:isDefinedBy aec3po:check_method .

aec3po:JenaCheckMethod a owl:Class ;
rdfs:label "Jena Check Method"@en ;
Expand All @@ -167,6 +162,13 @@ aec3po:BooleanCheckMethod a owl:Class ;
rdfs:isDefinedBy aec3po:check_method ;
rdfs:subClassOf aec3po:CheckMethod .

aec3po:hasOperator a owl:ObjectProperty ;
rdfs:label "has operator"@en ;
rdfs:comment "Links a boolean check method to the check method operator it uses (exists, for all, etc.)"@en ;
rdfs:domain aec3po:BooleanCheckMethod ;
rdfs:range aec3po:CheckMethodOperator ;
rdfs:isDefinedBy aec3po:check_method .

aec3po:FunctionCheckMethod a owl:Class ;
rdfs:label "Function Check Method"@en ;
rdfs:comment "Methods of check defined by functions. The function can be general purpose, not tied to specific project and reused i.e. getArea(), getVolume(). This concept is equivalent to the Execution class in the Function ontology: https://fno.io/spec/ "@en ;
Expand Down
2 changes: 1 addition & 1 deletion src/checking_act.description.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ <h2>Description</h2>
<p>The AEC3PO Checking Act module describes the act of checking some entities for something and generating a compliance verification report. <p>

<figure>
<img src="diagrams/checking_act2.png" alt="Illustration of the core concepts in the CheckingAct module" />
<img src="diagrams/aec3po-checking_act.png" alt="Illustration of the core concepts in the CheckingAct module" />
<figcaption> Illustration of the core concepts in the CheckingAct module </figcaption>
</figure>
20 changes: 17 additions & 3 deletions src/checking_act.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,20 @@ aec3po:CheckingAct a owl:Class ;
owl:onProperty aec3po:hasReport ],
dul:Event .

aec3po:startTime a owl:DatatypeProperty ;
rdfs:label "start time"@en ;
rdfs:comment "the start time of the checking act"@en ;
rdfs:domain aec3po:CheckingAct ;
rdfs:range xsd:dateTime ;
rdfs:isDefinedBy aec3po:checking_act .

aec3po:endTime a owl:DatatypeProperty ;
rdfs:label "end time"@en ;
rdfs:comment "the end time of the checking act"@en ;
rdfs:domain aec3po:CheckingAct ;
rdfs:range xsd:dateTime ;
rdfs:isDefinedBy aec3po:checking_act .

aec3po:usedMethod a owl:ObjectProperty ;
rdfs:label "used method"@en ;
rdfs:comment "Links a checking act to the method it used (a aec3po:CheckMethod)."@en ;
Expand All @@ -57,9 +71,9 @@ aec3po:madeBy a owl:ObjectProperty ;
rdfs:isDefinedBy aec3po:checking_act ;
rdfs:range aec3po:ProcessVerifier .

aec3po:checks a owl:ObjectProperty ;
rdfs:label "checks"@en ;
rdfs:comment "Links a checking act to some entity it checked."@en ;
aec3po:checked a owl:ObjectProperty ;
rdfs:label "checked"@en ;
rdfs:comment "Links a checking act to some entity (ex. statement, feature of interest, property) it checked."@en ;
rdfs:domain aec3po:CheckingAct ;
rdfs:isDefinedBy aec3po:checking_act .

Expand Down
4 changes: 2 additions & 2 deletions src/compliance_verification_report.description.html
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<h2>Description</h2>

<p>The AEC3PO Compliance Verification Report module describes results of some `aec3po:ProcesVerifier` checking some entity via a `aec3po:CheckingAct`. <p>
<p>The AEC3PO Compliance Verification Report module describes results of some `aec3po:ProcessVerifier` checking some entity via a `aec3po:CheckingAct`. <p>

<figure>
<img src="diagrams/Conformance_report.png" alt="Illustration of the core concepts in the Compliance Verification Report module" />
<img src="diagrams/aec3po-compliance_verification_report.png" alt="Illustration of the core concepts in the Compliance Verification Report module" />
<figcaption> Illustration of the core concepts in the Compliance Verification Report Module </figcaption>
</figure>
Loading

0 comments on commit 20e4058

Please sign in to comment.