summaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorLuke Gleeson <luke.gleeson@est.tech>2023-04-28 13:59:06 +0000
committerGerrit Code Review <gerrit@onap.org>2023-04-28 13:59:06 +0000
commit5f964d1910e309502530631bff4d21e5d59f4dc8 (patch)
tree5a9a76f7e67938fc2851f5d1e0612841d100ecee /docs
parent3c0ea89e2bd77d2f4f86f0729643455e1b29c5ac (diff)
parent94b5c8a94dc738576ee7cb8b71d9bd6e43fbac24 (diff)
Merge "Add document for support for contains condition to cps-path"
Diffstat (limited to 'docs')
-rw-r--r--docs/cps-path.rst21
1 files changed, 20 insertions, 1 deletions
diff --git a/docs/cps-path.rst b/docs/cps-path.rst
index 252310dc0..08892e09e 100644
--- a/docs/cps-path.rst
+++ b/docs/cps-path.rst
@@ -183,7 +183,7 @@ General Notes
Query Syntax
============
-``( <absolute-path> | <descendant-path> ) [ <leaf-conditions> ] [ <text()-condition> ] [ <ancestor-axis> ]``
+``( <absolute-path> | <descendant-path> ) [ <leaf-conditions> ] [ <text()-condition> ] [ <contains()-condition> ] [ <ancestor-axis> ]``
Each CPS path expression need to start with an 'absolute' or 'descendant' xpath.
@@ -272,6 +272,25 @@ The text()-condition can be added to any CPS path query.
- When querying a leaf value (instead of leaf-list) it is better, more performant to use a text value condition use @<leaf-name> as described above.
- Having '[' token in any index in any list will have a negative impact on this function.
+contains()-condition
+--------------------
+
+**Syntax**: ``<cps-path> '[' 'contains' '(' '<leaf-name>','<string-value>' ')' ']'?``
+ - ``cps-path``: Any CPS path query.
+ - ``leaf-name``: The name of the leaf which value needs to be compared.
+ - ``string-value``: The required value of the leaf element as a string wrapped in quotation marks (U+0022) or apostrophes (U+0027). This will still match integer values.
+
+**Examples**
+ - ``//categories[contains(@name,'Sci')]``
+ - ``//books[contains(@title,'Space')]``
+
+**Limitations**
+ - Only leaves can be used, leaf-list are not supported.
+ - Leaf names are not validated so ``contains() condition`` with invalid leaf names will silently be ignored.
+
+**Notes**
+ - contains condition is case sensitive.
+
ancestor-axis
-------------