Schemas / BIM / OpenBIM

rig.bim.facet

v0.31.0 · draft 12 fields 2 required

Fields

FieldTypeMeaning
role enumapplicability · requirement required applicability or requirement
kind enumentity · attribute · classification · property · material · part-of required entity, attribute, classification, property, material, or part-of
cardinality enumrequired · prohibited · optional optional Optional. required, prohibited, or optional - requirements only; absent = required when role is requirement
ifcClass string optional When kind is entity (or as needed for other kinds)
predefinedType string optional Optional. IFC predefined type filter
attributeName string optional When kind is attribute
propertySet string optional When kind is property
propertyName string optional When kind is property
value string optional Optional. Expected value (string form); absent = presence-only
scheme string optional When kind is classification (or material scheme)
partOfClass string optional When kind is part-of - parent IFC class
partOfRelation string optional Optional. When kind is part-of - relation name

One IDS facet - applicability or requirement. Format when present.

Emit only the fields the chosen kind needs; leave the rest absent. List this entity on rig.bim.spec applicability or requirements.

JSON Schema

Resolves at https://rig.works/schemas/rig.bim.facet.schema.jsonraw file.

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rig.works/schemas/rig.bim.facet.schema.json",
  "title": "rig.bim.facet",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "role": {
      "type": "string",
      "enum": [
        "applicability",
        "requirement"
      ]
    },
    "kind": {
      "type": "string",
      "enum": [
        "entity",
        "attribute",
        "classification",
        "property",
        "material",
        "part-of"
      ]
    },
    "cardinality": {
      "type": "string",
      "enum": [
        "required",
        "prohibited",
        "optional"
      ]
    },
    "ifcClass": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "predefinedType": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "attributeName": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "propertySet": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "propertyName": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "value": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "scheme": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "partOfClass": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "partOfRelation": {
      "$ref": "./_defs.schema.json#/$defs/string"
    }
  },
  "required": [
    "role",
    "kind"
  ]
}

Seen in

bim-ids.json