Cau Peto,

Ten clovek, ktoremu XML parsovanie ide ma PTF SI13650, skus sa na to 
pozriet.
Roman



wlau@xxxxxxxxxxx 
Sent by: cobol400-l-bounces@xxxxxxxxxxxx
14.09.2005 23:02
Please respond to
COBOL Programming on the iSeries/AS400 <cobol400-l@xxxxxxxxxxxx>


To
"COBOL Programming on the iSeries/AS400" <cobol400-l@xxxxxxxxxxxx>
cc

Subject
Re: [COBOL400-L] Problem with XML PARSE in ILE COBOL V5R3






FYI, my ILE COBOL compiler PTF level is at SI13650.


> Thank you for information,
>
> but that PTF don't help me  - with DSPPTF i found out,  that  we had 
this
> PTF already installed
>
> Product ID/PTF ID  . . . . . . . . . . :   5722SS1  SI12032
> Release  . . . . . . . . . . . . . . . :   V5R3M0
>
> On order . . . . . . . . . . . . . . . :   No
> PTF save file  . . . . . . . . . . . . :   No
> PTF status . . . . . . . . . . . . . . :   Permanently applied
> Latest superseding PTF . . . . . . . . :   SI16546
> Status date/time . . . . . . . . . . . :   06/04/04  18:15:42
> Type . . . . . . . . . . . . . . . . . :   Immediate
> Unattended IPL action  . . . . . . . . :   None
> Optional part  . . . . . . . . . . . . :   *BASE
> PTF library  . . . . . . . . . . . . . :   QSYS
> Cover letter . . . . . . . . . . . . . :   No
> Mandatory instructions . . . . . . . . :   No
> Test Fix . . . . . . . . . . . . . . . :   No
> Action pending . . . . . . . . . . . . :   No
> Action required  . . . . . . . . . . . :   No
> Target OS/400 release  . . . . . . . . :   V5R3M0
> Minimum-Maximum level  . . . . . . . . :   L0B-L00
> PTF creation date/time . . . . . . . . :   11/02/04  15:33:15
>
>
>
>
> wlau@xxxxxxxxxxx
> Sent by: cobol400-l-bounces@xxxxxxxxxxxx
> 13.09.2005 17:08
> Please respond to
> COBOL Programming on the iSeries/AS400 <cobol400-l@xxxxxxxxxxxx>
>
>
> To
> "COBOL Programming on the iSeries/AS400" <cobol400-l@xxxxxxxxxxxx>
> cc
>
> Subject
> Re: [COBOL400-L] Problem with XML PARSE in ILE COBOL V5R3
>
>
>
>
>
>
> Try this:
>
> 
http://www-912.ibm.com/n_dir/nas4apar.nsf/fd9ac656a54b8cf286256e770069b197/ce22abf9c407373e86256eab003ca9b5?OpenDocument&Highlight=2,5722SS111

