Brick is an open-source, BSD-licensed development effort to create a uniform schema for representing metadata in buildings. Brick has three components:
- An RDF class hierarchy describing the various building subsystems and the entities and equipment therein
- A minimal, principled set of relationships for connecting these entities together into a directed graph representing a building
- A method of encapsulation for composing complex components from a set of lower-level ones
The official Brick website, http://brickschema.org/, contains documentation and other information about the Brick schema.
This repository tracks the main schema development of Brick.
dist/
contains the Brick Turtle files containing the class structure, tagsets and relationshipssrc/
contains the necessary tools for creating the Brick Turtle files
- Update information in
config.json
if needed. - Run
./build.sh
at the root dir of the project. It consists of two steps.- Compile schema files from
src/Tags.csv
andsrc/TagSets.csv
. - Test if the generated files are correct with a couple of predefined rules. (It's currently very naive. If you have ideas to check, please add to the code or create an issue to discuss.)
- Compile schema files from
Discussion takes place primarily on the Brick User Form: https://groups.google.com/forum/#!forum/brickschema
If you have an issue with Brick's coverage, utility or usability, or any other Brick-related question:
- First check the Brick user form and the Brick issue tracker to check if anyone has asked your question already.
- If you find a previously submitted issue that closely mirrors your own, feel free to jump in on the conversation. Otherwise, please file a new issue or submit a new thread on the forum.
- Read the RFC guide
- Fork the Brick repository
- Make your changes in a branch on your own fork.
- Send a pull request containing your changes.
- If you are making several independent changes, please submit separate, independent pull requests.
- Make sure to note if your change will cause any current Brick files to be broken (i.e. if you are changing class names)
- Wait for your pull request to be merged by one of the maintainers