XML: Problem - Design - Solution
Buy Rights Online Buy Rights

Rights Contact Login For More Details

More About This Title XML: Problem - Design - Solution

English

Offering a unique approach to learning XML, this book walks readers through the process of building a complete, functional, end-to-end XML solutionFeatured case study is an online business product catalog that includes reports, data input/output, workflow, stylesheet formatting, RSS feeds, and integration with external services like Google, eBay, and AmazonThe format of presenting a problem and working through the design to come up with a solution enables readers to understand how XML markup allows a business to share data across applications internally or with partners or customers even though they might not use the same applications

English

Mitch Amiano began his career developing process automation applications for small businesses. Quietly using markup languages since 1994, and database management systems since 1989, Mitch has worked in process/quality teams and advanced tool departments at Fortune 500 companies, as well as consulting to small and medium-sized businesses. In 2003, Mitch founded Agile Markup Corporation where he provides XML and open source training and development services. In his spare time, Mitch plays with number theory and edible landscaping. He also serves on his town’s Parks and Recreation Advisory Board, of which he was 2005 Chair.

Conrad D’Cruz, an independent consultant with more than 14 years’ experience, loves to work in the area where business meets technology. He is active in the technology and business users’ groups in the Research Triangle Park area of North Carolina. He was contributing author for Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions and coauthored Cocoon 2 Programming: Web Publishing with XML and Java. When he is not working, he can be found at the controls of a light aircraft exercising the privileges of his private pilot’s certificate or participating in search and rescue exercises with the U.S. Civil Air Patrol.

Kay Ethier is an Adobe Certified Expert in FrameMaker with long experience in structured document publishing with SGML and XML. She is also a certified trainer with WebWorks University. Kay instructs in XML and other training classes, consults, and provides hotline support for clients in a variety of industries. In 2001, Kay coauthored the book XMLWeekend Crash Course. That same year, she was technical editor for GoLive 6 Magic. In 2004, Kay was a contributing author for Advanced FrameMaker, and sole author of XML and FrameMaker. Her most recent collaboration was on a Korean-English book, Learning Korean: Martial Arts Terminology.

Michael D. Thomas is a technical architect with SAS. He has authored two other books, Java Programming for the Internet and Oracle XSQL. He is a frequent conference speaker on XML, Java, and web services topics. Throughout his career, he has designed and implemented enterprise-class web-based systems. While working at IBM, he was one of the youngest people to ever receive an Outstanding Technical Achievement Award, due in part to his work with web services.

English

Acknowledgments ix

Introduction xvii

Chapter 1: XML and the Enterprise 1

Problem 1

Design 2

A Brief History of XML 2

Understanding XML Basics 4

Exploring the Winery Markup Example 5

Determining an Information Model for the Winery XML 6

Problems That XML Addresses 10

Solution 17

Summary 17

Chapter 2: Well-Formed XML 19

Problem 19

Design 19

Producing a Well-Formed XML Document 20

Introducing Valid XML 23

Developing Your Structure 23

Solution 23

Summary 24

Chapter 3: Creating and Distributing a Structure for Shared Information 25

Problem 25

Design 26

Creating a Document Structure (Information Model) 26

Examining the Structure at the Outset 27

Revising the Structure 33

Solution 35

Summary 38

Chapter 4: Presenting XML Directly 39

Problem 39

Promoting Product Online 39

Pertinent Product Data 40

Extracting Requirements 41

Design 41

Technical Motivation 41

Structure of the Design 42

Applicable Technologies 46

Design Consequences 47

Solution 47

Product Line Sketch 48

Product Data — Raw XML 48

Wine List, First Draft 51

Wine List, Second Draft 54

Final Cut 56

Summary 58

Chapter 5: Converting XML Content Online 59

Problem 59

Presenting a Comprehensive View 60

Pertinent Wine Data 61

Objective 64

Design 65

Technical Motivation 65

Structure of Design 65

Applicable Technologies 71

Design Consequences 72

Solution 72