>
>
> PTF is SI12032.
>
>
>> Do you know, where I find the PTFs ?
>>
>>
>>
>>
>> wlau@xxxxxxxxxxx
>> Sent by: cobol400-l-bounces@xxxxxxxxxxxx
>> 13.09.2005 16:08
>> Please respond to
>> COBOL Programming on the iSeries/AS400 <cobol400-l@xxxxxxxxxxxx>
>>
>>
>> To
>> "COBOL Programming on the iSeries/AS400" <cobol400-l@xxxxxxxxxxxx>
>> cc
>>
>> Subject
>> Re: [COBOL400-L] Problem with XML PARSE in ILE COBOL V5R3
>>
>>
>>
>>
>>
>>
>> I simply compile with default and my source CCSID is 37. I also tried
> your
>> compile options and it works fine.
>>
>> It's probably a good idea to check for latest V5R3 PTF for both ILE
> COBOL
>> compiler and runtime.
>>
>>
>>> I tried it once again, The CCSID of my source file is 37, and I
> compiled
>>> it with
>>>
>>> CRTBNDCBL PGM(RM/HELLOXML)
>>> SRCFILE(RM/XMLSRC) SRCMBR(HELLOXML)
>>> OPTION(*SOURCE *APOST) DBGVIEW(*SOURCE) ACTGRP(*CALLER)
>>> CCSID(037)
>>>
>>> but I got the same error  XML-CODE = 000000051.
>>>
>>> What is the CCSID of your source file and with which command did you
>>> compile?
>>>
>>>
>>>
>>>
>>>
>>>
>>> wlau@xxxxxxxxxxx
>>> Sent by: cobol400-l-bounces@xxxxxxxxxxxx
>>> 12.09.2005 22:54
>>> Please respond to
>>> COBOL Programming on the iSeries/AS400 <cobol400-l@xxxxxxxxxxxx>
>>>
>>>
>>> To
>>> "COBOL Programming on the iSeries/AS400" <cobol400-l@xxxxxxxxxxxx>
>>> cc
>>>
>>> Subject
>>> Re: [COBOL400-L] Problem with XML PARSE in ILE COBOL V5R3
>>>
>>>
>>>
>>>
>>>
>>>
>>> Your HelloXML program seems to work with me. I have the following in
> the
>>> joblog:
>>>
>>>
>>>
>>>
>>>
>>> XML Event XML Text
>>>
>>> START-OF-DOCUMENT             <?xml version="1.0" encoding
>>>
>>> ="ibm-37"?> <msg type="succinct">Hello, World!</msg>
>>>
>>> VERSION-INFORMATION           1.0
>>>
>>> ENCODING-DECLARATION          ibm-37
>>>
>>> START-OF-ELEMENT              msg
>>>
>>> ATTRIBUTE-NAME                type
>>>
>>> ATTRIBUTE-CHARACTERS          succinct
>>>
>>> CONTENT-CHARACTERS            Hello, World!
>>>
>>> END-OF-ELEMENT                msg
>>>
>>> END-OF-DOCUMENT
>>>
>>>
>>>
>>>
>>>> Part 1 (3 Aug 05)
>>>> I'm trying to test the new feature of ILE COBOL V5R3, the XML PARSE
>>>> ability, but I have problems.
>>>> When I try this simplest example:
>>>>
>>>>        Identification division.
>>>>        Program-id. HelloXML.
>>>>        Data division.
>>>>        Working-storage section.
>>>>          1 M.
>>>>           2 pic x(40) value
>>>>              '<?xml version="1.0" encoding="ibm-37"?>'.
>>>>           2 pic x(40) value
>>>>              '<msg type="succinct">Hello, World!</msg>'.
>>>>        Procedure division.
>>>>           Display 'XML Event XML Text'
>>>>           XML Parse M
>>>>             Processing procedure P
>>>>           End-XML
>>>>           Goback.
>>>>        P.
>>>>           If XML-Code = 0
>>>>              Display XML-Event XML-Text
>>>>           End-if.
>>>>        End program HelloXML.
>>>>
>>>> I obtain Exception. The values of registers are:
>>>>
>>>> XML-CODE = 000000051 i.e. "The document was encoded in EBCDIC, and 
the
>>>> document encoding declaration specified a supported EBCDIC encoding,
>> but
>>>> the parser does not support the CCSID of the COBOL source member."
>>>>
>>>> I'dont know why the parser does not support the CCSID of my source
>>> member,
>>>> because the CCSID of my source file is 37 (just like the CCSID of 
XML)
>>>>
>>>> XML-EVENT = 'EXCEPTION '
>>>>
>>>> When I try to look at XML-TEXT, I become the following message:
>>>>
>>>> Message ID . . . . . . :   MCH0601       Severity . . . . . . . : 40
>>>> Message type . . . . . :   Diagnostic
>>>> Date sent  . . . . . . :   03/08/05      Time sent  . . . . . . :
>>> 09:13:55
>>>>
>>>> Message . . . . : Space offset X'00FFF000' or X'0000000000000000' is
>>>> outside
>>>> current limit for object &1.
>>>> Cause . . . . . : A program tried to set a space pointer or use
> storage
>>>> outside a space, or tried to use an unallocated page in teraspace. 
The
>>>> space
>>>> class is X'04'. The space class designates the type of space:
>>>> 00-primary associated space (includes space objects).
>>>> 01-secondary associated space 0.
>>>> 02-implicit process space for automatic storage.
>>>> 03-implicit process space for static storage in activation group mark
>>>> X'00000000'.
>>>> 04-implicit process space for heap identifier X'00000000' in
> activation
>>>> group mark X'00000000'.
>>>> 05-constant space.
>>>> 06-space for handle-based heap identifier X'00000000'.
>>>> 07-teraspace offset X'0000000000000000'.
>>>> 08-teraspace for OS/400 PASE memory address X'0000000000000000'.
>>>> Offset X'00FFF000' only applies to storage outside teraspace.
>>>> X'8000000000000000F1D06F2C2E001000' is a pointer to the teraspace 
page
>>> or
>>>> the start of the implicit process space for the allocation.
>>>>
>>>> Can anybody say me, what's going wrong?
>>>>
>>>>
>>>> Part 2 (11 Aug 05 8:34)
>>>> The above mentioned problem can be partially solved by placing the 
XML
>>>> document (encoded in CCSID=819) in the IFS directory e.g. 
/home/user1.
>>> The
>>>> CCSID defined inside of the XML document must be 819 too, i.e.:
>>>>
>>>> <?xml version="1.0" encoding="ibm-819" standalone="yes"?>
>>>> <!--This document is just an example-->
>>>> <sandwich>
>>>>  <bread type="baker&apos;s best"/>
>>>>  <?spread please use real mayonnaise ?>
>>>>  <meat>Ham & turkey</meat>
>>>>  <filling>Cheese, lettuce, tomato, etc. </filling>
>>>>  <![CDATA[We should add a <relish> element in future!]]>
>>>>  <listprice>$4.99 </listprice>
>>>>  <discount>0.10</discount>
>>>> </sandwich>
>>>>
>>>> and here is the COBOL sample program
>>>>
>>>>        Process APOST
>>>>        Identification division.
>>>>          Program-id. xmlsampl2.
>>>>
>>>>        Data division.
>>>>         Working-storage section.
>>>> ******************************************************************
>>>>       * XML document, encoded as initial values of data items. *
>>>> ******************************************************************
>>>>          1 xml-id pic x(27) value '/home/user1/xmlsampldoc.xml'.
>>>>          1 xml-document-length computational pic 999.
>>>>
>>>> ******************************************************************
>>>>       * Sample data definitions for processing numeric XML content. *
>>>> ******************************************************************
>>>>          1 current-element pic x(30).
>>>>          1 list-price computational pic 9v99
>  value 0.
>>>>          1 discount computational pic 9v99 value 0.
>>>>          1 display-price pic $$9.99.
>>>>        Procedure division.
>>>>         mainline section.
>>>>
>>>>            XML PARSE FILE-STREAM xml-id PROCESSING PROCEDURE
>> xml-handler
>>>>            ON EXCEPTION
>>>>              display 'XML document error ' XML-CODE
>>>>            NOT ON EXCEPTION
>>>>              display 'XML document successfully parsed'
>>>>            END-XML
>>>>
>>>> ******************************************************************
>>>>       * Process the transformed content and calculate promo price. *
>>>> ******************************************************************
>>>>            display ' '
>>>>            display '-----+++++***** Using information from XML '
>>>>                '*****+++++-----'
>>>>            display ' '
>>>>            move list-price to display-price
>>>>            display ' Sandwich list price: ' display-price
>>>>            compute display-price = list-price * (1 - discount)
>>>>            display ' Promotional price: ' display-price
>>>>            display ' Get one today!'
>>>>
>>>>            goback.
>>>>
>>>>         xml-handler section.
>>>>            evaluate XML-EVENT
>>>>       * ==> Order XML events most frequent first
>>>>              when 'START-OF-ELEMENT'
>>>>                display 'Start element tag: <' XML-TEXT '>'
>>>>                move XML-TEXT to current-element
>>>>              when 'CONTENT-CHARACTERS'
>>>>                display 'Content characters: <' XML-TEXT '>'
>>>>       * ==> Transform XML content to operational COBOL data item...
>>>>                evaluate current-element
>>>>                  when 'listprice'
>>>>       * ==> Using function NUMVAL-C...
>>>>                    compute list-price = function numval-c(XML-TEXT)
>>>>                  when 'discount'
>>>>                    compute discount = function numval-c(XML-TEXT)
>>>>                end-evaluate
>>>
>>>              when 'END-OF-ELEMENT'
>>>>                display 'End element tag: <' XML-TEXT '>'
>>>>                move spaces to current-element
>>>>              when 'START-OF-DOCUMENT'
>>>>                compute xml-document-length = function 
length(XML-TEXT)
>>>>                display 'Start of document: length='
> xml-document-length
>>>>                    ' characters.'
>>>>              when 'END-OF-DOCUMENT'
>>>>                display 'End of document.'
>>>>              when 'VERSION-INFORMATION'
>>>>                display 'Version: <' XML-TEXT '>'
>>>>              when 'ENCODING-DECLARATION'
>>>>                display 'Encoding: <' XML-TEXT '>'
>>>>              when 'STANDALONE-DECLARATION'
>>>>                display 'Standalone: <' XML-TEXT '>'
>>>>
>>> when 'ATTRIBUTE-NAME'
>>>>                display 'Attribute name: <' XML-TEXT '>'
>>>>              when 'ATTRIBUTE-CHARACTERS'
>>>>                display 'Attribute value characters: <' XML-TEXT '>'
>>>>              when 'ATTRIBUTE-CHARACTER'
>>>>                display 'Attribute value character: <' XML-TEXT '>'
>>>>              when 'START-OF-CDATA-SECTION'
>>>>                display 'Start of CData: <' XML-TEXT '>'
>>>>              when 'END-OF-CDATA-SECTION'
>>>>                display 'End of CData: <' XML-TEXT '>'
>>>>              when 'CONTENT-CHARACTER'
>>>>                display 'Content character: <' XML-TEXT '>'
>>>>              when 'PROCESSING-INSTRUCTION-TARGET'
>>>>                display 'PI target: <' XML-TEXT '>'
>>>>              when 'PROCESSING-INSTRUCTION-DATA'
>>>>                display 'PI data: <' XML-TEXT '>'
>>>>              when 'COMMENT'
>>>>                display 'Comment: <' XML-TEXT '>'
>>>>              when 'EXCEPTION'
>>>>                compute xml-document-length = function length
> (XML-TEXT)
>>>>                display 'Exception ' XML-CODE ' at offset '
>>>>                    xml-document-length '.'
>>>>              when other
>>>>                display 'Unexpected XML event: ' XML-EVENT '.'
>>>>            end-evaluate
>>>>            .
>>>>          End program xmlsampl2.
>>>>
>>>> There is a CCSID-Option in ILE COBOL compiler too. After the 
compiling
>>>> with the command
>>>>
>>>> CRTBNDCBL PGM(EBKPGMP/XMLSAMPL2)
>>>> SRCFILE(RM/XMLSRC) SRCMBR(XMLSAMPL2)
>>>> OPTION(*SOURCE *APOST) DBGVIEW(*SOURCE) ACTGRP(*CALLER)
>>>> CCSID(819)
>>>>
>>>> (or without C
>>>> CSID option) the program runs without exception, but the
>>>> output is hieroglyphics (false encoding) e.g.:
>>>>
>>>> Start element tag: <Ë/>???ÄÇ>
>>>> Content characters: <  >
>>>> Start element tag: <Â?Á/?>
>>>> Attribute name: <?`?Á>
>>>> Attribute value characters: <Â/,Á?>
>>>> Attribute value character: <
>>>> Attribute value characters: <Ë ÂÁË?>
>>>>
>>>> I don't know how to fix this problem..
>>>>
>>>> I spoked with the IBM support too. At present it seems so, that XML
>>> PARSE
>>>> statement in ILE COBOL has problems with encodings, it works probably
>>> only
>>>> with CCSID=819.
>>>>
>>>> My opinion is, that the XML PARSE in ILE COBOL V5R3 statement is
>>> presently
>>>> not fit for production use.
>>>>
>>>> Have you other experience with XML PARSE statement in ILE COBOL V5R3 
?
>>>> --
>>>> This is the COBOL Programming on the iSeries/AS400 (COBOL400-L)
> mailing
>>>> list
>>>> To post a message email: COBOL400-L@xxxxxxxxxxxx
>>>> To subscribe, unsubscribe, or change list options,
>>>> visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
>>>> or email: COBOL400-L-request@xxxxxxxxxxxx
>>>> Before posting, please take a moment to review the archives
>>>> at http://archive.midrange.com/cobol400-l.
>>>>
>>>
>>> --
>>> This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) 
mailing
>>> list
>>> To post a message email: COBOL400-L@xxxxxxxxxxxx
>>> To subscribe, unsubscribe, or change list options,
>>> visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
>>> or email: COBOL400-L-request@xxxxxxxxxxxx
>>> Before posting, please take a moment to review the archives
>>> at http://archive.midrange.com/cobol400-l.
>>>
>>>
>>> --
>>> This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) 
mailing
>>> list
>>> To post a message email: COBOL400-L@xxxxxxxxxxxx
>>> To subscribe, unsubscribe, or change list options,
>>> visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
>>> or email: COBOL400-L-request@xxxxxxxxxxxx
>>> Before posting, please take a moment to review the archives
>>> at http://archive.midrange.com/cobol400-l.
>>>
>>
>> --
>> This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) mailing
>> list
>> To post a message email: COBOL400-L@xxxxxxxxxxxx
>> To subscribe, unsubscribe, or change list options,
>> visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
>> or email: COBOL400-L-request@xxxxxxxxxxxx
>> Before posting, please take a moment to review the archives
>> at http://archive.midrange.com/cobol400-l.
>>
>>
>> --
>> This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) mailing
>> list
>> To post a message email: COBOL400-L@xxxxxxxxxxxx
>> To subscribe, unsubscribe, or change list options,
>> visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
>> or email: COBOL400-L-request@xxxxxxxxxxxx
>> Before posting, please take a moment to review the archives
>> at http://archive.midrange.com/cobol400-l.
>>
>
> --
> This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) mailing
> list
> To post a message email: COBOL400-L@xxxxxxxxxxxx
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
> or email: COBOL400-L-request@xxxxxxxxxxxx
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/cobol400-l.
>
>
> --
> This is the COBOL Programming on the iSeries/AS400 (COBOL400-L) mailing
> list
> To post a message email: COBOL400-L@xxxxxxxxxxxx
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/cobol400-l
> or email: COBOL400-L-request@xxxxxxxxxxxx
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/cobol400-l.
>


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2022 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.