cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 
Project data & BIM
About BIM-based management of attributes, schedules, templates, favorites, hotlinks, projects in general, quality assurance, etc.

XML Import via code

RahiLo
Contributor

Question: How to properly populate Building Material properties in Archicad XML exports

Hello! I'm working on programmatically generating Archicad XML files for Building Materials. I can successfully create the XML
structure and import it into Archicad - the materials show up with the correct names and Archicad recognizes them. However, I'm
facing an issue:

 

The Problem:
When I import the Building Material XML into my Archicad project, the material appears with the correct name, but when I inspect
the material properties, they are either empty or showing default values instead of the values I specified in the XML.

What I've tried:

  • Exporting existing Building Materials from Archicad to understand the XML structure
  • Matching the XML schema exactly (BuildingMaterial elements with properties like ThermalConductivity, Density, HeatCapacity,
    etc.)
  • Including BIMData sections with PropertyValueTableProxy
  • Using the correct attribute structure with Name, Index, ID, etc.

Specific questions:

  1. Is there a specific logic or workflow for how Archicad reads and applies property values from imported Building Material XML
    files?
  2. Should properties be defined in multiple places (both as direct XML elements AND within PropertyValueTableProxy)?
  3. Are there any required fields or specific formatting that must be present for Archicad to actually apply the property values?
  4. I noticed fields like MaterialGroupNameFromCatalog and MaterialNameFromCatalog - do these affect how Archicad reads
    properties? Should materials reference a catalog for properties to work?

Im using AI to understand how, but i need instructions maybe elsewhere. Ive added some files too, what i generate.

 

Operating system used: Windows

3 REPLIES 3
GabrielGG
Booster

Hello @RahiLo ?

maybe you already know but it's easy to forget. When you export the Attributes XML from Archicad. There is a extra folder created that is called "addpars" ... there Archicad exports an extra XML for each material, that contains the part of the Values that are used by the Cinema4D render engine.

most probably it's not going to solve your problem, but maybe it helps

 

Gabriel

Since Archicad 11
Currently at Franz&Sue Zt GmbH

Yes, im aware of that. I skip that part.

Im wondering how to make it work so we can write new materials by code and import them via XML. Is there some secret behind there, logic etc.. Hard to know because i cannot find any documentation on how ArchiCAD generates and reads XML, what are the vital fields.

At the end of this Video (40.57) there is a comment of that and from 34:45 is adressing Pyton to Edit attributes (the entire Video is really recommended)

 

The dark side of Attribute Chaos in Archicad with Scott J Moore

 

I'm learning now how to use Python but I create Attributes through editing XMLs directly in a Visual Table Editor.
Normally there are a minimum of Properties you need to define so that Archicad accept the Attribute and define the rest automatically.

Here a Screenshot of how I see the XML in my XML editor. The Red X don't need to be defined because Archicad reads the 2 Fields with the Green Check-Symbol. For all the Others it would be necessary to create a new Material manually and add one after the others the Values until Archicad accepts it.
I think there is no documentation about the minimum necessary to create the Attributes by code

 

GabrielGG_0-1759762516573.png

 

Since Archicad 11
Currently at Franz&Sue Zt GmbH

Setup info provided by author