Skip to content
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,11 @@ Access instance-level information like the data property values of the resources

#### Single Resource

Select a resource visible inside a group to display its classes and data properties in the right `Details` pane.
Select a resource visible inside a group to display its [details](features/objects.md#object-details) in the right pane (classes and data properties).

#### Group

Select a group to display a textual description of its contents and histograms of the distribution of classes of its resources.
Select a group to display its [details](features/groups.md#group-details) in the right pane (a textual description of its contents and histograms of the distribution of classes of its resources).

Open the [resource table](features/objects-table.md) to access the highly configurable tabular listing of all resources of the group and their data properties.

Expand All @@ -99,5 +99,5 @@ Narrow down any group to match your current focus using [data property filters](

- **Images:** [Export](features/persistence.md#export-visuals) the canvas as SVG or PNG images.
- **CSV data:** Download of the resources of a group or of the table view of a group or connection.
- **Query snippets:** Copy the SPARQL that returns the resources of a group or the data in the table view of a group or connection for use (e.g. a dashboard).
- **Query snippets:** Copy the SPARQL that returns the resources of a group or the data in the table view of a group or connection for use (e.g., a dashboard).
- **[JSON Sharing](features/persistence.md#json-sharing):** Share explorations as JSON-serialization.
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,14 @@ When no group or connection is selected, the right pane displays the **database
- **Classes:** Lists all available classes and their cardinality.
- **Object Properties:** Lists all object properties with their object property assertions count.

![Database Summary Panel](../assets/database-summary.png){ class="bordered" width="30%" }
![Database Summary Panel](../assets/database-summary.png){ class="bordered" width="35%" }

**Sorting:** Use the `Sort by` dropdown to order lists by `Name` (alphabetical) or `Quantity` (cardinality) to identify the largest entities.
#### Search and View Controls

Use the controls at the top of the pane to navigate the summary:

- **Search:** Enter text to filter the summary lists. Use the scope dropdown to restrict the search to `Captions`, `IRIs`, or `All`.
- **View Settings (cogwheel):**
- **Views:** Switch between `Tree view` and `List view`.
- **Sorting:** Order lists using `Sort by name` (alphabetical) or `Sort by count` (cardinality) to identify the largest entities.
- **Hide IRIs:** Toggles the display of the underlying identifiers.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# The Exploration Canvas

The **exploration canvas** is the primary workspace in Graph Insights. It displays the exploration tree, allowing users to manipulate layout, throttle data density, and rapidly locate specific resources within the detailed groups.
The **exploration canvas** is the primary workspace in Graph Insights. It displays the exploration tree, allowing users to manipulate layout, throttle data density, and rapidly locate resources within the detailed groups.

## Toolbar Controls

Expand Down Expand Up @@ -37,7 +37,7 @@ Graph Insights maintains a session history stack.
## Group Rendering Controls (Max. resources) {#object-threshold-logic}

To optimize browser performance and visual density, Graph Insights uses two different renderings for groups depending on their cardinality.
Use the `Max. resources` dropdown to set the threshold.
Use the `Max. resources` control in the top toolbar to select a predefined threshold from the dropdown, or click inside the field to enter another number.

### Count-Only Rendering (Count > Threshold)

Expand All @@ -58,7 +58,7 @@ If the count is *below* the limit, each resource is rendered as a dot within the

## Global Search (Visible Resources) {#global-search}

Locate specific resources **among those currently visible** in the groups of the exploration.
Locate resources **among those currently visible** in the groups of the exploration.

- **Scope:** Searches only rendered resources on the canvas. It does *not* query the backend for hidden data.
- **Behavior:** Matches are tagged with a (temporary) orange flag and caption.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,14 @@ The tree displays the hierarchical taxonomy of the dataset:

- **Hierarchy:** Parent-child relationships (e.g., `Agent` → `Customer`) reflect the underlying schema.
- **Counts:** The number in parentheses (e.g., `(132)`) indicates the cardinality of the class.
- **Search:** Filters the tree to locate rapidly a specific class (or saved exploration).

### Search and View Controls

- **Search:** Enter text to locate a class or saved exploration.
- *Note:* Initiating a search automatically switches the display into a filtered flat list view and disables the view settings until the search is cleared.
- **View Settings (cogwheel):** When the search bar is empty, click the cogwheel to configure the display:
- **Views:** Switch between `Tree view` (hierarchical) and `List view` (flat).
- **Sorting:** Order the items using `Sort by name` or `Sort by count`.

### Start an Exploration

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ By default, the exploration applies a **left-join pattern**: The left group rema

!!! warning "Effects of Subsequent Updates"

Because the switch to an **inner-join pattern** is permanent, any further filtering of the right group will modify the contents of the right group.
Because the switch to an **inner-join pattern** is permanent, any further filtering of the right group will modify the contents of the left group.

In the example above, narrowing `Confections | Beverages` to `Beverages` only will remove from the `Supplier` group the ones who do not provide beverages.

Expand All @@ -57,6 +57,7 @@ By default, the exploration applies a **left-join pattern**: The left group rema
Right-click a connection to manage the exploration structure:

- **Do not restrict left group:** Disables backpropagation (reverts to left-join).
- **Remove filters:** Clears filters applied via the [connection table](#connection-table).
- **Repeat expansion:** Transitively expands the hierarchy (available only for expansions where the left and right groups have the same class - e.g., `is_friend_with`).
- **Remove:** Deletes the connection beam and its entire subtree.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Groups are sets of resources with the same class that are the starting and branc

---

## Group Details
## Group Details {#group-details}

Selecting a group opens the **group details** in the right pane.

Expand All @@ -21,15 +21,23 @@ The header contains:

### Histogram Sections {#histograms}

The **histogram sections** display the distribution of classes within a group. It allows analysts to scrutinize class composition (eg. spot unexpected or missing classes) and perform logical set operations (union, intersection, difference) to restrict the contents of the groups.
The **histogram sections** display the distribution of classes within a group. It allows analysts to scrutinize class composition (e.g., spot unexpected or missing classes) and perform logical set operations (union, intersection, difference) to restrict the contents of the groups.

- **Scope:** The panel displays counts for all **classes** (including **[user-defined classes](persistence.md#custom-categories)**) present within the selected group.
- *Remark:* If user-defined classes are present, a second histogram is shown for better overview
- **Hierarchy:** Use the `(+)` icons to expand a class (e.g., `Confections`) to reveal the distribution of its sub-classes.
- **Sorting:** Use the dropdown to order bars by `Name` (Alphabetical) or `Quantity` (Cardinality).

![Histogram Panel Overview](../assets/histograms.png){ class="bordered" width="35%" }

#### Search and View Controls

The histogram panel includes tools to filter and organize the displayed classes:

- **Search:** Enter text to filter the visible bars. Use the scope dropdown to target `Captions`, `IRIs`, or `All`.
- **View settings (cogwheel):**
- **Views:** Switch between `Tree view` (respects the class hierarchy, use `(+)` icons to expand) and `List view` (flattens all items).
- **Sorting:** Order the bars using `Sort by name` (alphabetical) or `Sort by count` (cardinality).
- **Hide IRIs:** Toggles the display of the underlying identifiers on the captions.

#### Resources Flagging {#flagging}

Flagging highlights specific subsets of data for visual inspection without modifying the structure of the exploration.
Expand Down Expand Up @@ -74,7 +82,7 @@ As filters are applied, the **group caption** updates to reflect the mathematica

The **expansion menu** of a group presents the options available for adding a non-empty step to the traversal. It tells you which classes are reachable via which direction of which object properties.

1. **Action:** Click any group to open the menu.
1. **Action:** Point at a group and click the arrow that appears to its right.
2. **Select:** The menu presents the hierarchy of connecting (directed) **object properties**, organized by target **class**.
- If the data model includes sub-object properties, point the parent object property to open the sub-menu with its child object property.*
3. **Action:** Click an object property with the required direction for the selected target **class** to add a new connection beam to the exploration.
Expand All @@ -100,3 +108,15 @@ Right-click a group or its caption to access its context menu.

- The query is intended to be used directly on the database for various datasets with the same model (or slight variations thereof).
- Use the notes to explain what is the content of the group in your own words. This is particularly relevant for collaborative work.


### Removing Filters {#remove-group-filters}

You can selectively remove different types of filters applied to a group directly from its context menu.

- **Action:** Right-click a filtered group to open its context menu and select a removal action:
- `Remove class filters:` Clears set operations applied via the [histograms](#filtering).
- `Remove data property filters:` Clears filters (e.g., numeric, string matches) applied via the [resource table](objects-table.md#filtering).
- `Remove resource selection filters:` Clears filters that restricted the group to specific resources (e.g., via [table row checkboxes](objects-table.md#filter-types) or [restricting to flagged resources](objects.md#restrict-groups-by-flags)).
- `Remove all filters:` Clears all the above filters.
- **Outcome:** The selected filter layer is removed, the group updates, and the exploration tree automatically recalculates to reflect the restored resources.
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,23 @@ Documentation for the core components of the Graph Insights interface.

- **[Histograms](groups.md#histograms):** class distribution analysis and facet-like set operations (union, intersection, difference).
- **[Persistence](persistence.md):** Saved explorations, user-defined classes, and JSON sharing.

---

## Global Keyboard Navigation

Graph Insights supports standard keyboard navigation for accessibility and rapid interaction across all views, including the class tree, data tables, and menus.

- `TAB` / `SHIFT` + `TAB`: Moves focus to the next or previous interactive element.
- Arrow Keys (`UP`, `DOWN`, `LEFT`, `RIGHT`): Navigates within lists, trees, menus, and subpanels.
- `ENTER`: Triggers the focused element (e.g., a button or menu item) or executes the default action.
- `SPACE`: Toggles a checkbox state or triggers the focused element.
- `ESC`: Closes the currently active temporary element (e.g., popup windows, context menus, or dropdowns).
- `SHIFT` + `ENTER`: Inserts a line break within text input fields (e.g., group notes).

### Context Menus

To open a context menu using the keyboard:

- **Windows:** Press `SHIFT` + `F10`.
- **macOS:** Press `CTRL` + `ENTER` *(Note: Supported in Firefox; Chrome behavior may vary)*.
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ The panel displays a spreadsheet view where rows represent resources and columns

![Group Table Overview](../assets/group-table.png){ class="bordered" width="85%" }

- **Column Visibility:** Click `Columns` to hide/show specific data properties or reorder them via drag-and-drop.
- **Column Visibility:** Click `Columns` to hide/show data properties, or reorder them via drag-and-drop.
- **Sub-class data properties:** The menu includes a dedicated expandable section listing the data properties specific to the sub-classes of the group.
- **Data Property details:** Hover over any item in the list to view its origin classes and datatype.
- **Sorting:** Click a column header to sort and toggle the sorting direction.
- **Copying Data:** Right-click any cell to copy its value.
- **Predecessors:** The `#Predecessors` column displays the count of incoming links from the parent group. Sort this column to identify the most connected resources.
Expand All @@ -40,11 +42,11 @@ Filtering is a two-step process to prevent unnecessary database queries.

![Filter Status Icons](../assets/filtered-group-and-column.png){ class="bordered" width="85%" }

### Filter Types
### Filter Types {#filter-types}

- **Resource selection column:** Check rows to restrict the group to these resources with the `Restrict to selection` button.
- **Numeric/Date:** Range controls (greater than, less than, equals).
- **String:** Text matching (contains, starts with, regex).
- **Resource selection:** Check specific rows to restrict the group to those individual resources.
- **String:** Text matching (contains, starts with, [regex](https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html)).
- **Existence:** Filter with `Keep only rows with (non-)empty cells`.

![Numeric Filter Menu](../assets/numeric-filter-nested-menu.png){ class="bordered" width="85%" }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,19 @@ Select a visible resource in a group or its row in the group table to open the `
2. **Classes:** List of all classes assigned to the resource.
3. **Data Properties:** List of all data properties organized in sections by their "usage domain" classes (see below).

### Controls
### Search, View, and Interaction Controls

- **Hide empty fields:** Toggles visibility of data properties that have no value for this specific resource.
- **Copy Data:** Right-click any row to copy the **data property** or **data property assertion**.
Use the search bar and configuration menus at the top of the details pane to quickly locate specific information.

- **Search scope:** Enter text to filter the pane. Use the adjacent dropdown to target `Captions`, `Values`, `IRIs`, or `All`.
- **Outcome:** Matching rows are highlighted, and section headers display the count of matching data properties aligned to the right. If the scope is set to `IRIs` or `All`, the data properties will additionally display their underlying IRIs.
- **View settings (cogwheel):**
- **Tree view:** Organizes data properties into sections by their defining classes (default behavior).
- **List view:** Flattens the hierarchy, displaying all data properties in a single "All data properties" list.
- **Sort by name:** Sorts the data properties keys alphabetically.
- **Hide empty fields:** Toggles the visibility of data properties that have no value for this specific resource.
- **Hide IRIs:** Toggles the display of the underlying identifiers.
- **Copy data:** Right-click any row to copy the **data property** or **data property assertion**.

!!! info "Why are there sections?"

Expand Down Expand Up @@ -52,6 +61,13 @@ The standard flags are persistent markers used to track the appearance of specif
- Flags and notes can be removed using the context-menu of the resource, the group, or the exploration (canvas).


#### Restricting Groups by Flags {#restrict-groups-by-flags}

Once resources are flagged, you can use these visual markers to filter a group down to your items of interest.

- **Action:** Right-click a group containing standard flags to open its context menu and select `Restrict group to flagged resources`.
- **Outcome:** The group is filtered to retain *only* the flagged resources. (Note: Under the hood, this behaves exactly like a manual [resource selection filter](objects-table.md#filter-types) applied via the table and can be cleared using [`Remove resource selection filters`](groups.md#remove-group-filters)).

### Temporary Flags {#temporary-flags}

Most flagging actions that might affect numerous nodes create temporary flags for easy discarding (e.g., [histogram-based flagging](groups.md#flagging) or [global search](canvas-ui.md#global-search)).
Expand Down Expand Up @@ -122,7 +138,7 @@ Analysts can focus on a specific resource within a group to analyze its relation

### Resource Exploration from a Group

Expand the exploration with specific connections from a single resource within a larger group.
Expand the exploration with connections from a single resource within a larger group.

- **Action:** Right-click a resource to open its context menu, open `Explore connections of the resource`, and select the target class and connecting object property and direction (just like a group expansion).
- **Outcome:** A new connection beam connects the individual resource to a new group to its right.
Expand All @@ -136,7 +152,7 @@ Expand the exploration with specific connections from a single resource within a

### Simple Resource Exploration

Start a new exploration tree with a specific resource found in the current exploration.
Start a new exploration tree with any resource found in the current exploration.

- **Action:** Right-click the resource to open its context menu and select `Start exploration with resource`.
- **Outcome:** The canvas clears and places the single resource as starting point of the exploration.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ If you load and modify a loaded exploration (e.g., add a filter), Graph Insights
Add context to the analysis by attaching text notes to important groups.

- **Add note:** Right-click a group to open its context menu and select `Add note`.
- **Toggle visibility:** Use the group context menu to toggle the visibility of a single note, or use the context menu of the canvas (or the `Exploration` top menu) and select `Hide/Show all group notes`.
- **Toggle visibility:** Use the group context menu to toggle the visibility of a single note, or use the context menu of the canvas (or the `Exploration` top menu) and select `Hide/Show all group notes`. This default global visibility state is saved locally and persists across browser sessions.

![Saved Exploration Context Menu](../assets/save-exploration-context-menu-and-notes.png){ class="bordered" width="75%" }

Expand All @@ -55,7 +55,7 @@ Add context to the analysis by attaching text notes to important groups.

## User-Defined Classes {#custom-categories}

**User-defined Graph Insights classes** are customizable tools designed to analyze data with specific goals (e.g. identifying high-risk suppliers based at a given location and having a specific contract type).
**User-defined Graph Insights classes** are customizable tools designed to analyze data with specific goals (e.g., identifying high-risk suppliers based at a given location and having a specific contract type).

They act as **"virtual classes"**, refining the model within the exploration layer without altering the underlying ontology.

Expand All @@ -78,7 +78,7 @@ A user-defined Graph Insights class can be defined for any group in any explorat

!!! tip "Hints"

- User-defined classes also appear in an additional specific Graph Insights class histogram for improved visibility (e.g. it allows you to see at first glance how many "High-Risk Suppliers" exist within a larger "Supplier" group).
- User-defined classes also appear in an additional Graph Insights class histogram for improved visibility (e.g., it allows you to see at first glance how many "High-Risk Suppliers" exist within a larger "Supplier" group).
- You can create a user-defined class based on *another* user-defined class.


Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading