Frequently Asked Questions

Why is there a hierarchy/tree of labels?

The label tree is built on every start of SemSpect and updated on every synchronization with the database. The hierarchy is build according to the mathematical subset/inclusion relation (implication in logical terms). In other words, whenever every single node of one label (e.g. Woman) also carries another label (e.g. Person), then the first label is a subset of the second and therefore shown as sub-label (therefore Woman is placed under Person). Obviously, a real hierarchy can only be built for graphs using multiple labels for nodes.

A quick example with the Northwind graph. When adding a label to all customers that are located in France as follows:

MATCH (n:Customer {country: 'France'}) SET n:`French Customer`

In Semspect this new label will show up as a sub-label of Customer. SemSpect sub-category French Customer

Can I add or change my graph data in SemSpect?

No. SemSpect is designed for visual analytics and querying of your graph data. The only exception is the creation of SemSpect labels which adds a specifically created label to the nodes of the group you have selected.

Do the SemSpect labels update on data changes?

Yes. A SemSpect label assigns labels to the nodes of the respective group and this labeling is updated whenever your graph data changes (depending on your settings, at least at each start of the DBMS). In this respect SemSpect labels are dynamic query based labels.

When does the plugin management interface show up?

The plugin management interface displays the plugin status of all local and active graphs and furthermore allows to install, update, or remove the SemSpect plugin from selected DMBSs.

The plugin management interface will be shown at each start of the SemSpect Graph App if either:

  • no local DBMS is started and no remote DBMS connected
  • or the local DBMS started or the remote DBMS connected has no SemSpect plugin installed
  • or the local DBMS started has another version of the SemSpect plugin installed

In contrast, the SemSpect Graph App will start directly if there is an active DBMS that either:

  • is a local DBMS and has the proper version of the SemSpect plugin installed
  • is a remote DBMS that has some SemSpect plugin installed

Reminder: In case of a remote DBMS the plugin will only be found if installed on the server before starting the DBMS.

Why is the SemSpect plugin not listed in the plugins tab of Neo4j Desktop?

This is because SemSpect uses its own plugin installer to maintain full control over updates, batch installation, etc. (see How the SemSpect Graph App works for details). The built-in plugin management of Neo4j Desktop therefore is not able to detect, install or uninstall the SemSpect plugin. Please use the SemSpect Graph App to manage the SemSpect plugin of your DBMSs.

I see an OutOfMemoryError when using SemSpect

When your graph is large it might happen that the Java Virtual Machine (JVM) which serves your DBMS is running out of memory. By default Neo4j Desktop sets the maximal JVM heap size to 1GB. In case you experience an java.lang.OutOfMemoryError: Java heap space error for your Neo4j Desktop hosted DBMS you should increase the maximal heap space. Neo4j Desktop open settings Neo4j Desktop max heap setting

Can I use SemSpect with a remote DBMS?

Sure - when you have a Pro or Team version as well as access to the plugins folder of the remote DBMS installation. Proceed as explained in the server installation description.

How can I switch to a different database of my DBMS?

In case your DBMS supports multiple databases (since Neo4j v4.0+) you can switch between different databases with the help of the database selector on the bottom right of the SemSpect UI. Database selector

Will SemSpect recognize any graph data changes while running?

That depends on the edition and configuration of your Neo4j version. In principle, SemSpect is able to detect graph data changes and actively notifies on any update and offers a synchronization of its status. Note that the latter has limitations and may lead to broken explorations or SemSpect labels (think of a filter that uses a property key that has been removed from the database). To learn more about the options and limitations of data change handling see the section on SemSpect is a Snapshot Explorer.

Why are some labels not present in the caption of the group after a restrict/exclude action?

If a label can not logically contribute to a restrict or exclude action on a group it is not added
to the caption of the group. Think of this as a “no operation” part of the filter.

This can only occur when there are label hierarchies (find out more about how SemSpect detects label hierarchies. For example, consider a label Person and its sub-label Woman. Restricting a group of Woman by the label Person obviously is a null filter since all Woman are already of type Person.

After installation my DBMS fails to start

In case you experience any problems when using SemSpect with your DBMS please check for error messages in the Neo4j log as follows: click on the three dots ... of the respective graph and select Logs... DBMS fails to start

There are potentially many reasons for an abort of a DBMS. The following lists some errors and their causes:

Multiple plugins installed

In case you have installed multiple plugins – typically caused by a manual server installation of the SemSpect plugin – you will see the following error messages for Neo4j databases version 4.x resp. 3.5.x multiple plugins Neo4j v4.x multiple plugins Neo4j v3.5.x

In such a case please remove all obsolete plugins from the plugin folder of your DBMS installation. If this happens in a local Neo4j Desktop environment open ... then select select Open folder with sub-item Plugins to check for the plugins of your DBMS.