Cycles in relationships

Yes, that is correct.

foo3 is already included in the compound document and cannot be under the included array.

I would interpret “included resources” in the first rule you mentioned as “included resources that need to be added to the document in addition to the primary data”.