Beruflich Dokumente
Kultur Dokumente
GUID Globally Unique Identifier: http://en.wikipedia.org/wiki/Globally_Unique_Identifier IfcGuid Globally Unique ID in the IFC format. This format is
used only when referring to components in IFC files.
Topic One topic, such as a problem in the design, described in BCF file
Background
This document describes the BCF format that is used to exchange topics, such as, issues, scenes, etc. between different BIM software.
project.bcfp (optional)
o An XML file referencing the extension.xsd to a project. The schema for this file is project.xsd.
bcf.version
o An XML file following the version.xsd schema with information of the BCF schema used. The file content should be
identical to the contents of bcf.version
The folder name is the GUID of the topic. This GUID is in the UUID form. The folder contains the following files:
markup.bcf
o An XML file following the markup.xsd schema that is described below.
viewpoint.bcfv
o An XML file following the visinfo.xsd schema that is described below.
o Multiple viewpoints are possible since BCF 2.0. Names of these files are not predefined. Note: One viewpoint needs to be
be named viewpoint.bcfv even in the case of multiple viewpoints.
snapshot.png
o A snapshot related to the topic (for compatibility with BCF 1.0). Multiple snapshots are possible since BCF 2.0. Names of
these files are not predefined. Note: One snapshot needs to be named snapshot.png even in the case of multiple
viewpoints.
Note: The elements in the XML files must appear in the order given in the schemas and described below.
Header
Header node contains information about the IFC files relevant to this topic. It has one attribute, ProjectGuid, which is the project GUID. Header has
also a list of File nodes.
IfcProject Yes IfcGuid Reference to the project to which this topic is related in the IFC file
isExternal Yes Is the IFC file external or within the bcfzip. (Default = true).
URI to IfcFile.
Reference Yes IsExternal=false “..\example.ifc“ (within bcfzip)
IsExternal=true “https://.../example.ifc“
Topic
Topic node contains reference information of the topic. It has one attribute, Guid, which is the topic GUID.
List of references to the topic, for example, a work request management system or an
ReferenceLink Yes
URI to a model.
Priority Yes Topic priority. The list of possible values are defined in the extension schema.
Labels Yes Tags for grouping Topics. The list of possible values are defined in the extension
Element Optional Description
schema.
Date when the topic was last modified. Exists only when Topic has been modified after
ModifiedDate Yes
creation.
ModifiedAuthor Yes User who modified the topic. Exists only when Topic has been modified after creation.
DueDate Yes Date until when the topics issue needs to be resolved.
The user to whom this topic is assigned to. Recommended to be in email format. The
AssignedTo Yes
list of possible values are defined in the extension schema.
BimSnippet (optional)
BimSnippet is an additional file containing information related to one or multiple topics. For example, it can be an IFC file containing provisions for
voids.
URI to BimSnippet.
Reference No IsExternal=false “..\snippetExample.ifc“ (within bcfzip)
IsExternal=true “https://.../snippetExample.ifc“
DocumentReference (optional)
DocumentReference provides a means to associate additional payloads or links with topics. The references may point to a file within the .bcfzip or
to an external location.
URI to document.
ReferencedDocument Yes IsExternal=false “..\exampleDoc.docx“ (within bcfzip)
IsExternal=true “https://.../ exampleDoc.docx“
Comment
The markup file can contain comments related to the topic. Their purpose is to record discussion between different parties related to the topic.
Comment has also the Guid attribute for identifying it uniquely. In addition, it has the following nodes:
Viewpoints
The markup file can contain multiple viewpoints related to one or more comments. A viewpoint has also the Guid attribute for identifying it
uniquely. In addition, it has the following nodes:
Viewpoints are immutable, therefore they should never be changed once created. If new comments on a topic require different visualization, new
viewpoints should be added.
Components
A component set has the following attributes:
Attribute Description
Default visibility of physical components. That means components that are not of
DefaultVisibilityComponents
type IfcSpace, IfcSpaceBoundary or IfcOpening.
The components node contains a set of Component references. The numeric values in this file are all given in fixed units (meters for length and
degrees for angle). Unit conversion is not required, since the values are not relevant to the user. The components node has also the
DefaultVisibility attribute which indicates true or false for all components of the viewpoint.
This flag is true if the component is actually involved in the topic. If the flag is false, the
Selected Yes
component is involved as reference.
This flag is true when the component is visible in the visualization. By setting this false, you
Visible Yes can hide components that would prevent seeing the topic from the camera position and
angle of the viewpoint.
Color of the component. This can be used to provide special highlighting of components in
the viewpoint. The color is given in ARGB format. Colors are represented as 6 or 8
Color Yes hexadecimal digits. If 8 digits are present, the first two represent the alpha (transparency)
channel. For example, 40E0D0 would be the color Turquoise. More information about the color
format can be found on Wikipedia.
In addition, it has the following information:
AuthoringToolId Yes System specific identifier of the component in the originating BIM tool
There can be lots of component references in a viewpoint. Therefore, these references must be kept to a minimum. The following rules are
developed to export the components in compact and unambiguous way.
The components in viewpoints are exported according to the following rules: Divide all components to the following
sets: Openings, Spaces, SpaceBoundaries, and Components.
SpaceBoundaries are the virtual elements between spaces and building components, such as, walls and doors.
For each set of sets above, divide them further to the following subsets:
Example components
2. If V is smaller than I
3. Else
OrthogonalCamera (optional)
This element describes a viewpoint using orthogonal camera. It has the following elements:
PerspectiveCamera (optional)
This element describes a viewpoint using perspective camera. It has the following
Lines (optional)
Lines can be used to add markup in 3D. Each line is defined by three dimensional Start Point and End Point. Lines that have the same start and
end points are to be considered points and may be displayed accordingly.
ClippingPlanes (optional)
ClippingPlanes can be used to define a subsection of a building model that is related to the topic. Each clipping plane is defined by Location and
Direction.
Bitmap (optional)
A list of bitmaps can be used to add more information, for example, text in the visualization. It has the following elements:
Implementation Agreements
Since BCF 2.0 is compatible with version 1.0, there are some ambiguities in the implementation. The following agreements are written to clarify the
implementation.
When interpreting BCF 2.0 or higher files: VerbalStatus and Status on comment level should all be neglected if TopicStatus and TopicType are
present in Topic.
write the current type and status to Topic's TopicType and TopicStatus
The forward slash (“/”) should be used as a path separator rather than the backslash (“\”). Windows developers should consult the following MSDN
page when attempting to follow this guideline: https://msdn.microsoft.com/en-us/library/mt712573(v=vs.110).aspx
Correct Incorrect
742b0df3-9a99-4da3-95ad-171e282f8122/snapshot.png 742b0df3-9a99-4da3-95ad-171e282f8122\snapshot.png
When creating the zip archive make sure to create directory (folder) entries in the .BCFZIP file’s central directory.
Archive: correctly_encoded_file_with_directory_entries.bcfzip
Length Date Time Name
--------- ---------- ----- ----
217 2015-02-18 09:12 bcf.version
0 2015-02-18 09:12 bff0f7ed-6b0d-4aad-ab28-401cc1db7f6e/
1782 2015-02-18 09:12 bff0f7ed-6b0d-4aad-ab28-401cc1db7f6e/markup.bcf
565 2015-02-18 09:12 bff0f7ed-6b0d-4aad-ab28-401cc1db7f6e/viewpoint.bcfv
181641 2015-02-18 09:12 bff0f7ed-6b0d-4aad-ab28-401cc1db7f6e/snapshot.png
--------- -------
184205 5 files
Example of a zip file without directory entries (Incorrect)
Archive: incorrect_file_without_directory_entries.bcfzip
Length Date Time Name
--------- ---------- ----- ----
35525 2015-02-25 09:28 742b0df3-9a99-4da3-95ad-171e282f8122/snapshot.png
681 2015-02-25 09:28 742b0df3-9a99-4da3-95ad-171e282f8122/viewpoint.bcfv
1057 2015-02-25 09:28 742b0df3-9a99-4da3-95ad-171e282f8122/markup.bcf
119 2015-02-25 09:28 bcf.version
--------- -------
37382 4 files
How to verify
--
Path = #### Path to the bcfzip file
Type = zip
Physical Size = 183599
$ unzip -l $PATH_TO_BCFZIP
Example output