| | Copyright |
| | Advance Praise for Using XML with Legacy Business Applications |
| | Preface |
| | | Acknowledgments |
|
| | Chapter 1. Introduction |
| | | The Problem |
| | | What Do We Need in a Solution? |
| | | The Overview of a Solution |
| | | Architecture |
| | | How to Use This Book |
| | | What You Need to Use This Book |
| | | For Developers |
| | | How You Can Use the Utilities and Code |
| | | References |
| | | Resources |
|
| | Chapter 2. Converting XML to CSV |
| | | Requirements |
| | | Running the Utility |
| | | Sample Input and Output |
| | | Design |
| | | Java Implementation |
| | | C++ Implementation |
| | | Comparing the Java and C++ Implementations |
| | | Enhancements and Alternatives |
| | | Resources |
|
| | Chapter 3. Converting CSV to XML |
| | | Requirements |
| | | Running the Utility |
| | | Sample Input and Output |
| | | Design |
| | | Java Implementation |
| | | C++ Implementation |
| | | Comparing the Java and C++ Implementations |
| | | Enhancements and Alternatives |
| | | Resources |
|
| | Chapter 4. Learning to Read XML Schemas |
| | | Rope, Anyone? |
| | | A Few Different Document Approaches |
| | | DTD Refresher |
| | | Foundation Concepts and Terminology |
| | | General Features |
| | | Simple Content Elements |
| | | Complex Content Elements |
| | | Understanding Namespaces |
| | | Structuring Schemas |
| | | Less Commonly Used W3C XML Schema Language Features |
| | | Is There Data or Not? |
| | | Reference |
| | | Resources |
|
| | Chapter 5. Validating against Schemas |
| | | Requirements |
| | | Running the Utilities |
| | | Design |
| | | Java Implementation |
| | | C++ Implementation |
| | | Examples of Input Validation Failures |
| | | Resources |
|
| | Chapter 6. Refining the Design |
| | | Why Refine the Design? |
| | | Making XML the Common Format |
| | | Analyzing the Legacy Non-XML Grammars |
| | | Describing the Legacy Non-XML Grammars |
| | | Representing the Legacy Non-XML Grammars in XML |
| | | Additional DOM Processing Considerations and Strategies |
| | | Multilingual Issues |
| | | Error Handling Strategy |
| | | High-Level Design |
| | | Detail Design |
| | | Java Implementation |
| | | C++ Implementation |
| | | References |
| | | Resources |
|
| | Chapter 7. Converting CSV Files to and from XML, Revisited |
| | | CSV to XML: Functionality and Operation |
| | | XML to CSV: Functionality and Operation |
| | | Describing the File Formats |
| | | Schema Examples |
| | | High-Level Design Considerations |
| | | CSV to XML: Detail Design |
| | | XML to CSV: Detail Design |
| | | New DataCell Methods and Derived Classes |
| | | Java Implementation |
| | | C++ Implementation |
| | | Enhancements and Alternatives |
| | | Resources |
|
| | Chapter 8. Converting Flat Files to and from XML |
| | | Flat File to XML: Functionality and Operation |
| | | XML to Flat File: Functionality and Operation |
| | | Describing the File Formats |
| | | Schema Examples |
| | | High-Level Design Considerations |
| | | Flat File to XML: Detail Design |
| | | XML to Flat File: Detail Design |
| | | New DataCell Methods and Derived Classes |
| | | Java Implementation |
| | | C++ Implementation |
| | | Enhancements and Alternatives |
| | | Resources |
|
| | Chapter 9. Converting EDI to and from XML |
| | | Overview of the X12 EDI Syntax and Standards |
| | | X12 to XML: Functionality and Operation |
| | | XML to X12: Functionality and Operation |
| | | Describing the File Formats |
| | | Schema Examples |
| | | Supplemental Data Store for Control Numbers |
| | | High-Level Design Considerations |
| | | X12 to XML: Detail Design |
| | | XML to X12: Detail Design |
| | | New DataCell Methods and Derived Classes |
| | | Java Implementation |
| | | C++ Implementation |
| | | Enhancements and Alternatives |
| | | Reference |
| | | Resources |
|
| | Chapter 10. Converting from One XML Format to Another with XSLT |
| | | Why XSLT Is Important |
| | | XSLT Overview |
| | | A General Approach to Using XSLT |
| | | XPath Basics |
| | | Structuring Stylesheets |
| | | A Bit of Housekeeping |
| | | Manipulating Content |
| | | Solving Typical Navigation Problems |
| | | Advanced Techniques for Processing Content |
| | | Handling Namespaces |
| | | Calling Non-XSLT Procedures |
| | | References |
| | | Resources |
|
| | Chapter 11. Using the Conversion Techniques Together |
| | | Pipe and Filter Revisited |
| | | Sample Conversion Scenarios and Scripts |
| | | Building a System: Babel Blaster |
| | | Resources |
|
| | Chapter 12. Building XML Support into a Business Application |
| | | What Should Be "XMLized"? |
| | | Devising an Architecture |
| | | Selecting the XML Format |
| | | Changing Your Code |
| | | What about Databases? |
| | | Other Approaches and APIs |
| | | Non-XML Issues |
| | | Resources |
|
| | Chapter 13. Security, Transport, Packaging, and Other Issues |
| | | Some General Observations about Security |
| | | Dealing with Security |
| | | Transport |
| | | Packaging |
| | | Common Combinations for Security, Transport, and Packaging |
| | | Emerging Technologies |
| | | What This Means for You |
| | | Reference |
|
| | Appendix A. GNU General Public License |
| | | Preamble |
| | | Terms and Conditions for Copying, Distribution and Modification |
| | | How to Apply These Terms to Your New Programs |
|
| | Appendix B. Pseudocode Conventions |
| | | Assignment Operator |
| | | Mathematical Operators |
| | | Equality and Relational Operators |
| | | IF Selection Structures |
| | | Repetition Structure |
| | | Case Selection Structure |
|
| | Appendix C. COM Essentials for the Non-COM Programmer |
| | | #import and Smart Pointers |
| | | Initialization and Resource Management |
| | | Exceptions and Errors |
| | | COM Classes and Data Types for C++ |
|
| | Bibliography |
| | | References |
| | | Resources |
|
| | Credits |
| | | Chapter 1 |
| | | Chapter 4 |
| | | Chapter 5 |
| | | Chapter 6 |
| | | Chapter 8 |
| | | Chapter 9 |
| | | Chapter 12 |
|