| Slogan | cpsPath | Jira | Notes | Priority / When do we need this? |
---|
1 | get (list element) by xpath | /bookstore/categories[@code='01'] | Jira Legacy |
---|
server | System Jira |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | CPS-71 |
---|
|
| This is not really a query as code is the key attributes and this xpath is stored with the target fragment | Already implemented |
2 | filter list element by other (then key) leaf value | /bookstore/categories[@name='SciFi'] | Jira Legacy |
---|
server | System Jira |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | CPS-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 #1 | Required for E2E Slicing see CPS-200 study |
3 | xpath ending (with possible refernce to list key) | //book
//categories[@code=01]
|
| Client ignore/does not care/does not know the preceding xpath | Investigate if needed for E2E Slicing. |
4 | xpath ending combined with leafvalue filter | //categories[@name='SciFi'] |
|
|
|
5 | filter on leaf value without any path | //*[@name='Chapters'] |
| This will return anything with that name, might be useful when working with small models |
|
6 | allow 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 |
|
7 | partial 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 |
|
8 | 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 |
|
9 | (string) leave value contains something | [contains()] |
| just for illustration purposes |
|