diff --git a/core/modules/jsonapi/src/Normalizer/JsonApiDocumentTopLevelNormalizer.php b/core/modules/jsonapi/src/Normalizer/JsonApiDocumentTopLevelNormalizer.php
index 02bb732d7e..7f0dccb867 100644
--- a/core/modules/jsonapi/src/Normalizer/JsonApiDocumentTopLevelNormalizer.php
+++ b/core/modules/jsonapi/src/Normalizer/JsonApiDocumentTopLevelNormalizer.php
@@ -309,7 +309,7 @@ protected function normalizeOmissionsLinks(OmittedData $omissions, $format, arra
         // random salt and the link href. This ensures that the key is non-
         // deterministic while letting use deduplicate the links by their
         // href. The salt is *not* used for any cryptographic reason.
-        $link_key = 'item:' . static::getLinkHash($link_hash_salt, $error['links']['via']['href']);
+        $link_key = 'item--' . static::getLinkHash($link_hash_salt, $error['links']['via']['href']);
         $omission_links['links'][$link_key] = [
           'href' => $error['links']['via']['href'],
           'meta' => [
diff --git a/core/modules/jsonapi/src/Normalizer/LinkCollectionNormalizer.php b/core/modules/jsonapi/src/Normalizer/LinkCollectionNormalizer.php
index dfb86247f1..a883389d39 100644
--- a/core/modules/jsonapi/src/Normalizer/LinkCollectionNormalizer.php
+++ b/core/modules/jsonapi/src/Normalizer/LinkCollectionNormalizer.php
@@ -16,8 +16,8 @@
  * than one link for a given key.
  *
  * When normalizing more than one link in a LinkCollection with the same key, a
- * unique and random string is appended to the link's key after a colon (:) to
- * differentiate the links.
+ * unique and random string is appended to the link's key after a double dash
+ * (--) to differentiate the links.
  *
  * This may change with a later version of the JSON:API specification.
  *
diff --git a/core/modules/jsonapi/tests/src/Functional/JsonApiFunctionalTest.php b/core/modules/jsonapi/tests/src/Functional/JsonApiFunctionalTest.php
index a9fceada92..bae30d7004 100644
--- a/core/modules/jsonapi/tests/src/Functional/JsonApiFunctionalTest.php
+++ b/core/modules/jsonapi/tests/src/Functional/JsonApiFunctionalTest.php
@@ -190,7 +190,7 @@ public function testRead() {
     })));
     $link_keys = array_keys($single_output['meta']['omitted']['links']);
     $this->assertSame('help', reset($link_keys));
-    $this->assertRegExp('/^item:[a-zA-Z0-9]{7}$/', next($link_keys));
+    $this->assertRegExp('/^item--[a-zA-Z0-9]{7}$/', next($link_keys));
     $this->nodes[1]->set('status', TRUE);
     $this->nodes[1]->save();
     // 13. Test filtering when using short syntax.
diff --git a/core/modules/jsonapi/tests/src/Functional/ResourceResponseTestTrait.php b/core/modules/jsonapi/tests/src/Functional/ResourceResponseTestTrait.php
index 04a173ff71..59f9a3fdbb 100644
--- a/core/modules/jsonapi/tests/src/Functional/ResourceResponseTestTrait.php
+++ b/core/modules/jsonapi/tests/src/Functional/ResourceResponseTestTrait.php
@@ -594,7 +594,7 @@ protected static function errorsToOmittedObject(array $errors) {
       ],
     ];
     foreach ($errors as $error) {
-      $omitted['links']['item:' . substr(Crypt::hashBase64($error['links']['via']['href']), 0, 7)] = [
+      $omitted['links']['item--' . substr(Crypt::hashBase64($error['links']['via']['href']), 0, 7)] = [
         'href' => $error['links']['via']['href'],
         'meta' => [
           'detail' => $error['detail'],
@@ -658,7 +658,7 @@ protected static function resetOmittedLinkKeys(array &$omitted) {
     $reindexed = [];
     $links = array_diff_key($omitted['links'], array_flip(['help']));
     foreach (array_values($links) as $index => $link) {
-      $reindexed['item:' . $index] = $link;
+      $reindexed['item--' . $index] = $link;
     }
     $omitted['links'] = ['help' => $help] + $reindexed;
   }
