Wiki source code of IXpathExpression
Version 7.1 by Outhman Moustaghfir on 2024/03/04 15:18
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | = Introduction = | ||
2 | |||
3 | IXpathExpression is a built-in expression language similar to the well-known Xpath language. | ||
4 | |||
5 | |||
6 | = Use = | ||
7 | |||
8 | * The current usable syntax of IXpathExpression looks like the following : {{code language="none"}}trkType [ key1 {operator} value1 AND key2 {operator} value2 ...] {{/code}} | ||
9 | |||
10 | eg : Product [ Price <10 AND Quantity= 3 AND Category = Food] | ||
11 | |||
12 | * The list of available operators : | ||
13 | ** ((( | ||
14 | |(% style="width:343px" %) =|(% style="width:412px" %)equals|(% style="width:448px" %) | ||
15 | |(% style="width:343px" %)>=|(% style="width:412px" %)greater or equal than|(% style="width:448px" %) | ||
16 | |(% style="width:343px" %)>|(% style="width:412px" %)greater than|(% style="width:448px" %) | ||
17 | |(% style="width:343px" %)<=|(% style="width:412px" %)less or equal|(% style="width:448px" %) | ||
18 | |(% style="width:343px" %)<|(% style="width:412px" %)less|(% style="width:448px" %) | ||
19 | |(% style="width:343px" %)~!=|(% style="width:412px" %)different|(% style="width:448px" %) | ||
20 | |(% style="width:343px" %)<>|(% style="width:412px" %)between two number or date values|(% style="width:448px" %)((( | ||
21 | the two values are stored in a String as : "min;max" | ||
22 | |||
23 | Example : Product [ ExpirationDate <> 2020-02-02;2021-02-02 | ||
24 | ))) | ||
25 | |(% style="width:343px" %)#|(% style="width:412px" %)not in an array of values |(% style="width:448px" %)((( | ||
26 | the list is a String of values separated with ';' : | ||
27 | |||
28 | Example : Game [ Alias # FIFA;MINECRAFT ] | ||
29 | ))) | ||
30 | |(% style="width:343px" %)€|(% style="width:412px" %)in an array of values|(% style="width:448px" %)((( | ||
31 | |(% style="width:448px" %)((( | ||
32 | the list is a String of values separated with ';' : | ||
33 | |||
34 | Example : Planet [ Name € Mercury;Earth] | ||
35 | ))) | ||
36 | ))) | ||
37 | |||
38 | |||
39 | ))) | ||
40 | * ((( | ||
41 | **Metadata:** | ||
42 | ))) | ||
43 | |||
44 | There is the possibility to call values from metadata, such as creationDate , modificationDate, jobID , userID ... by inserting '**_**' (underscore) at the beginning of the alias needed like : _creationDate , _modificationDate ... | ||
45 | |||
46 | Exemple : | ||
47 | |||
48 | {{code language="XML"}} | ||
49 | <xsl:value-of select="ixf:GetTracking(Order[_envID = 'iXPath')"></xsl:value-of> | ||
50 | {{/code}} | ||
51 | |||
52 | * ((( | ||
53 | **Links** | ||
54 | ))) | ||
55 | |||
56 | **~ **To call values from links, insert "**!**" at the beginning of the alias. For example: !key will refer to the linked value associated with the key. | ||
57 | |||
58 | {{code language="XML"}} | ||
59 | <xsl:value-of select="ixf:GetTracking(Order[!Partner.Name = 'My Partner')"></xsl:value-of> | ||
60 | {{/code}} | ||
61 | |||
62 | * **Extrametadata:** | ||
63 | |||
64 | To call values from extrametadata, insert "**§**" at the beginning of the alias. For example: §key will refer to the value associated with the key in extrametadata. | ||
65 | |||
66 | {{code language="XML"}} | ||
67 | <xsl:value-of select="ixf:GetTracking(Order[§xTraMetaDataKey = 'Value')"></xsl:value-of> | ||
68 | {{/code}} |