Draft: draft-ietf-jsonpath-base

Commentary: Fixes 
 Let 's continue in 
 Currently the syntax section of the " Filter Selector " section describes some semantics . These descriptions should be folded into the semantics section . 
 I 'm not sure we are done with this yet . See comments . The reordering looks good to me .
Paragraph (version A):
Note that there is no "bald" descendant selector (".." on its own).
Paragraph (version B):
Note that ".." on its own is not a valid selector.
Paragraph (version A):
The current item is selected if and only if the result is "true".
Paragraph (version B):
The current item is selected if and only if the boolean expression
yields true.
Paragraph (version A):
Data types are not implicitly converted in comparisons.  So ""13 ==
'13'"" selects no node.
Paragraph (version A):
A member or element value by itself in a Boolean context is
interpreted as "false" only if it does not exist.  Otherwise it is
interpreted as "true".  To be more specific about the actual value,
explicit comparisons are necessary.  This existence test -- as an
exception to the general rule -- also works with structured values.
Paragraph (version A):
Regular expression tests can be applied to JSON string values
(RFC8259) only (on the left-hand side of "=~"); they yield false
otherwise.
Paragraph (version A):
When a path resulting in an empty nodelist appears on either side of
a comparison, the result of the comparison is true if and only if the
comparison operator is "==", ">=" or "<=" and the other side of the
comparison is also a path resulting in an empty nodelist.
Paragraph (version B):
A singular path by itself in a Boolean context is an existence test
which yields true if the path selects a node and yields false if the
path does not select a node.  To be more specific about the actual
value of a node selected by a path, explicit comparisons are
necessary.  This existence test -- as an exception to the general
rule -- also works with nodes with structured values.
Paragraph (version B):
When a path resulting in an empty nodelist appears on either side of
a comparison, the comparison yields true if and only if the
comparison operator is "==", ">=" or "<=" and the other side of the
comparison is also a path resulting in an empty nodelist.
Paragraph (version A):
comparisons using one of the operators "<", "<=", ">", or ">="
produce a "true" comparison result if and only if the comparison
is between numeric values which satisfy the comparison.
Paragraph (version A):
Note that comparisons between structured values, even if the values
are equal, produce a "false" comparison result.
Paragraph (version B):
comparisons using one of the operators "<", "<=", ">", or ">="
yield true if and only if the comparison is between numeric values
which satisfy the comparison.
Paragraph (version B):
Note that comparisons between structured values, even if the values
are equal, yield false.
Paragraph (version B):
Data types are not implicitly converted in comparisons.  So "13 ==
'13'" yields false.
Paragraph (version B):
A regular-expression test yields true if and only if the value on the
left-hand side of "=~" is a string value and it matches the regular
expression on the right-hand side according to the semantics of I-
D.draft-bormann-jsonpath-iregexp.