Skip to main content Skip to complementary content

Special character handling for internal/external objects

Source names: representation in Qlik Catalog

Internal sources (Discovery)

External source names should start with US-ASCII alpha followed by zero or more alpha or digit or underscore(_) chars.

External source (Source module) represents the originating data source.

External source names should start with either US-ASCII alpha or underscore (_) followed by zero or more alpha or digits or underscore (_) or dash (-) chars. (Names with leading spaces are converted to names with leading underscores.)

Example:' foo-bar' becomes '_foo-bar'

When internal source representation is created for the external source, the internal source name is derived from the external source name. The name is derived following the naming rules applicable for internal source. (Dashes will be replaced by underscore characters.)

Example: 'foo-bar' becomes 'foo_bar'

Entity Names: Representation in Qlik Catalog

Internal Entity (Discover)

Internal entity names can have all the possible characters in US-ASCII. While creating an internal entity, the entity name is changed to an SQL compatible name; if the name contains any special characters or spaces then these chars are replaced with underscore '_' character. Note: The property ('original.name') holds the original entity name.

Ex: 'foo bar' becomes 'foo_bar'

In this case the entity name would be 'foo_bar'; the entity has a system generated property 'original.name' with value 'foo bar'.

External Entity (source module)

External entity names can contain any of the possible characters in US-ASCII. But if the entity name has spaces and control characters, then spaces and control characters are automatically backslash-escaped with unicode representation for that space or control character.

Here are some examples using spaces:

  • ' foo' becomes '\u0020foo'
  • 'foo ' becomes 'foo\u0020'
  • 'foo bar' becomes 'foo\u0020bar'

An entity level property original.name holds the original entity name value. In the case of the third example, the entity name in the source module displays as 'foo\u0020bar' and the entity has a system generated property 'original.name' with a property value of 'foo bar'.

Example: Internal/External Representation

External Name (before ingest), note space between 'Ship' and 'info'

'Ship info_#@$'

External Name (as displayed in source module)

'Ship\u0020info_#@$'

External (source) original.name property value, note space between 'Ship' and 'info'

'Ship info_#@$'

Internal name (as displayed in discover module), note backslash has been replaced with underscore

'Ship_u0020info____'

Internal name (Discover) original.name property value

'Ship\u0020info_#@$'

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!