You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/ROOT/pages/expressions/predicates/type-predicate-expressions.adoc
+112-1Lines changed: 112 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,8 +38,119 @@ RETURN val, val IS :: INTEGER AS isInteger
38
38
2+d|Rows: 4
39
39
|===
40
40
41
+
[role=label-new-2025.xx]
41
42
[[type-predicate-vector]]
42
-
== Type predicate expressions and VECTOR values
43
+
=== VECTOR values
44
+
45
+
Whilst it is not possible to store a xref:values-and-types/vector.adoc[`VECTOR`] value without a coordinate type and dimension, it is possible to use the `VECTOR` supertype (encompassing all combinations of `VECTOR<TYPE>(DIMENSION)`) in type predicate expressions.
46
+
47
+
.Verify a `VECTOR<TYPE>(DIMENSION)` value against the `VECTOR` supertype
The same is true for the supertypes `VECTOR<TYPE>` (which encompasses all `VECTOR` values with the same coordinate type regardless of the dimension) and `VECTOR(DIMENSION)` (which encompasses all `VECTOR` values with the same dimension regardless of the coordinate type).
65
+
66
+
.Verify a `VECTOR<TYPE>(DIMENSION)` value against the `VECTOR<TYPE>` supertype
67
+
[source, cypher]
68
+
----
69
+
WITH vector([1, 2, 3], 3, INTEGER8) AS vector
70
+
RETURN vector IS :: VECTOR<INTEGER8> AS isInteger8Vector
Copy file name to clipboardExpand all lines: modules/ROOT/pages/values-and-types/ordering-equality-comparison.adoc
+1-2Lines changed: 1 addition & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,8 +38,7 @@ For example, `1 > b` and `1 < b` are both `false` when `b` is NaN.
38
38
* xref:values-and-types/spatial.adoc[Spatial values] and xref:values-and-types/vector.adoc[`VECTOR`] values cannot be compared using the operators `\<=`, `<`,`>=`, `>`.
39
39
To compare spatial values within a specific range, use either the xref:functions/spatial.adoc#functions-withinBBox[`point.withinBBox()`] or the xref:functions/spatial.adoc#functions-point-wgs84-2d[`point()`] function.
40
40
41
-
[NOTE]
42
-
See also xref:values-and-types/vector.adoc#ordering-vector[`VECTOR` values -> Ordering `VECTOR` values].
41
+
For the ordering of `VECTOR` types, see xref:values-and-types/vector.adoc#ordering-vector[`VECTOR` values -> Ordering `VECTOR` types].
Copy file name to clipboardExpand all lines: modules/ROOT/pages/values-and-types/property-structural-constructed.adoc
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -111,7 +111,7 @@ Note that closed dynamic types (`INNER_TYPE_1 | INNER_TYPE_2...`) cannot be appe
111
111
The `INNER_TYPE` of a `LIST` cannot be a `VECTOR` value.
112
112
113
113
[[type-normalization]]
114
-
== Type Normalization
114
+
== Type normalization
115
115
116
116
Cypher runs a normalization algorithm on all input types, simplifying the given type to a deterministic representation for equivalent types.
117
117
Types are simplified to their default name (e.g. `BOOL` is simplified to `BOOLEAN`).
@@ -125,6 +125,8 @@ For example, given the closed dynamic type `BOOL | LIST<INT> | BOOLEAN | LIST<FL
125
125
This normalization is run on types used in xref::expressions/predicates/type-predicate-expressions.adoc[type predicate expressions], and in xref::constraints/managing-constraints.adoc#create-property-type-constraints[property type constraints].
126
126
Type normalization is also used to ensure the consistency of the output for the xref::functions/scalar.adoc#functions-valueType[valueType()] function.
127
127
128
+
For the normalization of `VECTOR` types, see xref:values-and-types/vector.adoc#vector-normalization[Vectors -> `VECTOR` type normalization].
0 commit comments