Mike, please can you show us a real-world example of fn:trace in action?

Regards

Steve Hanson
Architect, IBM Data Format Description Language (DFDL)
Co-Chair,
OGF DFDL Working Group
IBM SWG, Hursley, UK

smh@uk.ibm.com
tel:+44-1962-815848




From:        Mike Beckerle <mbeckerle.dfdl@gmail.com>
To:        dfdl-wg@ogf.org,
Date:        16/07/2013 15:03
Subject:        [DFDL-WG] proposal: add fn:trace function to DFDL
Sent by:        dfdl-wg-bounces@ogf.org





I have found working with DFDL expressions basically impossible without the fn:trace function to help debug them.

I am not sure how I would write a tutorial about expressions without using fn:trace in it to illustrate what is going on in the expressions. In the interests of keeping the tutorials portable I suggest we add the fn:trace function.

fn:trace($value as item()*, $label as xs:string) as item()*

Summary: Provides an execution trace intended to be used in debugging queries.

The notation item()* means any node sequence including an empty node sequence.

The input $value is returned, unchanged, as the result of the function. In addition, the inputs $value, converted to an xs:string, and $label may be directed to a trace data set. The destination, format, and ordering of the output of this trace data set is implementation specific.

Related Issue: I don't see any language in the spec where we flat out say that a node sequence in the expression language is a sequence of Infoset Element Information Items. We should add this near the begining of section 23.



--
Mike Beckerle | OGF DFDL Workgroup Co-Chair | Tresys Technology |
www.tresys.com
--
 dfdl-wg mailing list
 dfdl-wg@ogf.org
 
https://www.ogf.org/mailman/listinfo/dfdl-wg

Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU