7 Understanding the XML Output

This chapter contains the following topics:

7.1 Designing Batch Applications for BI Publisher

When you design batch applications and batch versions for BI Publisher for JD Edwards EnterpriseOne, consider how you use page headers and page footers.

7.1.1 Page Headers and Page Footers

Do not include page headers and page footers in report templates or batch versions that are designed for BI Publisher. Page headers and page footers should be included in the BI Publisher template.

Report developers commonly use page headers as both a page header and a level break header. This combination usage of page headers and level break headers does not work well with BI Publisher.

7.2 Interpreting XML Output

You generate XML output by running a batch version or a report definition with a batch version. You use the XML output when creating BI Publisher templates with the Microsoft Word Template Builder.

See Oracle Business Intelligence Publisher User's Guide.

The XML output contains information from the batch version specifications. Some of the kinds of information that you should consider when you review your XML output are:

  • Section tags.

  • Item tags.

  • Formatted numbers.

  • Formatted dates.

  • Page headers and page footers.

  • Conditional sections.

  • Special characters.

  • Level break sections.

  • Child sections.

  • Report properties.

7.2.1 Section Tags

Section tags are determined by the name that is specified in JD Edwards EnterpriseOne Report Design Aid (RDA). The name that you see in the XML output is the same as the name found in the Description field of the Section Properties form.

Because multiple sections in an RDA report template can be named the same, the section tag in the XML output is appended with a section ID. The section ID begins with the letter S to indicate that it is a section from the report. The section ID is assigned by RDA to ensure that each report section is unique. The section ID is retrieved from the report specifications and cannot be modified.

This is an example of the sections that are included in the XML output for a batch version of the Purchase Order Print report:

- <R43500>
   + <Properties>
   + <Purchase_Order_Print_S42_Column_Headings Language="">
   + <PageHeaders>
   + <Purchase_Order_Print_S42_Group>
  </R43500>

The first node of the XML output displays the name of the Purchase Order Print report template, R43500. All other nodes are nested under this report template node:

  • The first node under the report template name is the Properties node.

  • The second node is the Column Headings Language node.

    This node appears only when the batch version includes columnar sections.

  • The third node is the PageHeaders node.

  • The fourth node is a section that groups all associated level break headers and level break footers with the report detail section.

7.2.2 Item Tags

Item tags that you see in the XML output are determined by the data dictionary name of the fields used in the RDA report template. An exception to this rule is that if the data dictionary name has been overridden in RDA, then the override is used as the item tag.

Because multiple data items in an RDA report template can be named the same, the item tag in the XML output is appended with an object ID. The object ID begins with the letters ID to indicate that it is a field from the report. The object ID is assigned by RDA to ensure that each report object is unique. The object ID is retrieved from the report specifications and cannot be modified.

This is an example of an individual section that is included in the XML output for a batch version of the Purchase Order Print report:

- <Purchase_Order_Print_S42_Group>
   - <On_Ship_To_S45> 
      <PageHeaderNumber1</PageHeaderNumber> 
      <DocumentOrderInvoiceE_ID135>Order Number</DocumentOrderInvoiceE_ID135> 
      <OrderSuffix_ID140>000</OrderSuffix_ID140>
      <OrderType_ID138>OD</OrderType_ID138>
      <DocumentOrderInvoiceE_ID136>1</DocumentOrderInvoiceE_ID136>
      <Order_Revision_Notes_S65/> 
+ <On_Order_Suffix_S58> 
      <Total_Order__ID12>Total Order</Total_Order__ID12>
      <Order_Extended_Price_ID13>969.10</Order_Extended_Price_ID13>
    + <Taxes_S49> 
    + <Grand_Total_S50> 
    + <Buyer_S51> 
    </On_Ship_To_S45> 

In this XML output example:

  • The <On_Ship_To_S45> node is a level break header.

    The page header number indicates where the data resides in the RDA report.

  • The <On_Order_Suffix_S58> is also a level break.

  • The information that resides directly under the <On_Order_Suffix_S58> node is level break footer information.

    The level break footer information is at the same level as the level break header information because both level break sections break on the same field.

  • The <Taxes_S49>, <Grand_Total_S50>, and <Buyer_S51> nodes are all conditional sections that are called by the level break footer.

