# Nullvalue error on ReplaceAll transform

**URL:** <https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590>\
**Category:** SHF Discussion and Questions\
**Tags:** transforms, identity-security-cloud, provisioning\
**Created:** [March 27, 2025, 2:28pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590 "2025-03-27T14:28:20Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![LearningStar](https://avatars.discourse-cdn.com/v4/letter/l/a9a28c/32.png) [@LearningStar](https://developer.sailpoint.com/discuss/u/LearningStar)\
**Post date:** [March 27, 2025, 2:28pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/1 "2025-03-27T14:28:20Z")

</div>

Hi Everyone, I have one requirement to create firstname and lastname with domain name all in lower case but here one condition to replace umlaut’s character from firstname and lastname as email configuration is not possible with umlaut character , I am getting null value error while using inside provisioning policy. Here is transform. Does anybody have any idea on this what’s wrong in this transform written here? I had cross check for null values but I dont find anything null within these attributes.

```auto
{
                "type": "lower",
                "attributes": {
                    "input": {
				"type":"replaceAll",
                 "attributes" :{
                   "input":{
                     "table": {
	                 "ä": "ae",
                     "ö": "oe",
                     "ü": "ue",
                       "ß": "ss"
                        },		
				
                        "type": "concat",
                        "attributes": {
                            "values": [
                                {
                                    "type": "identityAttribute",
                                    "attributes": {
                                        "name": "firstname"
                                    }                                    
                                },
                                ".",
                                {
                                    "type": "identityAttribute",
                                    "attributes": {
                                        "name": "lastname"
                                    }
                                },
                                "@demo.com"
                            ]
                        }
						
						}
						
                    }
                }
            }
			
			}

```

---

<div class="post-metadata">

**Author:** ![PhilRawlings1](https://sea1.discourse-cdn.com/sailpoint/discuss/user_avatar/developer.sailpoint.com/philrawlings1/32/37266_2.png) [@PhilRawlings1](https://developer.sailpoint.com/discuss/u/PhilRawlings1)\
**Post date:** [March 27, 2025, 2:30pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/2 "2025-03-27T14:30:53Z")

</div>

Why not use the inbuilt ‘remove diacritic marks’ transform?

---

<div class="post-metadata">

**Author:** ![LearningStar](https://avatars.discourse-cdn.com/v4/letter/l/a9a28c/32.png) [@LearningStar](https://developer.sailpoint.com/discuss/u/LearningStar)\
**Post date:** [March 27, 2025, 2:38pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/3 "2025-03-27T14:38:00Z")

</div>

Hey first thing I have to use for provisioning, and I am not sure how it will interpret. Secondly requirement is not to remove such characters, we just need to append with e character at the last as i mentioned inside table

---

<div class="post-metadata">

**Author:** ![PhilRawlings1](https://sea1.discourse-cdn.com/sailpoint/discuss/user_avatar/developer.sailpoint.com/philrawlings1/32/37266_2.png) [@PhilRawlings1](https://developer.sailpoint.com/discuss/u/PhilRawlings1)\
**Post date:** [March 27, 2025, 2:44pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/4 "2025-03-27T14:44:16Z")

</div>

the transform works fine on provisioning and it only removes the mark. The inbuilt one does catch all of them so I made this one:

```auto
{
        "name": "Diacritical Marks",
        "type": "replaceAll",
        "attributes": {
          "input": {
            "type": "decomposeDiacriticalMarks"
          },
          "table": {
            "Å": "A",
            "å": "a",
            "Æ": "AE",
            "æ": "ae",
            "Ã": "A",
            "ã": "a",
            "Đ": "D",
            "đ": "d",
            "Ë": "E",
            "ë": "e",
            "Ħ": "H",
            "ħ": "h",
            "ı": "i",
            "Í": "I",
            "í": "i",
            "ĸ": "k",
            "Ł": "L",
            "ł": "l",
            "Ø": "O",
            "ø": "o",
            "Œ": "OE",
            "œ": "oe",
            "Þ": "P",
            "þ": "p",
            "ß": "s",
            "Ŧ": "T",
            "ŧ": "t"
          }
        },
        "internal": false
      }

```

Which gets all non-latin european/icelandic characters

---

<div class="post-metadata">

**Author:** ![pavya](https://sea1.discourse-cdn.com/sailpoint/discuss/user_avatar/developer.sailpoint.com/pavya/32/23397_2.png) [@pavya](https://developer.sailpoint.com/discuss/u/pavya)\
**Post date:** [March 27, 2025, 2:45pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/5 "2025-03-27T14:45:14Z")

</div>

Hi @LearningStar ,Can you try below pasted transform this may help you.

```auto
{
    "type": "lower",
    "attributes": {
        "input": {
            "type": "replaceAll",
            "attributes": {
                "input": {
                    "type": "concat",
                    "attributes": {
                        "values": [
                            {
                                "type": "identityAttribute",
                                "attributes": {
                                    "name": "firstname"
                                }
                            },
                            ".",
                            {
                                "type": "identityAttribute",
                                "attributes": {
                                    "name": "lastname"
                                }
                            },
                            "@demo.com"
                        ]
                    }
                },
                "table": {
                    "ä": "ae",
                    "ö": "oe",
                    "ü": "ue",
                    "ß": "ss"
                }
            }
        }
    }
}

```

Thank you.

---

<div class="post-metadata">

**Author:** ![gmilunich](https://sea1.discourse-cdn.com/sailpoint/discuss/user_avatar/developer.sailpoint.com/gmilunich/32/8431_2.png) [@gmilunich](https://developer.sailpoint.com/discuss/u/gmilunich)\
**Post date:** [March 28, 2025, 4:14am UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/6 "2025-03-28T04:14:10Z")

</div>

For future reference @pavya, when posting code it is helpful to place it within the code blocks and use proper indentation to make it readable for others here.

There is abutton for code block, and when formatted, it will make your code look like this:

```auto
{
  "type": "lower",
  "attributes": {
    "input": {
      "type": "replaceAll",
      "attributes": {
        "input": {
          "type": "concat",
          "attributes": {
            "values": [
              {
                "type": "identityAttribute",
                "attributes": {
                  "name": "firstname"
                }
              },
              ".",
              {
                "type": "identityAttribute",
                "attributes": {
                  "name": "lastname"
                }
              },
              "@demo.com"
            ]
          }
        },
        "table": {
          "ä": "ae",
          "ö": "oe",
          "ü": "ue",
          "ß": "ss"
        }
      }
    }
  }
}

```

---

<div class="post-metadata">

**Author:** ![pavya](https://sea1.discourse-cdn.com/sailpoint/discuss/user_avatar/developer.sailpoint.com/pavya/32/23397_2.png) [@pavya](https://developer.sailpoint.com/discuss/u/pavya)\
**Post date:** [March 28, 2025, 4:58am UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/7 "2025-03-28T04:58:49Z")

</div>

Hi @gmilunich , Thank you for your guidance .

---

<div class="post-metadata">

**Author:** ![LearningStar](https://avatars.discourse-cdn.com/v4/letter/l/a9a28c/32.png) [@LearningStar](https://developer.sailpoint.com/discuss/u/LearningStar)\
**Post date:** [March 28, 2025, 7:41am UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/8 "2025-03-28T07:41:21Z")

</div>

Thanks @pavya for fixing it, it is working fine as per your modification can you guide me please what was wrong in my provided transform what I observed you have removed table JSON values for ReplaceAll transform from top and add it into bottom, Now I don’t see any errors , can you guide what wrong I was using that time as it will help me to better understand it for future, also you have removed input JSOn after replace all what makes it difference ? Can you guide

---

<div class="post-metadata">

**Author:** ![pavya](https://sea1.discourse-cdn.com/sailpoint/discuss/user_avatar/developer.sailpoint.com/pavya/32/23397_2.png) [@pavya](https://developer.sailpoint.com/discuss/u/pavya)\
**Post date:** [March 28, 2025, 7:59am UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/9 "2025-03-28T07:59:10Z")

</div>

Hi @LearningStar ,  
Your transform is structured incorrectly, leading to a null value. Issues in Your Transform  
Misplaced “replaceAll” Type:

“replaceAll” should wrap the “concat” operation, but in your structure, “concat” is inside “replaceAll” in a way that does not properly transform the values.  
Incorrect Nesting of “input” in “replaceAll”:  
“input” under “replaceAll” should directly reference “concat” rather than nesting it inside another “input” field.  
And while creating and modifying transform use ISC extension in VS code .

---

<div class="post-metadata">

**Author:** ![LearningStar](https://avatars.discourse-cdn.com/v4/letter/l/a9a28c/32.png) [@LearningStar](https://developer.sailpoint.com/discuss/u/LearningStar)\
**Post date:** [March 28, 2025, 8:09am UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/10 "2025-03-28T08:09:38Z")

</div>

Thanks @PhilRawlings1 for the help and guidance, it worked!

---

<div class="post-metadata">

**Author:** ![gmilunich](https://sea1.discourse-cdn.com/sailpoint/discuss/user_avatar/developer.sailpoint.com/gmilunich/32/8431_2.png) [@gmilunich](https://developer.sailpoint.com/discuss/u/gmilunich)\
**Post date:** [March 28, 2025, 4:49pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/11 "2025-03-28T16:49:06Z")

</div>

If his post worked to solve your issue, please make sure to mark it as the Solution so that others that might read it know what worked, and also so that @PhilRawlings1 can get credit for the solution.

Currently it looks like you selected someone else’s post as a solution

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/sailpoint/original/2X/f/f2136700ed5e3703e0b85e02f6be799dacca7735.png) [@system](https://developer.sailpoint.com/discuss/u/system)\
**Post date:** [May 27, 2025, 4:49pm UTC](https://developer.sailpoint.com/discuss/t/nullvalue-error-on-replaceall-transform/105590/12 "2025-05-27T16:49:45Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
