Attribute Management of Hotlinks

by Emőke Csikós, Greg Kmethy and GRAPHISOFT · updated: 07.28.2016

General attribute management concepts

When hot linking a Module file into another file, the necessary, but not all attributes (layers, line types, complex profiles, etc…) of the source file will be appended to the attributes of the host file. This means that if any element in the hotlink module uses an attribute that is not available in the host file, then ArchiCAD will add the new attribute to the host file.
If an attribute with the same name already exists in the host file, then elements in the hotlink module will use the existing attribute.

 

If you create a new attribute in the source file, it will be imported into the host file when you first update the hotlink. But the new attribute will be carried over only if there is an element in the source file using that attribute. Note, however, that if you modify an existing attribute in the source file, it will NOT change in the host file when you update the hotlink. To change the existing attribute in the host file you need to use the Attribute Manager and have to overwrite the host file’s attribute with the properties of the source file’s attribute. This is because ArchiCAD identifies attributes by name and ID only, and not by its properties.

As an exception to attributes, layer combinations are not imported with hotlinks. This is because layer combinations are only meaningful in the context of a given layer set, and since not all layers are imported with the hotlink, importing the layer combination is of little practical use.

Name or ID?

Every attribute (except pens) has a name and an ID. It might happen that both the host and the linked file has an attribute with the same name and/or ID. In this case – as a general rule – the name determines what will happen: If the name of the attribute to be appended already exists in the host file, then the attribute will not be appended to the host file, and elements in the hotlinked module will use the attribute already defined in the host file.

Example: File “A” has a material named “Wood” which has a light pine texture associated with it. You hotlink file “B”, which also has a material called “Wood” with a dark oak texture. The hotlinked elements that come from file “B” will have light pine appearance in file “A”.

So, when an element “looks different” in the host file and the source file, this is probably the reason.

What’s the Deal with IDs?

Assume you have a fill with ID#31 with the name “Tiles” in the host file, and you have a fill with the same ID#31, but with name “Concrete” in the Hotlinked file. In this case, the “Concrete” fill will be appended to the host file’s attributes, but since the ID#31 is already taken, it will get a new ID (the next available number in the host file, say #62). The hotlinked elements using that fill will then refer to this attribute (#62, Concrete). This does not matter much as far as display is concerned, elements will look as expected (with the “Concrete” fill).

However, this might be a slight inconvenience when it comes to using the Attribute Manager. Attribute manager has two functions: “Append” and “Overwrite”.

  • AttributeManager.PNG
  • Append will copy over the attribute from one file to the other, and assign an unused ID to the attribute.
  • Overwrite will overwrite an attribute of one file with the attribute in the other file that has the same ID.

Example: You have “#31-Tile” in file “A” and “#31-Concrete” in file “B”:

  • Appending attributes from “B” to “A” will create a new fill: “#62-Concrete”
  • Overwriting attributes from “B” to “A” will delete “#31-Tile” and replace it with “#31-Concrete”

It’s not hard to see why it quickly becomes an issue if you have the same attribute with different IDs in different files: Maybe different users modified how “Concrete” looks in different files, an you just want to standardize it. But if “Concrete” has a different ID in every file, then it’s pretty hard to achieve that using the Attribute Manager. For this reason, it is highly recommended to keep an unified set of attributes for a project consisting of several files. Have a good template, and limit who can modify attributes.

Keeping Attributes consistent across multiple files

If you would like to handle the attributes uniformly over a set of files, you can keep a designated “attributes.PLN file”, in which all the attributes are created. This file will not hold any model data. When you need to modify attributes, you would do that in the “attributes.PLN” and then use the Attribute Manager to overwrite the changed attributes in all the other files. This is time consuming, so it is essential that you start off with a good template with most of the attributes pre-defined before you even start the project.

Unifying attributes of a file set

What if you already have a set of files with different sets of attributes? This is a possible way to unify/standardize attributes:

  1. Create the “attributes.PLN” file with using the attribute set of one of the files (File/New/”Use settings of latest project…”)
  2. Using the Attribute Manager, append all of the attributes from all of the other projects to the “attributes.PLN”. Now you have a file that has all the attributes you will ever need
  3. Using the Attribute manager overwrite the attributes of all the files from the “attributes.PLN”
  4. Hotlink the “attributes.PLN” file into all the other files, and from this point on, manage all the attributes in this file

