Applicability identifies the IFC objects that a specification concerns. Requirements define what the selected objects should satisfy. Keeping those roles clear helps you write a specification that checks the intended information on the intended objects. buildingSMART's specification guide
Start with the information question
Suppose a team wants every space in a pilot model to carry a project briefing category. The category is stored in the invented custom field Compass_SpaceBrief.UseCategory.
The team's question is: “Which spaces are missing the required briefing category?”
To answer it, the specification needs to examine spaces even when that category is absent. If it only selects spaces that already have the property, it will exclude the cases the reviewer is looking for.
A selection mistake that changes the result
| Part of the rule | Risky design for this task | Design that matches the stated intention |
|---|---|---|
| Applicability | Select spaces that already have UseCategory | Select all spaces in the agreed scope |
| Requirements | Require UseCategory | Require UseCategory |
| What happens to a space without the property? | It is excluded before the requirement is assessed | It remains in scope for the requirement check |
When should a property be used in applicability?
Use a property to select objects when that property genuinely defines the group you want to examine. For instance, the project might want a particular rule applied only to spaces already assigned a specific, agreed use category.
Write that scope explicitly. Then decide how the team will detect spaces that are missing the category used to identify them. A separate completeness requirement may be needed, or the selection may need to use another reliable part of the model.
This question is particularly useful during review: “If the information used to select an object is missing, where will that problem be detected?”
Decide what zero applicable objects means
A specification can require applicable objects to exist or permit their absence. In the latter case, zero selected objects does not by itself demonstrate an information failure. Check the specification's applicability cardinality when reviewing the result. IDS cardinality guidance
For your pilot, document whether the delivery is expected to contain spaces. A model containing none and a model containing spaces that a mistaken filter cannot find are different situations to investigate.
Review the logic before expanding the library
Create three small examples: an in-scope object with correct information, an in-scope object with missing information, and an out-of-scope object. Write the expected treatment of each, then inspect the actual result.
That exercise often reveals an unclear scope more quickly than reviewing a long list of rules in isolation.
Read the IDS validation guide, browse practical examples, or build your specification in IDS Compass.