@prefix : <https://dev.qaecy.com/ont#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <https://dev.qaecy.com/ont#> .

<https://dev.qaecy.com/ont#> rdf:type owl:Ontology ;
                              owl:versionIRI <https://dev.qaecy.com/ont/0.0.2> ;
                              <http://purl.org/dc/terms/creator> "Christian Frausing" ,
                                                                 "Mads Holten Rasmussen" ,
                                                                 "Manos Argyris" ;
                              <http://purl.org/dc/terms/description> """The QAECY Ontology defines the terminology used by QAECY and the Cue Agent to provide meaningful insights in Architecture, Engineering and Construction projects.

The core concepts File, FileContent, Fragment and NamedEntity are core to our understanding of the document landscape around any built asset or projects in general. Some concepts are strongly coupled with other well-defined concepts in broadly adopted ontologies and we have a strong focus on establishing a knowledge graph that can be easily translated to BOT, Brick, REC etc.""" ;
                              <http://purl.org/dc/terms/modified> "2026-06-08T14:56:27Z"^^xsd:dateTime ;
                              <http://purl.org/dc/terms/title> "The QAECY Ontology"@en ;
                              <http://purl.org/vocab/vann/preferredNamespacePrefix> "qcy" ;
                              owl:versionInfo "0.0.2" .

#################################################################
#    Annotation properties
#################################################################

###  http://purl.org/dc/terms/conformsTo
<http://purl.org/dc/terms/conformsTo> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/creator
<http://purl.org/dc/terms/creator> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/description
<http://purl.org/dc/terms/description> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/modified
<http://purl.org/dc/terms/modified> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/title
<http://purl.org/dc/terms/title> rdf:type owl:AnnotationProperty .


###  http://purl.org/vocab/vann/preferredNamespacePrefix
<http://purl.org/vocab/vann/preferredNamespacePrefix> rdf:type owl:AnnotationProperty .


###  http://schema.org/domainIncludes
<http://schema.org/domainIncludes> rdf:type owl:AnnotationProperty .


###  https://dev.qaecy.com/ont#visibleForAgent
:visibleForAgent rdf:type owl:AnnotationProperty .


#################################################################
#    Object Properties
#################################################################

###  https://dev.qaecy.com/ont#about
:about rdf:type owl:ObjectProperty ;
       rdfs:domain :InformationObject ;
       rdfs:range :CanonicalEntity ;
       rdfs:comment "Relationship between a qcy:InformationObject and a qcy:CanonicalEntity. This property indicates that a file content or fragment is about a specific canonical entity. It can be implicitly derived that if a file content or fragment mentions the occurrence of a named entity, and that named entity resolves to a canonical entity, then the file content or fragment is about the canonical entity." ;
       rdfs:label "about"@en ;
       :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#activityHasEndDate
:activityHasEndDate rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :relatedEntity ;
                    rdfs:domain :EntityReference ;
                    rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#activityHasStartDate
:activityHasStartDate rdf:type owl:ObjectProperty ;
                      rdfs:subPropertyOf :relatedEntity ;
                      rdfs:domain :EntityReference ;
                      rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#adjacentFragment
:adjacentFragment rdf:type owl:ObjectProperty ;
                  rdfs:domain :Fragment ;
                  rdfs:range :Fragment ;
                  rdfs:comment "Relationship between two fragments that are adjacent within the shared parent information object." ;
                  rdfs:label "adjacent fragment"@en ;
                  :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#alternativeRepresentation
:alternativeRepresentation rdf:type owl:ObjectProperty ;
                           rdfs:domain :InformationObject ;
                           rdfs:range :InformationObject ;
                           rdfs:comment "Relationship between two information objects where one is an alternative representation of the other. For example an image derived from a PDF page fragment or a CAD drawing." ;
                           rdfs:label "alternative representation"@en ;
                           :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#applicableContentCategories
:applicableContentCategories rdf:type owl:ObjectProperty ;
                             rdfs:domain [ rdf:type owl:Class ;
                                           owl:unionOf ( :EntityCategory
                                                         :relatedEntity
                                                       )
                                         ] ;
                             rdfs:range :ContentCategory ;
                             rdfs:comment "Relationship between a qcy:EntityCategory or a qcy:relatedEntity sub-property and one or more qcy:ContentCategory. This property is used to specify the entities that will be represented based on the type of the content." ;
                             rdfs:label "applicable content categories"@en ;
                             :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#applicableObjectCategories
:applicableObjectCategories rdf:type owl:ObjectProperty ;
                            rdfs:domain :relatedEntity ;
                            rdfs:range :EntityCategory ;
                            rdfs:comment "Relationship between a qcy:relatedEntity sub-property and one or more qcy:EntityCategory. This property is used to specify the categories that are applicable to the object of the relationship." ;
                            rdfs:label "applicable object categories"@en ;
                            :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#applicableSubjectCategories
:applicableSubjectCategories rdf:type owl:ObjectProperty ;
                             rdfs:domain :relatedEntity ;
                             rdfs:range :EntityCategory ;
                             rdfs:comment "Relationship between a qcy:relatedEntity sub-property and one or more qcy:EntityCategory. This property is used to specify the categories that are applicable to the subject of the relationship." ;
                             rdfs:label "applicable subject categories"@en ;
                             :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#associatedWith
:associatedWith rdf:type owl:ObjectProperty ;
                rdfs:subPropertyOf :relatedEntity ;
                rdfs:domain :EntityReference ;
                rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#author
:author rdf:type owl:ObjectProperty ;
        rdfs:subPropertyOf :involves ;
        rdfs:domain :EntityReference ;
        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#buildingContainsStorey
:buildingContainsStorey rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :contains ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#contains
:contains rdf:type owl:ObjectProperty ;
          rdfs:subPropertyOf :relatedEntity ;
          rdfs:domain :EntityReference ;
          rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#containsFragment
:containsFragment rdf:type owl:ObjectProperty ;
                  rdfs:domain :InformationObject ;
                  rdfs:range :Fragment ;
                  rdfs:comment "Relationship between a qcy:InformationObject and one of its qcy:Fragments" ;
                  rdfs:label "contains fragment"@en ;
                  :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#contractGovernedByJurisdiction
:contractGovernedByJurisdiction rdf:type owl:ObjectProperty ;
                                rdfs:subPropertyOf :involves ;
                                rdfs:domain :EntityReference ;
                                rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#contractHasEndDate
:contractHasEndDate rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :relatedEntity ;
                    rdfs:domain :EntityReference ;
                    rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#contractHasSignatureDate
:contractHasSignatureDate rdf:type owl:ObjectProperty ;
                          rdfs:subPropertyOf :relatedEntity ;
                          rdfs:domain :EntityReference ;
                          rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#contractHasStartDate
:contractHasStartDate rdf:type owl:ObjectProperty ;
                      rdfs:subPropertyOf :relatedEntity ;
                      rdfs:domain :EntityReference ;
                      rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#contractInvolvesParty
:contractInvolvesParty rdf:type owl:ObjectProperty ;
                       rdfs:subPropertyOf :involves ;
                       rdfs:domain :EntityReference ;
                       rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#contractMentionsBuiltAsset
:contractMentionsBuiltAsset rdf:type owl:ObjectProperty ;
                            rdfs:subPropertyOf :involves ;
                            rdfs:domain :EntityReference ;
                            rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#contractStatesObligation
:contractStatesObligation rdf:type owl:ObjectProperty ;
                          rdfs:subPropertyOf :contains ;
                          rdfs:domain :EntityReference ;
                          rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#drawingApprovedBy
:drawingApprovedBy rdf:type owl:ObjectProperty ;
                   rdfs:subPropertyOf :reviewer ;
                   rdfs:domain :EntityReference ;
                   rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#drawingCreatedBy
:drawingCreatedBy rdf:type owl:ObjectProperty ;
                  rdfs:subPropertyOf :author ;
                  rdfs:domain :EntityReference ;
                  rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#drawingHasApprovalDate
:drawingHasApprovalDate rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :expressedBy ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#drawingHasCreationDate
:drawingHasCreationDate rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :expressedBy ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#drawingHasFileReference
:drawingHasFileReference rdf:type owl:ObjectProperty ;
                         rdfs:subPropertyOf :associatedWith ;
                         rdfs:domain :EntityReference ;
                         rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#drawingHasOrientation
:drawingHasOrientation rdf:type owl:ObjectProperty ;
                       rdfs:subPropertyOf :expressedBy ;
                       rdfs:domain :EntityReference ;
                       rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#drawingHasScale
:drawingHasScale rdf:type owl:ObjectProperty ;
                 rdfs:subPropertyOf :expressedBy ;
                 rdfs:domain :EntityReference ;
                 rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#elementHasMaterial
:elementHasMaterial rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :expressedBy ;
                    rdfs:domain :EntityReference ;
                    rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#expressedBy
:expressedBy rdf:type owl:ObjectProperty ;
             rdfs:subPropertyOf :relatedEntity ;
             rdfs:domain :EntityReference ;
             rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasActivityAgent
:hasActivityAgent rdf:type owl:ObjectProperty ;
                  rdfs:subPropertyOf :involves ;
                  rdfs:domain :EntityReference ;
                  rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasAssociatedDiscipline
:hasAssociatedDiscipline rdf:type owl:ObjectProperty ;
                         rdfs:subPropertyOf :relatedEntity ;
                         rdfs:domain :EntityReference ;
                         rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasCategory
:hasCategory rdf:type owl:ObjectProperty ;
             rdfs:domain owl:Thing ;
             rdfs:range :Category ;
             rdfs:comment "Abstract property that connects something with its categories. Use one of the more specific sub-properties to assign categories." ;
             rdfs:label "has category"@en ;
             :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasContentCategory
:hasContentCategory rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :hasCategory ;
                    rdfs:domain :InformationObject ;
                    rdfs:range :ContentCategory ;
                    rdfs:comment "Relationship between a qcy:InformationObject (typically a whole document or a page in a document) and its qcy:ContentCategory derived from its content." ;
                    rdfs:label "has content category"@en ;
                    :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasContractRole
:hasContractRole rdf:type owl:ObjectProperty ;
                 rdfs:subPropertyOf :associatedWith ;
                 rdfs:domain :EntityReference ;
                 rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasDesignMetadata
:hasDesignMetadata rdf:type owl:ObjectProperty ;
                   rdfs:subPropertyOf :expressedBy ;
                   rdfs:domain :EntityReference ;
                   rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasDuration
:hasDuration rdf:type owl:ObjectProperty ;
             rdfs:subPropertyOf :expressedBy ;
             rdfs:domain :EntityReference ;
             rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasEmailAddress
:hasEmailAddress rdf:type owl:ObjectProperty ;
                 rdfs:subPropertyOf :associatedWith ;
                 rdfs:domain :EntityReference ;
                 rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasEmailReceiver
:hasEmailReceiver rdf:type owl:ObjectProperty ;
                  rdfs:subPropertyOf :associatedWith ;
                  rdfs:domain :EntityReference ;
                  rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasEmailSender
:hasEmailSender rdf:type owl:ObjectProperty ;
                rdfs:subPropertyOf :associatedWith ;
                rdfs:domain :EntityReference ;
                rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasEntityCategory
:hasEntityCategory rdf:type owl:ObjectProperty ;
                   rdfs:subPropertyOf :hasCategory ;
                   rdfs:domain :EntityReference ;
                   rdfs:range :EntityCategory ;
                   rdfs:comment "Relationship between a qcy:EntityReference and one or more qcy:EntityCategory." ;
                   rdfs:label "has entity category"@en ;
                   :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasFileLocation
:hasFileLocation rdf:type owl:ObjectProperty ;
                 rdfs:domain :InformationObject ;
                 rdfs:range :FileLocation ;
                 rdfs:comment "Relationship between a qcy:InformationObject and one of its qcy:FileLocation(s). All qcy:FileContent instances have at least one location and other information objects such as a qcy:ImageFragment also have a file location" ;
                 rdfs:label "has file location"@en ;
                 :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasFoundingMention
:hasFoundingMention rdf:type owl:ObjectProperty ;
                    rdfs:domain :CanonicalEntity ;
                    rdfs:range :EntityMention ;
                    rdfs:comment "Relationship indicating that a Canonical Entity was originally established or founded based on this specific Entity Mention. This property highlights the mentions that were primary and instrumental in the initial creation or identification of the canonical entity's concept."@en ;
                    rdfs:label "has founding mention"@en ;
                    :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasGeometry
:hasGeometry rdf:type owl:ObjectProperty ;
             rdfs:subPropertyOf :relatedEntity ;
             rdfs:domain :CanonicalEntity ;
             rdfs:range owl:Thing ;
             rdfs:comment "Relationship between a qcy:CanonicalEntity and its geometric representation (for example the SVG polygon org glTF of a BIM object)." ;
             rdfs:label "has geometry"@en ;
             :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasLocation
:hasLocation rdf:type owl:ObjectProperty ;
             rdfs:subPropertyOf :associatedWith ;
             rdfs:domain :EntityReference ;
             rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#hasMimeCategory
:hasMimeCategory rdf:type owl:ObjectProperty ;
                 rdfs:subPropertyOf :hasCategory ;
                 rdfs:domain :FileContent ;
                 rdfs:range :MimeCategory ;
                 rdfs:comment "Relationship between a qcy:FileContent object and its qcy:MimeCategory derived from its mimetype." ;
                 rdfs:label "has mime category"@en ;
                 :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasProperty
:hasProperty rdf:type owl:ObjectProperty ;
             rdfs:domain :EntityReference ;
             rdfs:range :Property ;
             rdfs:comment "Relationship between a qcy:EntityMention or qcy:CanonicalEntity and one of its qcy:Properties." ;
             rdfs:label "has property"@en ;
             :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasRelationCategory
:hasRelationCategory rdf:type owl:ObjectProperty ;
                     rdfs:subPropertyOf :hasCategory ;
                     rdfs:domain :RelationMeta ;
                     rdfs:range :RelationCategory ;
                     rdfs:comment "Relationship between a qcy:RelationMeta node and its qcy:RelationCategory, specifying the role or type of the qualified relationship." ;
                     rdfs:label "has relation category"@en ;
                     :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasRelationMetaObject
:hasRelationMetaObject rdf:type owl:ObjectProperty ;
                       rdfs:domain :RelationMeta ;
                       rdfs:range :EntityReference ;
                       rdfs:comment "Relationship between a qcy:RelationMeta node and the object entity of the qualified relationship." ;
                       rdfs:label "has relation meta object"@en ;
                       :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasRelationMetaProperty
:hasRelationMetaProperty rdf:type owl:ObjectProperty ;
                         rdfs:domain :RelationMeta ;
                         rdfs:range owl:ObjectProperty ;
                         rdfs:comment "Relationship between a qcy:RelationMeta node and the sub-property of qcy:relatedEntity that it qualifies (e.g. qcy:involves, qcy:contains, qcy:leadsTo). If omitted, the one that connects the subject/object of the qualified relationship is assumed." ;
                         rdfs:label "has relation meta property"@en ;
                         :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasRelationMetaSubject
:hasRelationMetaSubject rdf:type owl:ObjectProperty ;
                        rdfs:domain :RelationMeta ;
                        rdfs:range :EntityReference ;
                        rdfs:comment "Relationship between a qcy:RelationMeta node and the subject entity of the qualified relationship." ;
                        rdfs:label "has relation meta subject"@en ;
                        :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#hasSubElement
:hasSubElement rdf:type owl:ObjectProperty ;
               rdfs:subPropertyOf :contains ;
               rdfs:domain :EntityReference ;
               rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#includesActivity
:includesActivity rdf:type owl:ObjectProperty ;
                  rdfs:subPropertyOf :contains ;
                  rdfs:domain :EntityReference ;
                  rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#includesBuildingEntity
:includesBuildingEntity rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :contains ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#interfaceOf
:interfaceOf rdf:type owl:ObjectProperty ;
             rdfs:subPropertyOf :relatedEntity ;
             rdfs:domain :EntityReference ;
             rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#involves
:involves rdf:type owl:ObjectProperty ;
          rdfs:subPropertyOf :relatedEntity ;
          rdfs:domain :EntityReference ;
          rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#involvesBuildingEntity
:involvesBuildingEntity rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :involves ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#involvesCost
:involvesCost rdf:type owl:ObjectProperty ;
              rdfs:subPropertyOf :expressedBy ;
              rdfs:domain :EntityReference ;
              rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#involvesDiscipline
:involvesDiscipline rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :involves ;
                    rdfs:domain :EntityReference ;
                    rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#leadsTo
:leadsTo rdf:type owl:ObjectProperty ;
         rdfs:subPropertyOf :relatedEntity ;
         rdfs:domain :EntityReference ;
         rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#mentions
:mentions rdf:type owl:ObjectProperty ;
          rdfs:range :EntityMention ;
          <http://schema.org/domainIncludes> :FileLocation ,
                                             :InformationObject ;
          rdfs:comment "Relationship between a qcy:InformationObject/qcy:FileLocation and a qcy:EntityMention. This property indicates that a file location, file content or fragment mentions a specific named entity. This relationship can implicitly be derived from the subject/object pair of a qcy:Selector. For file locations it is typically resolved by regex mapping of a schema against the file path." ;
          rdfs:label "mentions"@en ;
          :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#obligationHasCondition
:obligationHasCondition rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :relatedEntity ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#obligationHasEndDate
:obligationHasEndDate rdf:type owl:ObjectProperty ;
                      rdfs:subPropertyOf :relatedEntity ;
                      rdfs:domain :EntityReference ;
                      rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#obligationHasResponsibleParty
:obligationHasResponsibleParty rdf:type owl:ObjectProperty ;
                               rdfs:subPropertyOf :involves ;
                               rdfs:domain :EntityReference ;
                               rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#obligationHasStartDate
:obligationHasStartDate rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :relatedEntity ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#parentFragment
:parentFragment rdf:type owl:ObjectProperty ;
                rdfs:domain :Fragment ;
                rdfs:range :Fragment ;
                rdfs:comment "Relationship between a parent fragment (eg a title) and a child fragment (eg a paragraph)." ;
                rdfs:label "parent fragment"@en ;
                :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#precedesActivity
:precedesActivity rdf:type owl:ObjectProperty ;
                  rdfs:subPropertyOf :leadsTo ;
                  rdfs:domain :EntityReference ;
                  rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#projectHasPhase
:projectHasPhase rdf:type owl:ObjectProperty ;
                 rdfs:subPropertyOf :contains ;
                 rdfs:domain :EntityReference ;
                 rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#projectHasSchedule
:projectHasSchedule rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :contains ;
                    rdfs:domain :EntityReference ;
                    rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#relatedEntity
:relatedEntity rdf:type owl:ObjectProperty ;
               rdfs:domain :EntityReference ;
               rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#relatedFormalClass
:relatedFormalClass rdf:type owl:ObjectProperty ;
                    rdfs:domain :Category ;
                    rdfs:range owl:Thing ;
                    rdfs:comment "Relationship between a qcy:Category and one or more formal classes in external ontologies (Ex: qcy-e:Space qcy:relatedFormalClass bot:Space)." ;
                    rdfs:label "related formal class"@en ;
                    :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#relatedFormalProperty
:relatedFormalProperty rdf:type owl:ObjectProperty ;
                       rdfs:domain :relatedEntity ;
                       rdfs:range owl:Thing ;
                       rdfs:comment "Relationship between a qcy:relatedEntity sub-property and one or more formal properties in external ontologies (Ex: qcy:buildingContainsStorey qcy:relatedFormalClass bot:hasStorey)." ;
                       rdfs:label "related formal property"@en ;
                       :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#remoteProviderType
:remoteProviderType rdf:type owl:ObjectProperty ;
                    rdfs:domain :FileLocation ;
                    rdfs:range :ProviderType .


###  https://dev.qaecy.com/ont#requiresEquipment
:requiresEquipment rdf:type owl:ObjectProperty ;
                   rdfs:subPropertyOf :involves ;
                   rdfs:domain :EntityReference ;
                   rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#requiresMaterial
:requiresMaterial rdf:type owl:ObjectProperty ;
                  rdfs:subPropertyOf :involves ;
                  rdfs:domain :EntityReference ;
                  rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#resolvesTo
:resolvesTo rdf:type owl:ObjectProperty ;
            rdfs:domain :EntityMention ;
            rdfs:range :CanonicalEntity ;
            rdfs:comment "Relationship between a qcy:EntityMention and a qcy:CanonicalEntity. This property indicates that a named entity occurrence resolves to a canonical entity, meaning that the named entity is recognized as an instance of the canonical entity." ;
            rdfs:label "resolves to"@en ;
            :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#reviewer
:reviewer rdf:type owl:ObjectProperty ;
          rdfs:subPropertyOf :involves ;
          rdfs:domain :EntityReference ;
          rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#roleInContract
:roleInContract rdf:type owl:ObjectProperty ;
                rdfs:subPropertyOf :associatedWith ;
                rdfs:domain :EntityReference ;
                rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#selectorObject
:selectorObject rdf:type owl:ObjectProperty ;
                rdfs:domain :Selector ;
                rdfs:range owl:Thing ;
                <http://schema.org/domainIncludes> :EntityMention ,
                                                   :InformationObject ;
                rdfs:comment "Relationship between a qcy:Selector and the thing it specifies. This is typically either a qcy:EntityMention (eg this part of the text mentions the entity) or a qcy:InformationObject (eg this picture is placed here on the page)" ;
                rdfs:label "selector object"@en ;
                :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#selectorSubject
:selectorSubject rdf:type owl:ObjectProperty ;
                 rdfs:domain :Selector ;
                 rdfs:range :InformationObject ;
                 rdfs:comment "Relationship between a qcy:Selector and the qcy:InformationObject it specifies." ;
                 rdfs:label "selector subject"@en ;
                 :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#sheetContainsDrawing
:sheetContainsDrawing rdf:type owl:ObjectProperty ;
                      rdfs:subPropertyOf :contains ;
                      rdfs:domain :EntityReference ;
                      rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#similarTo
:similarTo rdf:type owl:ObjectProperty ;
           rdfs:subPropertyOf :relatedEntity ;
           rdfs:domain :CanonicalEntity ;
           rdfs:range owl:Thing ;
           rdfs:comment "Relationship between a qcy:CanonicalEntity and any other representation of the same entity (for example the Wikidata entry) or a similar entity (for example the OpenStreetMaps street address of an appartment in a building). This property indicates that the canonical entity can be linked to or identified with another entity in a different context or dataset." ;
           rdfs:label "similar to"@en ;
           :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#siteContainsBuilding
:siteContainsBuilding rdf:type owl:ObjectProperty ;
                      rdfs:subPropertyOf :contains ;
                      rdfs:domain :EntityReference ;
                      rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#zoneContainsElement
:zoneContainsElement rdf:type owl:ObjectProperty ;
                     rdfs:subPropertyOf :contains ;
                     rdfs:domain :EntityReference ;
                     rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#zoneContainsSpace
:zoneContainsSpace rdf:type owl:ObjectProperty ;
                   rdfs:subPropertyOf :contains ;
                   rdfs:domain :EntityReference ;
                   rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#zoneHasAdjacentElement
:zoneHasAdjacentElement rdf:type owl:ObjectProperty ;
                        rdfs:subPropertyOf :relatedEntity ;
                        rdfs:domain :EntityReference ;
                        rdfs:range :EntityReference .


###  https://dev.qaecy.com/ont#zoneHasElement
:zoneHasElement rdf:type owl:ObjectProperty ;
                rdfs:subPropertyOf :relatedEntity ;
                rdfs:domain :EntityReference ;
                rdfs:range :EntityReference .


#################################################################
#    Data properties
#################################################################

###  https://dev.qaecy.com/ont#classificationPrompt
:classificationPrompt rdf:type owl:DatatypeProperty ;
                      rdfs:domain owl:Thing ;
                      rdfs:range xsd:string ;
                      rdfs:comment "A property specifying the prompt used to classify a certain type of document by an LLM."@en ;
                      rdfs:label "classification prompt"@en ;
                      :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#confidence
:confidence rdf:type owl:DatatypeProperty ;
            rdfs:domain owl:Thing ;
            rdfs:range xsd:decimal ;
            rdfs:comment "A numerical score, typically between 0.0 and 1.0, representing the level of certainty or belief in an assertion, a piece of data, or a relationship. For example, the confidence that an entity mention resolves to a particular canonical entity, or the confidence in the derived properties of a canonical entity."@en ;
            rdfs:label "confidence"@en ;
            :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#dateCreated
:dateCreated rdf:type owl:DatatypeProperty ;
             rdfs:domain owl:Thing ;
             rdfs:range xsd:dateTime ;
             rdfs:comment "The date and time when the resource was created. This is typically the time when the resource was first stored in the database or in the source system."@en ;
             rdfs:label "date created"@en ;
             :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#dateDeleted
:dateDeleted rdf:type owl:DatatypeProperty ;
             rdfs:domain owl:Thing ;
             rdfs:range xsd:dateTime ;
             rdfs:comment "The date and time when the resource was deleted. This is typically the time when the resource was removed from the database or in the source system."@en ;
             rdfs:label "date deleted"@en ;
             :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#dateModified
:dateModified rdf:type owl:DatatypeProperty ;
              rdfs:domain owl:Thing ;
              rdfs:range xsd:dateTime ;
              rdfs:comment "The date and time when the resource was last modified. This is typically the time when the resource was last updated in the database or in the source system."@en ;
              rdfs:label "date modified"@en ;
              :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#enrichmentAttemptCount
:enrichmentAttemptCount rdf:type owl:DatatypeProperty ;
                        rdfs:domain :CanonicalEntity ;
                        rdfs:range xsd:integer ;
                        rdfs:comment "The number of times enrichment has been attempted for this canonical entity. Used to limit retry attempts for enrichment processes (e.g., geocoding addresses). After a maximum number of attempts, the entity is no longer considered for enrichment."@en ;
                        rdfs:label "enrichment attempt count"@en ;
                        :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#explicit
:explicit rdf:type owl:DatatypeProperty ;
          rdfs:domain :CanonicalEntity ;
          rdfs:range xsd:boolean ;
          rdfs:comment "A boolean property specifying that something is explicit. It is specifically used to indicate that a qcy:CanonicalEntity has been confirmed by an authorized project practitioner or other specialist."@en ;
          rdfs:label "explicit"@en ;
          :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#extractionPrompt
:extractionPrompt rdf:type owl:DatatypeProperty ;
                  rdfs:domain owl:Thing ;
                  rdfs:range xsd:string ;
                  rdfs:comment "A property specifying the prompt used to extract a certain kind of entity or relation by an LLM."@en ;
                  rdfs:label "extraction prompt"@en ;
                  :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#filePath
:filePath rdf:type owl:DatatypeProperty ;
          rdfs:domain :FileLocation ;
          rdfs:range xsd:string ;
          rdfs:comment "The file path property specifies the location of a file on a storage system. This is always a relative path in relation to the project directory on a cloud storage provider."@en ;
          rdfs:label "file path"@en ;
          :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#ifcPSet
:ifcPSet rdf:type owl:DatatypeProperty ;
         rdfs:domain :Property ;
         rdfs:range xsd:string .


###  https://dev.qaecy.com/ont#inferredFragmentType
:inferredFragmentType rdf:type owl:DatatypeProperty ;
                      rdfs:domain :Fragment ;
                      rdfs:range xsd:string ;
                      rdfs:comment "Text value that provides more information about what type of fragment. Typically inferred by libraries like Unstructured."@en ;
                      rdfs:label "inferred fragment type"@en ;
                      :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#iriPattern
:iriPattern rdf:type owl:DatatypeProperty ;
            rdfs:domain owl:Thing ;
            rdfs:range xsd:string ;
            rdfs:comment "The IRI pattern is what is fed to the contextBasedIRI function described in pseudo code. For example \"<parentUUID>_g\" which for t parent UUID \"d1d55833-bc18-443f-959d-b692c696c29a\" would translate to \"d1d55833-bc18-443f-959d-b692c696c29a_g\" which would ultimately result in the final QAECY UUID <e162fc83-71fb-5085-a201-650e131a3b9c>."@en ;
            rdfs:label "IRI pattern"@en ;
            :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#label
:label rdf:type owl:DatatypeProperty ;
       rdfs:domain owl:Thing ;
       rdfs:range xsd:string ;
       <http://schema.org/domainIncludes> :CanonicalEntity ,
                                          :EntityMention ;
       rdfs:comment "A label is a human-readable name for the resource. Each resource should have only one preferred label in english that specifies the resource."@en ;
       rdfs:label "label"@en ;
       :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#language
:language rdf:type owl:DatatypeProperty ;
          rdfs:domain :InformationObject ;
          rdfs:range xsd:string .


###  https://dev.qaecy.com/ont#md5Hash
:md5Hash rdf:type owl:DatatypeProperty ;
         rdfs:domain :FileContent ;
         rdfs:range xsd:string .


###  https://dev.qaecy.com/ont#md5HashBase64
:md5HashBase64 rdf:type owl:DatatypeProperty ;
               rdfs:domain :FileContent ;
               rdfs:range xsd:string .


###  https://dev.qaecy.com/ont#mime
:mime rdf:type owl:DatatypeProperty ;
      rdfs:domain :FileContent ;
      rdfs:range xsd:string .


###  https://dev.qaecy.com/ont#openFormat
:openFormat rdf:type owl:DatatypeProperty ;
            rdfs:domain :FileContent ;
            rdfs:range xsd:boolean ;
            rdfs:comment "Is the file content readable without proprietary software tools?"@en ;
            rdfs:label "open format"@en ;
            :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#reasoning
:reasoning rdf:type owl:DatatypeProperty ;
           rdfs:domain owl:Thing ;
           rdfs:range xsd:string ;
           rdfs:comment "A textual explanation or justification supporting an assertion, a piece of data, a derived value, or a relationship. This can include the evidence, logic, or process used to arrive at a conclusion or to assign a confidence score."@en ;
           rdfs:label "reasoning"@en ;
           :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#regex
:regex rdf:type owl:DatatypeProperty ;
       rdfs:domain owl:Thing ;
       rdfs:range xsd:string ;
       rdfs:comment "A regular expression (regex) is a sequence of characters that defines a search pattern. This pattern is used by string searching algorithms for \"find\" or \"find and replace\" operations on strings. Often used to annotate the QAECY schemas."@en ;
       rdfs:label "regex"@en ;
       :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#remoteProviderId
:remoteProviderId rdf:type owl:DatatypeProperty ;
                  rdfs:domain owl:Thing ;
                  rdfs:range xsd:string ;
                  rdfs:comment "A unique identifier used to identify the remote provider. This is part of the fileUUID and is used uniquely identify a resource in relation to the remote system."@en ;
                  rdfs:label "remote provider id"@en ;
                  :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#remoteProviderType
:remoteProviderType rdf:type owl:DatatypeProperty .


###  https://dev.qaecy.com/ont#remoteRelativePath
:remoteRelativePath rdf:type owl:DatatypeProperty ;
                    rdfs:domain :FileLocation ;
                    rdfs:range xsd:string ;
                    rdfs:comment "The remote relative path specifies the location of a file on a storage system. This is always a relative path in relation to the project directory on a cloud storage provider."@en ;
                    rdfs:label "remote relative path"@en ;
                    :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#resolutionAttemptCount
:resolutionAttemptCount rdf:type owl:DatatypeProperty ;
                        rdfs:domain :EntityMention ;
                        rdfs:range xsd:integer ;
                        rdfs:comment "The number of times resolution has been attempted for this entity mention. Used to limit retry attempts for entity resolution processes. After a maximum number of attempts, the mention is no longer considered for resolution to a canonical entity."@en ;
                        rdfs:label "resolution attempt count"@en ;
                        :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#sizeBytes
:sizeBytes rdf:type owl:DatatypeProperty ;
           rdfs:domain :FileContent ;
           rdfs:range xsd:integer ;
           rdfs:comment "The size of the file content in bytes"@en ;
           rdfs:label "size bytes"@en ;
           :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#subject
:subject rdf:type owl:DatatypeProperty ;
         rdfs:domain owl:Thing ;
         rdfs:range xsd:string ;
         <http://schema.org/domainIncludes> :InformationObject ;
         rdfs:comment "A subject is a short description that captures the main theme or topic of a qcy:InformationObject. The subject is typically generated by a Large Language model."@en ;
         rdfs:label "subject"@en ;
         :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#suffix
:suffix rdf:type owl:DatatypeProperty ;
        rdfs:domain :FileLocation ;
        rdfs:range xsd:string .


###  https://dev.qaecy.com/ont#tableContent
:tableContent rdf:type owl:DatatypeProperty ;
              rdfs:domain :TableFragment ;
              rdfs:range xsd:string ;
              rdfs:comment "\"Processed table output, which contains a json string with the content assigned to the cells, as extracted from the input.."@en ;
              rdfs:label "table grid content"@en ;
              :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#tableGrid
:tableGrid rdf:type owl:DatatypeProperty ;
           rdfs:domain :TableFragment ;
           rdfs:range xsd:string ;
           rdfs:comment "Processed table output, which contains a json string with a grid of cells, as extracted from the input."@en ;
           rdfs:label "table grid"@en ;
           :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#tag
:tag rdf:type owl:DatatypeProperty ;
     rdfs:domain owl:Thing ;
     rdfs:range xsd:string ;
     <http://schema.org/domainIncludes> :InformationObject ;
     rdfs:comment "A tag is a keyword or term assigned to a piece of information, such as a qcy:InformationObject, to describe and categorize it. Tags are typically used to facilitate searching and organizing information. An information object can have multiple tags."@en ;
     rdfs:label "tag"@en ;
     :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#textRaw
:textRaw rdf:type owl:DatatypeProperty ;
         rdfs:domain :InformationObject ;
         rdfs:range xsd:string ;
         rdfs:comment "Raw text as extracted from the qcy:InformationObject."@en ;
         rdfs:label "text raw"@en ;
         :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#textSummary
:textSummary rdf:type owl:DatatypeProperty ;
             rdfs:domain owl:Thing ;
             rdfs:range xsd:string ;
             <http://schema.org/domainIncludes> :InformationObject ;
             rdfs:comment "A short text that summarizes all information about the thing. This is typically generated by a Large Language model from provided context any form."@en ;
             rdfs:label "text summary"@en ;
             :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#value
:value rdf:type owl:DatatypeProperty ;
       rdfs:domain owl:Thing ;
       rdfs:range xsd:string ;
       <http://schema.org/domainIncludes> :Selector ;
       rdfs:comment "A value is a text string that holds the value. How to interpret this value depends on what the value is assigned to."@en ;
       rdfs:label "value"@en ;
       :visibleForAgent "true"^^xsd:boolean .


#################################################################
#    Classes
#################################################################

###  http://www.w3.org/2002/07/owl#ObjectProperty
owl:ObjectProperty rdf:type owl:Class .


###  https://dev.qaecy.com/ont#BIMEntity
:BIMEntity rdf:type owl:Class ;
           rdfs:subClassOf :EntityMention ;
           rdfs:comment "A BIM entity is a special kind of entity mention. It's an intangible (zone) or tangible (element) part of a BIM model."@en ;
           rdfs:label "BIM Entity"@en ;
           :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#CADLayoutFragment
:CADLayoutFragment rdf:type owl:Class ;
                   rdfs:subClassOf :Fragment ;
                   rdfs:comment "This special fragment constitutes a CAD layout. It should be specified with a selector (qcy:CADLayoutSelector) relative to its parent fragment and the extracted layout's location should be specified."@en ;
                   rdfs:label "CAD Layout Fragment"@en ;
                   :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#CADLayoutSelector
:CADLayoutSelector rdf:type owl:Class ;
                   rdfs:subClassOf :Selector ;
                   rdfs:comment "A CAD layout selector specifies the name of a layout in a CAD file. It should be used to connect a qcy:FileContent object representing a CAD file with a qcy:Fragment representing the layout. The value is the name of the layout as specified in the CAD file and corresponds to the block parameter used when extracting an image of the CAD layout using QCAD."@en ;
                   rdfs:label "CAD Layout Selector"@en ;
                   :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#CADViewportFragment
:CADViewportFragment rdf:type owl:Class ;
                     rdfs:subClassOf :Fragment ;
                     rdfs:comment "This special fragment constitutes a CAD viewport. It should be specified with a selector (qcy:CADViewportSelector) relative to its parent fragment and the extracted viewport's location should be specified."@en ;
                     rdfs:label "CAD Viewport Fragment"@en ;
                     :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#CADViewportSelector
:CADViewportSelector rdf:type owl:Class ;
                     rdfs:subClassOf :Selector ;
                     rdfs:comment "A CAD viewport selector specifies the location of a viewport in a CAD layout. It should be used to connect a qcy:FileContent object representing a CAD layout with a qcy:Fragment representing the viewport. The value is the XYWH coordinates of the viewport within the cartesian coordinate system of the CAD layout (Y axis pointing upwards) normalised to mm. The value corresponds to the window parameter (-w) that is fed to QCAD when extracting an image of the CAD layout and is always."@en ;
                     rdfs:label "CAD Viewport Selector"@en ;
                     :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#CanonicalEntity
:CanonicalEntity rdf:type owl:Class ;
                 rdfs:subClassOf :EntityReference ;
                 owl:disjointWith :EntityMention ;
                 rdfs:comment "These are standardized representations of named entities that are the output of an enrichment step in the QAECY pipelines. The entity resolution should include relevant contextual information to distinguish between unique named entities. For example, there can be a ground floor in two buildings but they are not the same concept."@en ;
                 rdfs:label "Canonical Entity"@en ;
                 :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#Category
:Category rdf:type owl:Class ;
          owl:disjointWith :EntityReference ,
                           :FileLocation ,
                           :InformationObject ,
                           :Property ,
                           :RelationMeta ,
                           :Selector ;
          rdfs:comment "Abstract class for specific categories that each hold enumerations used for specification of information objects and entity references. It is recommended to use SKOS to establish more context between the Category entities."@en ;
          rdfs:label "Category"@en ;
          :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#ContentCategory
:ContentCategory rdf:type owl:Class ;
                 rdfs:subClassOf :Category ;
                 rdfs:comment "Category derived from the content of the file" ;
                 rdfs:label "Content Category"@en ;
                 :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#CoordinateTranslator
:CoordinateTranslator rdf:type owl:Class ;
                      rdfs:subClassOf :Selector ;
                      rdfs:comment "A coordinate translator specifies the parameters needed to translate coordinates from one coordinate system to another. This is used to connect a qcy:Fragment representing a CAD layout with a qcy:Fragment representing an image of that layout, to enable translation of the viewport coordinates in the CAD layout to XYWH coordinates in the image. The value is formatted as an SVG transformation matrix (eg. matrix(56.69, 0, 0, -56.69, 110.07, 257.10))"@en ;
                      rdfs:label "Coordinate Translator"@en ;
                      :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#DocumentPageFragment
:DocumentPageFragment rdf:type owl:Class ;
                      rdfs:subClassOf :Fragment ;
                      rdfs:comment "This special fragment constitutes a page in a paginated document."@en ;
                      rdfs:label "Document Page Fragment"@en ;
                      :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#EntityCategory
:EntityCategory rdf:type owl:Class ;
                rdfs:subClassOf :Category ;
                rdfs:comment "Category that specifies the categories of an entity reference" ;
                rdfs:label "Entity Category"@en ;
                :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#EntityMention
:EntityMention rdf:type owl:Class ;
               rdfs:subClassOf :EntityReference ;
               rdfs:comment "An entity mention is an occurrence of a specific entity within a qcy:InformationObject. Each occurrence is unique, meaning that two mentions of \"Albert Einstein\" in the same information object are considered two distinct entity mentions. Entity mentions can describe mentionings of persons, organizations, locations, dates, and other proper nouns."@en ;
               rdfs:label "Entity Mention"@en ;
               :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#EntityReference
:EntityReference rdf:type owl:Class ;
                 owl:disjointWith :FileLocation ,
                                  :InformationObject ,
                                  :Property ,
                                  :RelationMeta ,
                                  :Selector ;
                 rdfs:comment "This abstract class captures reference points for all features of interest in a project, such as a building element, a zone, a person, or material. These references can be either explicit or potential occurrences of the entity. This class should not be assigned directly; instead, use the sub-class qcy:EntityMention for potential occurrences of an entity and qcy:CanonicalEntity for a formalized entity."@en ;
                 rdfs:label "Entity Reference"@en ;
                 :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#FileContent
:FileContent rdf:type owl:Class ;
             rdfs:subClassOf :InformationObject ;
             rdfs:comment "A file content object represents the full content of a qcy:File. It is uniquely identified by its content, meaning that any modification, even a single character change, results in a new file content object. This ensures that each file content object is immutable and uniquely identifiable. Additionally, a single file content object can be referenced by multiple qcy:File instances, which may be stored in different locations, either locally or in the cloud."@en ;
             rdfs:label "File Content"@en ;
             :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#FileLocation
:FileLocation rdf:type owl:Class ;
              owl:disjointWith :InformationObject ,
                               :Property ,
                               :RelationMeta ,
                               :Selector ;
              rdfs:comment "A file location is a digital representation of an information object that is stored on a hard drive, either locally or in the cloud."@en ;
              rdfs:label "File Location"@en ;
              :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#Fragment
:Fragment rdf:type owl:Class ;
          rdfs:subClassOf :InformationObject ;
          rdfs:comment "A fragment is a subset of a qcy:FileContent object. Each fragment can have sub-fragments in any arbitrary depth (see qcy:containsFragment). For example, a page is a fragment of a document and a text paragraph, image, and table can all be sub-fragments of that page."@en ;
          rdfs:label "Fragment"@en ;
          :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#IDSelector
:IDSelector rdf:type owl:Class ;
            rdfs:subClassOf :Selector ;
            rdfs:comment "The value specifies an identifier within a structured document, such as an XML or JSON file. For BIM models use one of the more specific ID selectors for the specific kind of ID. The ID Selector is typically used to identify the location of a qcy:EntityMention by its unique ID."@en ;
            rdfs:label "ID Selector"@en ;
            :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#IFCExpressIDSelector
:IFCExpressIDSelector rdf:type owl:Class ;
                      rdfs:subClassOf :Selector .


###  https://dev.qaecy.com/ont#IFCGlobalIDSelector
:IFCGlobalIDSelector rdf:type owl:Class ;
                     rdfs:subClassOf :Selector .


###  https://dev.qaecy.com/ont#ImageFragment
:ImageFragment rdf:type owl:Class ;
               rdfs:subClassOf :Fragment ;
               rdfs:comment "This special fragment constitutes an image. It should be specified with a selector (qcy:XYWHSelector) relative to its parent fragment and the extracted image's location should be specified."@en ;
               rdfs:label "Image Fragment"@en ;
               :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#InformationObject
:InformationObject rdf:type owl:Class ;
                   owl:disjointWith :Property ,
                                    :RelationMeta ,
                                    :Selector ;
                   rdfs:comment "An information object is an abstract class that captures all information found in project files. It can either be the full content of the file (see qcy:FileContent) or a subset (see qcy:Fragment). This abstract class should not be defined explicitly, so instead use one of the more specific sub-classes."@en ;
                   rdfs:label "Information Object"@en .


###  https://dev.qaecy.com/ont#MimeCategory
:MimeCategory rdf:type owl:Class ;
              rdfs:subClassOf :Category ;
              rdfs:comment "Category derived from the mimetype of the file content" ;
              rdfs:label "Mime Category"@en ;
              :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#PageSelector
:PageSelector rdf:type owl:Class ;
              rdfs:subClassOf :Selector ;
              rdfs:comment "A page selector specifies a particular page within a document. This special selector always always connects a qcy:FileContent object with a qcy:DocumentPage. The value is the page number starting from 1."@en ;
              rdfs:label "Page Selector"@en ;
              :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#Property
:Property rdf:type owl:Class ;
          owl:disjointWith :RelationMeta ,
                           :Selector ;
          rdfs:comment "Any quantitative or qualitative property of an entity."@en ;
          rdfs:label "Property"@en ;
          :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#ProviderType
:ProviderType rdf:type owl:Class ;
              rdfs:subClassOf :Category ;
              rdfs:comment "Category that specifies the type of provider" ;
              rdfs:label "Provider Type"@en ;
              :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#RelationCategory
:RelationCategory rdf:type owl:Class ;
                  rdfs:subClassOf :Category ;
                  rdfs:comment "Category that specifies the role or type of a relationship described by a qcy:RelationMeta node. Instances are SKOS concepts that qualify top-level relationships such as qcy:involves (e.g. Author, Reviewer)." ;
                  rdfs:label "Relation Category"@en ;
                  :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#RelationMeta
:RelationMeta rdf:type owl:Class ;
              owl:disjointWith :Selector ;
              rdfs:comment "A reification node that further qualifies a relationship between two entities. It specifies the subject and object together with a qcy:RelationCategory and optionally the predicate being qualified via qcy:hasRelationMetaProperty. It can qualify any sub-property of qcy:relatedEntity (e.g. qcy:involves, qcy:contains, qcy:leadsTo). This is used when the top-level property alone is insufficient to express the full semantics (e.g. to distinguish that John is the author of drawing A but the reviewer of drawing B)." ;
              rdfs:label "Relation Meta"@en ;
              :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#Selector
:Selector rdf:type owl:Class ;
          rdfs:comment "A selector specifies where in a qcy:InformationObject a qcy:EntityMention occurs. For example from/to what index in a text paragraph, what XYWH bounding box on a page or what GlobalId in an IFC file."@en ;
          rdfs:label "Selector"@en ;
          :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#TableFragment
:TableFragment rdf:type owl:Class ;
               rdfs:subClassOf :Fragment ;
               rdfs:comment "This special fragment constitutes a table with rows and columns. It should specified with a selector (qcy:XYWHSelector) relative to its parent fragment and the qcy:tableGrid should be specified."@en ;
               rdfs:label "Table Fragment"@en ;
               :visibleForAgent "true"^^xsd:boolean .


###  https://dev.qaecy.com/ont#TextDirectiveSelector
:TextDirectiveSelector rdf:type owl:Class ;
                       rdfs:subClassOf :Selector ;
                       <http://purl.org/dc/terms/conformsTo> <https://wicg.github.io/scroll-to-text-fragment/> ;
                       rdfs:comment "A text directive selector specifies a range within a text using the syntax \\\"#:~:text=[prefix-,]start[,end][,-suffix]\\\". For example, \\\"#:~:text=example,fragment\\\" would indicate a range from the first occurrence of \\\"example\\\" to the next occurrence of \\\"fragment\\\". This is used to identify the exact location of a qcy:EntityMention within a text fragment."@en ;
                       rdfs:label "Text Directive Selector"@en ;
                       :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#TextFragment
:TextFragment rdf:type owl:Class ;
              rdfs:subClassOf :Fragment .


###  https://dev.qaecy.com/ont#TextIndexSelector
:TextIndexSelector rdf:type owl:Class ;
                   rdfs:subClassOf :Selector ;
                   rdfs:comment "A text index selector specifies a range within a text using start and end separated by a comma (\\\"start,end\\\"). For example \\\"6,11\\\" on the text string \\\"Hello World\\\" would specify the subset \\\"World\\\". This is similar to string slicing in Python and is used to identify the exact location of a qcy:EntityMention within a text fragment."@en ;
                   rdfs:label "Text Index Selector"@en ;
                   :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#TimeRangeSelector
:TimeRangeSelector rdf:type owl:Class ;
                   rdfs:subClassOf :Selector ;
                   <http://purl.org/dc/terms/conformsTo> <http://www.w3.org/TR/media-frags/> ;
                   rdfs:comment "The value specifies the time range formatted in accordance with http://www.w3.org/TR/media-frags/"@en ;
                   rdfs:label "Time Range Selector"@en ;
                   :visibleForAgent "false"^^xsd:boolean .


###  https://dev.qaecy.com/ont#XYWHSelector
:XYWHSelector rdf:type owl:Class ;
              rdfs:subClassOf :Selector .


###  https://dev.qaecy.com/ont#relatedEntity
:relatedEntity rdf:type owl:Class .


#################################################################
#    Individuals
#################################################################

###  http://schema.org/material
<http://schema.org/material> rdf:type owl:NamedIndividual .


###  http://schema.org/requiresEquipment
<http://schema.org/requiresEquipment> rdf:type owl:NamedIndividual .


###  http://schema.org/requiresMaterial
<http://schema.org/requiresMaterial> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Activity
<https://dev.qaecy.com/enum#Activity> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Building
<https://dev.qaecy.com/enum#Building> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#BuildingElement
<https://dev.qaecy.com/enum#BuildingElement> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#BuildingZone
<https://dev.qaecy.com/enum#BuildingZone> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#BuiltAsset
<https://dev.qaecy.com/enum#BuiltAsset> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#ConstructionProcessDocument
<https://dev.qaecy.com/enum#ConstructionProcessDocument> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Contract
<https://dev.qaecy.com/enum#Contract> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#ContractCondition
<https://dev.qaecy.com/enum#ContractCondition> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#ContractObligation
<https://dev.qaecy.com/enum#ContractObligation> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#ContractRole
<https://dev.qaecy.com/enum#ContractRole> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#ContractualDocument
<https://dev.qaecy.com/enum#ContractualDocument> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#CostItem
<https://dev.qaecy.com/enum#CostItem> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#CreationDate
<https://dev.qaecy.com/enum#CreationDate> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Date
<https://dev.qaecy.com/enum#Date> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#DesignDocument
<https://dev.qaecy.com/enum#DesignDocument> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#DesignMetadata
<https://dev.qaecy.com/enum#DesignMetadata> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Discipline
<https://dev.qaecy.com/enum#Discipline> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#DrawingEntity
<https://dev.qaecy.com/enum#DrawingEntity> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#DrawingOrientation
<https://dev.qaecy.com/enum#DrawingOrientation> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#DrawingScale
<https://dev.qaecy.com/enum#DrawingScale> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#DrawingSheet
<https://dev.qaecy.com/enum#DrawingSheet> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Duration
<https://dev.qaecy.com/enum#Duration> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#EmailAddress
<https://dev.qaecy.com/enum#EmailAddress> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#EmailFileContent
<https://dev.qaecy.com/enum#EmailFileContent> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Equipment
<https://dev.qaecy.com/enum#Equipment> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#FileReference
<https://dev.qaecy.com/enum#FileReference> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Location
<https://dev.qaecy.com/enum#Location> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Material
<https://dev.qaecy.com/enum#Material> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Organization
<https://dev.qaecy.com/enum#Organization> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Person
<https://dev.qaecy.com/enum#Person> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#ProjectId
<https://dev.qaecy.com/enum#ProjectId> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#ProjectPhase
<https://dev.qaecy.com/enum#ProjectPhase> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Schedule
<https://dev.qaecy.com/enum#Schedule> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Site
<https://dev.qaecy.com/enum#Site> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Space
<https://dev.qaecy.com/enum#Space> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/enum#Storey
<https://dev.qaecy.com/enum#Storey> rdf:type owl:NamedIndividual .


###  https://dev.qaecy.com/ont#IFCExpressIDSelector
:IFCExpressIDSelector rdf:type owl:NamedIndividual ;
                      :iriPattern "<objectUUID>_expressID" .


###  https://dev.qaecy.com/ont#IFCGlobalIDSelector
:IFCGlobalIDSelector rdf:type owl:NamedIndividual ;
                     :iriPattern "<objectUUID>_globalID" .


###  https://dev.qaecy.com/ont#TextFragment
:TextFragment rdf:type owl:NamedIndividual ;
              :iriPattern "<parentUUID><selectorUUID>"@en .


###  https://dev.qaecy.com/ont#XYWHSelector
:XYWHSelector rdf:type owl:NamedIndividual ;
              :iriPattern "<objectUUID><xywhString>" .


###  https://dev.qaecy.com/ont#activityHasEndDate
:activityHasEndDate rdf:type owl:NamedIndividual ;
                    :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                    :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                    :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                    :extractionPrompt "An 'Activity' has an end 'Date'." .


###  https://dev.qaecy.com/ont#activityHasStartDate
:activityHasStartDate rdf:type owl:NamedIndividual ;
                      :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                      :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                      :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                      :extractionPrompt "An 'Activity' has a starting 'Date'." .


###  https://dev.qaecy.com/ont#associatedWith
:associatedWith rdf:type owl:NamedIndividual ;
                :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                            <https://dev.qaecy.com/enum#Person> ;
                :applicableSubjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                             <https://dev.qaecy.com/enum#Person> ;
                :extractionPrompt "An entity is associated with another entity." .


###  https://dev.qaecy.com/ont#author
:author rdf:type owl:NamedIndividual ;
        :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
        :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                    <https://dev.qaecy.com/enum#Person> ;
        :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                     <https://dev.qaecy.com/enum#DrawingSheet> ;
        :extractionPrompt "A 'Person' or 'Organization' is an author of the entity." .


###  https://dev.qaecy.com/ont#buildingContainsStorey
:buildingContainsStorey rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#Storey> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#Building> ;
                        :relatedFormalProperty <https://w3id.org/bot#hasStorey> .


###  https://dev.qaecy.com/ont#contains
:contains rdf:type owl:NamedIndividual ;
          :extractionPrompt "An entity is part of a larger thing." .


###  https://dev.qaecy.com/ont#contractGovernedByJurisdiction
:contractGovernedByJurisdiction rdf:type owl:NamedIndividual ;
                                :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                                :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ;
                                :applicableSubjectCategories <https://dev.qaecy.com/enum#Contract> ;
                                :extractionPrompt "A 'Contract' is governed by a certain 'Jurisdiction'." .


###  https://dev.qaecy.com/ont#contractHasEndDate
:contractHasEndDate rdf:type owl:NamedIndividual ;
                    :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                    :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                    :applicableSubjectCategories <https://dev.qaecy.com/enum#Contract> ;
                    :extractionPrompt "A 'Contract' has a termination 'Date'." .


###  https://dev.qaecy.com/ont#contractHasSignatureDate
:contractHasSignatureDate rdf:type owl:NamedIndividual ;
                          :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                          :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                          :applicableSubjectCategories <https://dev.qaecy.com/enum#Contract> ;
                          :extractionPrompt "A 'Contract' has a 'Date' that it was signed." .


###  https://dev.qaecy.com/ont#contractHasStartDate
:contractHasStartDate rdf:type owl:NamedIndividual ;
                      :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                      :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                      :applicableSubjectCategories <https://dev.qaecy.com/enum#Contract> ;
                      :extractionPrompt "A 'Contract' has a 'Date' that it becomes effective." .


###  https://dev.qaecy.com/ont#contractInvolvesParty
:contractInvolvesParty rdf:type owl:NamedIndividual ;
                       :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                       :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                                   <https://dev.qaecy.com/enum#Person> ;
                       :applicableSubjectCategories <https://dev.qaecy.com/enum#Contract> ;
                       :extractionPrompt "A certain party ('Person' or 'Organization') is legally a part of a 'Contract'." .


###  https://dev.qaecy.com/ont#contractMentionsBuiltAsset
:contractMentionsBuiltAsset rdf:type owl:NamedIndividual ;
                            :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                            :applicableObjectCategories <https://dev.qaecy.com/enum#BuiltAsset> ;
                            :applicableSubjectCategories <https://dev.qaecy.com/enum#Contract> ;
                            :extractionPrompt "A 'Contract' involves a certain 'BuiltAsset'." .


###  https://dev.qaecy.com/ont#contractStatesObligation
:contractStatesObligation rdf:type owl:NamedIndividual ;
                          :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                          :applicableObjectCategories <https://dev.qaecy.com/enum#ContractObligation> ;
                          :applicableSubjectCategories <https://dev.qaecy.com/enum#Contract> ;
                          :extractionPrompt "A 'Contract' states a certain 'ContractObligation'." .


###  https://dev.qaecy.com/ont#drawingApprovedBy
:drawingApprovedBy rdf:type owl:NamedIndividual ;
                   :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                   :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                               <https://dev.qaecy.com/enum#Person> ;
                   :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                                <https://dev.qaecy.com/enum#DrawingSheet> ;
                   :extractionPrompt "A 'DrawingSheet' or a 'DrawingEntity' was approved by a 'Person' or an 'Organization'." .


###  https://dev.qaecy.com/ont#drawingCreatedBy
:drawingCreatedBy rdf:type owl:NamedIndividual ;
                  :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                  :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                              <https://dev.qaecy.com/enum#Person> ;
                  :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                               <https://dev.qaecy.com/enum#DrawingSheet> ;
                  :extractionPrompt "A 'DrawingSheet' or a 'DrawingEntity' was created by a 'Person' or an 'Organization'." .


###  https://dev.qaecy.com/ont#drawingHasApprovalDate
:drawingHasApprovalDate rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                                     <https://dev.qaecy.com/enum#DrawingSheet> ;
                        :extractionPrompt "A 'DrawingSheet' or a 'DrawingEntity' was approved on a 'Date'." .


###  https://dev.qaecy.com/ont#drawingHasCreationDate
:drawingHasCreationDate rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#CreationDate> ,
                                                    <https://dev.qaecy.com/enum#Date> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                                     <https://dev.qaecy.com/enum#DrawingSheet> ;
                        :extractionPrompt "A 'DrawingSheet' or a 'DrawingEntity' was created on a 'Date'." .


###  https://dev.qaecy.com/ont#drawingHasFileReference
:drawingHasFileReference rdf:type owl:NamedIndividual ;
                         :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                         :applicableObjectCategories <https://dev.qaecy.com/enum#FileReference> ;
                         :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                                      <https://dev.qaecy.com/enum#DrawingSheet> ;
                         :extractionPrompt "The 'DrawingSheet' or a 'DrawingEntity' contains a reference to a 'FileReference'." .


###  https://dev.qaecy.com/ont#drawingHasOrientation
:drawingHasOrientation rdf:type owl:NamedIndividual ;
                       :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                       :applicableObjectCategories <https://dev.qaecy.com/enum#DrawingOrientation> ;
                       :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ;
                       :extractionPrompt "A 'DrawingEntity' has this 'DrawingOrientation'." .


###  https://dev.qaecy.com/ont#drawingHasScale
:drawingHasScale rdf:type owl:NamedIndividual ;
                 :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                 :applicableObjectCategories <https://dev.qaecy.com/enum#DrawingScale> ;
                 :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                              <https://dev.qaecy.com/enum#DrawingSheet> ;
                 :extractionPrompt "A 'DrawingSheet' or a 'DrawingEntity' is designed in this 'DrawingScale'." .


###  https://dev.qaecy.com/ont#elementHasMaterial
:elementHasMaterial rdf:type owl:NamedIndividual ;
                    :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                    :applicableObjectCategories <https://dev.qaecy.com/enum#Material> ;
                    :applicableSubjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
                    :relatedFormalProperty <http://schema.org/material> ;
                    :extractionPrompt "A 'BuildingElement' is made of some 'Material'." .


###  https://dev.qaecy.com/ont#expressedBy
:expressedBy rdf:type owl:NamedIndividual ;
             :extractionPrompt "An entity is expressed by another entity." .


###  https://dev.qaecy.com/ont#hasActivityAgent
:hasActivityAgent rdf:type owl:NamedIndividual ;
                  :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                  :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                              <https://dev.qaecy.com/enum#Person> ;
                  :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                  :extractionPrompt "An 'Activity' is carried out by a 'Person' or 'Organization'." .


###  https://dev.qaecy.com/ont#hasAssociatedDiscipline
:hasAssociatedDiscipline rdf:type owl:NamedIndividual ;
                         :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                         :applicableObjectCategories <https://dev.qaecy.com/enum#Discipline> ;
                         :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                                      <https://dev.qaecy.com/enum#DrawingSheet> ;
                         :extractionPrompt "A 'DrawingSheet' or a 'DrawingEntity' is associated with a 'Discipline'." .


###  https://dev.qaecy.com/ont#hasContractRole
:hasContractRole rdf:type owl:NamedIndividual ;
                 :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                 :applicableObjectCategories <https://dev.qaecy.com/enum#ContractRole> ;
                 :applicableSubjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                              <https://dev.qaecy.com/enum#Person> ;
                 :extractionPrompt "A 'Person' or 'Organization' undertakes a specific 'ContractRole' in the context of the 'Contract'." .


###  https://dev.qaecy.com/ont#hasDesignMetadata
:hasDesignMetadata rdf:type owl:NamedIndividual ;
                   :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                   :applicableObjectCategories <https://dev.qaecy.com/enum#DesignMetadata> ;
                   :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                                <https://dev.qaecy.com/enum#DrawingSheet> ;
                   :extractionPrompt "A 'DrawingSheet' or a 'DrawingEntity' is annotated with 'DesignMetadata'." .


###  https://dev.qaecy.com/ont#hasDuration
:hasDuration rdf:type owl:NamedIndividual ;
             :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
             :applicableObjectCategories <https://dev.qaecy.com/enum#Duration> ;
             :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
             :extractionPrompt "An 'Activity' has a certain 'Duration'." .


###  https://dev.qaecy.com/ont#hasEmailAddress
:hasEmailAddress rdf:type owl:NamedIndividual ;
                 :applicableObjectCategories <https://dev.qaecy.com/enum#EmailAddress> ;
                 :applicableSubjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                              <https://dev.qaecy.com/enum#Person> ;
                 :extractionPrompt "A 'Person' or an 'Organization' has an 'EmailAddress'." .


###  https://dev.qaecy.com/ont#hasEmailReceiver
:hasEmailReceiver rdf:type owl:NamedIndividual ;
                  :applicableObjectCategories <https://dev.qaecy.com/enum#EmailAddress> ;
                  :applicableSubjectCategories <https://dev.qaecy.com/enum#EmailFileContent> .


###  https://dev.qaecy.com/ont#hasEmailSender
:hasEmailSender rdf:type owl:NamedIndividual ;
                :applicableObjectCategories <https://dev.qaecy.com/enum#EmailAddress> ;
                :applicableSubjectCategories <https://dev.qaecy.com/enum#EmailFileContent> .


###  https://dev.qaecy.com/ont#hasLocation
:hasLocation rdf:type owl:NamedIndividual ;
             :applicableObjectCategories <https://dev.qaecy.com/enum#Location> ;
             :applicableSubjectCategories <https://dev.qaecy.com/enum#BuiltAsset> ,
                                          <https://dev.qaecy.com/enum#Organization> ,
                                          <https://dev.qaecy.com/enum#Person> ,
                                          <https://dev.qaecy.com/enum#ProjectId> ;
             :extractionPrompt "A 'Person', 'Organization', 'BuiltAsset' or 'ProjectId' has a certain 'Location'." .


###  https://dev.qaecy.com/ont#hasSubElement
:hasSubElement rdf:type owl:NamedIndividual ;
               :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
               :applicableObjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
               :applicableSubjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
               :relatedFormalProperty <https://w3id.org/bot#hasSubElement> .


###  https://dev.qaecy.com/ont#ifcPSet
:ifcPSet rdf:type owl:NamedIndividual ;
         :label "IFC Property Set" .


###  https://dev.qaecy.com/ont#includesActivity
:includesActivity rdf:type owl:NamedIndividual ;
                  :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                  :applicableObjectCategories <https://dev.qaecy.com/enum#Activity> ;
                  :applicableSubjectCategories <https://dev.qaecy.com/enum#Schedule> ;
                  :extractionPrompt "A 'Schedule' includes an 'Activity'." .


###  https://dev.qaecy.com/ont#includesBuildingEntity
:includesBuildingEntity rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#BuildingElement> ,
                                                    <https://dev.qaecy.com/enum#BuildingZone> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ;
                        :extractionPrompt "The 'DrawingEntity' includes a 'BuildingZone' or 'BuildingElement'." .


###  https://dev.qaecy.com/ont#interfaceOf
:interfaceOf rdf:type owl:NamedIndividual ;
             :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
             :applicableObjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
             :applicableSubjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
             :relatedFormalProperty <https://w3id.org/bot#interfaceOf> .


###  https://dev.qaecy.com/ont#involves
:involves rdf:type owl:NamedIndividual ;
          :extractionPrompt "An entity involves another entity." .


###  https://dev.qaecy.com/ont#involvesBuildingEntity
:involvesBuildingEntity rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#BuildingElement> ,
                                                    <https://dev.qaecy.com/enum#BuildingZone> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                        :extractionPrompt "An 'Activity' involves a certain 'BuildingZone' or 'BuildingElement'." .


###  https://dev.qaecy.com/ont#involvesCost
:involvesCost rdf:type owl:NamedIndividual ;
              :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
              :applicableObjectCategories <https://dev.qaecy.com/enum#CostItem> ;
              :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
              :extractionPrompt "An 'Activity' involves a certain 'Cost Item'." .


###  https://dev.qaecy.com/ont#involvesDiscipline
:involvesDiscipline rdf:type owl:NamedIndividual ;
                    :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                    :applicableObjectCategories <https://dev.qaecy.com/enum#Discipline> ;
                    :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                    :extractionPrompt "An 'Activity' involves a certain 'Discipline'." .


###  https://dev.qaecy.com/ont#language
:language rdf:type owl:NamedIndividual ;
          :regex "^[a-z]{2}$" .


###  https://dev.qaecy.com/ont#leadsTo
:leadsTo rdf:type owl:NamedIndividual ;
         :extractionPrompt "An entity leads to another entity." .


###  https://dev.qaecy.com/ont#md5Hash
:md5Hash rdf:type owl:NamedIndividual ;
         :regex "^[a-f0-9]{32}$" .


###  https://dev.qaecy.com/ont#md5HashBase64
:md5HashBase64 rdf:type owl:NamedIndividual ;
               :regex "^[a-zA-Z0-9+/=]{24}$" .


###  https://dev.qaecy.com/ont#mime
:mime rdf:type owl:NamedIndividual ;
      :regex "^[a-z]+/[a-z0-9-]+$" .


###  https://dev.qaecy.com/ont#obligationHasCondition
:obligationHasCondition rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#ContractCondition> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#ContractObligation> ;
                        :extractionPrompt "A 'ContractObligation' involves a certain 'ContractCondition'." .


###  https://dev.qaecy.com/ont#obligationHasEndDate
:obligationHasEndDate rdf:type owl:NamedIndividual ;
                      :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                      :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                      :applicableSubjectCategories <https://dev.qaecy.com/enum#ContractObligation> ;
                      :extractionPrompt "A 'ContractObligation' has a 'Date' that it expires." .


###  https://dev.qaecy.com/ont#obligationHasResponsibleParty
:obligationHasResponsibleParty rdf:type owl:NamedIndividual ;
                               :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                               :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                                           <https://dev.qaecy.com/enum#Person> ;
                               :applicableSubjectCategories <https://dev.qaecy.com/enum#ContractObligation> ;
                               :extractionPrompt "A 'ContractObligation' states a 'Person' or 'Organization' as a responible party." .


###  https://dev.qaecy.com/ont#obligationHasStartDate
:obligationHasStartDate rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#Date> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#ContractObligation> ;
                        :extractionPrompt "A 'ContractObligation' has a 'Date' that it becomes effective." .


###  https://dev.qaecy.com/ont#precedesActivity
:precedesActivity rdf:type owl:NamedIndividual ;
                  :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                  :applicableObjectCategories <https://dev.qaecy.com/enum#Activity> ;
                  :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                  :extractionPrompt "An 'Activity' precedes another 'Activity' (usually by forming a dependency)." .


###  https://dev.qaecy.com/ont#projectHasPhase
:projectHasPhase rdf:type owl:NamedIndividual ;
                 :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ,
                                              <https://dev.qaecy.com/enum#DesignDocument> ;
                 :applicableObjectCategories <https://dev.qaecy.com/enum#ProjectPhase> ;
                 :applicableSubjectCategories <https://dev.qaecy.com/enum#ProjectId> ;
                 :extractionPrompt "A 'ProjectId' has a 'ProjectPhase'." .


###  https://dev.qaecy.com/ont#projectHasSchedule
:projectHasSchedule rdf:type owl:NamedIndividual ;
                    :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                    :applicableObjectCategories <https://dev.qaecy.com/enum#Schedule> ;
                    :applicableSubjectCategories <https://dev.qaecy.com/enum#ProjectId> ;
                    :extractionPrompt "A 'ProjectId' has a 'Schedule'." .


###  https://dev.qaecy.com/ont#requiresEquipment
:requiresEquipment rdf:type owl:NamedIndividual ;
                   :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                   :applicableObjectCategories <https://dev.qaecy.com/enum#Equipment> ;
                   :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                   :relatedFormalProperty <http://schema.org/requiresEquipment> ;
                   :extractionPrompt "An 'Activity' requires some 'Equipment'." .


###  https://dev.qaecy.com/ont#requiresMaterial
:requiresMaterial rdf:type owl:NamedIndividual ;
                  :applicableContentCategories <https://dev.qaecy.com/enum#ConstructionProcessDocument> ;
                  :applicableObjectCategories <https://dev.qaecy.com/enum#Material> ;
                  :applicableSubjectCategories <https://dev.qaecy.com/enum#Activity> ;
                  :relatedFormalProperty <http://schema.org/requiresMaterial> ;
                  :extractionPrompt "An 'Activity' requires some 'Material'." .


###  https://dev.qaecy.com/ont#reviewer
:reviewer rdf:type owl:NamedIndividual ;
          :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
          :applicableObjectCategories <https://dev.qaecy.com/enum#Organization> ,
                                      <https://dev.qaecy.com/enum#Person> ;
          :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ,
                                       <https://dev.qaecy.com/enum#DrawingSheet> ;
          :extractionPrompt "A 'Person' or 'Organization' is a reviewer of the entity." .


###  https://dev.qaecy.com/ont#roleInContract
:roleInContract rdf:type owl:NamedIndividual ;
                :applicableContentCategories <https://dev.qaecy.com/enum#ContractualDocument> ;
                :applicableObjectCategories <https://dev.qaecy.com/enum#Contract> ;
                :applicableSubjectCategories <https://dev.qaecy.com/enum#ContractRole> ;
                :extractionPrompt "A 'ContractRole' (undertaken by a 'Person' or 'Organization') is involved in the 'Contract'." .


###  https://dev.qaecy.com/ont#sheetContainsDrawing
:sheetContainsDrawing rdf:type owl:NamedIndividual ;
                      :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                      :applicableObjectCategories <https://dev.qaecy.com/enum#DrawingEntity> ;
                      :applicableSubjectCategories <https://dev.qaecy.com/enum#DrawingSheet> ;
                      :extractionPrompt "A 'DrawingSheet' contains a 'DrawingEntity'." .


###  https://dev.qaecy.com/ont#siteContainsBuilding
:siteContainsBuilding rdf:type owl:NamedIndividual ;
                      :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                      :applicableObjectCategories <https://dev.qaecy.com/enum#Building> ;
                      :applicableSubjectCategories <https://dev.qaecy.com/enum#Site> ;
                      :relatedFormalProperty <https://w3id.org/bot#hasBuilding> .


###  https://dev.qaecy.com/ont#suffix
:suffix rdf:type owl:NamedIndividual ;
        :regex "^\\.[a-z0-9]+$" .


###  https://dev.qaecy.com/ont#zoneContainsElement
:zoneContainsElement rdf:type owl:NamedIndividual ;
                     :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                     :applicableObjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
                     :applicableSubjectCategories <https://dev.qaecy.com/enum#Building> ,
                                                  <https://dev.qaecy.com/enum#Site> ,
                                                  <https://dev.qaecy.com/enum#Space> ,
                                                  <https://dev.qaecy.com/enum#Storey> ;
                     :relatedFormalProperty <https://w3id.org/bot#containsElement> .


###  https://dev.qaecy.com/ont#zoneContainsSpace
:zoneContainsSpace rdf:type owl:NamedIndividual ;
                   :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                   :applicableObjectCategories <https://dev.qaecy.com/enum#Space> ;
                   :applicableSubjectCategories <https://dev.qaecy.com/enum#Building> ,
                                                <https://dev.qaecy.com/enum#Site> ,
                                                <https://dev.qaecy.com/enum#Storey> ;
                   :relatedFormalProperty <https://w3id.org/bot#hasSpace> .


###  https://dev.qaecy.com/ont#zoneHasAdjacentElement
:zoneHasAdjacentElement rdf:type owl:NamedIndividual ;
                        :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                        :applicableObjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
                        :applicableSubjectCategories <https://dev.qaecy.com/enum#Building> ,
                                                     <https://dev.qaecy.com/enum#Space> ,
                                                     <https://dev.qaecy.com/enum#Storey> ;
                        :relatedFormalProperty <https://w3id.org/bot#adjacentElement> .


###  https://dev.qaecy.com/ont#zoneHasElement
:zoneHasElement rdf:type owl:NamedIndividual ;
                :applicableContentCategories <https://dev.qaecy.com/enum#DesignDocument> ;
                :applicableObjectCategories <https://dev.qaecy.com/enum#BuildingElement> ;
                :applicableSubjectCategories <https://dev.qaecy.com/enum#Building> ,
                                             <https://dev.qaecy.com/enum#Site> ,
                                             <https://dev.qaecy.com/enum#Space> ,
                                             <https://dev.qaecy.com/enum#Storey> ;
                :relatedFormalProperty <https://w3id.org/bot#hasElement> .


###  https://w3id.org/bot#adjacentElement
<https://w3id.org/bot#adjacentElement> rdf:type owl:NamedIndividual .


###  https://w3id.org/bot#containsElement
<https://w3id.org/bot#containsElement> rdf:type owl:NamedIndividual .


###  https://w3id.org/bot#hasBuilding
<https://w3id.org/bot#hasBuilding> rdf:type owl:NamedIndividual .


###  https://w3id.org/bot#hasElement
<https://w3id.org/bot#hasElement> rdf:type owl:NamedIndividual .


###  https://w3id.org/bot#hasSpace
<https://w3id.org/bot#hasSpace> rdf:type owl:NamedIndividual .


###  https://w3id.org/bot#hasStorey
<https://w3id.org/bot#hasStorey> rdf:type owl:NamedIndividual .


###  https://w3id.org/bot#hasSubElement
<https://w3id.org/bot#hasSubElement> rdf:type owl:NamedIndividual .


###  https://w3id.org/bot#interfaceOf
<https://w3id.org/bot#interfaceOf> rdf:type owl:NamedIndividual .


#################################################################
#    Annotations
#################################################################

:IFCExpressIDSelector rdfs:comment "The value of an IFC Express ID Selector specifies the ExpressId of the object within the IFC document. Beware that this ID is only unique in context of that single serailization of the model and is likely to change in future versions of the model."@en ;
                      rdfs:label "IFC Express ID Selector"@en ;
                      :visibleForAgent "false"^^xsd:boolean .


:IFCGlobalIDSelector rdfs:comment "The value of an IFC Global ID Selector specifies the GlobalId of the object within the IFC document."@en ;
                     rdfs:label "IFC Global ID Selector"@en ;
                     :visibleForAgent "false"^^xsd:boolean .


:TextFragment rdfs:comment "This special fragment constitutes a text extraction. It can be the full text of a page a paragraph, footer, header or the like. Except for the former case, it should specified with a selector (qcy:XYWHSelector) to describe it's location relative to its parent fragment. It should also specify a qcy:textRaw and optionally a qcy:textFormatted."@en ;
              rdfs:label "Text Fragment"@en ;
              :visibleForAgent "true"^^xsd:boolean .


:XYWHSelector <http://purl.org/dc/terms/conformsTo> <http://www.w3.org/TR/media-frags/> ;
              rdfs:comment "The value specifies the bounding box formatted as an xywh box (http://www.w3.org/TR/media-frags/) either in absolute pixels or relative to the information object. The XYWH Selector is used to identify the location of a qcy:EntityMention or qcy:InformationObject within a visual document."@en ;
              rdfs:label "XYWH Selector"@en ;
              :visibleForAgent "false"^^xsd:boolean .


:activityHasEndDate rdfs:comment "Relationship that specifies the date that an activity ends." ;
                    rdfs:label "activity has end date"@en ;
                    :visibleForAgent "true"^^xsd:boolean .


:activityHasStartDate rdfs:comment "Relationship that specifies the date that an activity begins." ;
                      rdfs:label "activity has start date"@en ;
                      :visibleForAgent "true"^^xsd:boolean .


:associatedWith rdfs:comment "Relationship that describes strong or loose associations between entities." ;
                rdfs:label "associated with"@en ;
                :visibleForAgent "true"^^xsd:boolean .


:author rdfs:comment "Relationship that specifies that a person or organization is an author of the entity." ;
        rdfs:label "author"@en ;
        :visibleForAgent "true"^^xsd:boolean .


:buildingContainsStorey rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that indicates that a building contains a floor." ;
                        rdfs:label "building contains storey"@en ;
                        owl:deprecated "true"^^xsd:boolean ;
                        :visibleForAgent "true"^^xsd:boolean .


:contains rdfs:comment "Top level relationship that indicates that an entity is part of a larger thing." ;
          rdfs:label "contains"@en ;
          :visibleForAgent "true"^^xsd:boolean .


:contractGovernedByJurisdiction rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. A jurisdiction that governs the contract." ;
                                rdfs:label "contract governed by jurisdiction"@en ;
                                owl:deprecated "true"^^xsd:boolean ;
                                :visibleForAgent "true"^^xsd:boolean .


:contractHasEndDate rdfs:comment "Relationship that specifies the date that a contract is terminated." ;
                    rdfs:label "contract has end date"@en ;
                    :visibleForAgent "true"^^xsd:boolean .


:contractHasSignatureDate rdfs:comment "Relationship that specifies the signature date of a contract." ;
                          rdfs:label "contract has signature date"@en ;
                          :visibleForAgent "true"^^xsd:boolean .


:contractHasStartDate rdfs:comment "Relationship that specifies the date that a contract becomes effective." ;
                      rdfs:label "contract has start date"@en ;
                      :visibleForAgent "true"^^xsd:boolean .


:contractInvolvesParty rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. A person or organization is a part of the contract agreement." ;
                       rdfs:label "contract involves party"@en ;
                       owl:deprecated "true"^^xsd:boolean ;
                       :visibleForAgent "true"^^xsd:boolean .


:contractMentionsBuiltAsset rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. A built asset is a part of the contract agreement." ;
                            rdfs:label "contract mentions built asset"@en ;
                            owl:deprecated "true"^^xsd:boolean ;
                            :visibleForAgent "true"^^xsd:boolean .


:contractStatesObligation rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. The contract involves a certain obligation." ;
                          rdfs:label "contract states obligation"@en ;
                          :visibleForAgent "true"^^xsd:boolean .


:drawingApprovedBy rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:reviewer instead. Relationship that specifies the entity that approved a drawing entity or drawing sheet." ;
                   rdfs:label "drawing approved by"@en ;
                   owl:deprecated "true"^^xsd:boolean ;
                   :visibleForAgent "true"^^xsd:boolean .


:drawingCreatedBy rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:author instead. Relationship that specifies the creator of a drawing entity or drawing sheet." ;
                  rdfs:label "drawing created by"@en ;
                  owl:deprecated "true"^^xsd:boolean ;
                  :visibleForAgent "true"^^xsd:boolean .


:drawingHasApprovalDate rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship that specifies the date that a drawing was approved." ;
                        rdfs:label "drawing has approval date"@en ;
                        owl:deprecated "true"^^xsd:boolean ;
                        :visibleForAgent "true"^^xsd:boolean .


:drawingHasCreationDate rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship that specifies the date that a drawing was created." ;
                        rdfs:label "drawing has creation date"@en ;
                        owl:deprecated "true"^^xsd:boolean ;
                        :visibleForAgent "true"^^xsd:boolean .


:drawingHasFileReference rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:associatedWith instead. Relationship that states that the drawing contains a reference to a file." ;
                         rdfs:label "drawing has file references"@en ;
                         owl:deprecated "true"^^xsd:boolean ;
                         :visibleForAgent "true"^^xsd:boolean .


:drawingHasOrientation rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship that specifies the orientation of a drawing entity." ;
                       rdfs:label "drawing has orientation"@en ;
                       owl:deprecated "true"^^xsd:boolean ;
                       :visibleForAgent "true"^^xsd:boolean .


:drawingHasScale rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship that specifies the scale of a drawing entity or a drawing sheet." ;
                 rdfs:label "drawing has scale"@en ;
                 owl:deprecated "true"^^xsd:boolean ;
                 :visibleForAgent "true"^^xsd:boolean .


:elementHasMaterial rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship between a building element and a material." ;
                    rdfs:label "element has material"@en ;
                    owl:deprecated "true"^^xsd:boolean ;
                    :visibleForAgent "true"^^xsd:boolean .


:expressedBy rdfs:comment "Top level relationship that expresses a characteristic or quality of an entity (eg. a drawing is expressed by its scale, orientation etc.)." ;
             rdfs:label "expressed by"@en ;
             :visibleForAgent "true"^^xsd:boolean .


:hasActivityAgent rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. Relationship between an agent (Person, Organization) and an Activity." ;
                  rdfs:label "has activity agent"@en ;
                  owl:deprecated "true"^^xsd:boolean ;
                  :visibleForAgent "true"^^xsd:boolean .


:hasAssociatedDiscipline rdfs:comment "Relationship that specifies the discipline associated with a drawing entity or a drawing sheet." ;
                         rdfs:label "has associated discipline"@en ;
                         :visibleForAgent "true"^^xsd:boolean .


:hasContractRole rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:associatedWith instead. Relationship stating that a person or organization has a role in the contract." ;
                 rdfs:label "has contract role"@en ;
                 owl:deprecated "true"^^xsd:boolean ;
                 :visibleForAgent "true"^^xsd:boolean .


:hasDesignMetadata rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship that links design metadata to a drawing sheet or drawing entity." ;
                   rdfs:label "has design metadata"@en ;
                   owl:deprecated "true"^^xsd:boolean ;
                   :visibleForAgent "true"^^xsd:boolean .


:hasDuration rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship that specifies the duration of an activity." ;
             rdfs:label "has duration"@en ;
             owl:deprecated "true"^^xsd:boolean ;
             :visibleForAgent "true"^^xsd:boolean .


:hasEmailAddress rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:associatedWith instead. Relationship that states that an email address belongs to a person or an organization." ;
                 rdfs:label "has email address"@en ;
                 owl:deprecated "true"^^xsd:boolean ;
                 :visibleForAgent "true"^^xsd:boolean .


:hasEmailReceiver rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:associatedWith instead. Relationship that specifies the receiving email address of an email file." ;
                  rdfs:label "has email receiver"@en ;
                  owl:deprecated "true"^^xsd:boolean ;
                  :visibleForAgent "true"^^xsd:boolean .


:hasEmailSender rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:associatedWith instead. Relationship that specifies the sending email address of an email file." ;
                rdfs:label "has email sender"@en ;
                owl:deprecated "true"^^xsd:boolean ;
                :visibleForAgent "true"^^xsd:boolean .


:hasLocation rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:associatedWith instead. Relationship that states that an entity has a physical location." ;
             rdfs:label "has location"@en ;
             owl:deprecated "true"^^xsd:boolean ;
             :visibleForAgent "true"^^xsd:boolean .


:hasSubElement rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship between an element and a sub-element. For example a fan in an air handling unit." ;
               rdfs:label "has sub-element"@en ;
               owl:deprecated "true"^^xsd:boolean ;
               :visibleForAgent "true"^^xsd:boolean .


:ifcPSet rdfs:comment "The name of the Property Set in the IFC file. Official PSets are considered higher quality and SHACL shapes can be applied to evaluate the BIM model quality."@en ;
         :visibleForAgent "false"^^xsd:boolean .


:includesActivity rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that specifies that an activity is part of a schedule / project-plan." ;
                  rdfs:label "includes activity"@en ;
                  owl:deprecated "true"^^xsd:boolean ;
                  :visibleForAgent "true"^^xsd:boolean .


:includesBuildingEntity rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that states that the drawing entity includes a building zone or a building element." ;
                        rdfs:label "includes building entity"@en ;
                        owl:deprecated "true"^^xsd:boolean ;
                        :visibleForAgent "true"^^xsd:boolean .


:interfaceOf rdfs:comment "Relationship between an interface and the entities (minimum 2) it is an interface of." ;
             rdfs:label "interface of"@en ;
             :visibleForAgent "true"^^xsd:boolean .


:involves rdfs:comment "Top level relationship that indicates that an entity involves another entity. It expresses a participation or engagement in some activity or process." ;
          rdfs:label "involves"@en ;
          :visibleForAgent "true"^^xsd:boolean .


:involvesBuildingEntity rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. Relationship between an activity and a building entity (zone or element)." ;
                        rdfs:label "involves building entity"@en ;
                        owl:deprecated "true"^^xsd:boolean ;
                        :visibleForAgent "true"^^xsd:boolean .


:involvesCost rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:expressedBy instead. Relationship between an activity and a cost." ;
              rdfs:label "involves cost"@en ;
              owl:deprecated "true"^^xsd:boolean ;
              :visibleForAgent "true"^^xsd:boolean .


:involvesDiscipline rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. Relationship between an activity and a discipline." ;
                    rdfs:label "involves discipline"@en ;
                    owl:deprecated "true"^^xsd:boolean ;
                    :visibleForAgent "true"^^xsd:boolean .


:language rdfs:comment "ISO 639 two letter language code"@en ;
          rdfs:label "language"@en ;
          :visibleForAgent "true"^^xsd:boolean .


:leadsTo rdfs:comment "Top level relationship that indicates that an entity leads to another entity. It expresses a sequential or causal dependency between two entities." ;
         rdfs:label "leads to"@en ;
         :visibleForAgent "true"^^xsd:boolean .


:md5Hash rdfs:comment "The 32 character MD5 hash in lower case hexadecimals (empty string = d41d8cd98f00b204e9800998ecf8427e)"@en ;
         rdfs:label "MD5 hash"@en ;
         :visibleForAgent "false"^^xsd:boolean .


:md5HashBase64 rdfs:comment "The 24 character MD5 hash in Base64 encoding (empty string = 1B2M2Y8AsgTpgAmY7PhCfg==)"@en ;
               rdfs:label "MD5 hash Base 64"@en ;
               :visibleForAgent "false"^^xsd:boolean .


:mime <http://purl.org/dc/terms/conformsTo> <https://www.iana.org/assignments/media-types/media-types.xhtml> ;
      rdfs:comment "The mimetype of the file content preferably in accordance with IANA but also commonly used mimetypes in the AEC industry are accepted (eg. application/x-step for an IFC in STEP format)"@en ;
      rdfs:label "mime"@en ;
      :visibleForAgent "true"^^xsd:boolean .


:obligationHasCondition rdfs:comment "A condition associated with a contract obligation." ;
                        rdfs:label "contract obligation has contract condition"@en ;
                        :visibleForAgent "true"^^xsd:boolean .


:obligationHasEndDate rdfs:comment "The end date of a contract obligation." ;
                      rdfs:label "obligation has end date"@en ;
                      :visibleForAgent "true"^^xsd:boolean .


:obligationHasResponsibleParty rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. The obligation is undertaken by a certain party." ;
                               rdfs:label "obligation has responsible party"@en ;
                               owl:deprecated "true"^^xsd:boolean ;
                               :visibleForAgent "true"^^xsd:boolean .


:obligationHasStartDate rdfs:comment "The start date of a contract obligation." ;
                        rdfs:label "obligation has start date"@en ;
                        :visibleForAgent "true"^^xsd:boolean .


:precedesActivity rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:leadsTo instead. Relationship between an activity and a preceding activity." ;
                  rdfs:label "precedes activity"@en ;
                  owl:deprecated "true"^^xsd:boolean ;
                  :visibleForAgent "true"^^xsd:boolean .


:projectHasPhase rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that states that the construction project has a project phase." ;
                 rdfs:label "project has phase"@en ;
                 owl:deprecated "true"^^xsd:boolean ;
                 :visibleForAgent "true"^^xsd:boolean .


:projectHasSchedule rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that states that the construction project has a project plan assigned to it." ;
                    rdfs:label "project has schedule"@en ;
                    owl:deprecated "true"^^xsd:boolean ;
                    :visibleForAgent "true"^^xsd:boolean .


:relatedEntity rdfs:comment "Relationship between either a pair of qcy:EntityMention or qcy:CanonicalEntity occurrences (never between a qcy:EntityMention and a qcy:CanonicalEntity!). This is a general property that should not be used explicitly. Instead, use one of the more specific sub-properties." ;
               rdfs:label "related entity"@en ;
               :visibleForAgent "true"^^xsd:boolean .


:remoteProviderType rdfs:comment "The type of remote provider (ex: gcp, azure, aws, local)"@en ,
                                 "Relationship that shows in what type of provider is a file stored." ;
                    rdfs:label "remote provider type"@en ;
                    :visibleForAgent "false"^^xsd:boolean .


:requiresEquipment rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. Relationship between some activity and required equipment." ;
                   rdfs:label "requires equipment"@en ;
                   owl:deprecated "true"^^xsd:boolean ;
                   :visibleForAgent "true"^^xsd:boolean .


:requiresMaterial rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:involves instead. Relationship between some activity and required material." ;
                  rdfs:label "requires material"@en ;
                  owl:deprecated "true"^^xsd:boolean ;
                  :visibleForAgent "true"^^xsd:boolean .


:reviewer rdfs:comment "Relationship that specifies that a person or organization is a reviewer of the entity." ;
          rdfs:label "reviewer"@en ;
          :visibleForAgent "true"^^xsd:boolean .


:roleInContract rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:associatedWith instead. Relationship stating that a certain contract role is involved in the contract." ;
                rdfs:label "role in contract"@en ;
                owl:deprecated "true"^^xsd:boolean ;
                :visibleForAgent "true"^^xsd:boolean .


:sheetContainsDrawing rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. A drawing sheet contains a drawing entity." ;
                      rdfs:label "drawing sheet contains drawing entity"@en ;
                      owl:deprecated "true"^^xsd:boolean ;
                      :visibleForAgent "true"^^xsd:boolean .


:siteContainsBuilding rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that indicates that a building belongs to a site." ;
                      rdfs:label "site contains building"@en ;
                      owl:deprecated "true"^^xsd:boolean ;
                      :visibleForAgent "true"^^xsd:boolean .


:suffix rdfs:comment "The file suffix including dot (ex: \".pdf\")"@en ;
        rdfs:label "file suffix"@en ;
        :visibleForAgent "true"^^xsd:boolean .


:zoneContainsElement rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that indicates that a building zone contains a building element." ;
                     rdfs:label "building zone contains building element"@en ;
                     owl:deprecated "true"^^xsd:boolean ;
                     :visibleForAgent "true"^^xsd:boolean .


:zoneContainsSpace rdfs:comment "DEPRECATED: This property is outdated. Please use qcy:contains instead. Relationship that indicates that a building zone contains a space." ;
                   rdfs:label "zone contains space"@en ;
                   owl:deprecated "true"^^xsd:boolean ;
                   :visibleForAgent "true"^^xsd:boolean .


:zoneHasAdjacentElement rdfs:comment "Relationship between a zone/element and an adjacent element." ;
                        rdfs:label "zone has adjacent element"@en ;
                        :visibleForAgent "true"^^xsd:boolean .


:zoneHasElement rdfs:comment "Relationship between a zone and a related element." ;
                rdfs:label "zone has element"@en ;
                :visibleForAgent "false"^^xsd:boolean .


###  Generated by the OWL API (version 5.1.18) https://github.com/owlcs/owlapi/
