# buildingsmart/ids architecture

> Architecture diagram of the GitHub repository buildingsmart/ids, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/buildingsmart/ids
- Repository: https://github.com/buildingsmart/ids

## Overview

This repository develops the buildingSMART Information Delivery Specification (IDS), an XML-based standard for expressing IFC information requirements. Its principal workflow is to describe delivery requirements as an IDS document, with the schema defining the document structure; implementers and authors use the manual, examples, and use-case material to apply the standard. The repository contains specification artifacts, not an IFC validation engine, so model checking is not shown as runtime behavior. The tree and README support these product areas; sampled code concerns repository automation and does not establish further runtime links.

Main entry points: [`Documentation/Examples`](https://github.com/buildingsmart/ids/tree/development/Documentation/Examples) (IDS document), [`Schema/ids.xsd`](https://github.com/buildingsmart/ids/blob/development/Schema/ids.xsd) (IDS schema), [`Documentation/UserManual/README.md`](https://github.com/buildingsmart/ids/blob/development/Documentation/UserManual/README.md) (User manual), [`Documentation/ImplementersDocumentation`](https://github.com/buildingsmart/ids/tree/development/Documentation/ImplementersDocumentation) (Implementer docs)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_standard["IDS standard"]
  node_ids["IDS document"]
  node_xsd["IDS schema<br/>[ids.xsd]"]
end

subgraph group_guidance["Authoring guidance"]
  node_manual["User manual<br/>[README.md]"]
  node_implementation["Implementer docs"]
end

subgraph group_examples["Usage material"]
  node_examples["IDS examples"]
  node_usecases["Use cases"]
end

node_author(("Requirement author"))
node_implementer(("IDS implementer"))
node_ifcmodel["IFC model"]

node_author -->|"consults"| node_usecases
node_author -->|"consults"| node_manual
node_author -->|"authors"| node_ids
node_ids -->|"conforms to"| node_xsd
node_implementer -->|"consults"| node_implementation
node_implementer -->|"consults"| node_examples
node_examples -->|"illustrate"| node_xsd
node_implementer -->|"interprets"| node_ids
node_ifcmodel -.->|"checked against"| node_implementer

click node_ids "https://github.com/buildingsmart/ids/tree/development/Documentation/Examples"
click node_xsd "https://github.com/buildingsmart/ids/blob/development/Schema/ids.xsd"
click node_manual "https://github.com/buildingsmart/ids/blob/development/Documentation/UserManual/README.md"
click node_implementation "https://github.com/buildingsmart/ids/tree/development/Documentation/ImplementersDocumentation"
click node_examples "https://github.com/buildingsmart/ids/tree/development/Documentation/Examples"
click node_usecases "https://github.com/buildingsmart/ids/tree/development/Archive/UseCases"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_ids,node_xsd toneBlue
class node_manual,node_implementation toneAmber
class node_examples,node_usecases toneMint
class node_author,node_implementer,node_ifcmodel toneIndigo
```

## Components

### IDS standard

- [IDS document](https://github.com/buildingsmart/ids/tree/development/Documentation/Examples): `Documentation/Examples`
- [IDS schema](https://github.com/buildingsmart/ids/blob/development/Schema/ids.xsd): `Schema/ids.xsd`

### Authoring guidance

- [User manual](https://github.com/buildingsmart/ids/blob/development/Documentation/UserManual/README.md): `Documentation/UserManual/README.md`
- [Implementer docs](https://github.com/buildingsmart/ids/tree/development/Documentation/ImplementersDocumentation): `Documentation/ImplementersDocumentation`

### Usage material

- [IDS examples](https://github.com/buildingsmart/ids/tree/development/Documentation/Examples): `Documentation/Examples`
- [Use cases](https://github.com/buildingsmart/ids/tree/development/Archive/UseCases): `Archive/UseCases`

### Other components

- **Requirement author**
- **IDS implementer**
- **IFC model**

## Connections

- Requirement author → Use cases: consults
- Requirement author → User manual: consults
- Requirement author → IDS document: authors
- IDS document → IDS schema: conforms to
- IDS implementer → Implementer docs: consults
- IDS implementer → IDS examples: consults
- IDS examples → IDS schema: illustrate
- IDS implementer → IDS document: interprets
- IFC model → IDS implementer: checked against
