Hello,
I'm testing some XQuery 3.1 features against a JSON-LD[1] document and had a few questions. In the JSON-LD format, the "@" symbol has special semantics in key names, but seems to cause problems with the 3.1 lookup operator.
For example:
json-doc("http://lae.princeton.edu/catalog/0bp35.jsonld%22)(%22@context")
works as expected, but
json-doc("http://lae.princeton.edu/catalog/0bp35.jsonld%22)?@context
throws an error: [XPST0003] No specifier after lookup operator: '@'.
Also, when using the "=>" operator, should it be possible to perform a lookup on the last expression in a chain, if that expression returns a map?
For example:
json-doc("http://lae.princeton.edu/catalog/0bp35.jsonld%22)(%22@context") evaluates to "http://iiif.io/api/presentation/2/context.json"
and
json-doc("http://lae.princeton.edu/catalog/0bp35.jsonld%22)(%22@context") => json-doc()
returns another map object. So, how would one achieve this:
json-doc(json-doc("http://lae.princeton.edu/catalog/0bp35.jsonld ")("@context"))("@context")
using the arrow operator?
Thanks, Tim
[1] http://www.w3.org/TR/json-ld/
-- Tim A. Thompson Metadata Librarian (Spanish/Portuguese Specialty) Princeton University Library