Editing IFC - Industry Foundation Classes/IFC concepts/IFC sequence concepts
From Wiki.OSArch
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | |||
Processes are individual events or tasks. Processes may have different meanings when used in different scenarios. When processes are used in construction, they represent construction tasks which have associated sequence relationships, may transform inputs into outputs, and have relationships to costs, products, and resources. When processes are used in facility management, they represent maintenance tasks, including to-do lists and recurring patterns. | Processes are individual events or tasks. Processes may have different meanings when used in different scenarios. When processes are used in construction, they represent construction tasks which have associated sequence relationships, may transform inputs into outputs, and have relationships to costs, products, and resources. When processes are used in facility management, they represent maintenance tasks, including to-do lists and recurring patterns. | ||
Line 13: | Line 12: | ||
* IfcLagTime | * IfcLagTime | ||
* IfcTaskType | * IfcTaskType | ||
+ | * IfcEvent | ||
+ | * IfcProcedure | ||
Bits that are currently skipped for further analysis: | Bits that are currently skipped for further analysis: | ||
* IfcTask: Quantities of resources consumed by the task are dealt with by defining the IfcElementQuantity for the resource and not at the instance of IfcTask. | * IfcTask: Quantities of resources consumed by the task are dealt with by defining the IfcElementQuantity for the resource and not at the instance of IfcTask. | ||
+ | * IfcTask: Object Typing. Looks complicated. | ||
+ | * IfcTask: An IfcTask may in turn nest other IfcTask, IfcProcedure or IfcEvent entities. | ||
+ | * IfcTask: IfcTask's can be triggered or can trigger IfcEvent's, which is also defined through the relationship IfcRelSequence. | ||
* IfcTask: Constraints may be applied to a task to indicate fixed task duration, fixed start or fixed finish, where IfcMetric.ReferencePath is set to the corresponding attribute on the IfcTaskTime entity. | * IfcTask: Constraints may be applied to a task to indicate fixed task duration, fixed start or fixed finish, where IfcMetric.ReferencePath is set to the corresponding attribute on the IfcTaskTime entity. | ||
Line 223: | Line 227: | ||
Source: IfcWorkCalendar | Source: IfcWorkCalendar | ||
− | == A work calendar can be inherited through child tasks | + | == A work calendar can be inherited through child tasks == |
<!-- | <!-- | ||
Line 242: | Line 246: | ||
If a task does not have a calendar assigned to it, it inherits the calendar from its parent task. This inheritance makes it easy to assign default calendars to a top level task in a work schedule and only override as necessary in more specific child tasks. | If a task does not have a calendar assigned to it, it inherits the calendar from its parent task. This inheritance makes it easy to assign default calendars to a top level task in a work schedule and only override as necessary in more specific child tasks. | ||
− | |||
− | |||
Note: it is assumed, but no evidence found, that hierarchical resources have this same inheritance behaviour. In other words, it is assumed that if a resource does not have a calendar assigned to it, it inherits the calendar from its parent resource. | Note: it is assumed, but no evidence found, that hierarchical resources have this same inheritance behaviour. In other words, it is assumed that if a resource does not have a calendar assigned to it, it inherits the calendar from its parent resource. | ||
Line 292: | Line 294: | ||
Note: the definition that distinguishing planned from actual is assumed. It is not clear in the docs. Also, the fact that we need to read the docs for IfcConstructionResource to figure this out isn't very nice. | Note: the definition that distinguishing planned from actual is assumed. It is not clear in the docs. Also, the fact that we need to read the docs for IfcConstructionResource to figure this out isn't very nice. | ||
− | Source: IfcConstructionResource | + | Source: IfcConstructionResource |
== A work schedule may represent actual dates when the tasks are underway or complete == | == A work schedule may represent actual dates when the tasks are underway or complete == | ||
Line 311: | Line 313: | ||
Note: the definition that distinguishes planned from actual is assumed. It is not clear in the docs. Also, the fact that we need to read the docs for IfcConstructionResource to figure this out isn't very nice. | Note: the definition that distinguishes planned from actual is assumed. It is not clear in the docs. Also, the fact that we need to read the docs for IfcConstructionResource to figure this out isn't very nice. | ||
− | Source: IfcConstructionResource | + | Source: IfcConstructionResource |
== Work schedules may be duplicated and compared as a baseline == | == Work schedules may be duplicated and compared as a baseline == | ||
Line 490: | Line 492: | ||
<!-- | <!-- | ||
digraph { | digraph { | ||
− | node [ shape=rect | + | node [ shape=rect ]; |
edge [ fontsize=10 ]; | edge [ fontsize=10 ]; | ||
predecessor [label="IfcTask"] | predecessor [label="IfcTask"] | ||
− | |||
IfcRelSequence -> predecessor [label="RelatingProcess"] | IfcRelSequence -> predecessor [label="RelatingProcess"] | ||
IfcRelSequence -> FINISH_START [label="SequenceType"] | IfcRelSequence -> FINISH_START [label="SequenceType"] | ||
IfcRelSequence -> IfcLagTime [label="TimeLag"] | IfcRelSequence -> IfcLagTime [label="TimeLag"] | ||
− | |||
P1D [shape=ellipse] | P1D [shape=ellipse] | ||
ELAPSEDTIME [shape=ellipse] | ELAPSEDTIME [shape=ellipse] | ||
Line 506: | Line 506: | ||
formwork [shape=ellipse, label="Formwork"] | formwork [shape=ellipse, label="Formwork"] | ||
pour [shape=ellipse, label="Concrete Pour"] | pour [shape=ellipse, label="Concrete Pour"] | ||
− | predecessor -> formwork [label= | + | predecessor -> formwork [label=DurationType] |
− | successor -> pour [label= | + | successor -> pour [label=ScheduleDuration] |
} | } | ||
--> | --> | ||
Line 514: | Line 514: | ||
In this scenario, a predecessor task (setting up formwork) has a finish to start relationship to a successor task (pouring concrete) with a lag time of 1 elapsed day between them. | In this scenario, a predecessor task (setting up formwork) has a finish to start relationship to a successor task (pouring concrete) with a lag time of 1 elapsed day between them. | ||
− | |||
− | |||
Source: IfcTask, IfcRelSequence, IfcProcess | Source: IfcTask, IfcRelSequence, IfcProcess | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Tasks can construct or install objects == | == Tasks can construct or install objects == | ||
Line 639: | Line 606: | ||
Source: IfcTask | Source: IfcTask | ||
− | == A task | + | == A task may contain properties == |
<!-- | <!-- | ||
Line 660: | Line 627: | ||
[[File:Ifc-concept-sequence-task-pset.png]] | [[File:Ifc-concept-sequence-task-pset.png]] | ||
− | A task | + | A task may contain properties. Typically this is used for risk assessment. For logistic tasks, it may also contain properties for packing instructions. |
Source: IfcTask | Source: IfcTask | ||
Line 681: | Line 648: | ||
Source: IfcTask | Source: IfcTask | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |