Expand a product into branch, region, and supplier context
Materialize the enriched result as an ontology and inspect its operational relationships.
Question for this chapter
Which branch and supplier context should be checked with a price-review candidate?
Why this matters now
A product name with a large price gap does not identify the responsible branch or affected region. Connecting product, branch, region, and supplier exposes that context without switching among tables.
Try it
Open Ontology → Modeling and select Retail Inventory Analysis. Inspect the product, branch, region, and supplier entities and their stocked-at, located-in, and supplied-by relations.

Run Retail Ontology Materialization Pipeline. Verify that data appears in all four entity and three relation datasets.

Select Retail Inventory Analysis in Graph explorer, then open Query console.
MATCH path = (p:ri_product)-[:ri_stocked_at]->(b:ri_branch)
-[:ri_located_in]->(reg:ri_region)
OPTIONAL MATCH (p)-[:ri_supplied_by]->(s:ri_supplier)
RETURN path, p, b, reg, s
LIMIT 25
The first path connects a product to a stocking branch and that branch's region. The optional relation also returns its supplier while preserving the earlier path when no supplier exists.

Success looks like this
The current seed creates 8 products, 11 branches, 11 regions, and 8 suppliers. It creates 11 located-in, 56 stocked-at, and 8 supplied-by relations.

Interpret the result
The 46,700 raw rows aggregate to 56 stocked-at relationships at product × branch level. Price and
inventory remain on ri_stocked_at, so a candidate product can be traced to its affected branches.
Next decision
Relationships explain a candidate's context but do not choose a priority. Next, read the dashboard in a fixed order and decide the response.