XML for Delphi XE6 32-bit/64-bit

I am looking for a straight-forward no frills XML library or component
that allows me to easily form an XML file and to parse it easily as a
means to transfer text (could be long and lengthy) information back
and forth between applications. I would appreciate any recommendation
of such a resource. Or maybe XML is not a good option for my
application?

Thanking you all in advance. 

Andy
0
Andy
6/8/2014 1:09:00 AM
embarcadero.delphi.tools 5366 articles. 3 followers. Follow

12 Replies
1531 Views

Similar Articles

[PageSpeed] 10

Andy wrote:

> I am looking for a straight-forward no frills XML library or component
> that allows me to easily form an XML file and to parse it easily as a
> means to transfer text (could be long and lengthy) information back
> and forth between applications.

Did you try the TXMLDocument framework that is built-in to Delphi?  There 
are, of course, third-party XML libraries as well.

> Or maybe XML is not a good option for my application?

Hard to say without knowing what your application does or what kind of data 
it needs to exchange.

--
Remy Lebeau (TeamB)
0
Remy
6/8/2014 1:19:25 AM
Hi Remy, 


>Did you try the TXMLDocument framework that is built-in to Delphi?  There 
>are, of course, third-party XML libraries as well.

I have not tried TXMLDocument in Delphi yet. Any good examples out
there that I can gather? 

>Hard to say without knowing what your application does or what kind of data 
>it needs to exchange.

I have text categorized as "Comments" which can carry a fair amount of
text to go with several fields like Name, Code, etc. basically
resembling something for books in libraries where the large text could
be the description of the book or even excerpts. I don't want to
resort to database usage if I can help it. But not sure how this would
affect speed with that much text flying around. Also, is there a
limitation as to the amount of text that can be in an XML file? 

Thanks Remy. 

Andy
0
Andy
6/8/2014 3:27:25 AM
I've recently purchased OXml - I haven't widely used it yet but seems 
good so far. Also cross-platform in case you head that way in future.

https://www.kluug.at/kluug-net/oxml.php

Cheers, Bob
0
Bob
6/8/2014 8:34:42 AM
Andy wrote:

> not sure how this would affect speed with that much text flying around.

That depends on how you are sending it.

> Also, is there a limitation as to the amount of text that can be in an 
XML file?

Generally just available memory.  Working with large XML documents may take 
alot of memory, depending on how you are processing the XML.  For generating 
XML, a DOM tree is usually created before the final XML string is then formatted, 
and that tree can take a lot of memory.  You might think of serializing your 
data to the final XML string directly to avoid needing a tree (TXMLDocument 
does not support that).  For parsing XML, parsing into a DOM tree can also 
take a lot of memory, so you might use a SAX parser instead (TXMLDocument 
does not support that).

--
Remy Lebeau (TeamB)
0
Remy
6/8/2014 7:46:43 PM
Thanks Bob for the info. Looks promising. 

Andy

On Sun, 8 Jun 2014 01:34:42 -0700, Bob Devine <bd@nospam.net> wrote:

>I've recently purchased OXml - I haven't widely used it yet but seems 
>good so far. Also cross-platform in case you head that way in future.
>
>https://www.kluug.at/kluug-net/oxml.php
>
>Cheers, Bob
0
Andy
6/8/2014 8:25:18 PM
Thanks Remy for the pointers. I will search around for a SAX parser in
the meantime. How would one serialize the data and if that is needed,
what third-party XML supports that? 

Andy

On Sun, 8 Jun 2014 12:46:43 -0700, Remy Lebeau (TeamB)
<no.spam@no.spam.com> wrote:

>Andy wrote:
>
>> not sure how this would affect speed with that much text flying around.
>
>That depends on how you are sending it.
>
>> Also, is there a limitation as to the amount of text that can be in an 
>XML file?
>
>Generally just available memory.  Working with large XML documents may take 
>alot of memory, depending on how you are processing the XML.  For generating 
>XML, a DOM tree is usually created before the final XML string is then formatted, 
>and that tree can take a lot of memory.  You might think of serializing your 
>data to the final XML string directly to avoid needing a tree (TXMLDocument 
>does not support that).  For parsing XML, parsing into a DOM tree can also 
>take a lot of memory, so you might use a SAX parser instead (TXMLDocument 
>does not support that).
0
Andy
6/8/2014 8:28:50 PM
Not too sure your data XML structure. If there is no deep hierarchy in the tree, you may like to try ClientDataSet. It can read XML into a database table or vice versa. 
You can easily do many data processing as you do in a table. If your data cannot be easily transformed into a table like format, you have to go with TXMLDocument or third party. 
Generally, XML is heavily redundant data structure. Not sure if this helps.


