beddoesblog
Friday Feb 09, 2007

XSD, Schema to C++ bindings generator

One of the things I get to do day to day which I really enjoy is work with some really innovative technologies and if I am really lucky with some companies that really get and support the open source and open standards arenas as much as we do.

One of the tools I have had the pleasure of working with recently is XSD from code synthesis. XSD has both commercial and GPL licenses available which should allow it to fit nicely with any project you may be undertaking.

XSD takes in any well formed schema file and generates C++ bindings, allowing you to work with unmarshalled XML documents in a much more convenient format then directly manipulating DOM using Xerces. It offers two modes of use:
* Tree - Represents the information stored in XML instance documents as a tree-like, in-memory data structure.
* Parser - A new, SAX-like mapping which represents the data stored in XML as a hierarchy of vocabulary-specific parsing events.

I have given XSD quite a thrashing integrating the latest versions of Xerces C++ and XML Security C++ with the XSD tree mode and coming up with a really nice all in one package that allows our developers to consume secure, trusted XML documents, in C++, in next to no time. It has stood up to pretty much every challenge I was able to throw at it, the flexibility it affords you is quite amazing. I've recently done similar work with JAXB and likewise recommend it highly, the two make for a good mix if your doing cross language XML processing.

You'll be able to see all of this in full action for yourself in around a month from now, in both the C++ and Java formats. Until then if your working with C++ and XML I really recommend you jump over to code synthesis give XSD a try and then when you see how great it is get yourself a support contract :) .


Comments:

Post a Comment:
Comments are closed for this entry.

Categories

Archives

« July 2008
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  
       
Today

Feeds

Search

Blog Roll

Navigation

ABOUT INTIENT

Intient is a dynamic software company based in Brisbane, QLD Australia. We believe in open standards, open source and building quality software and services for our clients backed up with dedicated support.

SUPPORT

Dedicated support for our clients is what we are about
Email Support