When the node of a section is expanded, you can view the item tags of the individual records. Each piece of data is enclosed within descriptive item tags that include the object ID.

7.2.3 Special Characters

Many special characters that are used in RDA and included in EnterpriseOne data are replaced in the XML output. For example:

  • '<' is replaced with "&lt".

  • '>' is replaced with "&gt".

  • '&' is replaced with "&amp".

  • apostrophes are replaced with "&apos".

  • quotes are replaced with "&quot".

Other special characters that are prohibited, as defined in the XML 1.0 specifications, are replaced with an underscore.

7.2.4 Formatted Numbers

Numbers are formatted in the BI Publisher output using JAVA BigDecimal String format. This formatting consists of an optional sign ("–") followed by a sequence of decimal digits. These digits can be followed by a fraction and additionally by an exponent, for example, –123456.3455e-3.

7.2.5 Formatted Dates

Dates are formatted in Canonical format.

7.2.6 Page Headers and Page Footers

Information that is contained in page headers and page footers of RDA reports is grouped together at the top of the XML output. This ensures that the headers and footers do not break up the report data.

Design your reports in RDA without including page headers and page footers. You should design the page headers and page footers in the BI Publisher template.

This is an example of the page header information that is included in the XML output for a batch version of the Purchase Order Print report:

- <PageHeaders>
- <Page_Header_S43> 
     <PageHeaderNumber>1</PageHeaderNumber>
  <R43500_ID1>R43500</R43500_ID1> 
  <Variable_000004_ID4>2007-09-20</Variable_000004_ID4> 
  <szCompanyDescription_ALPH_ID17>06969</szCompanyDescription_ALPH_ID17> 
  <Page__ID7>Page</Page__ID7> 
  <Variable_000006_ID6>1</Variable_000006_ID6> 
   <szReportDescription_ALPH_ID18>Purchase Order Print</szReportDescription_ALPH_
    ID18> 
  </Page_Header_S43>

There are individual page header nodes nested under the PageHeaders node, one for each page of the report where a reprint page header was explicitly called by the report logic. By default, 8.97 and subsequent releases will have only one page header. In this example, the PageHeaderNumber is the same as the Variable_000006_ID6. The PageHeaderNumber is the sequential page number generated by the system. The variable page number is the page number printed in the page header of the report.

7.2.7 Conditional Sections

Conditional sections appear in the XML output as children of the section from which they are called.

This is an example of conditional sections that are included in the XML output for a batch version of the Purchase Order Print report:

- <Purchase_Order_Print_S42_Group>
   - <On_Ship_To_S45> 
      <PageHeaderNumber1</PageHeaderNumber> 
      <DocumentOrderInvoiceE_ID135>Order Number</DocumentOrderInvoiceE_ID135> 
      <OrderSuffix_ID140>000</OrderSuffix_ID140>
      <OrderType_ID138>OD</OrderType_ID138>
      <DocumentOrderInvoiceE_ID136>1</DocumentOrderInvoiceE_ID136>
      <Order_Revision_Notes_S65/> 
+ <On_Order_Suffix_S58> 
      <Total_Order__ID12>Total Order</Total_Order__ID12>
      <Order_Extended_Price_ID13>969.10</Order_Extended_Price_ID13>
   - <Taxes_S49> 
      <PageHeaderNumber1</PageHeaderNumber> 
      <Tax_Group_Summary_ID2>Tax Group Summary</Tax_Group_Summary_ID2> 
      <DescriptionTaxArea_ID3>CA</DescriptionTaxArea_ID3>
      <Tax_Rate_1_ID4>10.5000</Tax_Rate_1_ID4>
      <__ID5>%</__ID5>
      <Taxable_Amount_ID9>969.10</Taxable_Amount_ID9>
      <Tax_Amount_ID11>101.76</Tax_Amount_ID11>
  </Taxes_S49> 
   + <Grand_Total_S50> 
   + <Buyer_S51> 
   </On_Ship_To_S45> 