Please note that a new attribute will only be added to the host file’s attribute set if there is an element in the source file (“attributes.PLN”) associated with the new attribute. If you don’t want elements of “attributes.PLN” appear in the host file, you don’t have to hotlink it in the host file (step 4). You can always keep attributes up-to-date in “attributes.PLN” and follow up with modifications in all the other files of the file set using the Attribute Manager in these files. Please also note one more fact that was mentioned above in this article: “if you modify an existing attribute in the source file, it will NOT change in the host file when you update the hotlink. To change the existing attribute in the host file you need to use the Attribute Manager and have to overwrite the host file’s attribute with the properties of the source file’s attribute. This is because ArchiCAD identifies attributes by name and ID only, and not by its properties.”.


Layers and Layer Combination special tweaks

ArchiCAD has a hidden setting to alter the way layers and layer combinations behave in Hotlinks. Changing the default setting will cause that all layers (not just the used ones) and all layer combinations from the linked file will be appended to the host file. This way, layer combinations of the source file are also available in the host file.

  • /!\ Think twice before you turn this feature on. In most cases, this just creates an unnecessarily long list of mostly unused layers. It’s a better idea to keep the number of layers as low as possible.

Setting on Windows:

Find registry key HotlinkLayerCombinationEnabled

  • Value: 0 (default) – only used layers areimported, layer combinations are not imported
  • Value:1 – all layers and layer combinations are imported from the source file

Setting on Mac:

Open file com.graphisoft.AC [version] INT v1.plist from User\Library\Preferences with free application Pref Setter and find key HotlinkLayerCombinationEnabled

  • Value: FALSE (default) – only used layers areimported, layer combinations are not imported
  • Value: TRUE – all layers and layer combinations are imported from the source file
  • Was this Helpful ?
  • 1   ​0

Related content

Attribute Manager

The Attribute Manager (Options menu) is a handy tool to create and manage the Company-standards in your ArchiCAD projects. Its commands allows you to copy (append, overwrite) attributes (Layers, Layer Combinations, Pens & Colors, Line Types, Fill…

Attribute Manager

Open the Attribute Manager from Options > Element Attributes > Attribute Manager. Displaying the dialog box might take some time, since it has to list all the attributes of the project. This dialog boxallows you to copy (append, overwrite)…

Number of attributes

ForWikiEditors : ToDoTechTip/ - update article Speed becomes an increasing concern as the size of the Project grows. Following the below guidelines you can make sure you do not unnecessarily slow yourself down or if you do, you know where to look for the…

Attributes

There are five groups dedicated to different attributes: Layers, Pens and Colors, Line Types, Fills, and Font-Style Conversion . Each group consists of a “Method” set and/or one or more conversion “Dictionary” sets. The “Method” set contains options to…

Attributes

ArchiCAD Attributes are groups of defined settings available to your project. For example, Line Types and Surfaces are Attributes which you can apply to many project elements as you create them. You will access these attributes in the appropriate dialog…

Smarter Attribute Management

After migration to ArchiCAD 17, using file merge or working with hotlinks, you may need to get rid of the unneeded attributes (e.g. layers, line types, fill types). A new workflow for attribute management helps save you time and prevent costly mistakes…

Hotlinked Modules

Hotlinked Modules With Hotlinked Modules, external ArchiCAD files such as modules, plan files and Teamwork projects can be inserted into the currently open project (host). Hotlinked elements inserted into the host reflect all modifications made to the…

Managing Hotlinks

Use the Hotlink Manager ( File > External Content > Hotlink Manager ) to gain an overview of and manage all the modules in your project. The “Hotlinked Modules” list (in the top half of the dialog box) displays the hierarchy of modules hotlinked…

Hotlinked Modules

  For general information, see About Hotlinked Modules in ArchiCAD Help. Hotlinked Modules allow you to insert the contents of external ArchiCAD files (sources) into the currently open Project (host).Hotlinked Modules can be used, for example, to…