Skip to main content Skip to complementary content

Semantic

The semantic load prefix creates a special type of field that can be used in Qlik Sense to connect and manage relational data, such as tree structures, self-referencing parent-child structured data and/or data that can be described as a graph.

Note that the semantic load can function similarly to the Hierarchy and HierarchyBelongsTo prefixes. All three prefixes can be used as building blocks in effective front-end solutions for traversing relational data.

Syntax:  

Semantic( loadstatement | selectstatement)

A semantic load expects an input that is exactly three or four fields wide with a strict definition of what each ordered field represents, as shown in the table below:

Semantic load fields
Field name Field description
1st Field: This tag is a representation of the first of two objects between which there is a relationship.
2nd Field: This tag will be used to describe the “forward” relationship between the first and second object. If the first object is a child and the second object is a parent, you can create a relationship tab that states “parent” or “parent of”  as if you are following the relationship from child to parent. 
3rd Field: This tag is a representation of the second of two objects between which there is a relationship. 
4th Field: This field is optional. This tag describes the “backward” or “inverse” relationship between the first and second object. If the first object is a child and the second object is a parent, a relationship tab could state “child” or “child of” as if you are following the relationship from parent to child. If you do not add a fourth field, then the second field tag will be used to describe the relationship in either direction. In that case, an arrow symbol is automatically added as part of the tag.

The following code is an example of the semantic prefix.

Semantic  
Load 
Object, 
‘Parent’ AS Relationship, 
NeighbouringObject AS Object, 
‘Child’ AS Relationship 
from graphdata.csv; 
Information noteIt is allowed and typical practice to label the third field the same as the first field. This creates a self-referencing lookup, so that you can follow object(s) to the related object(s) one relationship step away at a time. If the 3rd field does not carry the same name, then the end result will be a simple lookup from an object(s) to its direct relational neighbor(s) one step away only, which is an output of little practical use.

Regional settings

Unless otherwise specified, the examples in this topic use the following date format: MM/DD/YYYY. The date format is specified in the SET DateFormat statement in your data load script. The default date formatting may be different in your system, due to your regional settings and other factors. You can change the formats in the examples below to suit your requirements. Or you can change the formats in your load script to match these examples. For more information, see Modifying regional settings for apps and scripts.

Default regional settings in apps are based on the user profile. These regional format settings are not related to the language displayed in the Qlik Cloud user interface. Qlik Cloud will be displayed in the same language as the browser you are using.

If you are an app creator, you can set the default region for apps you create. For more information, see Setting your preferred regional settings for creating apps and scripts in Qlik Cloud Analytics.

Related functions
Functions Interaction
Hierarchy The Hierarchy load prefix is used to divide and organize nodes in parent-child and other graph-like data structures and transform them into tables.
HierarchyBelongsTo The HierarchyBelongsTo load prefix is used to locate and organize the ancestors of parent-child and other graph-like data structures and transform them into tables.

Example - Creating a special field for connecting relationships using the semantic prefix

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!