Normal values

  • Release version: Yokohama
  • Updated January 30, 2025
  • 2 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Normal values

    Normal values in ServiceNow provide a standardized way to replace ambiguous or variant field values with a single consistent value. This is essential for fields that may receive data from multiple sources—such as automated discovery, imports, or manual entries—where similar information is represented in multiple formats. For example, CPU types on a computer CI form can have many variant names that refer to the same processor type. Normalization consolidates these variants into one standard value, improving data quality and usability.

    Show full answer Show less

    Key Features

    • Aliases: Define a short list of known variant values that directly map to the normal value. Aliases are processed first during normalization and are equivalent to simple equality conditions.
    • Rules: Use complex conditions or patterns (such as regular expressions) to capture a wide range of variant values and map them to the normal value. Rules are processed after aliases and are useful when variants are numerous or complex.
    • Combination of aliases and rules: Allows flexible and comprehensive normalization strategies tailored to your data variations.
    • Normalized Queries: Administrators can enable normalization on queries against normalized fields, so filter conditions use the original raw values but return results with normalized values. This improves search accuracy and user experience.
    • Automatic Normalization in Scripting: Scripts that insert or update records automatically apply normalization on relevant fields. Scripts querying normalized fields can be configured to return normalized values instead of raw values, ensuring consistent data handling in custom code.

    Key Outcomes

    • Eliminates duplicate or inconsistent data entries by consolidating variant field values into a single normal value.
    • Improves search results and reporting accuracy by standardizing field values across records.
    • Simplifies business logic and query conditions, reducing complexity in workflows and automation.
    • Enables seamless integration and data consistency across multiple data sources and entry methods.
    • Enhances user experience with normalized queries that maintain original filter conditions while returning standardized results.

    A normal value replaces similar but ambiguous field values with one standard value.

    Field value variations

    Records values can come from multiple sources such as:
    • Automated entries made by Discovery.
    • Automated entries made by importing records from external systems or files.
    • Manual entries made by users.
    Each of these sources may describe the same field value in several different forms. For example, the CPU Type field on a computer CI form might display any of the following similar values:
    • E3350 (Intel) 4.5.2234
    • Intel Xeon 5.4.554
    • Xeon L3350
    • L3350
    Without normalization, these variant field values results in:
    • Duplicate CPU types
    • Poor search results
    • Complex queries and conditions to apply business logic

    Creating a normal value record solves these issues by consolidating on one standard value such as Xeon.

    Identifying variations with aliases and rules

    Each Normal value record specifies how to identify variations of a normal value using a combination of aliases and rules.

    Aliases

    Aliases are known variations of an input value that normalization converts to the normal value. Use aliases when there is a short list of variant values.

    For example, you could create a normal value Xeon that has these aliases.
    • E3350 (Intel) 4.5.2234
    • Intel Xeon 5.4.554
    • Xeon L3350
    • L3350
    Whenever a normalization data job or normalized query sees a field value matching an alias, it automatically replaces the field value with the normal value. Normalization data jobs and queries process aliases before rules.
    Note:
    Aliases are logically equivalent to rules using the [is] operator in a condition where [Field name][is][Alias value]. For example, the sample aliases are equivalent to these rules: [CPU Type][is][E3350 (Intel) 4.5.2234] OR [CPU Type][is][Intel Xeon 5.4.554] OR [CPU Type][is][Xeon L3350] OR [CPU Type][is][L3350]
    Rules

    Rules specify the conditions under which normalization replaces an input value with the normal value. Use rules when there are a large number of possible variant values, or when you must create complex conditions.

    For example, the normal value Xeon could have this rule.

    [CPU Type][matches regex][.*\bxeon\b.*]

    Whenever a normalization data job or normalized query sees a field value matching a rule, it automatically replaces the field value with the normal value. Normalization data jobs and queries process rules after aliases.

    Rules and aliases can be combined to normalize a field. Make sure to test your normalization methods before applying them to all the existing records in the database.

    Normalized queries

    An administrator can configure normalization to apply to queries issued against normalized fields in lists. Select the Normalize query check box on the Normalization form to enable this functionality. In a list containing normalized values, Filters and breadcrumbs using the original (raw) value for the normalized field in the query condition.

    Figure 1. Normalized query example

    The filtered list returns records with the normal value substituted for the raw value. However, the breadcrumbs for the filter display the original query conditions.

    Figure 2. Normalized query results

    Scripting and normalization

    Scripts that update or insert records into the database (GlideRecord) are normalized automatically when field normalization is applied. For example, if a script to insert a CI record contains a CPU type of Xeon L3350, the script is normalized to insert the CI with a CPU type of Xeon instead. Scripts that query the database for normalized field values (using the conditions of equals or not equals) can be configured to return the normal value (such as Xeon) rather than the original (raw) value.