English

Simple and Effective Relation-Based Approaches To XPath and XSLT Type Checking (Technical Report, Bad Honnef 2015)

Programming Languages 2019-05-20 v1

Abstract

XPath is a language for addressing parts of an XML document. We give an abstract interpretation of XPath expressions in terms of relations on document node types. Node-set-related XPath language constructs are mapped straightforwardly onto basic, well-understood and easily computable relational operations. Hence our interpretation gives both extremely concise type-level denotational semantics and a practical analysis tool for the node-set fragment of the XPath 1.0 language. This method is part of the TPath implementation of XPath. XSL-T is a pure functional language for transforming XML documents. For the most common case, the transformation into an XML document, type checking of the transformation code is unfeasible in general, but strongly required in practice. It turned out that the relational approach of TPath can be carried over to check all fragments of the result language, which are contained verbatim in the transformation code. This leads to a technique called "Fragmented Validation" and is part of the txsl implementation of XSL-T.

Cite

@article{arxiv.1905.07362,
  title  = {Simple and Effective Relation-Based Approaches To XPath and XSLT Type Checking (Technical Report, Bad Honnef 2015)},
  author = {Baltasar Trancón y Widemann and Markus Lepper},
  journal= {arXiv preprint arXiv:1905.07362},
  year   = {2019}
}

Comments

10 pages, 6 tables

R2 v1 2026-06-23T09:10:59.993Z