Log In   View a printable version of the current page.
Added by Janice Wix, last edited by Janice Wix on Jan 30, 2007  (view change)
Labels: 
(None)


Model Actor

Overview

Actors are the people and organizations who are associated with a project. They can be identified individually, and by name. They can also be identified by the roles that they play on the project (since an actor may be given more than one role).
Actors can be selected to be either persons, organizations or a combination of the person and the organization.
Organizations can be any type of named group including companies, departments or divisions of companies, teams within or between organizations.
Organizations can be related to each other so that for instance, a department can be related to the organization within which it operates.
Actors can be identified for objects in two ways:

  • by an assignment relationship with the object (see also the functional part fp_assigns_to_actor)
  • by a direct attribute of the object (identified within other relevant functional parts)
    In addition, actors can be directly used as the datatype of properties within property sets.

Results

Actor is identified including name, address, roles and organizational relationships

Description Entity/Pset/Functional Part MAN REC OPT
If the actor to be selected is a person        

Set the given name and family name of the person concerned.

 

Note that all attributes of IfcPerson are shown in the IFC model as optional. However, a WHERE rule specifies that ETHER given name OR family name must be asserted. In the case of this functional part, both given name and family name are considered to be mandatory to enable proper identification of the person concerned

.IfcPerson.GivenName::IfcLabel
IfcPerson.FamilyName::IfcLabel
   

Set values for other attributes that may be required to individually identify the person.

IfcPerson.Id::IfcIdentifier
IfcPerson.GivenName::IfcLabel
IfcPerson.MiddleNames::IfcLabel
IfcPerson.PrefixTitles::IfcLabel
IfcPerson.SuffixTitles::IfcLabel
   

Set the roles that the person is fulfilling on the project

 

See further description on setting actor roles below.

 

Note that a person may fulfill more than one role in a project. All roles to be fulfilled may be asserted in a list.

 

Note also that roles are optional within the IFC model. In the case of this functional part, roles are considered to be mandatory to enable proper identification of what the person is authorized to do on a project.

IfcPerson.Roles::IfcActorRole    

Set the address of the person

 

This may be a specific address for the person. If the organization with which the person is associated has an address, this may be sufficient. However, it is generally better to identify particular addresses of actors where they are used at all.

 

Note that a person may have more than one address and these can all be asserted in a list.

IfcPerson.Addresses::fp_address    
If the actor to be selected is an organization        

Set the name of the organization concerned.

IfcOrganization.Name::IfcLabel    

Set values for other attributes that may be required to individually identify the organization.

IfcOrganization.Id ::IfcIdentifier
IfcOrganization.Description::IfcText
   

Set the roles that the organization is fulfilling on the project

 

See further description on setting actor roles below.

 

Note that an organization may fulfill more than one role in a project. All roles to be fulfilled may be asserted in a list.

 

Note also that roles are optional within the IFC model. In the case of this functional part, roles are considered to be mandatory to enable proper identification of what the organization is doing/engaged to do on a project.

IfcOrganization.Roles::IfcActorRole    

Set the address of the organization

 

See notes relating to address for person above.

IfcOrganization.Addresses::fp_address    
If the actor to be selected is both a person and an organization        
This selection is used where the association of the person to the organization is required        

Set the person


Refer to information required about a person above

IfcPersonAndOrganization.ThePerson::IfcPerson    

Set the organization


Refer to information required about an organization above

IfcPersonAndOrganization.TheOrganization::IfcOrganization    
Set the roles that the actor (person and/or organization) are to fulfill        

Identify each role that is to be fulfilled


A predefined list of roles is provided. A selection can be made from this list or alternatively, a user defined selection made in which case a value may be set as below_

IfcActorRole.Role::IfcRoleEnum    

IF

the role selected is .USERDEFINED.

THEN

a name for the role must be asserted.

ELSE

this attribute is not set.

IfcActorRole.UserDefinedRole::IfcLabel    

Set a description for the nature of the role played by an actor if required

IfcActorRole.Description::IfcText    
The following information is required when the actor is assigned to an object through the functional part fp_assigns_to_actor        
Select the particular actor
Use of the SELECT datatype enables either a person, organization or both to be selected with attributes then set as aove.
IfcActor.TheActor::IfcActorSelect    
Assert the owner history of the actor IfcActor.OwnerHistory::fp_apply_owner_history    
Establish the relationship between different occurrences of IfcOrganization if such a relationship should exist.
A tree structure of organization relationships can be established that could be used to elaborate a complete organization hierarchy if required.
       

Set the parent organization in the relationship

IfcOrganizationRelationship.RelatingOrganization::IfcOrganization    

Set the child organization(s) in the relationship.


An organization relationship may specify multiple children of one parent organization

IfcOrganizationRelationship.RelatedOrganizations::IfcOrganization    
Additional information about an actor may be established through the property set Pset_Actor_Common including:       ?

Number of actors


This is a number of actors that are to be dealt with together in the actor population where a population may actually be handled through a single occurrence of IfcActor.

Pset_ActorCommon.NumberOfActors::IfcCountMeasure    

Category of actor


Designation of the category into which the actors in the population belong e.g. manager, CAD operator etc.

Pset_ActorCommon.Category::IfcLabel    

Skill level


Skill level exhibited by the actor and which indicates an extent of their capability to perform actions on the artefacts upon which they can act.


This property will generally be used in facilities management situations where an actor assigned to a work order is expected to have a minimum level of capability.

Pset_ActorCommon.SkillLevel::IfcLabel    

Define the object(s) to which the property set is to be attached.


In this case, the relating objects must be occurrences of IfcActor.

fp_define_by_properties    

