0

We have several Revit projects hosted on BIM360 and need to extract link information from the files.

The links where created in Revit following the proposed workflow described here.

Querying the references endpoint of the data management API {{FORGE_HOST}}/data/v1/projects/:project/versions/:version/relationships/refs, we sometimes get empty arrays, while sometimes all works as expected.

We tried to find the differences between the files that worked and those that didn't and queried additional version information using {{FORGE_HOST}}/data/v1/projects/:project/versions/:version.

The one/only? distinguishing factor that we found is that all files that do not show links where those that had attributes.extension.data.isCompositeDesign = true. However, we have no idea how to avoid isCompositeDesign upon creating the files and links in Revit.

We would be grateful for any hints regarding

  1. if this flag has indeed direct effect on the way links are processed.
  2. what this flag means and what leads to it being true
kai
  • 59
  • 6

2 Answers2

2

When the main model and linked models are all synced and published to BIM360, isCompositeDesign = false.

When either of the link models is updated (locally) but unpublished to cloud (BIM360), while the host model has been published with updated contents of the linked models, isCompositeDesign = true. This help document tells such behavior about cloud work sharing models with linked models:

Downloaded source file from BIM 360 does not contain linked Revit files.

And in this case, it will be an zip file when downloading the main model.

In any case (isCompositeDesign =true/false), I think /relationships/refs should return linked models info for developers to re-publish the linked models by the tutorial below. https://forge.autodesk.com/en/docs/data/v2/reference/http/PublishModel/

However, with my test, it looks when isCompositeDesign = true, /relationships/refs return empty array, as you have observed. I am checking with engineer team about this behavior or anything I missed.

Xiaodong Liang
  • 2,051
  • 2
  • 9
  • 14
  • Xiaodong Liang, thank you very much for the clarification and checking up on the issue regarding the empty array upon isCompositeDesign files. Looking forward to hearing from you – kai Oct 21 '21 at 12:24
  • @kai, sorry our engineer team may not have chance to check this issue in detail. I logged it in internal tracking system: FDM-3977. Thank you for your patience. – Xiaodong Liang Nov 08 '21 at 03:28
  • Xiaodong Liang, has anything happened yet on FDM-3977? For us, it is actually a big issue not being able to access references for isCompositeDesign=true versions, as this means that we cannot load models in Design Automation that feature nested references, ie. have references in references. The zip file only contains the direct successors and we would need the :version/relationships/refs API to retrieve nested successors. – kai Feb 10 '22 at 07:10
  • @kai, our engineer team took a look at the ticket, but unfortunately not prioritized it yet. I appended your inquiry to this ticket to push them to investigate. Could you mail me at xiaodong.liang AT autodesk.com with your company info, contact and business case info (if any), in case it would help the engineer team to evaluate the importance – Xiaodong Liang Feb 15 '22 at 04:10
0

Coming up with an answer after some more investigation:

  1. The flag isCompositeDesign has indeed a direct effect on the way links are processed, see 2

  2. The flag is set if all linked files, including the host file are bundled in a zip file. If a zip file is used depends on the way the links are hosted, see below.

We found the following sources that adress this flag:

stackoverflow discussion: Here, Bret Thompson asks in a comment:

What controls if a BIM 360 project publishes "Composite" files or not?

Dion Moult answers:

I believe it is due to two factors: 1) are there links, and 2) are the links at a particular version which is not the latest

He also refers to this discussion, where bogdan.ciobanu goes into detail:

When a model is published, if any linked models are High Trust (directly linked from the source folder) and the latest version of the linked model is not published, Revit Cloud Worksharing will include the linked models as a zip so that the extractor has all the data it needs. If a newer version of the host model is published and the linked model version is already published then no zip is created.

kai
  • 59
  • 6