Q38, run 2026-11-05-1234-sonnet
Which institutions is W71 credited to, at every level?
Tests: Local rule on affiliations, then the hierarchy: the Tessel Laboratory is listed last, so Halloran gets nothing.
Expected: institutions = ['I01', 'I02', 'I03', 'I04']
csv run 1
I06 and I04, plus their parents I03, I02 and I01.
JSON: {"institutions": ["I04", "I06", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I04', 'I06', 'I03', 'I02', 'I01']
csv run 2
I06, I04, I03, I02, I01. I06 and I04 are listed directly, and I03, I02, I01 are their ancestors.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
csv run 3
I06, I04, I03, I02, I01. W71 is credited to I06 and I04, which roll up to I02 and I03 and then to I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
csv run 4
I06 and I04, plus their ancestors I03, I02 and I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
csv run 5
I06, I04, I03, I02, I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
rdf run 1
I06, I04, I03, I02, I01.
JSON: {"institutions": ["I01", "I02", "I03", "I04", "I06"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I01', 'I02', 'I03', 'I04', 'I06']
rdf run 2
I06, I04, I03, I02, I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
rdf run 3
I06, I04, I03, I02, I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
rdf run 4
I06, I04, I03, I02, I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
rdf run 5
I01, I02, I03, I04, I06. I06 sits under I02, I04 under I03 under I02, and I02 under I01.
JSON: {"institutions": ["I01", "I02", "I03", "I04", "I06"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I01', 'I02', 'I03', 'I04', 'I06']
rdf+ontology run 1
I04, I03, I02, I01. A08's last-listed affiliation on W71 is I04, and the credit passes up through its parents.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
rdf+ontology run 2
I04, I03, I02, I01. W71's last-listed affiliation is I04, which sits under I03, I02 and I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
rdf+ontology run 3
I04, I03, I02, I01. W71 is credited to I04 (seq 2), and then to every institution above it.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
rdf+ontology run 4
I04, I03, I02 and I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
rdf+ontology run 5
I04, I03, I02, I01. A08 listed I06 first and I04 last on W71.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+ontology run 1
I04, I03, I02, I01. W71's author listed I04 last, and the credit passes up through its parents.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+ontology run 2
I04, I03, I02 and I01. A08 listed I06 then I04 on W71, so I04 is credited, and the credit rolls up through its parents.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+ontology run 3
I04, I03, I02, I01. On W71 the last-listed affiliation is I04, and credit passes up through its parents.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+ontology run 4
I04, I03, I02 and I01. For W71, A08's last-listed affiliation is I04, and the credit passes up through its parents.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+ontology run 5
I04, I03, I02, I01. For W71, I04 is the last-listed affiliation, and the credit passes up through its parents.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+markdown run 1
I04, I03, I02, I01. For W71, A08's last-listed affiliation is I04, which sits under I03, I02 and I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+markdown run 2
I04, I03, I02, I01. A08's last-listed affiliation on W71 is I04, and credit passes up the chain.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+markdown run 3
I04, I03, I02, I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+markdown run 4
I04, I03, I02 and I01. For W71 the last-listed affiliation is I04, and credit passes up through its parents.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+markdown run 5
I04, I03, I02, I01. W71's last-listed affiliation is I04, and its parents follow.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
csv+padding run 1
I06, I04, I03, I02, I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
csv+padding run 2
I06 and I04 directly. Their parents are I02 and I03, and above those I01.
JSON: {"institutions": ["I01", "I02", "I03", "I04", "I06"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I01', 'I02', 'I03', 'I04', 'I06']
csv+padding run 3
I01, I02, I03, I04 and I06. W71 lists I06 and I04, and their ancestors are I02, I03 and I01.
JSON: {"institutions": ["I01", "I02", "I03", "I04", "I06"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I01', 'I02', 'I03', 'I04', 'I06']
csv+padding run 4
I06 and I04, plus their parents I03, I02 and I01.
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
csv+padding run 5
I06, I04, I03, I02, I01 (the two listed institutions plus their ancestors).
JSON: {"institutions": ["I06", "I04", "I03", "I02", "I01"]}
Why: institutions: expected ['I01', 'I02', 'I03', 'I04'], got ['I06', 'I04', 'I03', 'I02', 'I01']
executed run 1
I04, I03, I02, I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
executed run 2
I04, I03, I02, I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
executed run 3
I04, I03, I02 and I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
executed run 4
I04, I03, I02, I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}
executed run 5
I04, I03, I02 and I01.
JSON: {"institutions": ["I04", "I03", "I02", "I01"]}