IFC Entities Required

  • IfcActor
  • IfcActorRole
  • IfcObject
  • IfcOrganization
  • IfcOrganizationRelationship
  • IfcPerson
  • IfcPersonAndOrganization
  • IfcRoot
  • IFC Datatypes Required
  • IfcActorSelect
  • IfcIdentifier
  • IfcLabel
  • IfcRoleEnum
  • IfcText

IFC Functions Required

  • None

IDM Functional Parts Required

  • fp_address
  • fp_apply_owner_history
  • fp_assigns_to_actor
  • fp_define_by_properties

EXPRESS-G

EXPRESS

SCHEMA FP_MODEL_ACTOR;
  TYPE IfcActorSelect = SELECT
    (IfcOrganization,
     IfcPerson,
     IfcPersonAndOrganization);
  END_TYPE;

  TYPE IfcIdentifier = STRING;
  END_TYPE;

  TYPE IfcLabel = STRING;
  END_TYPE;

  TYPE IfcText = STRING;
  END_TYPE;

  TYPE IfcRoleEnum = ENUMERATION OF
    (SUPPLIER,
     MANUFACTURER,
     CONTRACTOR,
     SUBCONTRACTOR,
     ARCHITECT,
     STRUCTURALENGINEER,
     COSTENGINEER,
     CLIENT,
     BUILDINGOWNER,
     BUILDINGOPERATOR,
     MECHANICALENGINEER,
     ELECTRICALENGINEER,
     PROJECTMANAGER,
     FACILITIESMANAGER,
     CIVILENGINEER,
     COMISSIONINGENGINEER,
     ENGINEER,
     OWNER,
     CONSULTANT,
     CONSTRUCTIONMANAGER,
     FIELDCONSTRUCTIONMANAGER,
     RESELLER,
     USERDEFINED);
  END_TYPE;

  TYPE IfcGloballyUniqueId = STRING (22) FIXED;
  END_TYPE;

  ENTITY IfcOrganization;
      Id          : OPTIONAL IfcIdentifier;
      Name        : IfcLabel;
      Description : OPTIONAL IfcText;
      Roles       : OPTIONAL LIST [1:?] OF IfcActorRole;
      Addresses   : OPTIONAL LIST [1:?] OF fp_address;
    INVERSE
      IsRelatedBy : SET OF IfcOrganizationRelationship FOR RelatedOrganizations;
      Relates     : SET OF IfcOrganizationRelationship FOR RelatingOrganization;
      Engages     : SET OF IfcPersonAndOrganization FOR TheOrganization;
  END_ENTITY;

  ENTITY IfcActorRole;
      Role            : IfcRoleEnum;
      UserDefinedRole : OPTIONAL IfcLabel;
      Description     : OPTIONAL IfcText;
    WHERE
      WR1 : (Role <> IfcRoleEnum.USERDEFINED) OR
            ((Role = IfcRoleEnum.USERDEFINED) AND
              EXISTS(SELF.UserDefinedRole));
  END_ENTITY;

  ENTITY IfcPerson;
      Id           : OPTIONAL IfcIdentifier;
      FamilyName   : OPTIONAL IfcLabel;
      GivenName    : OPTIONAL IfcLabel;
      MiddleNames  : OPTIONAL LIST [1:?] OF IfcLabel;
      PrefixTitles : OPTIONAL LIST [1:?] OF IfcLabel;
      SuffixTitles : OPTIONAL LIST [1:?] OF IfcLabel;
      Roles        : OPTIONAL LIST [1:?] OF IfcActorRole;
      Addresses    : OPTIONAL LIST [1:?] OF fp_address;
    INVERSE
      EngagedIn    : SET OF IfcPersonAndOrganization FOR ThePerson;
    WHERE
      WR1 : EXISTS(FamilyName) OR 
            EXISTS(GivenName);
  END_ENTITY;

  ENTITY IfcPersonAndOrganization;
      ThePerson       : IfcPerson;
      TheOrganization : IfcOrganization;
      Roles           : OPTIONAL LIST [1:?] OF IfcActorRole;
  END_ENTITY;

  ENTITY IfcOrganizationRelationship;
      Name                 : IfcLabel;
      Description          : OPTIONAL IfcText;
      RelatingOrganization : IfcOrganization;
      RelatedOrganizations : SET [1:?] OF IfcOrganization;
  END_ENTITY;

  ENTITY IfcObject
    ABSTRACT SUPERTYPE
    SUBTYPE OF(IfcRoot);
      ObjectType : OPTIONAL IfcLabel;
    WHERE
      WR1 : SIZEOF(QUERY(temp <* IsDefinedBy | 'IFC2X2_FINAL.IFCRELDEFINESBYTYPE' IN TYPEOF(temp))) <= 1;
  END_ENTITY;

  ENTITY IfcRoot
    ABSTRACT SUPERTYPE;
      GlobalId     : IfcGloballyUniqueId;
      OwnerHistory : fp_apply_owner_history;
      Name         : OPTIONAL IfcLabel;
      Description  : OPTIONAL IfcText;
    UNIQUE
      UR1 : GlobalId;
  END_ENTITY;

  ENTITY IfcActor
    SUBTYPE OF(IfcObject);
      TheActor : IfcActorSelect;
  END_ENTITY;

  ENTITY fp_address;
    INVERSE
      OfOrganization : SET OF IfcOrganization FOR Addresses;
      OfPerson       : SET OF IfcPerson FOR Addresses;
  END_ENTITY;

  ENTITY fp_apply_owner_history;
  END_ENTITY;

  ENTITY fp_assigns_to_actor;
  END_ENTITY;

 ENTITY fp_define_by_properties;
  END_ENTITY;

END_SCHEMA;

Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.1.3 Build:#408 Jan 23, 2006) - Bug/feature request - Contact Administrators