Scheme
Technical Specification
BDS is formally defined by an XML Schema (XSD) version 1.0. The key components of the schema include:
BDS (Root Element)
Defines the overall document structure:
- Attributes:
Version
(required),Name
(optional) -
Elements:
-
<Description>
<FileVersion>
<ScheduleSets>
: collection of<ScheduleSet>
<ResponsibleParty>
ScheduleSet
Groups multiple schedules:
- Attributes:
Name
- Optional elements:
<Description>
,<Group>
,<Discipline>
- Contains: one or more
<Schedule>
elements
Schedule
Defines one schedule template:
- Attributes:
Name
-
Contains:
-
<Description>
(optional text) <IfcClasses>
: list of applicable IFC types<Fields>
: one or morePropertyField
orAttributeField
<Filters>
: optional list of filter conditions<Sort>
: optional list of sort conditions<Group>
: optional field grouping definition
PropertyField
Defines a schedule column from an IFC property:
<PropertyField Id="DoorWidth">
<PropertySetName>Dimensions</PropertySetName>
<PropertyName>Width</PropertyName>
</PropertyField>
AttributeField
Defines a column from an IFC attribute:
<AttributeField Id="DoorName">
<Attribute>ObjectName</Attribute>
</AttributeField>
Filter
Defines a conditional rule:
<Filter>
<Field>DoorWidth</Field>
<Operator>GreaterThan</Operator>
<Value>0.8</Value>
</Filter>
Sort
Defines how to order rows:
<Sort>
<Field>DoorName</Field>
<Order>Ascending</Order>
</Sort>
Example Structure
<BDS Name="ExampleSchedules" Version="1.0">
<Description>Standard schedules for Project X</Description>
<FileVersion>1.0.0</FileVersion>
<ScheduleSets>
<ScheduleSet Name="General">
<Discipline>Architectural</Discipline>
<Schedules>
<Schedule Name="DoorSchedule">
<IfcClasses>
<IfcClass>IfcDoor</IfcClass>
</IfcClasses>
<Fields>
<PropertyField Id="DoorWidth">
<PropertySetName>Dimensions</PropertySetName>
<PropertyName>Width</PropertyName>
</PropertyField>
<AttributeField Id="DoorName">
<Attribute>ObjectName</Attribute>
</AttributeField>
</Fields>
<Filters>
<Condition>
<Field>DoorWidth</Field>
<Operator>GreaterThan</Operator>
<Value>0.8</Value>
</Condition>
</Filters>
<Sort>
<Condition>
<Field>DoorName</Field>
<Order>Ascending</Order>
</Condition>
</Sort>
</Schedule>
</Schedules>
</ScheduleSet>
</ScheduleSets>
<ResponsibleParty>Acme BIM Team</ResponsibleParty>
</BDS>
This structure enables software tools to interpret and apply standard data queries across different BIM environments, ensuring consistency, repeatability, and collaboration.