Upgrading applications using WebPublisher 6.0 with XML output to use WebPublisher 6.1 or WebPublisher PRO

Product(s): Webpublisher – upgrading from 6.0

The information presented here applies to the version of the product(s) specified above. Inmagic Product Support does not directly support this information or guarantee that it will work with future versions of the product(s). More...

What changes need to be made to applications that use the xml that is output by WebPublisher version 6.0?

To understand the changes made, it is helpful to look at the new output schemas. The schemas used in WebPublisher 6.0 were modified and enhanced in WebPublisher 6.1/PRO. The names of the actions that generate the output schemas have changed:

· From “XML_TB_SCHEMA” to “tb_schema_query

· From “XML_RF_SCHEMA” to “rf_schema_query

To look at each schema, pass the action inside the <AC> command.The tb_schema_query action causes WebPublisher to generate information about the textbase that you are using. The rf_schema_query action causes WebPublisher to generate the schema for the specified report form.

If you have built applications that expect to find specific elements within the output query, you may need to change the following items:

1. Add the Inmagic namespace to any xslt files that you have created.This should be done in the <stylesheet> tag. Example:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:inm="http://www.inmagic.com/webpublisher/query">

2. Change all occurrences within your application of “/DBTWRecordSet/DBTWRecord” to “inm/Results/inm:Recordset/inm:Record/.” However, if you are using a ADO.NET dataset, you can ignore the namespace prefix and use just Recordset and Record.

3. Add the prefix “inm” to any select statements. Example:

<xsl:value-of select="inm:Co-pay"/>

4. A new parent table has been added to the root of the XML hierarchy called Result. This means that the records returned are now at table index two, rather than table index one. (Note: table indexes are 0 based, so index 2 is actually the third table).

5. Error reporting is completely diferent in this new version. Rather than looking for a table count of less than 3 (no records returned) and then displaying the error parsed from the Recordset table, we can now look to see if there is a table called Error, and find the details in a field called Error_Text.