[jibx-users] Unmarshalling attributes of child element to a collection

2014-08-29 Thread Bhowmik, Bindul
​Hello,

​
​I am trying to use JiBX to parse a larger XML, which includes a structure
similar to the ones noted below:

Schema:
xs:complexType name=Parent
xs:sequence
xs:element name=ChildElem maxOccurs=unbounded
xs:complexType
xs:attribute name=ChildElemValue type=xs:string
use=required/
/xs:complexType
/xs:element
/xs:sequence
xs:attribute name=Child1 type=xs:string/
xs:attribute name=Child2 type=xs:int/
/xs:complexType

Sample Value:
Parent Child1=AttrVal Child2=999
ChildElem ChildElemValue=SomeVal/
ChildElem ChildElemValue=SomeVal2/
/Parent​


The equivalent class I am trying to map this to is:
public class Parent {
private String child1;
private int Child2;
private ListString childElems;
}

I am trying to write a mapping for marshalling and unmarshalling, without
requiring a class to represent the ChildElem, because all it will ever have
is a string in the ChildElemValue attribute.

I am open to (but not experienced with) custom Marshaller / Unmarshaller,
and if so, I would like to reuse them as much as possible, as there are
similar structures as above (with different element / attribute names) all
over the project.

Any help or direction in accomplishing this would be greatly appreciated.

Regards,
Bindul​
--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/___
jibx-users mailing list
jibx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jibx-users


Re: [jibx-users] Unmarshalling attributes of child element to a collection

2014-08-29 Thread Darin Clark
You might try something like

collection create-type=”java.util.ArrayList” field=”childElems”
structure name=”ChildElem”value name=”ChildElemValue” style=”attribute” 
type=”java.lang.String”//structure
/collection

That is, the collection has no name, in particular, but is composed of a bunch 
of ‘ChildElem’ elements.  The ‘ChildElem’ elements, themselves, don’t have any 
special binding to an object, but are just structural XML, containing an 
attribute named “ChildElemValue” which is a String.

Not absolutely sure this will work right, but it might.


From: Bhowmik, Bindul [mailto:bindulbhow...@gmail.com]
Sent: Friday, August 29, 2014 3:43 PM
To: jibx-users@lists.sourceforge.net
Subject: [jibx-users] Unmarshalling attributes of child element to a collection

​Hello,

​
​I am trying to use JiBX to parse a larger XML, which includes a structure 
similar to the ones noted below:

Schema:
xs:complexType name=Parent
xs:sequence
xs:element name=ChildElem maxOccurs=unbounded
xs:complexType
xs:attribute name=ChildElemValue type=xs:string 
use=required/
/xs:complexType
/xs:element
/xs:sequence
xs:attribute name=Child1 type=xs:string/
xs:attribute name=Child2 type=xs:int/
/xs:complexType
Sample Value:
Parent Child1=AttrVal Child2=999
ChildElem ChildElemValue=SomeVal/
ChildElem ChildElemValue=SomeVal2/
/Parent​

The equivalent class I am trying to map this to is:
public class Parent {
private String child1;
private int Child2;
private ListString childElems;
}
I am trying to write a mapping for marshalling and unmarshalling, without 
requiring a class to represent the ChildElem, because all it will ever have is 
a string in the ChildElemValue attribute.
I am open to (but not experienced with) custom Marshaller / Unmarshaller, and 
if so, I would like to reuse them as much as possible, as there are similar 
structures as above (with different element / attribute names) all over the 
project.

Any help or direction in accomplishing this would be greatly appreciated.

Regards,
Bindul​




This message and its contents (to include attachments) are the property of 
National Health Systems, Inc. and may contain confidential and proprietary 
information. This email and any files transmitted with it are intended solely 
for the use of the individual or entity to whom they are addressed. You are 
hereby notified that any unauthorized disclosure, copying, or distribution of 
this message, or the taking of any unauthorized action based on information 
contained herein is strictly prohibited. Unauthorized use of information 
contained herein may subject you to civil and criminal prosecution and 
penalties. If you are not the intended recipient, you should delete this 
message immediately and notify the sender immediately by telephone or by 
replying to this transmission.
--
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/___
jibx-users mailing list
jibx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jibx-users