The <Taxes_S49> node is a conditional section called by the level break footer section. The <Grand_Total_S50> and <Buyer_S51> nodes are also conditional sections called by the level break footer section.

7.2.8 Level Break Sections

Level break sections are used in RDA to group large amounts of data into manageable groups. Level break headers typically display a descriptive heading for the group while the level break footer typically displays an aggregate. These level break sections appear in the XML output as children of the section on which they were created.

7.2.9 Child Sections

Child sections appear in the XML output as children of the section from which they are called.

7.2.10 Report Properties

The following report properties are included in the XML output for auditing and informational purposes:

Property Description
Version The object name of the submitted batch version.
Title The title of the submitted batch version.
Machine The name of the machine where the batch version was submitted.
Host The name of the machine where the submitted batch version was processed.
Environment The name of the environment where the batch version specifications reside.
User The name of the user who submitted the batch version.
Role The role of the user who submitted the batch version.
Language The language in which the batch version was processed.
Company The name of the company for which data is reported in the submitted batch version.
Release The JD Edwards EnterpriseOne release that was used to process the batch version.
Date The date that the batch version was processed.
Time The time that the batch version was processed.

This is an example of report properties that are included in the XML output for a batch version of the Purchase Order Print report:

- <Properties>
<Version>JENTEST1</Version>
  <Title>Purchase Order Print</Title> 
  <Machine>JEHOOD-LAP1</Machine> 
  <Host>JEHOOD-LAP1</Host> 
  <Environment>STGAWSC1</Environment> 
  <User>JDE</User> 
  <Role>*ALL</Role> 
   <Company>Oracle - JD Edwards</Company>
  <OneWorldRelease>E90</OneWorldRelease> 
  <Date>2007-09-20</Date> 
  <Time>12:57:02</Time> 
 </Properties>

7.3 Comparing XML Output Formats

Some differences exist between the XML output file that is generated for 8.96 XML Publisher and the output file that is generated in subsequent releases.

The differences between the 8.96 XML output and the XML output in subsequent releases include:

  • Supported object types

  • General XML format differences

  • Properties node

  • Column headings node

  • Page headers node

  • Report details node

7.3.1 Supported Object Types

The following RDA object types that were not supported in 8.96 XML Publisher are supported in subsequent releases:

  • Report constants

  • Column headers

  • System date

  • System time

  • Page number

  • Total pages

7.3.2 General XML Format Differences

These are some of the differences that affect the entire XML output:

  • Empty tags have been removed.

  • Hidden fields and sections appear in the output.

  • Utimes are formatted in canonical format.

  • Constant text appears in the output.

  • Conditional sections are displayed as children of the parent section.

Conditional sections were not displayed as children of the parent section in 8.96, rather, they appeared at the same level as the detail report section.

Because of the differences between the XML output file that is generated for 8.96 XML Publisher and the output file that is generated in subsequent releases, Oracle recommends that you create new templates if you are migrating to subsequent releases.

See Appendix A, "JD Edwards EnterpriseOne BI Publisher Releases".

7.3.3 Properties Node

The Properties node of the XML output includes property information regarding the submitted batch version. The Properties node of the XML output in subsequent releases differs from the 8.96 XML output in that it:

  • Includes the version name as a separate tag.

  • Includes the host machine name.

7.3.4 Column Headings Node

Each columnar section of the submitted batch version is preceded with a Column Headings Language node. This node lists all column headings included in the columnar section. The column headings are represented by beginning and ending tags that include the ID assigned to each heading. In between the beginning and ending tags is the column heading as it appears in the batch version.

This section does not exist in the 8.96 XML Publisher output.

7.3.5 Page Headers Node

The Page Header nodes of the XML output include page information from the submitted batch version. The Page Header nodes of the XML output in subsequent releases differ from the 8.96 XML Publisher output in these ways:

  • Includes the page header number.

  • Includes the report name.

  • Includes the date that the batch version was submitted.

  • Includes the page number.

7.3.6 Report Details Node

The report detail node of the XML output in subsequent releases differs from the 8.96 XML Publisher output in these ways:

  • The report detail node includes the page header number where the associated data appears.

  • Conditional sections are nested under the parent section.