Product Data: Raw XML 74

Online Data Sheet 74

Online Data Sheet, Second Draft 86

Final Cut 91

Summary 94

Chapter 6: Rendering XML to Print 97

Problem 97

Presenting a High-Fidelity Image 97

Objectives 98

Design 98

Structure of Design 99

Applicable Technologies 105

Design Consequences 106

Solution 106

Product Data — Layout 107

Wine Brochure Formatting Objects 108

Summary 122

Chapter 7: Targeting Your Audience 123

Problem 123

Design 125

xml:lang 125

Entities 129

XPath Features for xml:lang 130

Pertinent XML Data 130

Applicable Technologies 131

Solution 131

Parameterizing a Transform 131

A Stage in the Pipe 133

Lookup Tables 136

Filtering 138

Refinements 141

Domain-Specific Languages 144

Resources and Further Reading 145

Summary 146

Chapter 8: Searching and Merging XML Documents 147

Problem 147

Design 148

How XQuery Works 148

Some Alternatives 149

XQuery Concepts 157

Solution 181

Summary 184

Chapter 9: Integrating XML with the Rest of Your Data 185

Problem 185

Design 186

Creating XML from Relational Data with SQL/XML 186

XQuery and Relational Data 191

Understanding Native XML and XML-Enhanced Relational Databases 196

SQL with XML Extensions 197

Solution 199

Generating XML from Relational Data 199

Including Relational Data in XQuery Queries 201

Including XML in SQL Queries 202

Summary 204

Chapter 10: Transforming Business Documents 205

Problem 205

Converting XML Catalogs 206

Converting Other Business Documents 208

Design 212

Custom Software Solutions 213

Common Languages 213

Industry Standards 213

Solution 215

Custom Applications 215

Transformation Sheets 216

XML Pipelines 223

Pipeline Implementations 226

Summary 230

Chapter 11: Consuming Data with Web Services and Syndication 231

Problem 231

Design 232

Understanding Web Services 233

Web Services and the World Wide Web 233

RSS 235

REST Web Services 236

SOAP Web Services Standards 237

Solution 246

Integrating an RSS Feed 246

Consuming the Amazon Web Service from a Web Application 247

Integrating an eBay Web Service with an Inventory System 250

Consuming Partner Web Service 251

Summary 251

Chapter 12: Providing Web Services 253

Problem 253

Design 253

RSS Feeds 254

Creating REST-Style Services 256

SOAP/WSDL Web Services 257

Service-Oriented Architecture 258

Interoperability 262

Solution 262

Summary 264

Chapter 13: Combining Catalogs 265

Problem 265

Combining Structured Relational Data 266

Combining XML Documents 267

Design 267

Merging XML Data: Big Bang versus Wave Approach 268

Guaranteeing the Content from Each Source 269

Choosing Merge Points 271

Solution 273

Database Integration 273

Application Integration 274

Service-Oriented Architecture 276

Content Integration 277

Summary 278

Chapter 14: Integrating and Automating Business Processes 281

Problem 282

The Value Proposition of Partnerships 283

The Challenges of Integrating Data and Systems 283

Business Process Integration and Workflow 285

Business Process Integration 287

Design 287

Business Process Reengineering 287

Patterns for Business Process Integration 288

Leveraging Technology for Process Integration 289

Solution 290

The Winery Operations 291

The Supply Chain 292

The Benefits of Integration and Automation 296

Summary 297

Appendix A: Tools 299

XSLT Engines 299

Saxon 299

Xalan 301

XSL-FO Processors 302

FOP 302

XED 304

XSL Formatter 304

Browsers 304

Mozilla/Firefox 304

Internet Explorer 6 304

Editors and IDEs 304

oXygen XML 304

Trang 305

Turbo XML 305

XMLSpy 305

Stylus Studio 305

XMetaL 305

Graphic Editors 306

GIMP 306

Inkscape 306

Appendix B: Additional Reading 307

Appendix C: Online Resources 309

Glossary 311

Index 315

loading