Brick custom rules
The JSON file loaded as part of the import process contains a list of rules to be included in the Brick tag dictionary. If desired, you can add to or override the default rules with a custom rule set.

{
"rules": [
{
"name": "id",
"condition": {
"type": "tagdictionary:IsTypeCondition",
"objectType": "control:ControlPoint"
},
"tags": [
{
"name": "id",
"type": "brickTest:BrickCustomIdTag",
"validity": {
"type": "tagdictionary:IsTypeCondition",
"objectType": "control:ControlPoint"
}
}
]
},
{
"name": "enableStatus",
"condition": {
"type": "tagdictionary:IsTypeCondition",
"objectType": "control:BooleanPoint"
},
"tagGroups": [
{
"name": "enableStatus",
"tags": [
{
"name": "enable"
},
{
"name": "point"
},
{
"name": "status"
}
]
}
]
},
{
"name": "hasQUDTReference",
"condition": {
"type": "tagdictionary:Always"
},
"relations": [
{
"name": "hasQUDTReference",
"type": "brickTest:BrickCustomQUDTRelation"
}
]
}
]
}
The first id rule declares the condition as any ControlPoint, and the tag id will be applied. This tag has a custom JAVA implementation declared as a BrickCustomId type in a brickTest module. The JAVA class for this would be named BBrickCustomId.
The second enableStatus rule has a Boolean Point condition and adds a tag group that contains the enable, point, and status tags.
The third hasQUDTReference rule has an Always condition and adds a relation with a custom BrickCustomQUDTRelation type in a brickTest module.