#### IfcProject

Natural language names

##### Semantic definitions at the entity

Entity definition

The undertaking of some design, engineering, construction, or maintenance activities leading towards a product. The project establishes the context for information to be exchanged or shared, and it may represent a construction project but does not have to.

The representation context, in the case of a geometric representation context, which is referenced from the IfcProject, includes:

- the default units used
- the world coordinate system
- the coordinate space dimension
- the precision used within the geometric representations, and
- optionally the indication of the true north relative to the world coordinate system

> HISTORY New Entity in IFC Release 1.0

Property Set Use Definition:

The property sets relating to the IfcProject are defined by the IfcPropertySet and attached by the IfcRelDefinesByProperties relationship. It is accessible by the inverse IsDefinedBy relationship. The following property set definitions specific to the IfcProject are part of this IFC release:

- Pset_ProjectCommon: common property set for the single project occurrence.

Spatial Structure Use Definition

The IfcProject is used to reference the root of the spatial structure of a building (that serves as the primary project breakdown and is required to be hierarchical). The spatial structure elements are linked together, and to the IfcProject, by using the objectified relationship IfcRelAggregates. The IfcProject references them by its inverse relationship:

- IfcProject.Decomposes -- referencing (IfcSite || IfcBuilding) by IfcRelAggregates.RelatingObject. The IfcSite or IfcBuilding referenced shall be the root of the spatial structure.
- IfcProject.IsDecomposedBy -- it shall be NIL, i.e. the IfcProject shall not be decomposed into any parts.

Informal propositions:

1. There shall only be one project within the exchange context. This is enforced by the global rule IfcSingleProjectInstance.

Attribute definitions

# | Attribute | Type | Cardinality | Description | A
--- | --- | --- | --- | --- | ---
6 | LongName | - |  | This attribute is out of scope for this model view definition and shall not be set. |
7 | Phase | - |  | This attribute is out of scope for this model view definition and shall not be set. |
8 | RepresentationContexts | IfcRepresentationContext | S[1:?] | Context of the representations used within the project. When the project includes shape representations for its components, one or several geometric representation contexts need to be included that define e.g. the world coordinate system, the coordinate space dimensions, and/or the precision factor. | X
9 | UnitsInContext | IfcUnitAssignment | [1:1] | Units globally assigned to measure types used within the context of this project. | X

Formal Propositions

Rule | Description
--- | ---
WR31 | The Name attribute has to be provided for the project. It is the short name for the project.
WR32 | There shall be no instance of IfcGeometricRepresentationSubContext directly included in the set of RepresentationContexts.
WR33 | The IfcProject represents the root of the any decomposition tree. It shall therefore not be used to decompose any other object definition.

##### Inherited definitions from supertypes

Entity inheritance
Attribute inheritance

# | Attribute | Type | Cardinality | Description | A
--- | --- | --- | --- | --- | ---
IfcRoot
1 | GlobalId | IfcGloballyUniqueId | [1:1] | Assignment of a globally unique identifier within the entire software world. | X
2 | OwnerHistory | IfcOwnerHistory | [1:1] | Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object, NOTE: only the last modification in stored. | X
3 | Name | IfcLabel | [0:1] | Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule. | X
4 | Description | IfcText | [0:1] | Optional description, provided for exchanging informative comments. | X
IfcObjectDefinition
| IsDecomposedBy | IfcRelDecomposes @RelatingObject | S[0:?] | Reference to the decomposition relationship, that allows this object to be the composition of other objects. An object can be decomposed by several other objects. | X
| Decomposes | IfcRelDecomposes @RelatedObjects | S[0:1] | References to the decomposition relationship, that allows this object to be a part of the decomposition. An object can only be part of a single decomposition (to allow hierarchical strutures only). | X
| HasAssociations | IfcRelAssociates @RelatedObjects | S[0:?] | Reference to the relationship objects, that associates external references or other resource definitions to the object.. Examples are the association to library, documentation or classification. | X
IfcObject
5 | ObjectType | IfcLabel | [0:1] | The type denotes a particular type that indicates the object further. The use has to be established at the level of instantiable subtypes. In particular it holds the user defined type, if the enumeration of the attribute PredefinedType is set to USERDEFINED. | X
| IsDefinedBy | IfcRelDefines @RelatedObjects | S[0:?] | Set of relationships to type or property (statically or dynamically defined) information that further define the object. In case of type information, the associated IfcTypeObject contains the specific information (or type, or style), that is common to all instances of IfcObject referring to the same type. | X
IfcProject
6 | LongName | - |  | This attribute is out of scope for this model view definition and shall not be set. |
7 | Phase | - |  | This attribute is out of scope for this model view definition and shall not be set. |
8 | RepresentationContexts | IfcRepresentationContext | S[1:?] | Context of the representations used within the project. When the project includes shape representations for its components, one or several geometric representation contexts need to be included that define e.g. the world coordinate system, the coordinate space dimensions, and/or the precision factor. | X
9 | UnitsInContext | IfcUnitAssignment | [1:1] | Units globally assigned to measure types used within the context of this project. | X

##### Definitions applying to AISC Model View

Instance diagram

Concept usage

Project Representation Context

The Project Representation Context concept applies to this entity.

Exchange |
--- | ---
Import | R
Export | R

SI Units

The SI Units concept applies to this entity.

Exchange |
--- | ---
Import | O
Export | O

Conversion Units

The Conversion Units concept applies to this entity.

Exchange |
--- | ---
Import | O
Export | O

Derived Units

The Derived Units concept applies to this entity.

Exchange |
--- | ---
Import | O
Export | O

Concept inheritance

# | Concept | Model View
--- | --- | ---
IfcProject
| Project Representation Context | AISC Model View
| SI Units | AISC Model View
| Conversion Units | AISC Model View
| Derived Units | AISC Model View

##### Formal representations

XSD Specification
`<xs:element name="IfcProject" type="ifc:IfcProject" substitutionGroup="ifc:IfcObject" nillable="true"/>
<xs:complexType name="IfcProject">
<xs:complexContent>
<xs:extension base="ifc:IfcObject">
<xs:sequence>
<xs:element name="RepresentationContexts">
<xs:complexType>
<xs:sequence>
<xs:element ref="ifc:IfcRepresentationContext" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcRepresentationContext"/>
<xs:attribute ref="ifc:cType" fixed="set"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="UnitsInContext" type="ifc:IfcUnitAssignment" nillable="true"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
`
EXPRESS Specification
`ENTITY IfcProject
SUBTYPE OF (IfcObject);
LongName : OPTIONAL IfcStrippedOptional;
Phase : OPTIONAL IfcStrippedOptional;
RepresentationContexts : SET [1:?] OF IfcRepresentationContext;
UnitsInContext : IfcUnitAssignment;
WHERE
WR31 : EXISTS(SELF\IfcRoot.Name);
WR32 : SIZEOF(QUERY(Temp <* RepresentationContexts | 'IFCREPRESENTATIONRESOURCE.IFCGEOMETRICREPRESENTATIONSUBCONTEXT' IN TYPEOF(Temp) )) = 0 ;
WR33 : SIZEOF(SELF\IfcObjectDefinition.Decomposes) = 0;
END_ENTITY;

EXPRESS-G diagram

`

Link to this page