Q5, run 2026-11-05-1515-sonnet-query

← back to the run

Whose credit risk does a holder of the Northwind Finance 2030 notes take, and how is it rated?

Tests: Roles: issuer versus guarantor; a finance subsidiary's guaranteed debt carries the guarantor's risk.

Expected: risk_of = E02 rating = A

✅ D1 sql run 1 graded by code · query session

Northwind Holdings (E02), the guarantor of I03, whose rating is A. I03 is issued by E04 and guaranteed by E02, and I03 is rated A (A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D1 sql run 2 graded by code · query session

The guarantor, Northwind Holdings (E02). I03 is issued by E04 and guaranteed by E02, and is rated A (A10/A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D1 sql run 3 graded by code · query session

The risk is Northwind Holdings (E02), rated A. Instrument I03 is issued by E04 and guaranteed by E02, and A09/A11 affirm A.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D1 sql run 4 graded by code · query session

The holder takes the credit risk of E02, the guarantor of I03, which is rated A (A10, A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D1 sql run 5 graded by code · query session

E02 (Northwind Holdings), rated A. I03 is issued by E04 but guaranteed by E02, so the holder takes the guarantor's risk. E02's A comes from A08, and A09 on its duplicate E03 also shows A.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D2 sql+markdown run 1 graded by code · query session

Northwind Holdings (E02). I03 is guaranteed by E02, and its instrument rating is A (A10/A11), in line with E02's issuer rating of A.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D2 sql+markdown run 2 graded by code · query session

The holder takes the credit risk of E02, Northwind Holdings, rated A. I03 is guaranteed by E02, whose latest rating is A (A09).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D2 sql+markdown run 3 graded by code · query session

Northwind Holdings (E02), rated A. I03 is guaranteed by E02, so it carries the guarantor's credit risk, and E02's latest rating is A (A08, A09).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D2 sql+markdown run 4 graded by code · query session

The holder takes E02's credit risk, rated A. I03 is issued by the finance subsidiary E04 and guaranteed by E02, whose latest rating is A (A08/A09).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D2 sql+markdown run 5 graded by code · query session

The holder takes Northwind Holdings' credit risk (E02), rated A. I03 is guaranteed by E02, and I03 is rated A (A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D4 sparql run 1 graded by code · query session

Northwind Holdings (E02), rated A. I03 is issued by E04 and guaranteed by E02, and I03 itself is rated A (A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D4 sparql run 2 graded by code · query session

E02, rated A. I03 is issued by E04 and guaranteed by E02, so the holder takes the guarantor's risk. E02/E03's latest rating is A, and I03 is also rated A.

JSON: {"risk_of": "E02", "rating": "A"}

🟡 D4 sparql run 3 graded by code · query session

E02, the guarantor of I03. It is rated A- (A08).

JSON: {"risk_of": "E02", "rating": "A-"}

Why: rating: expected A, got A-

✅ D4 sparql run 4 graded by code · query session

E02 (Northwind Holdings), rated A. I03 is issued by E04 but guaranteed by E02, so the holder takes E02's risk (A08/A09).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D4 sparql run 5 graded by code · query session

A holder takes the credit risk of E02 (Northwind Holdings), the guarantor of I03. I03 is rated A (A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D5 sparql+ontology run 1 graded by code · query session

E02 (Northwind Holdings), rated A. I03 is guaranteed by E02, and its instrument rating is A.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D5 sparql+ontology run 2 graded by code · query session

The holder takes E02's credit risk, rated A. I03 is guaranteed by E02, so it follows E02's issuer rating, which was last affirmed at A on 2025-09-15.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D5 sparql+ontology run 3 graded by code · query session

Northwind Holdings (E02), rated A. The notes (I03) are issued by E04 but guaranteed by E02.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D5 sparql+ontology run 4 graded by code · query session

E02 (Northwind Holdings), rated A. I03 is guaranteed by E02, and its latest rating is A (A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D5 sparql+ontology run 5 graded by code · query session

The holder takes the credit risk of E02, the guarantor of I03. I03 is rated A.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D3 sql+executed run 1 graded by code · query session

E02 (Northwind Holdings), rated A. I03 is issued by E04 but guaranteed by E02, and credit_risk_of is E02.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D3 sql+executed run 2 graded by code · query session

The holder takes E02's credit risk (Northwind Holdings, the guarantor of I03), which is rated A (A09).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D3 sql+executed run 3 graded by code · query session

The holder takes E02's credit risk (guarantor of I03). It is rated A (I03 and E02 both A).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D3 sql+executed run 4 graded by code · query session

The holder takes the credit risk of E02, Northwind Holdings, the guarantor of I03 (issued by E04). E02 is rated A, and I03 itself is rated A.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D3 sql+executed run 5 graded by code · query session

The holder takes E02's credit risk, as guarantor of I03. I03 is rated A (A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D6 sparql+axioms run 1 graded by code · query session

E02, rated A. I03 is guaranteed by E02, whose in-force rating is A (A09).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D6 sparql+axioms run 2 graded by code · query session

E02, rated A. The 2030 notes (I03) are issued by E04 and guaranteed by E02, and I03 is rated A.

JSON: {"risk_of": "E02", "rating": "A"}

✅ D6 sparql+axioms run 3 graded by code · query session

The notes (I03) carry the credit risk of E02, the guarantor. They are rated A (A11).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D6 sparql+axioms run 4 graded by code · query session

E02, rated A. I03 is guaranteed by E02, and E02/E03 hold A (A09).

JSON: {"risk_of": "E02", "rating": "A"}

✅ D6 sparql+axioms run 5 graded by code · query session

E02, the guarantor, rated A (A11 on I03).

JSON: {"risk_of": "E02", "rating": "A"}