Re: [basex-talk] BaseX 9.3: The Winter Edition; {position()>1] vs. [./position()>1

2019-12-05 Thread Alexander Witzigmann
you are absolutely right - the old the old basex version (9,2,4) 
considered both statements as equal.
This means - the issue was in 9.2.4 and is fixed in 9.3 ... sometimes 
existing code makes existing bugs accessible as features


thanks in advance
alex

Am 02.12.2019 um 21:07 schrieb Christian Grün:

Hi Alex,

Could you share a little self-contained example with us that
demonstrates the wrong behavior, and name the versions of BaseX you
tested?

The two following expressions are equivalent:

   //row[position() > 1]
   /descendant-or-self::node()/child::row[position() > 1]

They are not equivalent to:

   //row[./position() > 1]
   /descendant-or-self::node()/child::row[./position() > 1]

Each result of child::row will be bound one by one to the context item
in the predicate, thus ./position() will always yield 1.

You can run the following queries to see the difference:

   (,)[trace(position())],
   (,)[trace(./position())]

Does this help?
Christian


On Mon, Dec 2, 2019 at 7:25 PM Alexander Witzigmann
 wrote:

the results of equivalent semantics:

e.g.

//row[position()>1]

is no more equal to in latest 9.3 release to

//row[./position()>1]

the later results in not correct result.
Alex







Re: [basex-talk] BaseX 9.3: The Winter Edition; {position()>1] vs. [./position()>1

2019-12-02 Thread Christian Grün
Hi Alex,

Could you share a little self-contained example with us that
demonstrates the wrong behavior, and name the versions of BaseX you
tested?

The two following expressions are equivalent:

  //row[position() > 1]
  /descendant-or-self::node()/child::row[position() > 1]

They are not equivalent to:

  //row[./position() > 1]
  /descendant-or-self::node()/child::row[./position() > 1]

Each result of child::row will be bound one by one to the context item
in the predicate, thus ./position() will always yield 1.

You can run the following queries to see the difference:

  (,)[trace(position())],
  (,)[trace(./position())]

Does this help?
Christian


On Mon, Dec 2, 2019 at 7:25 PM Alexander Witzigmann
 wrote:
>
> the results of equivalent semantics:
>
> e.g.
>
> //row[position()>1]
>
> is no more equal to in latest 9.3 release to
>
> //row[./position()>1]
>
> the later results in not correct result.
> Alex
>
>


[basex-talk] BaseX 9.3: The Winter Edition; {position()>1] vs. [./position()>1

2019-12-02 Thread Alexander Witzigmann

the results of equivalent semantics:

e.g.

//row[position()>1]

is no more equal to in latest 9.3 release to

//row[./position()>1]

the later results in not correct result.
Alex




Re: [basex-talk] BaseX 9.3: The Winter Edition

2019-11-29 Thread Marco Lettere

Thank you all so much!
The list of improvements is really impressive!
Great job as usual.
M.

On 29/11/19 17:14, Christian Grün wrote:

Hello to our loyal readers of our list,

We are glad to announce version 9.3 of BaseX, our XML framework,
database system and XQuery 3.1 processor:

   http://basex.org/

The focus has been put on in-depth optimizations of complex XQuery
code and faster processing of RESTXQ web applications:

RESTXQ
- seamless streaming of custom responses to the client
- Request Module: bind attributes to current request
- better support for the OPTIONS and HEAD methods
- trace output is now stored in the database logs
- enforce premature HTTP response with web:error
- optional GZIP compression of HTTP responses
- server-side forwarding with web:forward

USER INTERFACES
- GUI: project view: skip directories with .ignore file
- GUI: project view: do now follow symbolic links
- DBA: user panel updated to show user info
- DBA: faster processing of log entries

STORAGE
- hot fix for replacing single documents with namespaces
- improved XQuery processing of binary resources
- ADDCACHE: faster caching of single documents
- WITHDB: less locking when using fn:doc

XQUERY FUNCTIONS
- user:info/user:update-info: process user-specific data
- db:open-id, db:open-pre: support for multiple ids
- file:descendants: return descendant file paths
- inspect:type: return type of a value as string
- db:alter-backup: rename database backups
- xslt:transform: support for catalog files

XQUERY PERFORMANCE
- merge of adjacent/redundant steps in paths and predicates
- removal of redundant switch, typeswitch and catch clauses
- interruption of side-effecting code (Files Modul etc.)
- fn:count: pre-evaluation of zero-or-one arguments
- faster processing of alternative steps: a/(b,c)
- rewriting of paths to simple map expressions
- inlining of values in simple map expressions
- flattening of nested simple map expressions
- rewriting of lists to union expressions
- removal of superfluous predicates

For a more comprehensive list of added and updated features. please
check out our documentation: http://docs.basex.org/.

Your feedback is welcome as usual.

Have fun with the new release,
Your BaseX Team





Re: [basex-talk] BaseX 9.3: The Winter Edition

2019-11-29 Thread Bridger Dyson-Smith
Christian, and the BaseX Team -

Congratulations on the new release!
Thank you for all of your time and efforts.

Best,
Bridger

On Fri, Nov 29, 2019 at 11:14 AM Christian Grün  wrote:

> Hello to our loyal readers of our list,
>
> We are glad to announce version 9.3 of BaseX, our XML framework,
> database system and XQuery 3.1 processor:
>
>   http://basex.org/
>
> The focus has been put on in-depth optimizations of complex XQuery
> code and faster processing of RESTXQ web applications:
>
> RESTXQ
> - seamless streaming of custom responses to the client
> - Request Module: bind attributes to current request
> - better support for the OPTIONS and HEAD methods
> - trace output is now stored in the database logs
> - enforce premature HTTP response with web:error
> - optional GZIP compression of HTTP responses
> - server-side forwarding with web:forward
>
> USER INTERFACES
> - GUI: project view: skip directories with .ignore file
> - GUI: project view: do now follow symbolic links
> - DBA: user panel updated to show user info
> - DBA: faster processing of log entries
>
> STORAGE
> - hot fix for replacing single documents with namespaces
> - improved XQuery processing of binary resources
> - ADDCACHE: faster caching of single documents
> - WITHDB: less locking when using fn:doc
>
> XQUERY FUNCTIONS
> - user:info/user:update-info: process user-specific data
> - db:open-id, db:open-pre: support for multiple ids
> - file:descendants: return descendant file paths
> - inspect:type: return type of a value as string
> - db:alter-backup: rename database backups
> - xslt:transform: support for catalog files
>
> XQUERY PERFORMANCE
> - merge of adjacent/redundant steps in paths and predicates
> - removal of redundant switch, typeswitch and catch clauses
> - interruption of side-effecting code (Files Modul etc.)
> - fn:count: pre-evaluation of zero-or-one arguments
> - faster processing of alternative steps: a/(b,c)
> - rewriting of paths to simple map expressions
> - inlining of values in simple map expressions
> - flattening of nested simple map expressions
> - rewriting of lists to union expressions
> - removal of superfluous predicates
>
> For a more comprehensive list of added and updated features. please
> check out our documentation: http://docs.basex.org/.
>
> Your feedback is welcome as usual.
>
> Have fun with the new release,
> Your BaseX Team
>


[basex-talk] BaseX 9.3: The Winter Edition

2019-11-29 Thread Christian Grün
Hello to our loyal readers of our list,

We are glad to announce version 9.3 of BaseX, our XML framework,
database system and XQuery 3.1 processor:

  http://basex.org/

The focus has been put on in-depth optimizations of complex XQuery
code and faster processing of RESTXQ web applications:

RESTXQ
- seamless streaming of custom responses to the client
- Request Module: bind attributes to current request
- better support for the OPTIONS and HEAD methods
- trace output is now stored in the database logs
- enforce premature HTTP response with web:error
- optional GZIP compression of HTTP responses
- server-side forwarding with web:forward

USER INTERFACES
- GUI: project view: skip directories with .ignore file
- GUI: project view: do now follow symbolic links
- DBA: user panel updated to show user info
- DBA: faster processing of log entries

STORAGE
- hot fix for replacing single documents with namespaces
- improved XQuery processing of binary resources
- ADDCACHE: faster caching of single documents
- WITHDB: less locking when using fn:doc

XQUERY FUNCTIONS
- user:info/user:update-info: process user-specific data
- db:open-id, db:open-pre: support for multiple ids
- file:descendants: return descendant file paths
- inspect:type: return type of a value as string
- db:alter-backup: rename database backups
- xslt:transform: support for catalog files

XQUERY PERFORMANCE
- merge of adjacent/redundant steps in paths and predicates
- removal of redundant switch, typeswitch and catch clauses
- interruption of side-effecting code (Files Modul etc.)
- fn:count: pre-evaluation of zero-or-one arguments
- faster processing of alternative steps: a/(b,c)
- rewriting of paths to simple map expressions
- inlining of values in simple map expressions
- flattening of nested simple map expressions
- rewriting of lists to union expressions
- removal of superfluous predicates

For a more comprehensive list of added and updated features. please
check out our documentation: http://docs.basex.org/.

Your feedback is welcome as usual.

Have fun with the new release,
Your BaseX Team