Mapping IFC Entities onto 3DEXPERIENCE PLM Objects

You can edit the file that Converter for IFC provides by default to map IFC entities onto 3DEXPERIENCE PLM Objects, such as AEC, MEP and others.

Either

  • Modify the file, to change the default mapping, using only baseline entities (Available on the cloud and on premises).
  • Or complete the file, by adding mapping onto customized PLM products, if customization is available.

  1. Go to Installation_Path\win_b64\startup\XCAD\EntityMapping.

    Files to modify are:

    • IFC.xml: Describes the mapping between IFC entities and NeutralID.
    • DataExchangeNeutralID.xml: Describes the mapping between NeutralID and Discipline.

      Discipline specifies the mapping file to use. If Discipline is Building, the mapping file is Enovia_BUILDING.xml.

    • The other files such as Enovia_BUILDING.xml describe the mapping between the NeutralID and the types.

  2. To modify the default mapping, open and edit ENOVIA_Building.xml and replace values as required.
  3. To complete the default mapping
    1. Open DataExchangeNeutralID.xml, and add a line with a new NeutralID.

      For example, add <NeutralID Name = "CustomVerticalBeam" Discipline = "Building" />

    2. Open and edit IFC.xml to map an IFC entity onto the new NeutralID.

      For example:

      <NeutralID Name ="CustomVerticalBeam">
      		<Entity Name = "IfcColumn">
      		</Entity>
      	</NeutralID>  
      

    3. Open and edit a 3DEXPERIENCE mapping file (for example ENOVIA_Building.xml) to map the NeutralID onto the customized 3DEXPERIENCE type.

      For example

      <NeutralID Name ="CustomVerticalBeam" >
      		<Entity Name = "AecBeam">
      		</Entity>
      		</NeutralID>
      

  4. Optional: When modifying the default mapping or adding new mapping information, add conditions, values or priorities.

    For example

    <NeutralID Name ="CustomVerticalBeam" >
    		<Entity Name = "AecBeam" Priority = "3">
    			<Condition Attribute = "IfcBeam_ObjectType" Value="CustomColumnFromBeam"/>
    		</Entity>
    		</NeutralID>
    

  5. Deploy the mapping files in Data Setup.

    For more information, see

    Tip: Alternatively, modify the runtime view in winb-64.

Below are more examples of files contents:

In DataExchangeNeutralID.xml

<NeutralID Name = "BEAM" Discipline = "Building" />
<NeutralID Name = "HVAC_FlexibleDuct" Discipline = "HVAC" />
<NeutralID Name = "CustomVerticalBeam" Discipline = "Building" />

In IFC.xml

<DataExchangeEntityMapping>
	<NeutralID Name = "BEAM" >
		<Entity Name = "IfcBeam"/>
	</NeutralID>

	<NeutralID Name = "HVAC_FlexibleDuct" >
		<Entity Name = "IfcDuctSegment"  Priority = "2" >
			<Condition Attribute = "PredefinedType" Value = "FLEXIBLESEGMENT" />
			<Valuate Attribute = "TypeObject" Value = "IfcDuctSegmentType"/>
			<Valuate Attribute = "PredefinedType" Value = "FLEXIBLESEGMENT"/>		
		</Entity>
		<Entity Name = "IfcFlowSegment"  Priority = "3" >
			<Condition Attribute = "TypeObject" Value = "IfcDuctSegmentType" />
			<Condition Attribute = "PredefinedType" Value = "FLEXIBLESEGMENT" />
		</Entity>
	</NeutralID>	

	<NeutralID Name ="CustomVerticalBeam">
		<Entity Name = "IfcColumn">
			<Condition Attribute = "ObjectType" Value = "CustomColumnFromBeam"/>
		</Entity>
	</NeutralID>  
</DataExchangeEntityMapping>

In ENOVIA_Building.xml

<DataExchangeEntityMapping>
	<NeutralID Name = "BEAM" >
		<Entity Name = "AecBeam" Priority = "2"/>
	</NeutralID>

	<NeutralID Name ="CustomVerticalBeam" >
		<Entity Name = "AecBeam" Priority = "3">
			<Condition Attribute = "IfcBeam_ObjectType" Value="CustomColumnFromBeam"/>
		</Entity>
		</NeutralID>

	<NeutralID Name = "HVAC_FlexibleDuct" >
		<Entity Name = "HVAC_Flexible_Duct" />
	</NeutralID>
</DataExchangeEntityMapping>