|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
XML Root Node lost in data tree |
« View previous topic :: View next topic » |
Author |
Message
|
kuli_s |
Posted: Tue Oct 01, 2002 4:05 am Post subject: XML Root Node lost in data tree |
|
|
 Newbie
Joined: 01 Oct 2002 Posts: 2 Location: London
|
Hi,
I am currently involved in a project to upgrade a 2.0.1 MQSI implementation to WMQI 2.1.
In 2.0.1 if you have the following MRM-defined XML for example:
<Person>
<Name>Kuli</Name>
<Age>29</Age>
</Person>
Then the Name can be referenced as:
Body.Person.Name
In 2.1, if I import the same message set using the -x XML param to include the XML physical layer to the MRM-domain message (or indeed if I create it manually, or via DTD-importing), the trace shows me that name is now referenced as:
Body.Name
How do I get the root node of the XML in the data tree?
I refer you to page 72 of the 'Working with Messages manual' as follows, which seems to confirm my findings:
----------------------------------------------------------------------------------------------------------------
Referencing simple types
A simple type does not have an identifier that uniquely defines it in ESQL,
therefore if you want to interrogate or update a simple type, you must reference it
in relation to other known objects in the message.
If you are working with the following XML message:
<Mess1><Elem1>abc</Elem1><Elem2>abc<Child1>def</Child1></Elem2></Mess1>
you can model this using the following objects:
Message
The message Identifier property is set to Mess1 , the Type property is set to
tMess1 .
Type
The compound type Identifier property is set to tMess1 , the Type Composition
property is set to Sequence . The compound type contains the following
objects:
Simple Type
STRING
Element
The element Identifier property is set to Elem1 , the Type property is
set to simple type STRING .
Element
The element Identifier property is set to Elem2 , the Type property is
set to compound type tElem2 .
Type
The compound type Identifier property is set to tElem2 , the Type Composition
property is set to Ordered Set , the Type property (the compound type’s
base type) is set to null . This compound type contains the following object:
Element
The element Identifier property is set to Child1 , the Type property is
set to simple type STRING .
If you want to set the value of Elem1 to xyz , use the following ESQL:
SET OutputRoot.MRM.Elem1.*[1 ]=’xyz ’;
Any help would me much appreciated! |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|