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 morePropertyFieldorAttributeField<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.