Introduction to SemQL | ||
---|---|---|
Previous | Next | |
Preface | SemQL Syntax |
SemQL is a language to express declarative rules in Semarchy Convergence for MDM. It is used for example to define:
It has the following main characteristics:
The following sections describe the main characteristics of the SemQL language.
Info: SemQL is not a query language: SELECT, UPDATE or INSERT queries are not supported, as well as joins, sub-queries, aggregates, in-line views, set operators.
The SemQL Language allows users to define SQL-Like clauses. Depending on the context, these clauses may be one of the following:
Note: Functions differ from comparison operators as they return a non-boolean value. They cannot be used as is in conditions unless used with a comparison operator. For example,
TO_CHAR(IsValidCustomer)
is a valid expression, but not a valid condition.TO_CHAR(IsValidCustomer)='1'
is a valid condition.
Although it support SQL-Like clauses, SemQL is not a query language. It does not support SQL’s Data Manipulation Language (DML) or Data Definition Language (DDL) statements such as SELECT, INSERT or CREATE TABLE. It does not support Joins, Sub-queries, Aggregation, in-line Views and Set Operators.
Warning: Users proficient with SQL should not be mistaken by the appearances. Even if SemQL looks like SQL, the SemQL expressions are entirely parsed and rewritten by the Convergence for MDM platform into SQL before their execution by the hub database. A simple SemQL expression may result into a complex SQL statement. As a consequence, it is not recommended to try injecting SQL statements within SemQL expressions.
SemQL clauses manipulate attributes and variables defined in the Convergence for MDM model. Attributes are accessed through an unambiguous Qualified Attribute Name. The Qualified Attribute Name is the path to an attribute from the entity being processed.
In expressions, conditions and order by clauses, it is possible to use the SemQL functions. SemQL provides a built-in set of functions. Most of these functions are functions built in the hub’s database and processed by it. Other functions (for example, matching functions) are specific to Convergence for MDM.
You can also use in SemQL expressions user-defined functions, implemented in the instance hosting the MDM hub.
Tip: The SemQL Editor lists all built-in SemQL functions with their syntax.
Previous | Top | Next |
Preface | SemQL Syntax |