RussellSpitzer commented on code in PR #13879:
URL: https://github.com/apache/iceberg/pull/13879#discussion_r2298770034


##########
open-api/rest-catalog-open-api.yaml:
##########
@@ -3260,6 +3260,33 @@ components:
           additionalProperties:
             type: string
 
+    ReadRestrictions:
+      type: object
+      description: >
+          Read Restrictions for a table including projection and row filter 
expressions.
+          The client MUST enforce these rules to read data from the table.
+          If the read-restrictions section is not present or is empty, clients 
MUST treat it as equivalent to having no restrictions.
+      properties:
+        required-projection:
+          description: >
+            A list of projections that must be applied before query 
projections. If the term is a transform, it must replace the column referenced 
by the term.
+            For example, if the term is mask(cc, 0, 4) i.e mask transform on 
column cc, it must replace the column cc in the query with the masked value,
+            essentially projecting it as mask(cc, 0, 4) AS cc.
+            Readers are NOT allowed to project columns that are not listed and 
must apply transforms.
+            If the required-projection is not present or is empty, it means 
that no projection is required and all columns can be read as-is.
+            
+            Note: That each column must have only a single projection, meaning 
a column can be projected as-is or as a transformed value, but not both.
+          type: array
+          items:
+            $ref: '#/components/schemas/Term'
+        required-row-filter:
+          description: >
+            An expression that filters rows. Rows for which the filter 
evaluates to false must be discarded and no information derived from the 
filtered rows may be included in the query result.

Review Comment:
   I noted this above in the py doc, but we should be more clear here. "An 
Expression that filters rows" is not very helpful. The second sentence here is 
much better but I think we should phrase it in the postive rather than the 
negative. 
   
   Maybe
   "An expression that readers must apply when evaluating this table response. 
Only Rows that evaluate to true should be available in the query response."



-- 
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]

Reply via email to