One other thought on this topic would be this. If you are willing to use something other than XML for passing the data, you might do what some web toolkits do and use something like jason instead of xml. I know there is a parser for jason for java and would imagine that there is a library for c as well. I used jason as the data format in the original WE4Java project and it worked quite well. ----- Original Message ----- From: Kerneels Roos To: programmingblind@xxxxxxxxxxxxx Sent: Thursday, August 12, 2010 7:33 AM Subject: Re: Passing xml documents between Java and a C library Shot in the dark here, but since XML has a very low entophy -- a lot of redundant data -- would it not make sense to attempt to either avoid the direct rendering of the XML on both sides by passing something else between the Java and C++ liblouisutdml library? I would speculate that the parsed XML contained in data structures in the Java code and in the C++ code of liblouisutdml is a far more efficient representation of the actual XML. If there could be an XML parser API which the Java code and the liblouisutdml code could jointly access the exchange of data would be very fast. What about the option of compressing the XML on both sides before exchanging it? This introduces additional computation time for the compression / decompression for each round trip, but it lowers the lenght of time more memory would be required -- only during the compression / decompression stages, not all the time in the case of passing huge XML blobs. Lastly, is it not possible to call liblouisutdml API calls that directly act on the XML from within the Java code instead of passing huge chunks from one code base to the other? Haven't had time to check it out, but the odt2brl Open Office plugin might very well do something like this? Regards On Mon, Aug 9, 2010 at 1:24 PM, Homme, James <james.homme@xxxxxxxxxxxx> wrote: Hi, What would be a good light weight solution for this? Thanks. Jim Jim Homme, Usability Services, Phone: 412-544-1810. Skype: jim.homme Internal recipients, Read my accessibility blog. Discuss accessibility here. Accessibility Wiki: Breaking news and accessibility advice -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Sina Bahram Sent: Saturday, August 07, 2010 10:25 PM To: programmingblind@xxxxxxxxxxxxx Subject: RE: Passing xml documents between Java and a C library Don't get too carried away with some of these frameworks. JMX and the rest might sound like awesome ideas, but heavy weight is not where you necessarily want to be. Just a word of advice from someone who has done both sides of the coin on java development. Take care, Sina -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of John J. Boyer Sent: Saturday, August 07, 2010 9:26 PM To: programmingblind@xxxxxxxxxxxxx Subject: Re: Passing xml documents between Java and a C library Thanks. This sounds helpful. We are still working out the architecture of BrailleBlaster and figuring out what Java libraries or packages we will need. We are definitely using Java 6. John On Sat, Aug 07, 2010 at 07:06:53PM -0500, Jay Macarty wrote: > If you are using java 6 as your platform, there is an XmL binding API > called JAX-B which you might find helpful for this. JAX-B allows you > to convert a java object into an XML string or to map an XML string to > a java object. We use this at work a lot because we are receiving text > based messages from queues and the message body is XML. > > In JAX-B you add java annotations to a java bean style data object to > tell it what the XML element and/or attribute names should be when the > object is converted to XML. > > ----- Original Message ----- > From: "John J. Boyer" <john.boyer@xxxxxxxxxxxxxxxxx> > To: <programmingblind@xxxxxxxxxxxxx> > Sent: Saturday, August 07, 2010 6:52 PM > Subject: Passing xml documents between Java and a C library > > > >For the BrailleBlaster project, the editor and user interface are > >written in Java. The braille knowledge needed for translating annd > >formatting is in the C library liblouisutdml. The two communicate by > >method calls and xml documents. We would like to pass the documennts > >back and forth inn a memory buffer, if possible. However, some > >doccuments can be quite large, up to 6 megabytes. After UTDML > >(Unified Tactile Document Markup Language) has been added to them > >they can be 20 MB or more. Such large buffers seem impractical, so we > >will probably have to pass documents of that size as files. However, > >we would like to be able to pass smaller documents, say up to 100k, > >in memory. How can this best be done on the Java end? liblouisutdml > >expects xml documents in UTF-8 in an array of 8-bit charactors. > > > >Thanks, > >John > > > >-- > >John J. Boyer; President, Chief Software Developer Abilitiessoft, > >Inc. > >http://www.abilitiessoft.com > >Madison, Wisconsin USA > >Developing software for people with disabilities > > > >__________ > >View the list's information and change your settings at > >//www.freelists.org/list/programmingblind > > > > __________ > View the list's information and change your settings at > //www.freelists.org/list/programmingblind -- John J. Boyer; President, Chief Software Developer Abilitiessoft, Inc. http://www.abilitiessoft.com Madison, Wisconsin USA Developing software for people with disabilities __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind This e-mail and any attachments to it are confidential and are intended solely for use of the individual or entity to whom they are addressed. If you have received this e-mail in error, please notify the sender immediately and then delete it. If you are not the intended recipient, you must not keep, use, disclose, copy or distribute this e-mail without the author's prior permission. The views expressed in this e-mail message do not necessarily represent the views of Highmark Inc., its subsidiaries, or affiliates. __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind -- Kerneels Roos Cell/SMS: +27 (0)82 309 1998 Skype: cornelis.roos The early bird may get the worm, but the second mouse gets the cheese!