- From: Jeff <jeff@cogentlogic.com>
- Date: Thu, 30 May 2002 16:20:24 -0400
- To: <xmlschema-dev@w3.org>, <cmsmcq@w3.org>
- Message-ID: <NBBBIEJICNNKIJDKIOMJOEIAEAAA.jeff@cogentlogic.com>
Hello! In accordance with the invitation at http://www.w3.org/XML/Schema#Tools, I am submitting details of a new software development tool that makes XML Schema a cinch for Java developers: no SAX, no DOM, no JDBC, just data as Java objects. Major benefit: dramatic reduction in development time. XchainJ Developer is a GUI-based tool that reads any number of included/imported/redefined XML Schema documents and DTDs (using XML Catalog for URI resolution) and presents the resultant integrated XML Schema using a terse syntax. Java bindings are automatically generated and much of the XML Schema structure (that doesn't appear explicitly in XML instances) is stripped away. The Java bindings contain only data (though user-specified code could be added, if desired). Transformations between XML, Java and databases are performed by invoking single instructions against the XchainJ Processor once it has been configured with mapping files exported from XchainJ Developer. Thus, Java developers can read/write XML and databases using simple code and the data appears as Java objects. Why interpose Java? When mapping XML to databases there are two problems that need to be solved. Firstly, XML is hierarchical and databases are almost 'flat'. Secondly, data formats in databases are often different to those in XML, dates, for example, might need reformatting and sometime several database columns map to one element. The default Java bindings exactly reflect the XML hierarchy (elements and complex types mapping to classes) but they are soon 'flattened' in a simple process we call 'SQLching' (preparing for SQL, pronounced "squelching"). SQLching also serves to eliminate much of the complexity of XML Schema: simple/complex types, restrictions, groups, etc., etc. are great for architects but only impede programmers (they don't show up in the XML, though they do influence the XML). Interposing Java between XML and databases also enables unlimited processing to occur to fix up disparities between XML and database data but also for calculations and any other desired business logic. This design is, for Java developers, exceedingly powerful. Since the coding involved is often trivial, required Java skills are minimal. XchainJ 1.0 has been in production at various Government of Canada locations since January 2002 but it only supports DTDs XchainJ 1.1 was launched last week at XML Europe 2002 and provides full support for XML Schema. An evaluation version is available for download from www.XchainJ.com. At the conference in Barcelona I was able to demonstrate the XML Schema capabilities of XchainJ to a W3C representative, who coincidentally lives in Toronto. He was impressed :-) You may like to check out the Geography Markup Language (GML) 2.0 and Dublin Core Metadata Initiative (DCMI) application guides at www.XchainJ.com for in-depth treatment of XML Schema including 'round-trip' demonstrations and extensive use of substitution groups. (An FGDC-based application guide showing database interoperability is due soon.) I shall be grateful if XchainJ could be listed at http://www.w3.org/XML/Schema#Tools. Thank you. Warmest regards, Jeff Lawson Cogent Logic Corporation Toronto, Canada +1 (416) 340 8025
Received on Thursday, 30 May 2002 16:20:24 UTC