Recent Unique Product Features

  • <xsl:output method=’json’/>

    Other articles on this site have described the JSON support we have added to our XSLT and XPath products (see A SAX-like Parser for JSONĀ  and XSLT and XPath for JSON). In this article, we describe two additional extensions to our XSLT 2.0 and DOM parser products to support the output of JSON documents. [...]

  • Compiled Rule Sets

    1. Compile once and evaluate multiple times
    When a developer wishes to use the P6R rule engine (reference An XPath Enabled Rule Engine), he can simply create a single instance of the rule engine component, load it with a set of rules (defined in XML), load the stated facts (in XML or JSON), and generate inferred [...]

  • Compiled Templates for XSLT 2.0

    1. A problem of performance
    One common concern with the use of XSLT has been performance. The need to compile an XSLT template, with its embedded XPath expressions each time a Web page is to be displayed is wasteful. Part of P6R’s implementation of the XSLT 2.0 standard includes an extension that helps address this performance [...]

  • A SAX-like Parser for JSON

    Introduction
    P6R’s JSON parser provides a C++ implementation of the SAX like interface. Our parser implementation is designed to be high performance and to directly support a streaming IO model. The parser can be invoked with the entire JSON document in one buffer, or the JSON document feed into the parser a chunk at a time [...]

  • An XPath Enabled Rule Engine

    An excellent introduction to Rule Engines can be found at “Chapter1. The Rule Engine” . However, this description is a bit detailed. In general, a rule engine allows the user to define a set of conditional statements (such as “if x then y”), where when the condition (x) is true the [...]

  • XSLT and XPath for JSON

    Instead of developing separate software to provide XSLT and XPath functionality to documents encoded in JSON we decided to extend our existing XML suite of tools to accommodate more than XML documents. Once we had this ability we took one more step and applied this capability to another XPath enabled software in our [...]