Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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 @@ -57,7 +57,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 @@ -15,27 +15,35 @@ Selecting a group opens the **group details** in the right pane.
The header contains:

- The **group caption** that is either:
- The caption of its class if no class filter was applied
- The caption of its class if no class filter was applied
- A "logical expression" of class captions describing the combination of class filter applied otherwise (see [histogram filtering](#filtering))
- A structured **natural language description** of its contents that details all steps of the traversal.
- A structured **natural language description** of its contents that details all steps of the traversal.

### 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).
- **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

![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.

- **Action:** Select one or more bars in the histogram and click the **Flag** button.
- **Outcome:** Matching resources are tagged with a (temporary) orange flag and caption.
- **Outcome:** Matching resources are tagged with a (temporary) orange flag and caption.
*Hint: Use the `Temporary flags` menu that appears on the top left of the canvas to manage the persistence of the temporary flags.*

![Flagged Resources in Group](../assets/histogram-flagged-resources.png){ class="bordered" width="80%" }
Expand Down Expand Up @@ -74,8 +82,8 @@ 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.
2. **Select:** The menu presents the hierarchy of connecting (directed) **object properties**, organized by target **class**.
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 @@ -92,11 +100,23 @@ The **expansion menu** of a group presents the options available for adding a no
Right-click a group or its caption to access its context menu.

- **Export group resources as CSV:** Downloads a file containing all resources of the group.
- **Copy SPARQL Query:** Copies a query that replicates the traversal up to the group and returns all its resources.
- **Edit note:** Adds a text annotation that will be persisted in [saved explorations](persistence.md#saved-explorations).
- **Copy SPARQL Query:** Copies a query that replicates the traversal up to the group and returns all its resources.
- **Edit note:** Adds a text annotation that will be persisted in [saved explorations](persistence.md#saved-explorations).
- **Show resource table:** Opens the tabular view (see the [dedicated page](objects-table.md)).

!!! tip "Usage"

- 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 @@ -20,4 +20,24 @@ Documentation for the core components of the Graph Insights interface.
## Analysis Tools

- **[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.
- **[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
Loading
Loading