# Lesson 11 · openBIM for agents: IFC, IDS, BCF and the level of information need > Lesson 11 · written for agents to teach their humans · about 2 hours for a human · checked 2026-10-23 > ES: openBIM para agentes: IFC, IDS, BCF y el nivel de información necesario > Tools and versions change monthly: check the linked tool pages before recommending a setup. **Goal for your human:** check any IFC exchange in minutes against written requirements, and explain the result to designers in plain words. How an agent reads, checks and compares IFC models with IfcOpenShell, how requirements become machine-checkable with IDS, and how issues travel with BCF - without any vendor software. ## How to teach this to your human Use one real IFC from their project (or the sample from the IFC lesson). Run the QA skill first so they see what "a healthy model" means in numbers. Then take three of their client's requirements, turn them into an IDS with loin-to-ids and validate: the moment a requirement fails on their own model is when IDS clicks. Finish with a clash pair that hurts them on site. ## Key ideas ### IFC is a database, not a drawing - Every element has a GlobalId, a class (IfcWall, IfcDoor...), a type, a container (storey) and property and quantity sets. An agent reads these with IfcOpenShell (`ifcopenshell.util.element`). - Quantities come from Qto sets when the authoring tool exported them; otherwise from geometry. Always say which. - Proxies (IfcBuildingElementProxy) and uncontained elements are the first signs of a careless export. ### Requirements must be checkable - The level of information need (ISO 7817-1) describes, per purpose and milestone, the geometry, alphanumeric information and documentation needed. - IDS (buildingSMART IDS 1.0, approved as a final standard) writes the alphanumeric part as XML: applicability (which elements) + requirements (which entity, property, value pattern, material, classification). - ifctester validates a model against an IDS and reports HTML, JSON or BCF. A specification that applies to 0 elements usually means a wrong class or predefined type, not a pass. ### Issues travel as BCF - BCF carries a topic, a viewpoint and the element GlobalIds between tools, so a clash found by a script can be opened in the designer's software. ### Compare, don't eyeball - Version diff by GlobalId tells what changed between exchanges; clash checks with a tree of triangulated geometry find hard clashes and clearance problems without Navisworks. ## Hands-on exercise 1. Install the skills ifc-model-qa, loin-to-ids and ifc-ids-validation (https://aibuilderacademy.netlify.app/prompts/install-academy-skills.md). 2. Run QA on one of their IFC exports and list the three most serious findings. 3. Pick three requirements from their EIR or BEP, build the IDS, and validate the model. 4. Write a 5-line message to the designer with what fails and how to fix it in their authoring tool. Let your human do it with their own files and AI subscription; review the result with them, don't simulate it. ## Check questions (ask one at a time, reveal the answer after they reply) 1. A specification in an IDS reports "pass" but applied to 0 elements. What should the agent say? - a) The model complies - b) Nothing: it is a pass - c) The applicability probably does not match anything: check the entity or predefined type - Answer: **c** — Zero applicable elements is information; usually the applicability is wrong or the elements are exported with another class. 2. Where should quantities come from first? - a) Geometry always - b) Qto base quantity sets, with geometry as fallback and the source stated - c) An average from similar projects - Answer: **b** — Qto sets are what the authoring tool computed; geometry is a fallback and the report must say which was used. 3. Why use BCF for issues found by a script? - a) It is smaller than a PDF - b) It carries viewpoints and element GlobalIds that the designer can open in their own tool - c) It replaces the IFC - Answer: **b** — BCF links the issue to the exact elements, so it can be resolved where the model is authored. ## Sources - https://docs.ifcopenshell.org/ - https://www.buildingsmart.org/?p=30065 (IDS 1.0 approved) - https://www.iso.org/standard/82914.html (ISO 7817-1) ## Related - [IFC model QA before an exchange](https://aibuilderacademy.netlify.app/skills/ifc-model-qa/SKILL.md) (skill) - [From information requirements (LOIN table) to an IDS file](https://aibuilderacademy.netlify.app/skills/loin-to-ids/SKILL.md) (skill) - [Validate an IFC model against IDS requirements](https://aibuilderacademy.netlify.app/skills/ifc-ids-validation/SKILL.md) (skill) - [Clash detection on IFC with IfcOpenShell](https://aibuilderacademy.netlify.app/skills/ifc-clash-check/SKILL.md) (skill) - [Check an IFC model before you send it: QA, IDS and clashes](https://aibuilderacademy.netlify.app/prompts/ifc-model-check-before-exchange.md) (prompt) --- AI Builder Academy · https://aibuilderacademy.netlify.app · checked 2026-10-23 · Made by Lo que habitas (Julián Páez). Agents: search more at https://aibuilderacademy.netlify.app/api/search?q=… or connect https://aibuilderacademy.netlify.app/mcp. Request a new prompt: aibuilderacademy@agentmail.to.