rdblue commented on code in PR #17138:
URL: https://github.com/apache/iceberg/pull/17138#discussion_r3591128287
##########
open-api/rest-catalog-open-api.yaml:
##########
@@ -2646,20 +2878,37 @@ components:
term:
$ref: '#/components/schemas/Term'
values:
- type: array
- items:
- $ref: '#/components/schemas/PrimitiveTypeValue'
+ $ref: '#/components/schemas/Literals'
Term:
oneOf:
- $ref: '#/components/schemas/Reference'
- $ref: '#/components/schemas/TransformTerm'
+ - $ref: '#/components/schemas/DeprecatedReference'
Reference:
type: string
example:
- "column-name"
+ DeprecatedReference:
Review Comment:
This is interesting because it is apparently not already allowed.
`Reference` has `type: string`, even though the Java implementation [supports
deserializing the object
form](https://github.com/apache/iceberg/blob/main/core/src/main/java/org/apache/iceberg/expressions/ExpressionParser.java#L411).
Looks like it [only produces the string
form](https://github.com/apache/iceberg/blob/main/core/src/main/java/org/apache/iceberg/expressions/ExpressionParser.java#L246).
As a result, I think we have the option of saying that this was never
allowed and not adding it to this spec now, even though the Java implementation
would support it. Or, we can try to standardize to the deprecated definition in
the expressions spec and add this.
If we add this, I'd prefer to combine it with `Reference` like you did in
`FunctionReference`.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]