Skip to content

Commit 5110cd7

Browse files
committed
Initial wish list for Brick 2.0
1 parent 3bba757 commit 5110cd7

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* text=auto

wishlist.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# Brick 2.0 Wish List
2+
3+
### Scope
4+
5+
* An incremental improvement to Brick 1.x with some breaking changes, not a complete remake
6+
7+
### Clean up "design mistakes"
8+
9+
- ...
10+
- ...
11+
12+
### Complete the technical merger with RealEstateCore (REC)
13+
14+
- Unify common concepts, such as `rec:Collection` and `brick:Collection` or `rec:feeds` and `brick:feeds`
15+
- Publish one ontology with one prefix and one namespace IRI
16+
- Use one naming convention consistently (PascalCase or Snake_Case)
17+
- ...
18+
19+
### Rebase Brick on ASHRAE Standard 223
20+
21+
- Option 1: literally extend the 223 ontology
22+
- *Pro:* do not have to reinvent what is already there
23+
- *Con:* 223 insists on a lot of detail via its SHACL shapes that Brick 1.x doesn't insist on
24+
- Option 2: duplicate the major concepts of 223 into Brick (and define a trivial alignment)
25+
- *Pro:* allow more freedom (e.g., every 223 model could be trivially converted to a Brick 2.0 model, but not every Brick 2.0 model converted-to-223 would necessarily pass 223's stricter SHACL shapes)
26+
- *Con:* needs a conversion step
27+
28+
### Made for AI
29+
30+
- Favor designs that make instance data easily digestible for LLMs via MCP
31+
32+
### Clean up
33+
34+
- Exclusively use QUDT quantity kinds in favor of Brick's (add missing ones to QUDT if needed)
35+
- Revise the `brick:Substance` hierarchy in Brick (align with 223; add phenomena like wind, noise, etc.)
36+
- Split `rec:Architecture` into physical and logical spaces (cf. `s223:PhysicalSpace`/`s223:DomainSpace`)
37+
- Disentangle `brick:Entity`/`brick:Class`
38+
- ...
39+
40+
### New features
41+
42+
- The semantics of every `brick:Point` subclass should be fully described through semantic annotations
43+
- (In addition to or in place of `brick:Tag`?)
44+
- Define enumerations of the possible values for `brick:Point` subclasses describing states (e.g., on/off/auto)
45+
- ...
46+
47+
### Built on a solid foundation
48+
49+
- RDF (rdf:), RDF Schema (rdfs:), and XML Schema Datatypes (xsd:)
50+
- SHACL for validation, documentation, and basic reasoning
51+
- QUDT for quantity kinds and units
52+
- GeoSPARQL for geospatial data

0 commit comments

Comments
 (0)