Picture of a sphere with binary code

Making Strathclyde research discoverable to the world...

The Strathprints institutional repository is a digital archive of University of Strathclyde research outputs. It exposes Strathclyde's world leading Open Access research to many of the world's leading resource discovery tools, and from there onto the screens of researchers around the world.

Explore Strathclyde Open Access research content

Projector - a partially typed language for querying XML

Connor, Richard and Lievens, David and Simeoni, Fabio and Neely, Steve and Russell, George (2002) Projector - a partially typed language for querying XML. In: PlanX Workshop on Programming Language Technologies for XML, 2002-10-03 - 2002-10-08.

[img]
Preview
PDF (strathprints002455.pdf)
strathprints002455.pdf

Download (127kB) | Preview

Abstract

We describe Projector, a language that can be used to perform a mixture of typed and untyped computation against data represented in XML. For some problems, notably when the data is unstructured or semistructured, the most desirable programming model is against the tree structure underlying the document. When this tree structure has been used to model regular data structures, then these regular structures themselves are a more desirable programming model. The language Projector, described here in outline, gives both models within a single partially typed algebra and is well suited for hybrid applications, for example when fragments of a known structure are embedded in a document whose overall structure is unknown. Projector is an extension of ECMA-262 (aka JavaScript), and therefore inherits an untyped DOM interface. To this has been added some static typing and a dynamic projection primitive, which can be used to assert the presence of a regular structure modelled within the XML. If this structure does exist, the data is extracted and presented as a typed value within the programming language.