Removing textflags in xml2struct?

2 visualizzazioni (ultimi 30 giorni)
Jin Wook Hwang
Jin Wook Hwang il 28 Feb 2018
Commentato: Jin Wook Hwang il 12 Mar 2018
Hello, I am currently using xml2struct provided in the link below.
I was wondering if there is a way to modify the code so I don't get textflags <Text></Text>.
So input xmlfile of this
<XMLname attrib1="Some value">
<Element>Some text</Element>
</XMLname>
will produce s.XMLname.Element = "Some text";
instead of s.XMLname.Element.Text = "Some text";
Thank you.

Risposta accettata

Guillaume
Guillaume il 9 Mar 2018
While you could indeed edit the code yourself so it does whatever you want, this whole thing is a very bad idea.
What if the xml is instead:
<XMLname attrib1="Some value">
<Element attrib2="Some other value">Some text</Element>
</XMLname>
Where does attrib2 go in the structure? You do need
s.XMLName.Element.Text = 'Some text';
s.XMLName.Element.Attributes.attrib2 = 'Some other value';
xml2struct exactly reflects the XML DOM. What you're asking breaks from it. It is correct that the text portion of an element should be identified by its own field.
Also, I don't understand why it would be causing problem for you. Why can't you adjust your code so it conform to the xml DOM?
  1 Commento
Jin Wook Hwang
Jin Wook Hwang il 12 Mar 2018
Thank you, after studying xml format I realized later that whole idea is somewhat conflicting. I found another way around as you suggested, to conform to the xml DOM. Thanks

Accedi per commentare.

Più risposte (1)

Sujit Muduli
Sujit Muduli il 9 Mar 2018
Modificato: Walter Roberson il 9 Mar 2018
Hi Jin,
I didn't get a chance to go into the detailed implementation of this function, but yeah it should be possible to get the desired result. You just need to find out the location in the code where the structure is getting created and change the structure definition according to your need. You may refer this documentation link to find out more on struct in MATLAB.
  1 Commento
Jin Wook Hwang
Jin Wook Hwang il 12 Mar 2018
Thank you! Found a way to go around the method to achieve my desired output.

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by