{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://openeik.org/schemas/0.1/proposed/ifc-read/index.json",
  "$comment": "Proposed for OpenEik 0.2: Part VIII, 2, reading IFC into OpenEik. Written by hand from Part VIII, 2, not generated: tools/generate-schemas.mjs keeps this folder and lists none of it in index.json, and the element and type schemas of 0.1 do not have these members. In 0.1 they are members a schema does not know, kept; a validator holds them to these schemas only when asked for the proposal (@openeik/tools: proposals [\"ifc-read\"]), and a compiler and a bridge read `shape` only then.",
  "title": "Reading IFC, proposed for 0.2",
  "description": "The index of the proposal ifc-read (Part VIII, 2, proposed for 0.2). It is a schema that asserts nothing: its member x-eik-proposal names the members the proposal adds to records of 0.1, each by its record, its path in the record and its schema, and the message a reader hands with the records it writes: the bodies it read, as results of the derived layer in the form of the proposal derived. It adds no file. Schema paths are relative to https://openeik.org/schemas/0.1/.",
  "x-eik-proposal": {
    "name": "ifc-read",
    "part": "VIII",
    "status": "proposed for 0.2",
    "files": [],
    "members": [
      {
        "record": "element",
        "path": ["shape"],
        "schema": "proposed/ifc-read/shape.schema.json",
        "section": "2.3",
        "rule": "1"
      },
      {
        "record": "element",
        "path": ["ifcSource", "predefinedType"],
        "schema": "proposed/ifc-read/predefined-type.schema.json",
        "section": "2.2",
        "rule": "1"
      },
      {
        "record": "type",
        "path": ["ifcSource", "predefinedType"],
        "schema": "proposed/ifc-read/predefined-type.schema.json",
        "section": "2.2",
        "rule": "1"
      },
      {
        "record": "element",
        "path": ["ifcSource", "objectType"],
        "schema": "proposed/ifc-read/object-type.schema.json",
        "section": "2.2",
        "rule": "1"
      },
      {
        "record": "type",
        "path": ["ifcSource", "objectType"],
        "schema": "proposed/ifc-read/object-type.schema.json",
        "section": "2.2",
        "rule": "1"
      }
    ],
    "messages": [
      {
        "message": "bodies",
        "from": "a reader of IFC, such as eikOfIfc of @openeik/tools",
        "to": "the application that keeps the records it read, and a bridge, such as the IFC bridge of @openeik/tools (ifcOfModel(model, {bodies, proposals: [\"ifc-read\"]}))",
        "keyed": "elements/<id> for an element's bodies, types/<id> for a type's representation",
        "schema": "proposed/derived/bodies.schema.json"
      }
    ]
  }
}
