[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Implementation issue with the OXCI XML Interface Specifications
OXCI participants and LegalXML ECF TC members: Over the last two weeks, Counterclaim has been testing the XML schemas and instance documents provided in the draft OXCI XML Interface Specifications document and has encountered a significant issue that we felt should be brought to the attention of the OXCI pilot sites and LegalXML before our meetings to discuss the specifications next Tuesday. As you know, OXCI is developing an open-source implementation of an Electronic Filing Manager (EFM) that will eventually support the LegalXML Court Filing Blue specification. Because the Court Filing Blue specification is still in the requirements phase, the OXCI XML Interface Specifications are intended to provide an interim set of interface standards based on the Global Justice XML Data Model (GJXDM) 3.0 operational release. You can find all the OXCI design documents at http://oxci.sourceforge.net For a number of reasons, most importantly the fact that the a subset schema generator tool is not yet available, the OXCI schemas import the full GJXDM schema. The OXCI schemas then use type restriction to add constraints (such as required elements) and type extension to add additional elements specific to court filing. The OXCI schemas also include provisions for local courts to add additional elements and constraints through type extension/restriction and type substitution. Counterclaim and MTG have successfully validated the GJXDM schemas, the OXCI schemas and the OXCI example instances using XMLSpy and the Xerces-based validation tool provided by GTRI. However, Counterclaim has not been successful in generating Java objects from the XML schemas. To date, they have tested the Java API for XML Binding (JAXB) reference implementation, JaxMe, an open source implementation of JAXB, and Castor. They have also tested several Windows code generation tools, including LiquidXML and Breeze XML Binder, but they have also failed to generate code. Some of these tools have even failed to validate the schemas. The issue appears to be the fact that none of these tools implement the full W3C XML Schema specification. Specifically, the code generation tools we have tested do not support type restriction. This appears to be a well-known limitation - Jim Beard from Counterclaim has corresponded with other developers who have experienced problems implementing this feature in their applications. In addition, he received the following response from someone at Sun Microsystems: "From what you've described, it does not sound like there is anything illegal in your schemas. The problem is that this type of schema derivation hierarchy is very difficult to map to a Java object inheritance hierarchy. Java has no concept of 'derivation by restriction' - roughly speaking, there is no way for a sub-class to only inherit a portion of it's base class. The JAXB spec (sec 5.3.2) sort of glosses over this issue because there really isn't a good solution. It covers simple derivation by restriction, but handling a type that derives by extension from a type that derives by restriction is a whole other beast. As a result, the RI (reference implementation) punts on the issue and flags it as an error." If we cannot find code generation tools that support the current approach, we are considering the following options: 1. We could generate the Java objects manually. However, this increases the development and support complexity of the code considerably and makes it difficult to adapt the code later to support the Court Filing Blue specification. 2. We could use subset schemas rather than importing the full GJXDM. This approach is recommended by GTRI. However, there are not yet any documented procedures or examples for manually developing subset schemas and the subset schema generator tool is currently scheduled to be available in April. For more information on this approach, see GTRI's explanation of customized schemas at http://justicexml.gtri.gatech.edu/technical/customized-schemas/index.htm l 3. We could adopt a different approach for developing schemas based on the elements of the GJXDD. Specifically, there may be more modular ways to construct schemas that use the Justice XML data dictionary but are not necessarily compliant with the Justice XML data model. 4. Other options? Options 2 and 3 would require significant changes to the current OXCI XML Interface Specifications but may significantly simplify implementation. Regardless of the approach we choose in the short term for this project, the OXCI implementation must eventually support the Court Filing Blue specification. Our hope is that the LegalXML ECF TC can benefit from the OXCI project and adopt an approach to Court Filing Blue that is both practical to implement and consistent, as appropriate, with the GJXDM. I will add this to our agendas for discussion on Tuesday. Thanks, Jim Cabral James E. Cabral Jr., Senior Associate The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. If you received this in error, please contact the sender and delete the material from any computer.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]