Skip to content

Commit a98162b

Browse files
committed
Add visualize-query-ontology-fabric-iq module
1 parent 3321474 commit a98162b

16 files changed

Lines changed: 410 additions & 0 deletions
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.introduction
3+
title: Introduction
4+
metadata:
5+
title: Introduction
6+
description: Introduction to visualizing and querying ontology data with Microsoft Fabric IQ using the relationship graph and Query builder.
7+
ms.date: 03/30/2026
8+
author: theresa-i
9+
ms.author: theresai
10+
ms.topic: unit
11+
ai-usage: ai-generated
12+
azureSandbox: false
13+
labModal: false
14+
durationInMinutes: 3
15+
content: |
16+
[!include[](includes/1-introduction.md)]
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.explore-ontology
3+
title: Explore the ontology
4+
metadata:
5+
title: Explore the Ontology
6+
description: Learn how to open the entity type overview, view entity instances, and inspect individual entity instance details and relationships in Microsoft Fabric IQ.
7+
ms.date: 03/30/2026
8+
author: theresa-i
9+
ms.author: theresai
10+
ms.topic: unit
11+
ai-usage: ai-generated
12+
azureSandbox: false
13+
labModal: false
14+
durationInMinutes: 5
15+
content: |
16+
[!include[](includes/2-explore-ontology.md)]
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.visualize-relationships
3+
title: Visualize relationships in the relationship graph
4+
metadata:
5+
title: Visualize Relationships in the Relationship Graph
6+
description: Learn how to expand the relationship graph, run the default query to see entity instances as nodes and relationships as edges, and navigate connected business concepts in Microsoft Fabric IQ.
7+
ms.date: 03/30/2026
8+
author: theresa-i
9+
ms.author: theresai
10+
ms.topic: unit
11+
ai-usage: ai-generated
12+
azureSandbox: false
13+
labModal: false
14+
durationInMinutes: 5
15+
content: |
16+
[!include[](includes/3-visualize-relationships.md)]
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.query-ontology-query-builder
3+
title: Query ontology data with the Query builder
4+
metadata:
5+
title: Query Ontology Data with the Query Builder
6+
description: Learn how to use the Query builder in Microsoft Fabric IQ to add filters, control components, run cross-source queries, and interpret results in Diagram, Card, and Table view.
7+
ms.date: 03/30/2026
8+
author: theresa-i
9+
ms.author: theresai
10+
ms.topic: unit
11+
ai-usage: ai-generated
12+
azureSandbox: false
13+
labModal: false
14+
durationInMinutes: 6
15+
content: |
16+
[!include[](includes/4-query-ontology-query-builder.md)]
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.refresh-graph-model
3+
title: Refresh the graph model
4+
metadata:
5+
title: Refresh the Graph Model
6+
description: Learn when and how to refresh the graph model in Microsoft Fabric IQ to keep ontology data current with upstream data source changes, including manual refresh and scheduled refresh options.
7+
ms.date: 03/30/2026
8+
author: theresa-i
9+
ms.author: theresai
10+
ms.topic: unit
11+
ai-usage: ai-generated
12+
azureSandbox: false
13+
labModal: false
14+
durationInMinutes: 5
15+
content: |
16+
[!include[](includes/5-refresh-graph-model.md)]
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.exercise-query-ontology
3+
title: Exercise - Query ontology across data sources
4+
metadata:
5+
title: Exercise - Query Ontology Across Data Sources
6+
description: Practice using the Query builder in Microsoft Fabric IQ to answer a business question by adding filters, selecting components, and interpreting graph query results.
7+
ms.date: 03/30/2026
8+
author: theresa-i
9+
ms.author: theresai
10+
ms.topic: unit
11+
ai-usage: ai-generated
12+
azureSandbox: false
13+
labModal: false
14+
durationInMinutes: 20
15+
content: |
16+
[!include[](includes/6-exercise-query-ontology.md)]
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.knowledge-check
3+
title: Module assessment
4+
metadata:
5+
title: Module Assessment
6+
module_assessment: true
7+
ai_generated_module_assessment: true
8+
description: Check your knowledge of visualizing and querying ontology data with Microsoft Fabric IQ.
9+
ms.date: 03/30/2026
10+
author: theresa-i
11+
ms.author: theresai
12+
ms.topic: unit
13+
ai-usage: ai-generated
14+
azureSandbox: false
15+
labModal: false
16+
durationInMinutes: 5
17+
quiz:
18+
title: "Check your knowledge"
19+
questions:
20+
- content: "A data analyst opens the entity type overview for the Patient entity type and notices the entity instances table shows fewer rows than the source lakehouse table. What is the most likely cause?"
21+
choices:
22+
- content: "The entity type has too many properties configured."
23+
isCorrect: false
24+
explanation: "Incorrect. The number of properties doesn't affect how many instances are loaded. The entity type key and binding configuration determine instance count."
25+
- content: "The entity type key doesn't correctly match a unique column in the source table."
26+
isCorrect: true
27+
explanation: "Correct. The key configuration determines how the system identifies and loads entity instances from the source data. A mismatched or missing key prevents instances from loading correctly."
28+
- content: "The relationship graph tile hasn't been expanded yet."
29+
isCorrect: false
30+
explanation: "Incorrect. The relationship graph tile is separate from the entity instances table and doesn't affect how instances are loaded."
31+
- content: "In the relationship graph, a Room node shows no edges connecting it to any Patient nodes, even though the source lakehouse table shows patients assigned to that room. What does this indicate?"
32+
choices:
33+
- content: "The Patient entity type has too many active filters applied."
34+
isCorrect: false
35+
explanation: "Incorrect. Filters narrow query results but don't affect whether relationship edges exist in the graph structure."
36+
- content: "The Room entity type needs to be refreshed separately from the Patient entity type."
37+
isCorrect: false
38+
explanation: "Incorrect. Refresh applies to the graph model as a whole, not to individual entity types separately."
39+
- content: "The relationship binding isn't finding matching records based on the configured entity type keys."
40+
isCorrect: true
41+
explanation: "Correct. Edges only appear in the graph when the relationship binding matches keys between entity instances. If source data exists but edges don't appear, the relationship binding configuration may not be matching records correctly."
42+
- content: "You want to query the ontology for patients assigned to rooms in the Cardiology department. Which combination of Query builder controls do you need?"
43+
choices:
44+
- content: "Add a filter for DepartmentName = Cardiology and ensure Department, Room, and Patient nodes are enabled in the Components pane."
45+
isCorrect: true
46+
explanation: "Correct. A filter on the Department entity type narrows results to Cardiology, while enabling the appropriate node and edge types in the Components pane controls what appears in the graph results."
47+
- content: "Remove all components except Patient nodes and run the default query."
48+
isCorrect: false
49+
explanation: "Incorrect. Removing Department and Room components from the query would exclude the entity types needed to trace the connection path from Cardiology to patients. All three node types are required."
50+
- content: "Switch to Table view and add a filter for each entity type separately."
51+
isCorrect: false
52+
explanation: "Incorrect. The view type (Diagram, Card, Table) only changes how results are displayed, not which entities are returned. Switching views doesn't affect query filtering."
53+
- content: "A clinical analyst adds three new patients to the Lamna Healthcare lakehouse. She then opens the ontology and doesn't see the new patients in the entity instances table. What should she do?"
54+
choices:
55+
- content: "Modify the Patient entity type's property definitions to pick up the new records."
56+
isCorrect: false
57+
explanation: "Incorrect. Changing property definitions triggers a schema refresh but doesn't help here—new data rows aren't detected automatically, only structural changes to the ontology are."
58+
- content: "Open the Query builder and clear the active filters."
59+
isCorrect: false
60+
explanation: "Incorrect. Clearing Query builder filters doesn't affect the entity instances table, which reflects the last ingested data regardless of any filters applied in the graph view."
61+
- content: "Manually refresh the graph model from the workspace to re-ingest the updated source data."
62+
isCorrect: true
63+
explanation: "Correct. When data changes in an upstream lakehouse or eventhouse, the graph model doesn't update automatically. Manually triggering a refresh (or waiting for a scheduled refresh) re-ingests the updated source data and makes the new patient records visible."
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
### YamlMime:ModuleUnit
2+
uid: learn.wwl.visualize-query-ontology-fabric-iq.summary
3+
title: Summary
4+
metadata:
5+
title: Summary
6+
description: Summary of visualizing and querying ontology data with Microsoft Fabric IQ.
7+
ms.date: 03/30/2026
8+
author: theresa-i
9+
ms.author: theresai
10+
ms.topic: unit
11+
ai-usage: ai-generated
12+
azureSandbox: false
13+
labModal: false
14+
durationInMinutes: 2
15+
content: |
16+
[!include[](includes/8-summary.md)]
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
Imagine you're a data analyst at Lamna Healthcare. You've spent the past few weeks building an ontology in Fabric IQ. Hospital, Department, Room, Patient, and VitalSignEquipment entity types are defined, bound to the lakehouse and eventhouse, and structurally sound. Now comes the reason you built it.
2+
3+
The clinical operations manager stops by with a question: "Which rooms in the Cardiology department currently have patients, and which vital sign monitors are active there?" Before the ontology, answering that question meant writing a multi-table SQL join—linking patient assignment records to rooms, rooms to departments, and departments to equipment logs. With the ontology in place, the same question becomes a graph query that follows named relationships across your semantic layer, no joins required.
4+
5+
In this module, you open the entity type overview to inspect the entity instances that your data bindings have populated. You see individual Department, Room, and Patient records drawn from your OneLake sources. You expand the relationship graph to visualize how those instances connect—patients assigned to rooms, rooms belonging to departments, equipment monitoring patients. You use the Query builder to add filters for specific property values, control which entity types and relationship types appear using the Components pane, and run queries that span your lakehouse and eventhouse without writing any SQL.
6+
7+
You also learn how to keep the graph current. When upstream data in your lakehouse or eventhouse changes, the graph model doesn't update automatically. You explore when schema changes trigger automatic re-ingestion and when data changes require a manual or scheduled refresh—and how to set that schedule.
8+
9+
By the end of this module, you're equipped to turn the ontology into answers: exploring connected healthcare data the way business users think about it.
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
The ontology you built in the previous module now contains populated data. Each entity type definition has become a collection of entity instances—real records from your lakehouse tables and eventhouse streams. Exploring how those instances appear is the first step in getting value from your ontology.
2+
3+
## Open the entity type overview
4+
5+
The entity type overview is your starting point for exploring any entity type's instances and connections. To open it, select an entity type in the **Entity Types** pane—for example, **Department**—and then select **Entity type overview** from the ribbon.
6+
7+
The overview page shows three sections: the relationship graph tile, property charts, and entity instances table for the Department entity type. If you previewed the ontology at the end of the previous module, you recognize this experience. With fully bound data, the entity instances table now shows the actual departments from your lakehouse: Cardiology, ICU, Surgical, and Emergency.
8+
9+
:::image type="content" source="../media/department-overview.png" alt-text="Screenshot of the Department entity type overview showing the relationship graph tile, property charts, and entity instances table with Cardiology, ICU, Surgical, and Emergency departments.":::
10+
11+
The entity instances table reflects the records in your bound data source. Each row is one department from the Departments table in your lakehouse. The columns correspond to the properties you defined: DepartmentId, DepartmentName, Floor, and HospitalId.
12+
13+
## Verify data population
14+
15+
The instances table confirms your data binding is working. As you explore, check a few things:
16+
17+
- **Row count matches expectations**: The Lamna Healthcare dataset has five departments. Five rows means the binding is pulling the full table.
18+
- **Property values look correct**: DepartmentName values should be recognizable business terms, not technical column names or raw IDs.
19+
- **Key values are present**: HospitalId links each department to its parent hospital. Missing or inconsistent values here may affect how the Hospital–Department relationship populates.
20+
21+
If the table is empty, the most common cause is a mismatch between the entity type key and the actual values in the source table. Return to the data binding configuration and verify the key property maps to the correct source column.
22+
23+
## Explore an entity instance
24+
25+
The entity instances table is a gateway to individual records. Select any row to open the instance view for that specific instance.
26+
27+
The instance view shows all property values for that record—the actual data from your lakehouse. For the Cardiology department, you see DepartmentId: 3, DepartmentName: Cardiology, Floor: 2, and HospitalId: 1.
28+
29+
Below the properties, the instance view displays a scoped relationship graph: a view of this department's actual connections to other entities in the ontology. You see which hospital it belongs to—the Hospital instance with HospitalId 1—and which rooms are part of this department—the Room instances with DepartmentId 3.
30+
31+
:::image type="content" source="../media/department-instance.png" alt-text="Screenshot of the Cardiology department instance view showing property values and a scoped relationship graph with connections to the parent Hospital instance and three Room instances.":::
32+
33+
This instance graph is the ontology in action. The relationship configuration you defined—Department located in Hospital, Department has Room—now shows actual connections between real records, not just concept definitions. The Cardiology department isn't an abstract definition; it's a connected node in your organization's data graph.
34+
35+
With instance-level exploration covered, you're ready to expand the relationship graph to see all entity instances and their connections together.

0 commit comments

Comments
 (0)