ifcopenshell.api.document.assign_document#

Module Contents#

class ifcopenshell.api.document.assign_document.Usecase(file, product=None, document=None)#

Assigns a document to a product

An object may be assigned to zero, one, or multiple documents. Almost any object or property may be assigned to a document, though typically we’d only use it for spaces, types, physical products and schedules. Adding a new assignment is typically done using a document reference and an object. IFC technically allows association with a document information and an object, but this is not encouraged because it is not consistent with other external relationships (such as classification systems or libraries).

Parameters
Returns

The IfcRelAssociatesDocument relationship

Return type

ifcopenshell.entity_instance.entity_instance

Example:

document = ifcopenshell.api.run("document.add_information", model)
ifcopenshell.api.run("document.edit_information", model,
    information=document,
    attributes={"Identification": "A-GA-6100", "Name": "Overall Plan",
    "Location": "A-GA-6100 - Overall Plan.pdf"})
reference = ifcopenshell.api.run("document.add_reference", model, information=document)

# Let's imagine storey represents an IfcBuildingStorey for the ground floor
ifcopenshell.api.run("document.assign_document", model, product=storey, document=reference)
execute(self)#
get_document_rel(self)#