> {quote:title=Andy Colmes wrote:}{quote}
> Thanks Remy for the pointers. I will search around for a SAX parser in
> the meantime. How would one serialize the data and if that is needed,
> what third-party XML supports that? 
> 
> Andy
> 
> On Sun, 8 Jun 2014 12:46:43 -0700, Remy Lebeau (TeamB)
> <no.spam@no.spam.com> wrote:
> 
> >Andy wrote:
> >
> >> not sure how this would affect speed with that much text flying around.
> >
> >That depends on how you are sending it.
> >
> >> Also, is there a limitation as to the amount of text that can be in an 
> >XML file?
> >
> >Generally just available memory.  Working with large XML documents may take 
> >alot of memory, depending on how you are processing the XML.  For generating 
> >XML, a DOM tree is usually created before the final XML string is then formatted, 
> >and that tree can take a lot of memory.  You might think of serializing your 
> >data to the final XML string directly to avoid needing a tree (TXMLDocument 
> >does not support that).  For parsing XML, parsing into a DOM tree can also 
> >take a lot of memory, so you might use a SAX parser instead (TXMLDocument 
> >does not support that).
0
Haizhou
6/8/2014 8:56:41 PM
Hello Haizhou, 

Thank you for the insight on this. ClientDataSet could definitely be
an option. 

Andy

On Sun, 8 Jun 2014 13:56:41 -0700, Haizhou Tang <> wrote:

>Not too sure your data XML structure. If there is no deep hierarchy in the tree, you may like to try ClientDataSet. It can read XML into a database table or vice versa. 
>You can easily do many data processing as you do in a table. If your data cannot be easily transformed into a table like format, you have to go with TXMLDocument or third party. 
>Generally, XML is heavily redundant data structure. Not sure if this helps.
>
>
>> {quote:title=Andy Colmes wrote:}{quote}
>> Thanks Remy for the pointers. I will search around for a SAX parser in
>> the meantime. How would one serialize the data and if that is needed,
>> what third-party XML supports that? 
>> 
>> Andy
>> 
>> On Sun, 8 Jun 2014 12:46:43 -0700, Remy Lebeau (TeamB)
>> <no.spam@no.spam.com> wrote:
>> 
>> >Andy wrote:
>> >
>> >> not sure how this would affect speed with that much text flying around.
>> >
>> >That depends on how you are sending it.
>> >
>> >> Also, is there a limitation as to the amount of text that can be in an 
>> >XML file?
>> >
>> >Generally just available memory.  Working with large XML documents may take 
>> >alot of memory, depending on how you are processing the XML.  For generating 
>> >XML, a DOM tree is usually created before the final XML string is then formatted, 
>> >and that tree can take a lot of memory.  You might think of serializing your 
>> >data to the final XML string directly to avoid needing a tree (TXMLDocument 
>> >does not support that).  For parsing XML, parsing into a DOM tree can also 
>> >take a lot of memory, so you might use a SAX parser instead (TXMLDocument 
>> >does not support that).
0
Andy
6/8/2014 11:48:37 PM
There is also NativeXML http://www.simdesign.nl/xml.html

It used to be commercial, now open source, as the original author got into an accident and open sourced the product. Because of that, support is not great, and improvements are slow. However, the price is right and it is quite a complete package that handles both DOM and SAX parsing.  They also have a TReader and TWriter descendent to stream your objects to XML.
0
David
6/9/2014 4:13:23 AM
David Novo wrote:

> There is also NativeXML http://www.simdesign.nl/xml.html
> 
> It used to be commercial, now open source, as the original author got
> into an accident and open sourced the product. Because of that,
> support is not great, and improvements are slow. However, the price
> is right and it is quite a complete package that handles both DOM and
> SAX parsing.  They also have a TReader and TWriter descendent to
> stream your objects to XML.

+1 for NativeXML
0
Tom
6/9/2014 10:13:52 AM
Thanks David for the info. I knew of NativeXML but never really give
it a spin. I will try now. 

Andy

On Sun, 8 Jun 2014 21:13:23 -0700, David Novo <> wrote:

