I have just checked in a change to Gepsio that correctly validates calculation arcs that use destination labels that reference more than one locator.
Take a look at the following calculation link:
<calculationLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
<loc xlink:type="locator" xlink:href="397-ABC.xsd#A" xlink:label="summationItem" />
<loc xlink:type="locator" xlink:href="397-ABC.xsd#B" xlink:label="contributingItem" />
<loc xlink:type="locator" xlink:href="397-ABC.xsd#C" xlink:label="contributingItem" />
<calculationArc
xlink:type="arc"
xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item"
xlink:from="summationItem"
xlink:to="contributingItem" weight="1"
/>
</calculationLink>
This example, taken from the 397.00 conformance test in the XBRL-CONF-CR3-2007-03-05 conformance suite, defines a calculation arc that arcs from “summationItem” to “contributingItem”. The issue here is that there are two locators that use the “contributingItem” label:
- 397-ABC.xsd#B
- 397-ABC.xsd#C
Both of these locators must participate in the calculation arc. In the current CTP of Gepsio, only the fact referenced by the first locator is used to validate the calculation arc. With the new code, both facts referenced by both locators are used to validate the calculation arc.
This improved functionality will be available in the next CTP to released (which I am currently targeting for release in the next week or so).