Change class
change_classChanges the IFC class (IfcSlab to IfcRoof); GlobalId, geometry, properties and relations stay. New revision, effect report (n_changed, rejected, cloned, carried). A call that succeeds is not a job that's done. Target: guid, guids or a set from find_elements/get_selection, never a filter. Beyond the named: PLAN_REQUIRED, run its plan_id with expect_beyond. Trailing optional attributes the new class adds are added empty, empty ones it lacks are dropped (IfcColumn to IfcPile, predefined_type BORED). Refused per element where the target class has other attributes or does not know the PredefinedType; into or out of a feature element (opening, earthworks cut) always: insert_in_host. Deleting and creating is no substitute - properties and relations would be lost. A type object alone takes a type class (IfcWallType to IfcSlabType) only while nothing is typed by it; else name it with all its occurrences in one call, class being theirs (IfcSlab): the type takes the type class the schema pairs with it.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "change_class"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| set | No | A set id from find_elements or get_selection: writes exactly the elements seen there, nothing that matches later. An element changed since reading is rejected alone; the others are written | |
| guid | No | One element (GlobalId) | |
| note | No | Your note, stored with the new revision | |
| class | No | The new IFC class | |
| guids | No | These elements (GlobalIds) | |
| dry_run | No | Preview: the planned effect and a plan_id, nothing written | |
| plan_id | No | Execute exactly the plan a dry_run returned, all or nothing; the plan holds target and fields. Plans that clone the same shared object (type, material) run one after the other: plan the second after the first ran, else PLAN_CHANGED | |
| request_id | No | Your id for this call: a repeat answers the first result and writes nothing | |
| expect_count | No | With set: how many elements the set holds - guards against a mixed-up set id | |
| expect_beyond | No | With plan_id: how many elements the plan reaches beyond those named (n_beyond of PLAN_REQUIRED or the dry_run) | |
| predefined_type | No | New PredefinedType, checked against the class enumeration |