talk-data.com talk-data.com

Topic

storage-formats

132

tagged

Activity Trend

1 peak/qtr
2020-Q1 2026-Q1

Activities

132 activities · Newest first

XSLT 2.0 and XPath 2.0 Programmer's Reference, 4th Edition

This book is primarily a practical reference book for professional XSLT developers. It assumes no previous knowledge of the language, and many developers have used it as their first introduction to XSLT; however, it is not structured as a tutorial, and there are other books on XSLT that provide a gentler approach for beginners. The book does assume a basic knowledge of XML, HTML, and the architecture of the Web, and it is written for experienced programmers. There's no assumption that you know any particular language such as Java or Visual Basic, just that you recognize the concepts that all programming languages have in common. The book is suitable both for XSLT 1.0 users upgrading to XSLT 2.0, and for newcomers to XSLT. The book is also equally suitable whether you work in the Java or .NET world. As befits a reference book, a key aim is that the coverage should be comprehensive and authoritative. It is designed to give you all the details, not just an overview of the 20 percent of the language that most people use 80 percent of the time. It's designed so that you will keep coming back to the book whenever you encounter new and challenging programming tasks, not as a book that you skim quickly and then leave on the shelf. If you like detail, you will enjoy this book; if not, you probably won't. But as well as giving the detail, this book aims to explain the concepts, in some depth. It's therefore a book for people who not only want to use the language but who also want to understand it at a deep level. The book aims to tell you everything you need to know about the XSLT 2.0 language. It gives equal weight to the things that are new in XSLT 2.0 and the things that were already present in version 1.0. The book is about the language, not about specific products. However, there are appendices about Saxon (the author's own implementation of XSLT 2.0), about the Altova XSLT 2.0 implementation, and about the Java and Microsoft APIs for controlling XSLT transformations, which will no doubt be upgraded to handle XSLT 2.0 as well as 1.0. A third XSLT 2.0 processor, Gestalt, was released shortly before the book went to press, too late to describe it in any detail. But the experience of XSLT 1.0 is that there has been a very high level of interoperability between different XSLT processors, and if you can use one of them, then you can use them all. In the previous edition we split XSLT 2.0 and XPath 2.0 into separate volumes. The idea was that some readers might be interested in XPath alone. However, many bought the XSLT 2.0 book without its XPath companion and were left confused as a result; so this time, the material is back together. The XPath reference information is in self-contained chapters, so it should still be accessible when you use XPath in contexts other than XSLT. The book does not cover XSL Formatting Objects, a big subject in its own right. Nor does it cover XML Schemas in any detail. If you want to use these important technologies in conjunction with XSLT, there are other books that do them justice. This book contains twenty chapters and eight appendixes (the last of which is a glossary) organized into four parts. The following section outlines what you can find in each part, chapter, and appendix. Part I: Foundations: The first part of the book covers essential concepts. You should read these before you start coding. If you ignore this advice, as most people do, then you read them when you get to that trough of despair when you find it impossible to make the language do anything but the most trivial tasks. XSLT is different from other languages, and to make it work for you, you need to understand how it was designed to be used. Chapter 1: XSLT in Context: This chapter explains how XSLT fits into the big picture: how the language came into being and how it sits alongside other technologies. It also has a few simple coding examples to keep you alert. Chapter 2: The XSLT Processing Model: This is about the architecture of an XSLT processor: the inputs, the outputs, and the data model. Understanding the data model is perhaps the most important thing that distinguishes an XSLT expert from an amateur; it may seem like information that you can't use immediately, but it's knowledge that will stop you making a lot of stupid mistakes. Chapter 3: Stylesheet Structure: XSLT development is about writing stylesheets, and this chapter takes a bird's eye view of what stylesheets look like. It explains the key concepts of rule-based programming using templates, and explains how to undertake programming-in-the-large by structuring your application using modules and pipelines. Chapter 4: Stylesheets and Schemas: A key innovation in XSLT 2.0 is that stylesheets can take advantage of knowledge about the structure of your input and output documents, provided in the form of an XML Schema. This chapter provides a quick overview of XML Schema to describe its impact on XSLT development. Not everyone uses schemas, and you can skip this chapter if you fall into that category. Chapter 5: The Type System: XPath 2.0 and XSLT 2.0 offer strong typing as an alternative to the weak typing approach of the 1.0 languages. This means that you can declare the types of your variables, functions, and parameters, and use this information to get early warning of programming errors. This chapter explains the data types available and the mechanisms for creating user-defined types. Part II: XSLT and XPath Reference: This section of the book contains reference material, organized in the hope that you can easily find what you need when you need it. It's not designed for sequential reading, though you might well want to leaf through the pages to discover what's there. Chapter 6: XSLT Elements: This monster chapter lists all the XSLT elements you can use in a stylesheet, in alphabetical order, giving detailed rules for the syntax and semantics of each element, advice on usage, and examples. This is probably the part of the book you will use most frequently as you become an expert XSLT user. It's a "no stone unturned" approach, based on the belief that as a professional developer you need to know what happens when the going gets tough, not just when the wind is in your direction. Chapter 7: XPath Fundamentals: This chapter explains the basics of XPath: the low-level constructs such as literals, variables, and function calls. It also explains the context rules, which describe how the evaluation of XPath expressions depends on the XSLT processing context in which they appear. Chapter 8: XPath: Operators on Items: XPath offers the usual range of operators for performing arithmetic, boolean comparison, and the like. However, these don't always behave exactly as you would expect, so it's worth reading this chapter to see what's available and how it differs from the last language that you used. Chapter 9: XPath: Path Expressions: Path expressions are what make XPath special; they enable you to navigate around the structure of an XML document. This chapter explains the syntax of path expressions, the 13 axes that you can use to locate the nodes that you need, and associated operators such as union, intersection, and difference. Chapter 10: XPath: Sequence Expressions: Unlike XPath 1.0, in version 2.0 all values are sequences (singletons are just a special case). Some of the most important operators in XPath 2.0 are those that manipulate sequences, notably the "for" expression, which translates one sequence into another by applying a mapping. Chapter 11: XPath: Type Expressions: The type system was explained in Chapter 5; this chapter explains the operations that you can use to take advantage of types. This includes the "cast" operation which is used to convert values from one type to another.A big part of this chapter is devoted to the detailed rules for how these conversions are done. Chapter 12: XSLT Patterns: This chapter returns from XPath to a subject that's specific to XSLT. Patterns are used to define template rules, the essence of XSLT's rule-based programming approach. The reason for explaining them now is that the syntax and semantics of patterns depends strongly on the corresponding rules for XPath expressions. Chapter 13: The Function Library: XPath 2.0 includes a library of functions that can be called from any XPath expression; XSLT 2.0 extends this with some additional functions that are available only when XPath is used within XSLT. The library has grown immensely since XPath 1.0. This chapter provides a single alphabetical reference for all these functions. Chapter 14: Regular Expressions: Processing of text is an area where XSLT 2.0 and XPath 2.0 are much more powerful than version 1.0, and this is largely through the use of constructs that exploit regular expressions. If you're familiar with regexes from languages such as Perl, this chapter tells you how XPath regular expressions differ. If you're new to the subject, it explains it from first principles. Chapter 15: Serialization: Serialization in XSLT means the ability to generate a textual XML document from the tree structure that's manipulated by a stylesheet. This isn't part of XSLT processing proper, so (following W3C's lead) it's separated it into its own chapter. You can control serialization from the stylesheet using an declaration, but many products also allow you to control it directly via an API. Part III: Exploitation: The final section of the book is advice and guidance on how to take advantage of XSLT to write real applications. It's intended to make you not just a competent XSLT coder, but a competent designer too. The best way of learning is by studying the work of others, so the emphasis here is on practical case studies. Chapter 16: Extensibility: This chapter describes the "hooks" provided in the XSLT specification to allow vendors and users to plug in extra functionality. The way this works will vary from one implementation to another, so we can't cover all possibilities, but one important aspect that the chapter does cover is how to use such extensions and still keep your code portable. Chapter 17: Stylesheet Design Patterns: This chapter explores a number of design and coding patterns for XSLT programming, starting with the simplest "fill-in-the-blanks" stylesheet, and extending to the full use of recursive programming in the functional programming style, which is needed to tackle problems of any computational complexity. This provides an opportunity to explain the thinking behind functional programming and the change in mindset needed to take full advantage of this style of development. Chapter 18: Case Study: XMLSpec: XSLT is often used for rendering documents, so where better to look for a case study than the stylesheets used by the W3C to render the XML and XSLT specifications, and others in the same family, for display on the web? The resulting stylesheets are typical of those you will find in any publishing organization that uses XML to develop a series of documents with a compatible look-and-feel. Chapter 19: Case Study: A Family Tree: Displaying a family tree is another typical XSLT application. This example with semi-structured data—a mixture of fairly complex data and narrative text—that can be presented in many different ways for different audiences. It also shows how to tackle another typical XSLT problem, conversion of the data into XML from a legacy text-based format. As it happens, this uses nearly all the important new XSLT 2.0 features in one short stylesheet. But another aim of this chapter is to show a collection of stylesheets doing different jobs as part of a complete application. Chapter 20: Case Study: Knight's Tour: Finding a route around a chessboard where a knight visits every square without ever retracing its steps might sound a fairly esoteric application for XSLT, but it's a good way of showing how even the most complex of algorithms are within the capabilities of the language. You may not need to tackle this particular problem, but if you want to construct an SVG diagram showing progress against your project plan, then the problems won't be that dissimilar. Part IV: Appendices: Appendix A: XPath 2.0 Syntax Summary: Collects the XPath grammar rules and operator precedences into one place for ease of reference. Appendix B: Error Codes: A list of all the error codes defined in the XSLT and XPath language specifications, with brief explanations to help you understand what's gone wrong. Appendix C: Backward Compatibility: The list of things you need to look out for when converting applications from XSLT 1.0. Appendix D: Microsoft XSLT Processors: Although the two Microsoft XSLT processors don't yet support XSLT 2.0, we thought many readers would find it useful to have a quick summary here of the main objects and methods used in their APIs. Appendix E: JAXP: the Java API for XML Processing: JAXP is an interface rather than a product. Again, it doesn't have explicit support yet for XSLT 2.0, but Java programmers will often be using it in XSLT 2.0 projects, so the book includes an overview of the classes and methods available. Appendix F: Saxon: At the time of writing Saxon (developed by the author of this book) provides the most comprehensive implementation of XSLT 2.0 and XPath 2.0, so its interfaces and extensions are covered in some detail. Appendix G: Altova: Altova, the developers of XML Spy, have an XSLT 2.0 processor that can be used either as part of the development environment or as a freestanding component. This appendix gives details of its interfaces. Appendix H: Glossary Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.

A Designer’s Guide to Adobe InDesign and XML: Harness the Power of XML to Automate your Print and Web Workflows

Is this book for programmers? Written specifically for graphic designers and production artists already comfortable working with Adobe InDesign, this book teaches you how to automate publishing without learning a lot of scary code. XML simplifies the process of moving content in and out of your layouts and can speed up any print or Web assignment. Why should I care about XML? If you’re managing data-intensive layout projects, and you want to keep that data consistent, accurate, and up-to-date, then incorporating XML can help. You can also use XML to automate processes like importing text and large numbers of graphics into a layout, or repurposing content from one application to another. Do I need additional plug-ins or special software? You need only the powerful features built into InDesign CS2, CS3 or CS4 to use this book. This guide includes nine easy-to-follow projects with downloadable support files. With these hands-on tutorials, you will learn XML in context. By the final project, XML will no longer be a mystery, but a powerful tool you can use to support your company or clients. How will I learn XML? These real-world projects will teach you: l Business cards: Create a structured layout in InDesign and then import XML. Format text automatically and flow the text into multiple examples. l Product catalog: Learn how to import XML data into a structured layout using nested styles and cloned text. l Direct mail and variable data printing: Use XML and InDesign to create sophisticated direct mail pieces without costly plug-ins or third-party software. l Magazine and newspaper: Build and export magazine-style publications for online distribution. l Web: Transform XML into XHTML to incorporate directly into your Web pages, or use Cascading Style Sheets to instantly format your exported XML.

Create Amazing Custom User Interfaces with WPF, C#, and XAML in .NET 3.0

This Wrox Blox presents WPF along with the Extensible Application Markup Language (XAML), showing developers how to customize existing user interface controls such as the Button, Progress Bar, CheckBox, Radio Button, and Label along with creating two new custom controls. The Windows Presentation Foundation (WPF) released with the .NET 3.0 SDK provides a rich foundation for developing and customizing user interfaces. Unlike existing user interface development tools like GDI and GDI+, WPF is entirely vector-based, offering the developer enhanced two-dimensional and even three-dimensional rendering in the presentation layer. The author customizes these existing controls using XAML to: Create control templates to define their appearance and behaviors. Create two new custom controls, one derived from System.Windows.UserControl and the second from System.Windows.Control. Illustrate the interoperability of WPF content in Windows Forms and Win32 applications. Create the code samples using Microsoft Visual Studio 2005 with extensions for .NET 3.0 and the .NET 3.0 SDK. These code samples contain four projects: A C# WPF control library that contains the control templates and a User Control containing the customized Windows controls and the two new custom controls; a C# WPF application to host the WPF User Control; a C# Windows Forms application to host the WPF User Control; and a C++ Win32 application to host the WPF User Control. Usage Rights for Wiley Wrox Blox Any Wrox Blox you purchase from this site will come with certain restrictions that allow Wiley to protect the copyrights of its products. After you purchase and download this title, you: Are entitled to three downloads Are entitled to make a backup copy of the file for your own use Are entitled to print the Wrox Blox for your own use Are entitled to make annotations and comments in the Wrox Blox file for your own use May not lend, sell or give the Wrox Blox to another user May not place the Wrox Blox file on a network or any file sharing service for use by anyone other than yourself or allow anyone other than yourself to access it May not copy the Wrox Blox file other than as allowed above May not copy, redistribute, or modify any portion of the Wrox Blox contents in any way without prior permission from Wiley If you have any questions about these restrictions, you may contact Customer Care at (877) 762-2974 (8 a.m. - 5 p.m. EST, Monday - Friday). If you have any issues related to Technical Support, please contact us at 800-762-2974 (United States only) or 317-572-3994 (International) 8 a.m. - 8 p.m. EST, Monday - Friday).

Flash XML Applications

Add seamless, interactive, user-controlled delivery to your Flash applications. This book builds upon your understanding of basic ActionScript (AS) syntax with the foundational skills that you need to use XML in Flash applications and AS2 or AS3 to migrate your existing applications. Beginning with an introduction to XML, XML parsing methods, and a short introduction to AS2 you learn how to create a universal XML load/onload Class as well as a universal XHTML parser. Then you learn how to use Components using XML as the data source, including the menu, menubar, datagrid and tree component. Finally, a tutorial project-the design and development of a Real Estate Web site that contains an XML search engine-pulls it all together with hands-on experience. All the applications use XML as the data source and are written as class files. Select parts of the Real Estate Web site are redeveloped in AS3 for purposes of illustration. The new XML class is presented and specific code examples demonstrate techniques to apply methods and use properties. Particular attention is paid to the differences between AS2 and AS3 and how to effectively transition from one AS version to the other. The downloadable resources contain code for all of the properties and methods of the AS2, AS3, and XML class examples. Components for the Real Estate Web site project are also provided.

Beginning XML, 4th Edition

When the first edition of this book was written, XML was a relatively new language but already gaining ground fast and becoming more and more widely used in a vast range of applications. By the time of the second edition, XML had already proven itself to be more than a passing fad, and was in fact being used throughout the industry for an incredibly wide range of uses. With the third edition, it was clear that XML was a mature technology, but more important, it became evident that the XML landscape was dividing into several areas of expertise. Now in this edition, we needed to categorize the increasing number of specifications surrounding XML, which either use XML or provide functionality in addition to the XML core specification. So what is XML? It's a markup language, used to describe the structure of data in meaningful ways. Anywhere that data is input/output, stored, or transmitted from one place to another, is a potential fit for XML's capabilities. Perhaps the most well-known applications are web-related (especially with the latest developments in handheld web access—for which some of the technology is XML-based). However, there are many other non-web-based applications for which XML is useful—for example, as a replacement for (or to complement) traditional databases, or for the transfer of financial information between businesses. News organizations, along with individuals, have also been using XML to distribute syndicated news stories and blog entries. This book aims to teach you all you need to know about XML—what it is, how it works, what technologies surround it, and how it can best be used in a variety of situations, from simple data transfer to using XML in your web pages. It answers the fundamental questions: What is XML? How do you use XML? How does it work? * What can you use it for, anyway? This book is for people who know that it would be a pretty good idea to learn XML but aren't 100 percent sure why. You've heard the hype but haven't seen enough substance to figure out what XML is and what it can do. You may be using development tools that try to hide the XML behind user interfaces and scripts, but you want to know what is really happening behind the scenes. You may already be somehow involved in web development and probably even know the basics of HTML, although neither of these qualifications is absolutely necessary for this book. What you don't need is knowledge of markup languages in general. This book assumes that you're new to the concept of markup languages, and we have structured it in a way that should make sense to the beginner and yet quickly bring you to XML expert status. The word "Beginning" in the title refers to the style of the book, rather than the reader's experience level. There are two types of beginner for whom this book is ideal: Programmers who are already familiar with some web programming or data exchange techniques. Programmers in this category will already understand some of the concepts discussed here, but you will learn how you can incorporate XML technologies to enhance those solutions you currently develop. Those working in a programming environment but with no substantial knowledge or experience of web development or data exchange applications. In addition to learning how XML technologies can be applied to such applications, you will be introduced to some new concepts to help you understand how such systems work. The subjects covered in this book are arranged to take you from novice to expert in as logical a manner as we could. This Fourth Edition is structured in sections based on various areas of XML expertise. Unless you are already using XML, you should start by reading the introduction to XML in Part I. From there, you can quickly jump into specific areas of expertise, or, if you prefer, you can read through the book in order. Keep in mind that there is quite a lot of overlap in XML, and that some of the sections make use of techniques described elsewhere in the book. The book begins by explaining what exactly XML is and why the industry felt that a language like this was needed. After covering the why, the next logical step is the how, so it shows you how to create well-formed XML. Once you understand the whys and hows of XML, you'll go on to some more advanced things you can do when creating your XML documents, to make them not only well formed, but valid. (And you'll learn what "valid" really means.) After you're comfortable with XML and have seen it in action, the book unleashes the programmer within and looks at an XML-based programming language that you can use to transform XML documents from one format to another. Eventually, you will need to store and retrieve XML information from databases. At this point, you will learn not only the state of the art for XML and databases, but also how to query XML information using an SQL-like syntax called XQuery. XML wouldn't really be useful unless you could write programs to read the data in XML documents and create new XML documents, so we'll get back to programming and look at a couple of ways that you can do that. Understanding how to program and use XML within your own business is one thing, but sending that information to a business partner or publishing it to the Internet is another. You'll learn about technologies that use XML that enable you to send messages across the Internet, publish information, and discover services that provide information. Since you have all of this data in XML format, it would be great if you could easily display it to people, and it turns out you can. You'll see an XML version of HTML called XHTML. You'll also look at a technology you may already be using in conjunction with HTML documents called CSS. CSS enables you to add visual styles to your XML documents. In addition, you'll learn how to design stunning graphics and make interactive forms using XML. Finally, the book ends with a case study, which should help to give you ideas about how XML can be used in real-life situations, and which could be used in your own applications. This book builds on the strengths of the earlier editions, and provides new material to reflect the changes in the XML landscape—notably XQuery, RSS and Atom, and AJAX. Updates have been made to reflect the most recent versions of specifications and best practices throughout the book. In addition to the many changes, each chapter has a set of exercise questions to test your understanding of the material. Possible solutions to these questions appear in Appendix A. Part I: Introduction: The introduction is where most readers should begin. The first three chapters introduce some of the goals of XML as well as the specific rules for constructing XML. Once you have read this part you should be able to read and create your own XML documents. Chapter 1: What Is XML?: This chapter cover some basic concepts, introducing the fact that XML is a markup language (a bit like HTML) whereby you can define your own elements, tags, and attributes (known as a vocabulary). You'll see that tags have no presentation meaning—they're just a way to describe the structure of the data. Chapter 2: Well-Formed XML: In addition to explaining what well-formed XML is, we offer a look at the rules that exist (the XML 1.0 and 1.1 Recommendations) for naming and structuring elements—you need to comply with these rules in order to produce well-formed XML. Chapter 3: XML Namespaces: Because tags can be made up, you need to avoid name conflicts when sharing documents. Namespaces provide a way to uniquely identify a group of tags, using a URI. This chapter explains how to use namespaces. Part II: Validation: In addition to the well-formedness rules you learn in Part I, you will most likely want to learn how to create and use different XML vocabularies. This Part introduces you to DTDs, XML Schemas, and RELAX NG: three languages that define custom XML vocabularies. It also shows you how to utilize these definitions to validate your XML documents. Chapter 4: Document Type Definitions: You can specify how an XML document should be structured, and even provide default values, using Document Type Definitions (DTDs). If XML conforms to the associated DTD, it is known as valid XML. This chapter covers the basics of using DTDs. Chapter 5: XML Schemas: XML Schemas, like DTDs, enable you to define how a document should be structured. In addition to defining document structure, they enable you to specify the individual datatypes of attribute values and element content. They are a more powerful alternative to DTDs. Chapter 6: RELAX NG: RELAX NG is a third technology used to define the structure of documents. In addition to a new syntax and new features, it takes the best from XML Schemas and DTDs, and is therefore very simple and very powerful. RELAX NG has two syntaxes; both the full syntax and compact syntax are discussed. Part III: Processing: In addition to defining and creating XML documents, you need to know how to work with documents to extract information and convert it to other formats. In fact, easily extracting information and converting it to other formats is what makes XML so powerful. Chapter 7: XPath: The XPath language is used to locate sections and data in the XML document, and it's important in many other XML technologies. Chapter 8: XSLT: XML can be transformed into other XML documents, HTML, and other formats using XSLT stylesheets, which are introduced in this chapter. Part IV: Databases: Creating and processing XML documents is good, but eventually you will want to store those documents. This section describes strategies for storing and retrieving XML documents and document fragments from different databases. Chapter 9: XQuery, the XML Query Language: Very often, you will need to retrieve information from within a database. XQuery, which is built on XPath and XPath2, enables you to do this in an elegant way. Chapter 10: XML and Databases: XML is perfect for structuring data, and some traditional databases are beginning to offer support for XML. This chapter discusses these, and provides a general overview of how XML can be used in an n-tier architecture. In addition, new databases based on XML are introduced. Part V: Programming: At some point in your XML career, you will need to work with an XML document from within a custom application. The two most popular methodologies, the Document Object Model (DOM) and the Simple API for XML (SAX), are explained in this part. Chapter 11: The Document Object Model (DOM): Programmers can use a variety of programming languages to manipulate XML using the Document Object Model's objects, interfaces, methods, and properties, which are described in this chapter. Chapter 12: Simple API for XML (SAX): An alternative to the DOM for programmatically manipulating XML data is to use the Simple API for XML (SAX) as an interface. This chapter shows how to use SAX and utilizes examples from the Java SAX API. Part VI: Communication: Sending and receiving data from one computer to another is often difficult, but several technologies have been created to make communication with XML much easier. This part discusses RSS and content syndication, as well as web services and SOAP. This edition includes a new chapter on Ajax techniques. Chapter 13: RSS, Atom, and Content Syndication: RSS is an actively evolving technology that is used to publish syndicated news stories and website summaries on the Internet. This chapter not only discusses how to use the different versions of RSS and Atom, it also covers the future direction of the technology. In addition, it demonstrates how to create a simple newsreader application that works with any of the currently published versions. Chapter 14: Web Services: Web services enable you to perform cross-computer communications. This chapter describes web services and introduces you to using remote procedure calls in XML (using XML-RPC and REST), as well as giving you a brief look at major topics such as SOAP. Finally, it breaks down the assortment of specifications designed to work in conjunction with web services. Chapter 15: SOAP and WSDL: Fundamental to XML web services, the Simple Object Access Protocol (SOAP) is one of the most popular specifications for allowing cross-computer communications. Using SOAP, you can package up XML documents and send them across the Internet to be processed. This chapter explains SOAP and the Web Services Description Language (WSDL) that is used to publish your service. Chapter 16: Ajax: Ajax enables you to utilize JavaScript with web services and SOAP, or REST communications. Additionally, Ajax patterns can be used within web pages to communicate with the web server without refreshing. This chapter is new to the Fourth Edition. Part VII: Display: Several XML technologies are devoted to displaying the data stored inside of an XML document. Some of these technologies are web-based, and some are designed for applications and mobile devices. This part discusses the primary display strategies and formats used today. Chapter 17: Cascading Style Sheets (CSS): Website designers have long been using Cascading Style Sheets (CSS) with their HTML to easily make changes to a website's presentation without having to touch the underlying HTML documents. This power is also available for XML, enabling you to display XML documents right in the browser. Or, if you need a bit more flexibility with your presentation, you can use XSLT to transform your XML to HTML or XHTML and then use CSS to style these documents. Chapter 18: XHTML: XHTML is a new version of HTML that follows the rules of XML. This chapter discusses the differences between HTML and XHTML, and shows you how XHTML can help make your sites available to a wider variety of browsers, from legacy browsers to the latest browsers on mobile phones. Chapter 19: Scalable Vector Graphics (SVG): Do you want to produce a custom graphic using XML? SVG enables you to describe a graphic using XML-based vector commands. This chapter teaches you the basics of SVG and then dives into a more complex SVG-based application that can be published to the Internet. Chapter 20: XForms: XForms are XML-based forms that can be used to design desktop applications, paper-based forms, and of course XHTML-based forms. This chapter demonstrates both the basics and some of the more interesting uses of XForms. Part VIII: Case Study: Throughout the book you'll gain an understanding of how XML is used in web, business-to-business (B2B), data storage, and many other applications. The case study covers an example application and shows how the theory can be put into practice in real-life situations. The case study is new to this edition. Chapter 21: Case Study: Payment Calculator: This case study explores some of the possibilities and strategies for using XML in your website. It includes an example that demonstrates a loan payment calculator by creating a web page using XHTML and CSS, communicating with a local web service using AJAX, utilizing an XML Schema to build data structures in .NET, and ultimately using the Document Object Model to display the results in SVG. An online version of this case study on the book's website covers the same material using Ruby on Rails instead of .NET. Appendixes: Appendix A provides answers to the exercise questions that appear throughout the book. The remaining appendixes provide reference material that you may find useful as you begin to apply the knowledge gained throughout the book in your own applications. These are: Appendix B: XPath Reference; Appendix C: XSLT Reference; Appendix D: The XML Document Object Model; Appendix E: XML Schema Element and Attribute Reference; Appendix F: XML Schema Datatypes Reference; Appendix G: SAX 2.0.2 Reference. Appendixes A, B, and C are included within the book; Appendixes D-G are available on the book's website.

Programming Firefox

This is your guide to building Internet applications and user interfaces with the Mozilla component framework, which is best known for the Firefox web browser and Thunderbird email client. Programming Firefox demonstrates how to use the XML User Interface Language (XUL) with open source tools in the framework's Cross-Platform Component (XPCOM) library to develop a variety of projects, such as commercial web applications and Firefox extensions. This book serves as both a programmer's reference and an in-depth tutorial, so not only do you get a comprehensive look at XUL's capabilities--from simple interface design to complex, multitier applications with real-time operations--but you also learn how to build a complete working application with XUL. If you're coming from a Java or .NET environment, you'll be amazed at how quickly large-scale applications can be constructed with XPCOM and XUL. Topics in Programming Firefox include: An overview of Firefox technology An introduction to the graphical elements that compose a XUL application Firefox development tools and the process used to design and build applications Managing an application with multiple content areas Introduction to Resource Description Files, and how the Firefox interface renders RDF Manipulating XHTML with JavaScript Displaying documents using the Scalable Vector Graphics standard and HTML Canvas The XML Binding Language and interface overlays to extend Firefox Implementing the next-generation forms interface through XForms Programming Firefox is ideal for the designer or developer charged with delivering innovative standards-based Internet applications, whether they're web server applications or Internet-enabled desktop applications. It's not just a how-to book, but a what-if exploration that encourages you to push the envelope of the Internet experience.

Professional XML

As XML gains popularity, developers are looking to implement XML technologies in their line-of-business applications This book offers readers real-world insight into XML so that they can build the best possible applications Offers an in-depth look at XML and discusses XML tools, services (RSS, SOAP, REST, WSDL), programming (DOM, SAX, Ajax), and languages (.NET, Java, PHP)

Schematron

Schematron is a rule-based XML schema language, offering flexibility and power that W3C XML schema, RELAX NG, and DTDs simply can't match. You need Schematron and can't settle for other languages if you have to check rules that go beyond checking the document structures (i.e., checking that an element bar is included in element foo) and their datatypes. Schematron is the right tool for checking conditions such as "startDate is earlier than or equal to endDate." Schematron is also the right tool to use if you have to raise user-friendly error messages rather than depend on error messages that are generated by a schema processor and that are often obscure. Schematron builds on XPath. You will need to understand XPath to to get the most from Schematron.

Beyond Schemas: Planning Your XML Model

Have you ever wondered how to get started writing your own schema? As you prepare to create your schema, you must consider a number of factors. This guide explains each of those factors in detail and recommends an approach for documenting your schema development plan in an information model. Your information model can not only be used as a planning mechanism to develop your schema but can also be used as a training resource and as a reference guide for those using the schema after it is developed. By putting a well-thought-out information model in place, you are bound to produce a schema that you can use indefinitely and build upon easily.

Designing Forms for Microsoft Office InfoPath and Forms Services 2007

"Microsoft Office InfoPath represents a revolutionary leap in XML technologies and a new paradigm for gathering business-critical information. I am delighted that Scott Roberts and Hagen Green, two distinguished members of the InfoPath product team, decided to share their experience in this book." --From the Foreword by Jean Paoli, cocreator of XML 1.0 and Microsoft Office InfoPath Microsoft Office InfoPath 2007 offers breakthrough tools for gathering, managing, and integrating business-critical information, and creating efficient forms-driven processes. Two longtime members of Microsoft's InfoPath product team have written the first comprehensive, hands-on guide to building successful XML-based solutions with InfoPath 2007. The book opens with a practical primer on the fundamentals of InfoPath form template design for information workers and application developers at all levels of experience. It then moves into advanced techniques for customizing, integrating, and extending form templates--with all the code examples and detail needed by professional developers. Learn how to: Design form templates: create blank form templates, insert and customize controls, use advanced formatting, and construct and lay out views Work with data: start with XML data or schema, manually edit data sources, and understand design-time visuals Add custom business logic to forms, and integrate them with other applications Retrieve and query data from external data sources, including XML files, databases, SharePoint lists, Web services, and ADO.NET DataSets Submit and receive form data using ADO.NET Save, preview, and publish to e-mail, SharePoint, and more Build reusable components with template parts Create workflows with SharePoint and InfoPath E-Mail Forms Administer Forms Services and Web-enabled form templates Build advanced form templates using C# form code, custom controls, add-ins, and the new InfoPath 2007 managed object model Design form templates using Visual Studio Tools for Office (VSTO) Update, secure, and optimize your form templates List of Figures PART I: Designing Forms

Java and XML, 3rd Edition

Java and XML, 3rd Edition, shows you how to cut through all the hype about XML and put it to work. It teaches you how to use the APIs, tools, and tricks of XML to build real-world applications. The result is a new approach to managing information that touches everything from configuration files to web sites. After two chapters on XML basics, including XPath, XSL, DTDs, and XML Schema, the rest of the book focuses on using XML from your Java applications. This third edition of Java and XML covers all major Java XML processing libraries, including full coverage of the SAX, DOM, StAX, JDOM, and dom4j APIs as well as the latest version of the Java API for XML Processing (JAXP) and Java Architecture for XML Binding (JAXB). The chapters on web technology have been entirely rewritten to focus on the today's most relevant topics: syndicating content with RSS and creating Web 2.0 applications. You'll learn how to create, read, and modify RSS feeds for syndicated content and use XML to power the next generation of websites with Ajax and Adobe Flash. Topics include: The basics of XML, including DTDs, namespaces, XML Schema, XPath, and Transformations The SAX API, including all handlers, filters, and writers The DOM API, including DOM Level 2, Level 3, and the DOM HTML module The JDOM API, including the core and a look at XPath support The StAX API, including StAX factories, producing documents and XMLPull Data Binding with JAXB, using the new JAXB 2.0 annotations Web syndication and podcasting with RSS XML on the Presentation Layer, paying attention to Ajax and Flash applications If you are developing with Java and need to use XML, or think that you will be in the future; if you're involved in the new peer-to-peer movement, messaging, or web services; or if you're developing software for electronic commerce, Java and XML will be an indispensable companion.

The Ins and Outs of XML and DB2 for i5/OS

XML represents a fundamental change in computing. It allows applications to move away from proprietary file and data formats to a world of open data interchange. XML has become ubiquitous not only because of its range of applications, but also because of its ease of use. Although XML solves many problems by providing a standard format for data interchange, some challenges remain. In the real world, applications need reliable services to store, retrieve, and manipulate data. These services have traditionally been offered by DB2 for i5/OS. In this IBM Redbooks publication, we discuss the challenges of representing XML hierarchies in the relational database model. We provide an in-depth explanation of the three most popular approaches to bridge the hierarchy, the relational model dichotomy: Programmatically process the XML documents and map their hierarchy into a relational database. Use database middleware to handle the XML parsing and XML-to-relational database mapping. Use Extensible Stylesheet Language (XSL) Transformation to transform inbound XML documents directly to SQL scripts. We also share best practices and techniques aimed at streamlining the XML and DB2 for i5/OS integration. Please note that the additional material referenced in the text is not available from IBM.

Understanding AJAX: Consuming the Sent Data with XML and JSON

Consuming the Sent Data with XML and JSON (Digital Short Cut) Joshua Eichorn ISBN 0132337932 There are two main ways that AJAX programmers can process the data received from an XMLHttpRequest object or one of the alternative fallback methods. One is known as the document-centric approach and involves parsing a Document Object Model (DOM) document. The other involves remote scripting using a subset of JavaScript called JavaScript Object Notation (JSON), which is the literal syntax for JavaScript objects. This Short Cut is a detailed examination of both techniques.

XAML in a Nutshell

When Microsoft releases Windows Vista, the new operating system will support applications that employ graphics now used by computer games--clear, stunning, and active. The cornerstone for building these new user interfaces is XAML ("Zammel"), the XML-based markup language that works with Windows Presentation Foundation (WPF), Vista's new graphics subsystem. An acronym for Extensible Application Markup Language, XAML offers a wealth of new controls and elements with exciting capabilities, including animation and rendering of 3D graphics. Windows developers are already jazzed by the possibilities of using XAML for fixed and flow format documents like PDF and HTML, 2D and 3D vector-based graphics, form development, animation, audio and video, transparent layering, and a lot more. Many feel that XAML will eliminate the need for multiple file formats or plug-ins (read: Flash), while lowering development costs and reducing time to market. The problem is, most developers don't know XAML. While it is fairly easy to understand, you still need a quick guide to bring you up to speed before Vista's release, and that's where this book's simple, no nonsense approach comes in. XAML in a Nutshell covers everything necessary to design user interfaces and .NET applications that take advantage of WPF. Prerequisites such as Microsoft's new unified build system, MSBuild, and core XAML constructs and syntax--including shortcuts--are all presented with plenty of examples to get you started. The Core XAML Reference section lets you dig even deeper into syntax rules and attributes for all XAML elements with a series of quick-reference chapters. This section divides XAML elements into logical categories of elements, controls, shapes and geometry, layout, animations, and transformations for easy reference. XAML in a Nutshell helps you learn, firsthand, how to use this XML-based markup language to implement the new generation of user interface graphics. As one reviewer noted, "Strong code examples and an efficient, conversational style take the tedium out of learning XAML and make the subject understandable--even interesting."

XSLT Cookbook, 2nd Edition

Forget those funky robot toys that were all the rage in the '80s, XSLT (Extensible Stylesheet Transformations) is the ultimate transformer. This powerful language is expert at transforming XML documents into PDF files, HTML documents, JPEG files--virtually anything your heart desires. As useful as XSLT is, though, most people have a difficult time learning its many peculiarities. And now Version 2.0, while elegant and powerful, has only added to the confusion. XSLT Cookbook, Second Edition wants to set the record straight. It helps you sharpen your programming skills and overall understanding of XSLT through a collection of detailed recipes. Each recipe breaks down a specific problem into manageable chunks, giving you an easy-to-grasp roadmap for integrating XSLT with your data and applications. No other XSLT book around employs this practical problem-solution-discussion format. In addition to offering code recipes for solving everyday problems with XSLT 1.0, this new edition shows you how to leverage the improvements found in XSLT 2.0, such as how to simplify the string manipulation and date/time conversion processes. The book also covers XPath 2.0, a critical companion standard, as well as topics ranging from basic transformations to complex sorting and linking. It even explores extension functions on a variety of different XSLT processors and shows ways to combine multiple documents using XSLT. Code examples add a real-world dimension to each technique. Whether you're just starting out in XSLT or looking for advanced techniques, you'll find the level of information you need in XSLT Cookbook, Second Edition.

Sams Teach Yourself XML in 24 Hours, Third Edition

The third edition of Sams Teach Yourself XML in 24 Hours, Complete Starter Kit is everything you need to know about the XML language and how to use it in practical, innovative applications. Understanding the syntax of XML is only a small part of the learning process; understanding how to apply it is the larger part of the learning process, and is the primary focus of this book. It covers a broad range of topics, and wil show you how to use XML to mine data on the web, how to use it to interact with existing data services such as iTunes and Google, and how to use it in applications such as e-books, online speech synthesis, and multimedia. Sams Teach Yourself XML in 24 Hours, Complete Starter Kit, Third Edition will teach you what you need to know to get up and running with XML and more importantly, how to do cool things with it!

XSLT 1.0 Pocket Reference

XSLT is an essential tool for converting XML into other kinds of documents: HTML, PDF file, and many others. It's a critical technology for XML-based platforms such as Microsoft .NET, Sun Microsystems' Sun One, as well as for most web browsers and authoring tools. As useful as XSLT is, however, most people have a difficult time getting used to its peculiar characteristics. The ability to use advanced techniques depends on a clear and exact understanding of how XSLT templates work and interact. The XSLT 1.0 Pocket Reference from O'Reilly wants to make sure you achieve that level of understanding. With its concise approach, this handy pocket guide quickly gets you up to speed on XSLT 1.0 so you can covert XML like a seasoned pro. In addition to covering the basics of stylesheet structure, it also explains how to: use template rules create a result tree apply conditional processing transform multiple source documents employ number formatting Thanks to their convenient, quick-reference format, O'Reilly's Pocket References spare you from having to hunt through larger books for answers. They deliver just what you need to get the job done in a timely fashion. And the XSLT 1.0 Pocket Reference is no different--it's the ideal companion to have at your desk when you need an answer fast.

XML Pocket Reference, 3rd Edition

XML, the Extensible Markup Language, is everywhere: the syntax of choice for newly designed document formats across almost all computer applications. Now used daily by developers, XML is living up to its reputation as one of the most important developments in document interchange in the history of computing. A perennial bestseller, the handy XML Pocket Reference from O'Reilly has been revised once again to give you quick access to the latest goods. In addition to its comprehensive look at XML, this third edition has been updated with new material on Namespaces and XML Schema--considered among the most important elements in current XML use--along with RELAX NG and Schematron, additional powerful tools for describing XML document structures. Like other titles in O'Reilly's Pocket Reference series, the XML Pocket Reference, 3rd Edition features a well-organized format that gets right to the point. As a result, it's already won over the allegiance of developers everywhere. If you need XML answers quick and on the fly, this compact book is most definitely the book for you.

XML For Dummies, 4th Edition

See how XML works for business needs and RSS feeds Create consistency on the Web, or tag your data for different purposes Tag -- XML is it! XML tags let you share your format as well as your data, and this handy guide will show you how. You'll soon be using this markup language to create everything from Web sites to business forms, discovering schemas and DOCTYPES, wandering the Xpath, teaming up XML with Office 2003, and more. Discover how to * Make information portable * Use XML with Word 2003 * Store different types of data * Convert HTML documents to XHTML * Add CSS to XML * Understand and use DTDs

Developing Feeds with RSS and Atom

Perhaps the most explosive technological trend over the past two years has been blogging. As a matter of fact, it's been reported that the number of blogs during that time has grown from 100,000 to 4.8 million-with no end to this growth in sight.What's the technology that makes blogging tick? The answer is RSS--a format that allows bloggers to offer XML-based feeds of their content. It's also the same technology that's incorporated into the websites of media outlets so they can offer material (headlines, links, articles, etc.) syndicated by other sites.As the main technology behind this rapidly growing field of content syndication, RSS is constantly evolving to keep pace with worldwide demand. That's where Developing Feeds with RSS and Atom steps in. It provides bloggers, web developers, and programmers with a thorough explanation of syndication in general and the most popular technologies used to develop feeds.This book not only highlights all the new features of RSS 2.0-the most recent RSS specification-but also offers complete coverage of its close second in the XML-feed arena, Atom. The book has been exhaustively revised to explain: After an introduction that examines Internet content syndication in general (its purpose, limitations, and traditions), this step-by-step guide tackles various RSS and Atom vocabularies, as well as techniques for applying syndication to problems beyond news feeds. Most importantly, it gives you a firm handle on how to create your own feeds, and consume or combine other feeds.If you're interested in producing your own content feed, metadata interpretation the different forms of content syndication the increasing use of web services how to use popular RSS news aggregators on the market Developing Feeds with RSS and Atom is the one book you'll want in hand.