These are new or changed features of GNQuery in the version 1.6:
•The contains function didn't work if the string contained a underscore. ixed the contains function (did not work when the string contains a underscore). Example: gn4:page[contains(@name,'MSN_DLY_121119')].
•Added the nav:checkOuts element to GNQuery. It is now possible to write queries like:
all articles that are checked out:
<code>gn4:article[nav:checkOuts/nav:checkOut]</code>
all stories checked-out by a specific user:
<code>gn4:story[nav:checkOuts/nav:checkOut/gn4:user/@idref='obj1705']</code>
•Added nav:tasks and nav:taskLogs elements to the virtual XML used by GNQuery. It is now possible to write queries like:
- all objects that have at least an associated pending task:
gn4:*[nav:tasks/nav:task]
- all videos that had at least one associated task that failed:
gn4:video[nav:taskLogs/nav:taskLog/@result='Error']
•add 'extended referencing' elements to search by referencing with specific values of sub-attributes.
•Added to the 'virtual XML' used by GNQuery extra referencing elements. These elements allow searches like:
all the audio referenced by a specific package or story with a caption containing a specific word
gn4:audio[nav:referencing/nav:referencingBy[@attrName='package.objs']/nav:refs/gn4:ref[@idref='obj63942' and contains(gn4:caption,'caption')]]
all categories used by calendar objects with a weight under 50:
gn4:category[nav:referencing/nav:referencingBy[@attrName='calendarObject.cats']/nav:refs/gn4:ref[@weight<50]]
all categories used by calendar objects with a weight under 50:
gn4:category[nav:referencing/nav:referencingBy[@attrName='calendarObject.cats']/nav:refs/gn4:ref[@weight<50]]
all pub modes used to publish a specific object (id 44043) on a specific pub dest (id 1595):
gn4:pubMode[nav:referencing/nav:referencingBy[@attrName='pubDest.objs.pubModeRef']/nav:refs/gn4:ref[@idref='obj44043' and gn4:pubModeRef/@idref='obj1595']]