>There is also NativeXML http://www.simdesign.nl/xml.html
>
>It used to be commercial, now open source, as the original author got into an accident and open sourced the product. Because of that, support is not great, and improvements are slow. However, the price is right and it is quite a complete package that handles both DOM and SAX parsing.  They also have a TReader and TWriter descendent to stream your objects to XML.
0
Andy
6/9/2014 11:52:11 AM
Call me crazy, but in 2014 shouldn't XML parsing be in the standard library?
0
Joseph
6/9/2014 9:10:38 PM
Reply:

Similar Artilces:

Excel 64-bit and Delphi 32-bit
Hi, Any known issues with using Excel 2010 64-bit with a Delphi 32-bit app (Delphi 2009) My app uses the ExcelXP TExcelApplication object and nothing real fancy. I basically opens Excel, gets a list of all the ranges, and then updates the cells. It works fine with Excel 2007 but I have one customer who is reporting problems and he has Excel 2010 64-bit. Also, is there a way for my app to determine if Excel is 32 or 64-bit so that I can log an appropriate message. -- Bob Small I think one the main points of the new Delphi 64-bit compiler was that it was required to be able...

32 bit Delphi Active X Control on 64 Bit machines
I'm using BDS 2006 and created a very simple Active X control ( COM ) ocx file that does nothing but return a string in a property. Placing the control on a .net application that contains a label reflecting the property builds and runs beautifully in 32 bit Windows Vista. Moving the application to Windows 7 64 bit fails. Debugging shows it doesn't even get to initialization. Is it possible to use COM through syswow64? <Steven Davis> wrote in message news:225825@forums.embarcadero.com... > I'm using BDS 2006 and created a very simple Active X control > ( COM ) ...

