OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

odata message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [OASIS Issue Tracker] Commented: (ODATA-166) Inconsistent lifted operators for $filter


    [ http://tools.oasis-open.org/issues/browse/ODATA-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=31980#action_31980 ] 

Michael Pizzo commented on ODATA-166:
-------------------------------------

Maybe it's my database bias, but saying that two null values are equal seems wrong to me. I would not expect a query for EyeColor eq HairColor to return records where both EyeColor and HairColor were not specified -- by definition, the value of a null valued property is unknown, not known to be equal to another unknown value.

I am okay adding an is operator, as in SQL, to be used with Null if people think that makes things more clear, although I'm also fine clarifying the use of Null with the eq operator to avoid introducing another operator.  

> Inconsistent lifted operators for $filter
> -----------------------------------------
>
>                 Key: ODATA-166
>                 URL: http://tools.oasis-open.org/issues/browse/ODATA-166
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Bug
>          Components: OData Protocol v1.0
>    Affects Versions: WD01
>         Environment: [Proposed]
>            Reporter: Matthew Borges
>            Priority: Minor
>             Fix For: WD01
>
>
> I didn't see any mention of lifted operators in the working drafts.  We should define how each operator behaves when one (or both) operands is null.
> With that said, the V3 spec (section 2.2.3.6.1.1.5) is inconsistent with it's treatment of null:
> - For equality operators, null eq null is true and null eq <anything not null> is false (i.e. the result is true or false)
> - Any relational operators when compared with null are false (i.e. the result is true or false)
>    - This implies that null ge null and null le null is false which is inconsistent with null eq null is true
> - Logical operators treat null as false (i.e. the result is true or false)
> - Unary operators are null if the operand is null (i.e. in the case of not, the result is true, false, or null)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]