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

 


Help: OASIS Mailing Lists Help | MarkMail Help

oslc-core message

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


Subject: [OASIS Issue Tracker] (OSLCCORE-138) OSLC Query BNF for wildcards seems questionable


    [ https://issues.oasis-open.org/browse/OSLCCORE-138?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=68476#comment-68476 ] 

David Honey commented on OSLCCORE-138:
--------------------------------------

I agree that we should make the wildcard for both oslc.where and oslc.select optional. That needs to be described in a normative section and, I suggest, as a comment in the formal syntax.

If the syntax of oslc.select is required to be the same as oslc.properties, then we should mostly reference the syntax of oslc.properties in OSLC Core. However, because of potential constraints specific to query, I think we need to keep the section on oslc.select in the query spec.

> OSLC Query BNF for wildcards seems questionable
> -----------------------------------------------
>
>                 Key: OSLCCORE-138
>                 URL: https://issues.oasis-open.org/browse/OSLCCORE-138
>             Project: OASIS OSLC Lifecycle Integration Core (OSLC Core) TC
>          Issue Type: Bug
>          Components: Query
>            Reporter: Andrii Berezovskyi
>            Assignee: James Amsden
>
> I was about to answer this question https://jazz.net/forum/questions/227587/how-to-use-rm-apioslc-where-clause-using-not-equal-null-conditions with the link to the OSLC Query spec but then I saw !="*" on the linked docs in https://www.ibm.com/support/knowledgecenter/SSZRHJ/com.ibm.mif.doc/gp_intfrmwk/oslc/r_oslc_query_params.html.
> That made me read BNF extra carefully and from the shortened subset below you can see my concern:
> oslc_where    ::= "oslc.where=" compound_term
> compound_term ::= simple_term (space? boolean_op space? simple_term)*
> simple_term   ::= term | scoped_term
> space         ::= " " /* a space character */
> boolean_op    ::= "and"
> term          ::= identifier_wc comparison_op value | identifier_wc space in_op space? in_val
> scoped_term   ::= identifier_wc "{" compound_term "}"
> identifier_wc ::= identifier | wildcard
> This query is valid:
> oslc.where=* > 10
> While this one is invalid:
> oslc.where=name=*
> Now that I look at my examples, this actually makes sense (leaving aside a question why would you filter by any property being greater than a certain number), while IBM manual's "The parent!="*" query is semantically equivalent to the parent="NULL" query." does not!
> Do you have any automatic BNF validators to check the sanity of the BNF further?



--
This message was sent by Atlassian JIRA
(v6.2.2#6258)


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