Running 64 bit console application from a 32 bit Delphi GUI app?
I want to improve the usability of a 64 bit command line program so it can be handled by fairly inexperienced users. For this I need a normal Delphi program to have data specifiers etc, which in the end results in a command file for the console application. This is no big deal. The problem is the following: ------------------------------ 1) Can I start the 64 bit console app in Windows7X64 using the CreateProcess API like I am used to for 32 bit applications? Or are 64 bit programs different? 2) And if that is possible, can I somehow snatch what it sends to standard out (the co...

Occasional errors with 32-bit Delphi 7 application on Windows 7 64-bit
Hi, I have a 32-bit Delphi 7 application which was deployed on some machines with Windows 7 64-bit. The application occasionally displays errors such as: "Error reading ppDBText37.Border.Color: Invalid property value" or "Error reading Label24.Font.Ch: Property Ch does not exist" (here the name "Charset" was apparently truncated to "Ch") I checked how those properties are declared on the form where the errors occurred, and all seems ok: - First form (where "Error reading ppDBText37.Border.Color: Invalid property value" occurs): ...

Call 64bit dll's function from 32 bit delphi code on 64 bit OS
Is there any way or trick to call a function in 64 bit DLL from Delphi code? Any hardware manufacturer must compile their device drivers into 64bit code for 64 bit OS. So for example, graphic driver from NVidia is compiled to 64bit code for 64bit OS. Question is how to load 64 bit dll from 32 bit delphi code and call such function? I hope somebody has already dealing with that. Thanks > is how to load 64 bit dll from 32 bit delphi code and call such function? http://msdn.microsoft.com/en-us/library/aa384249(VS.85).aspx http://blogs.msdn.com/oldnewthing/archive/2008/10/20/9...

Delphi 64 bit / Future Direction of Delphi
I am responding to the various requests for 64 bit and the discussion about the future direction of Delphi. I have a small company - we write software for new and used auto dealerships - sales and finance - coming out with accounting now and parts and service in the next few years. Our customers don't care about 32 bit vs 64 bit, etc. They want me to provide simple and convenient solutions to make their jobs easier. We have stuck with Delphi 5 for many years - I should have upgraded 5 years ago but it did the job. We are now in the early stages of a significant up...

is there a support for 128 bit at 64 bit delphi?
Hi, There is one bcd number has 20 digit. But it doesn't fit to 64 bit. It needs 66 bit to store :/ Anyway I need to convert this 20 digit number to hex format. I mean, input is 20 digit bcd number as string, output should be hexadecimal number as string. What is the pratical way to do this? Thank you. Am 22.02.2012 19:20, schrieb Mehmet Fide: > Hi, > > There is one bcd number has 20 digit. But it doesn't fit to 64 bit. It > needs 66 bit to store :/ Anyway I need to convert this 20 digit number > to hex format. I mean, input is 20 digit bcd numbe...

is there a support for 128 bit at 64 bit delphi?
Hi, There is one bcd number has 20 digit. But it doesn't fit into 64 bit. It needs 66 bit to store. Anyway I need to convert this 20 digit number to hex format. I mean, input is 20 digit bcd number as string, output should be hexadecimal number as string. What is the pratical way to do this? Thank you. > {quote:title=Mehmet Fide wrote:}{quote} > Hi, > > There is one bcd number has 20 digit. But it doesn't fit into 64 bit. > It > needs 66 bit to store. Anyway I need to convert this 20 digit number > to hex format. I mean, input is 20 digit bc...

Upgrading from ASE (32-bit) 12.0.0.7 on Solaris 2.8 64-bit to ASE(64-bit) 12.5.1 on Solaris 64-bit
Hello all, We are planning to upgrade our ASE servers from a 32-bit ASE 12.0.0.7 to 64-bit ASE 12.5.1 on Solaris 8. Could you please give what are the steps to be taken care and how do I start with ( Do I have to first upgrade to 32-bit12.5.1 and then upgrade to 64-bit ASE 12.5.1, or directly upgrade from 32-bit 12.0.0.7 to 64-bit 12.5.1 ?). Could you also please point to some documentation (about upgrading 32-bit 12.0.0.7 to 64-bit 12.5.1). Thanks RK ...

32-bit clent or 64-bit client on 64-bit O/S
We currently have a 32-bit client running on AIX 4.3.3 32-bit. We're moving that client to an AIX 5.x 64-bit system. Is there any advantage to switching to the 64-bit Sybase client? I'm not sure if it matters but the ASE Server that the client uses is 12.5 64-bit running on a 64-bit O/S. TIA only if you client app needs the extra memory "Richard" <rmcgorman@gmail.com> wrote in message news:1170712581.822225.158160@h3g2000cwc.googlegroups.com... > We currently have a 32-bit client running on AIX 4.3.3 32-bit. We're > moving that > ...

Building 64 bit Python against 32 bit ASE on 64-bit Linux
I've been using various version of SYBASE=/usr/local/packages/sybase* to no avail. They all are giving me errors lated to "libblk". any ideas? /usr/bin/ld: skipping incompatible /usr/local/packages/sybase_OLD/lib/libblk.a when searching for -lblk If possible could you CC mrogish at tigr dot org since I am using the Sybase.com forums reader and it is difficult to bookmark this thread. Thanks!!! -- Matt Rogish cronus:/local/src/Linux64/python/modules/sybase-0.37 # /usr/local/packages/python64-2.4.2/bin/python setup.py build running build running build_py c...

32-bit ASE 12.5.x on 64-bit Solaris9 or 64-bit Solaris10
manuals.sybase.com does not mention anything about Solaris9/10. It only mentions about required patches for Solaris8. Does Sybase support 32-bit ASE 12.5.x on 64-bit Solaris9 or 64-bit Solaris10 ( SPARCs of course )? Any specific OS patches required for Sol9/10 ? ...

dump and load from 64-bit Solaris/32-bit ASE .. to .. AMD64/32-bit ASE
Will a cross-platform load be done by Sybase ASE if the dump was made from 64-bit Solaris9 / 32-bit ASE and the load database is to be done on AMD64 / 32-bit ASE ?? What about from 64-bit Solaris9 / 32-bit ASE .. to AMD64 / 64-bit ASE ?? On Sun, 18 Sep 2005 17:27:19 -0700, Jesus M. Salvo Jr. wrote: > > Will a cross-platform load be done by Sybase ASE if the dump was made from > 64-bit Solaris9 / 32-bit ASE and the load database is to be done on AMD64 > / 32-bit ASE ?? > > What about from 64-bit Solaris9 / 32-bit ASE .. to AMD64 / 64-bit ASE ?? Yes, tha...

Probable Stupid Question: Using 64-bit Code on 64-bit Processors running 32-bit Windows...
Hi, Does anyone know if it is possible to do 64-bit processing (probably by writing some assembly language code) when running on a 64-bit CPU under 32-bit Windows? As near as I can tell, one has to develop all 64-bit code on a 64-bit machine running 64-bit windows and the target machines for 64-bit code have to be 64-bit machines running 64-bit windows. What might be useful, if it is possible, would be being able to detect a 64-bit processor when running 32-bit windows and take advantage of that to speed up some calculations. DanH ...

Web resources about - XML for Delphi XE6 32-bit/64-bit - embarcadero.delphi.tools

Resources last updated: 11/29/2015 11:35:20 AM