Closed elrayle closed 5 years ago
This is addressed by using parentheses for precedence. Changing ldpath under Expected behavior in the original report of this issue to use parentheses, it no longer gets a parse error.
Example:
"(madsrdf:identifiesRWO/madsrdf:fieldOfActivity/rdfs:label) | (madsrdf:identifiesRWO/madsrdf:fieldOfActivity/madsrdf:authoritativeLabel) :: xsd:string"
Descriptive summary
A complex ldpath including a long path (separated by
/
) combined with a second long path using|
results in an ascii tree parse error.Expected behavior
The ldpath should be parsable and return results.
Actual behavior
Ldpath::Program.parse program_code
raisesParseError, e.cause.ascii_tree
Supporting Spec
Gist with spec demonstrating the ascii tree parse error... https://gist.github.com/elrayle/7d747ee952efd3413903a9d21323206a
The spec tests...
|
to get results from two paths (simple with predicates directly off the subject) - PASSES/
) - PASSES/
) - PASSES|
- FAILS