Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...


SlogancpsPathJiraNotesPriority / When do we need this? 
1get (list element) by xpath/bookstore/categories[@code='01']

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-71

This is not really a query as code is the key attributes and this xpath is stored with the target fragmentAlready implemented
2filter list element by other (then key) leaf value/bookstore/categories[@name='SciFi']

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-231

Compare to #1, notice how from a cpsPath perspective it is not clear which is a get and which is a query. The customer might not know either! See issue #1Required for E2E Slicing see CPS-200 study
3partial xpath combined with leafvalue filter
(split in 2 scenarios)ending (with possible refernce to list key)

//book
//categories[

@name

@code=

'SciFi'

01]


Client ignore/does not care/does not know the preceding xpathInvestigate if needed for E2E Slicing. 
4xpath ending combined with leafvalue filter//categories[@name='SciFi']


5filter on leaf value without any path//*[@name='Chapters']
This will return anything with that name, might be useful when working with small models
56allow any element from list ie. find something under any possible list entry/bookstore/categories/books/book[@name='Chapters']
Not obvious but since /categories is not indexed  (no key defined using [@...] notation)  it will return a book from any categories
67partial xpath, wildcard in the middle of the path . Could be seen as combination of starts-with and end-with/bookstore/categories//book[@name='Chapters']
using // in the middle of a path is like a wildcard for any containers or lists between /categories and /book
78

combining several leaf values (and, or etc.)

Can bee seen too for composite list-keys and does work in scenario #1 above (but is order dependent)

[@id1 =  x and @id2 = y]
just for illustration purposes
89(string) leave value contains something[contains()]
just for illustration purposes

...