[SERVER-51013] Improve granularity of $jsonSchema validation errors in the case of inversion Created: 17/Sep/20  Updated: 06/Dec/22

Status: Backlog
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Mihai Andrei Assignee: Backlog - Query Execution
Resolution: Unresolved Votes: 0
Labels: qexec-team
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Query Execution
Participants:

 Description   

Currently, any $jsonSchema validator expression which features a negation will simply state that the child expression or the schema matched (ex. given expression {$nor: [{$jsonSchema: {}}]} or {$jsonSchema: {not: {}}} and the document {}, you will get "schema matched" in the first case and "child expression matched" the second case). This ticket tracks the work necessary to make inversion provide detailed errors.

Note that this has a surprising amount of complexity, namely because of the semantics of various $jsonSchema keywords and the way that some keywords are translated into MatchExpression.



 Comments   
Comment by Mihai Andrei [ 18/Sep/20 ]

I don't think we need a follow up epic (at the very least, I wouldn't want one). Between keeping it on the backlog and closing it as won't do, I would strongly prefer the latter.

Comment by David Storch [ 18/Sep/20 ]

I'm flagging for scheduling. Do we want to house this within a follow-up epic, just keep it on the backlog, or close it as "Won't Do"?

Generated at Thu Feb 08 05:24:16 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.