The BIM Collaboration Format (BCF) links issues to building models without storing the models. bcfOWL represents BCF in RDF. It does not translate the BCF schema one to one. It composes BCF from established vocabularies and keeps only the concepts that are specific to BCF coordination.
BCF is an open standard of buildingSMART. It has two technical parts: the BCF-XML file format, which exchanges issues as files, and the BCF API, a REST interface for issue servers. See also the BCF overview at buildingSMART. bcfOWL covers the data model that both parts share.
A photograph, a camera pose, or a damage record can therefore exist in the graph without a BCF context. A BCF Topic or Viewpoint can refer to it later. If the BCF statements are removed from the graph, the referenced resources stay describable with the generic vocabularies alone.
The structural rules of BCF (for example, that a Topic has exactly one title) are not OWL axioms in this
ontology. They are in a separate SHACL profile, bcfOWL-shapes, which checks a dataset under the
closed-world assumption.
Version 1.0.0 uses the namespace https://w3id.org/bcfOWL#. The last published version, 0.7.1
(2022-03-16), uses the namespace http://lbd.arch.rwth-aachen.de/bcfOWL#. Its documentation is
at lbd.arch.rwth-aachen.de/bcfOWL_V1
(DOI 10.5281/zenodo.4710742). Data that uses the 0.7.1
terms needs a migration, because later versions removed and renamed terms. The changes and a migration table are in the
change log.
| bcfOWL | <https://w3id.org/bcfOWL#> |
| sosa | <http://www.w3.org/ns/sosa/> |
| spot | <https://w3id.org/spot#> |
| bot | <https://w3id.org/bot#> |
| prov | <http://www.w3.org/ns/prov#> |
| dcat | <http://www.w3.org/ns/dcat#> |
| skos | <http://www.w3.org/2004/02/skos/core#> |
| dcterms | <http://purl.org/dc/terms/> |
| owl | <http://www.w3.org/2002/07/owl#> |
| rdf | <http://www.w3.org/1999/02/22-rdf-syntax-ns#> |
| rdfs | <http://www.w3.org/2000/01/rdf-schema#> |
| xsd | <http://www.w3.org/2001/XMLSchema#> |
| vann | <http://purl.org/vocab/vann/> |
| schema | <http://schema.org/> |
bcfOWL follows one delegation rule. A BCF concept is delegated to an existing vocabulary if an established vocabulary covers its meaning without a shift. It stays in bcfOWL if no such vocabulary exists, or if BCF adds conditions that the other vocabulary does not express.
bcfOWL reuses the following vocabularies. It uses their terms by IRI and does not import them.
dcterms:):
identity and creationprov:): agents and change historysosa:): cameras and observationsspot:) and GOM
(gom:): spaces, poses, and transformation matricesdcat:): snapshot images and bitmapsskos:): extension values and schemesbot:): building elementsThe concepts are delegated as follows.
dcterms:identifier for BCF GUIDs,
dcterms:creator and dcterms:created for creation. Authors, assignees, and project users are
prov:Agents, so a person, an organization, or a software agent can take these roles.sosa:Sensor, and a
capture or a model view is a sosa:Observation. bcfOWL:hasPerspectiveCamera and
bcfOWL:hasOrthogonalCamera point to the observation. The property tells the projection mode.spot:PointSpace that represents the observation
(spot:represents). It is placed in the building with SPOT appearances and a GOM transformation matrix.dcat:Dataset with a distribution, and also the sosa:hasResult of the
observation. bcfOWL:hasSnapshot refers to the same resource.bot:Element with bcfOWL:hasElement.skos:Concepts in one skos:ConceptScheme per category. A
bcfOWL:ExtensionSchema refers to these schemes.
The core contains the coordination concepts bcfOWL:Project, bcfOWL:Topic,
bcfOWL:Comment, and bcfOWL:Viewpoint, and the visual state of a Viewpoint:
selection, visibility and exceptions, components, coloring, lines, clipping planes, and bitmaps. The visual
state contains instructions for a viewer, not statements about the building. bcfOWL therefore represents it
directly, without more semantics.
bcfOWL contains no cardinality restrictions. Under the open-world assumption, a missing title does not violate
owl:minCardinality 1, and two status values are inferred to be the same individual. The BCF
structure is a format requirement, not a statement about the world. It is therefore checked with the SHACL
profile bcfOWL-shapes.
These Turtle files use the namespace https://example.org/bcfowl-example#. They build on each other.
IRI: https://w3id.org/bcfOWL#Bitmap
IRI: https://w3id.org/bcfOWL#ClippingPlane
IRI: https://w3id.org/bcfOWL#Coloring
IRI: https://w3id.org/bcfOWL#Comment
IRI: https://w3id.org/bcfOWL#Component
IRI: https://w3id.org/bcfOWL#ExtensionSchema
IRI: https://w3id.org/bcfOWL#Line
IRI: https://w3id.org/bcfOWL#OriginatingSystem
IRI: https://w3id.org/bcfOWL#Priority
IRI: https://w3id.org/bcfOWL#Project
IRI: https://w3id.org/bcfOWL#Stage
IRI: https://w3id.org/bcfOWL#Topic
IRI: https://w3id.org/bcfOWL#TopicStatus
IRI: https://w3id.org/bcfOWL#TopicType
IRI: https://w3id.org/bcfOWL#Viewpoint
IRI: https://w3id.org/bcfOWL#hasAssignedTo
IRI: https://w3id.org/bcfOWL#hasBitmap
IRI: https://w3id.org/bcfOWL#hasBitmapImage
IRI: https://w3id.org/bcfOWL#hasClippingPlane
IRI: https://w3id.org/bcfOWL#hasColoring
IRI: https://w3id.org/bcfOWL#hasComponent
IRI: https://w3id.org/bcfOWL#hasElement
IRI: https://w3id.org/bcfOWL#hasExtensionSchema
IRI: https://w3id.org/bcfOWL#hasLabels
IRI: https://w3id.org/bcfOWL#hasLabelScheme
IRI: https://w3id.org/bcfOWL#hasLine
IRI: https://w3id.org/bcfOWL#hasOriginatingSystem
IRI: https://w3id.org/bcfOWL#hasOrthogonalCamera
IRI: https://w3id.org/bcfOWL#hasPerspectiveCamera
IRI: https://w3id.org/bcfOWL#hasPriority
IRI: https://w3id.org/bcfOWL#hasPriorityScheme
IRI: https://w3id.org/bcfOWL#hasProject
IRI: https://w3id.org/bcfOWL#hasReferenceLink
IRI: https://w3id.org/bcfOWL#hasSelectedComponent
IRI: https://w3id.org/bcfOWL#hasSnapshot
IRI: https://w3id.org/bcfOWL#hasStage
IRI: https://w3id.org/bcfOWL#hasStageScheme
IRI: https://w3id.org/bcfOWL#hasStatusScheme
IRI: https://w3id.org/bcfOWL#hasTopic
IRI: https://w3id.org/bcfOWL#hasTopicStatus
IRI: https://w3id.org/bcfOWL#hasTopicType
IRI: https://w3id.org/bcfOWL#hasTypeScheme
IRI: https://w3id.org/bcfOWL#hasUser
IRI: https://w3id.org/bcfOWL#hasViewpoint
IRI: https://w3id.org/bcfOWL#hasVisibilityException
IRI: https://w3id.org/bcfOWL#modifiedBy
IRI: https://w3id.org/bcfOWL#referenceSpace
IRI: https://w3id.org/bcfOWL#hasAspectRatio
IRI: https://w3id.org/bcfOWL#hasAuthoringToolId
IRI: https://w3id.org/bcfOWL#hasColor
IRI: https://w3id.org/bcfOWL#hasCommentText
IRI: https://w3id.org/bcfOWL#hasDefaultVisibility
IRI: https://w3id.org/bcfOWL#hasDirection
IRI: https://w3id.org/bcfOWL#hasDueDate
IRI: https://w3id.org/bcfOWL#hasEndPoint
IRI: https://w3id.org/bcfOWL#hasFieldOfView
IRI: https://w3id.org/bcfOWL#hasHeight
IRI: https://w3id.org/bcfOWL#hasIfcGuid
IRI: https://w3id.org/bcfOWL#hasIndex
IRI: https://w3id.org/bcfOWL#hasLocation
IRI: https://w3id.org/bcfOWL#hasNormal
IRI: https://w3id.org/bcfOWL#hasOrthogonalCamera
IRI: https://w3id.org/bcfOWL#hasPerspectiveCamera
IRI: https://w3id.org/bcfOWL#hasStartPoint
IRI: https://w3id.org/bcfOWL#hasUpVector
IRI: https://w3id.org/bcfOWL#hasViewToWorldScale
IRI: https://w3id.org/bcfOWL#openingsVisible
IRI: https://w3id.org/bcfOWL#spaceBoundariesVisible
IRI: https://w3id.org/bcfOWL#spacesVisible
bcfOWL was developed at Design Computation, RWTH Aachen University.
The previous versions of bcfOWL were part of research that was funded by the EU through the H2020 project BIM4REN.
The authors would like to thank Silvio Peroni for developing LODE, a Live OWL Documentation Environment, which is used for representing the Cross Referencing Section of this document and Daniel Garijo for developing Widoco, the program used to create the template used in this documentation.