XPath, XLink, XPointer, and XML: A Practical Guide to Web Hyperlinking and Transclusion
暂无分享,去创建一个
From the Book:
The Web has been growing and evolving at a phenomenal rate since its emergence in the early 1990s. Part of this evolution has been the development of increasingly sophisticated technologies and their utilization in developing complex applications. While the technical foundations have remained relatively unchanged (URLs and HTTP have remained stable for some time, and only HTML has changed frequently), the emergence of XML as a new format for the representation of content, along with a sequence of related developments like XLink, has heralded a substantial change in the way content can be managed. The most significant of these changes is with respect to the hypermedia functionality that is enabled by these new technologies, particularly the richer linking and navigation models.
The title of this book includes the word transclusionfrom Ted Nelson's work on the Xanadu system 1995which describes an approach to including content via references that retain the original context. "Transclusion" and "transcopyright" are two of the basic features of the Xanadu system, and the Web will definitely become more Xanadu-like in the coming years. Furthermore, the Web's new hypermedia functionality will make its structure more complex, but also richer, more usable, and more informative. We believe that this book will provide an effective guide to this development in the coming years.
Purpose of the Book
Our purpose in writing this book has been to explore and illustrate the possible hypermedia functionality introduced into the Web's architecture by XML and the accompanying XLink and XPointer standards. Today's focus in theuse of XML is its application-specific data-structuring capabilities. However, we believe that by effective use of XLink and XPointer in conjunction with XML, we can create hypermedia-rich applications, which will be more usable and effective than those created using the current content-based HTML hypermedia model.
The book describes the new hypermedia features of the Xlink- and XPointer-enabled Web from both a conceptual point of view and a practical perspective. A conceptual view allows us to understand the types of advanced changes enabled by these technologies, and the implications of these changes for creating effective, maintainable, and usable applications. A practical perspective allows us to understand how these technologies are actually applied by developers, as well as to examine issues related to current tools, environments, and standardization processes.
The Book's Audience
We believe that XML, Xlink, and Xpointer and, in particular, the new hypermedia functionality enabled by these technologies will fundamentally change the Web. This book focuses on understanding and leveraging these changes and should therefore be interesting and useful for many people:
Web authors, developers, and project managers. So far, this group has been limited by HTML's primitive linking mechanism and, for many applications, an understanding of this new hypermedia functionality will be beneficial. It will enable them to produce more sophisticated applications, both in terms of the way the content that underpins their site is managed and in terms of the functionality that can be created in the application front-end. This book provides an overview of the technology and presents concrete implementation strategies. To assist Web authors, developers, and project managers in being backwards-compatible, the book also provides transition strategies.
Web users. In many cases, Web users are very interested in what the future of Web technology can bring them. In particular, updated features are often the main motivation for upgrading to a newer version of a browser or other software, so Web users should be well informed about the improvements available with the most recent software.
Students. In courses as diverse as information studies, software engineering, information systems, and library studies, students will benefit from understanding how the Web is likely to evolve in the futureparticularly with respect to the way information is represented, managed, accessed, and used.
The Book's Content
In this preface we discuss the changes in the Web and the role that emerging standards can play in developing a richer and more usable Web. In the induction, we elaborate on this idea by exploring the emerging standards and, in particular, consider what we mean by information linking and the role it plays within the Web. Essentially, the introduction provides a context for the broad focus of the book.
The rest of the book is divided into three main parts. Part I focuses on a conceptual framework. It explores the Web we might wish to develop and the emerging linking technologies that may go some way toward providing it. We start in chapter 1 with a consideration of current technology. We focus on the limitations inherent in this technology, particularly with respect to linking and the implications for information handling, navigation, and retrieval. Chapter 2 provides information about the motivation for the types of changes we are promoting. We start by exploring linking issues in much more detail, looking at hypermedia concepts and some of the historical hypermedia developments, which provides useful insights into how information might be better managed. We also provide relevant definitions that clarify much of the terminology used in the rest of the book. This chapter concludes with a typical scenario that illustrates the types of Web changes that might be desirable currently.
Chapter 3 begins the process of considering the new and the emerging technologies that enable the vision we have been establishing. Rather than describing the technologies from a syntactic level (where their applicability may be difficult to put into the context of the previous chapter's discussions), we first consider standards (e.g., XPath, XPointer, and XLink) from a conceptual viewpoint, looking at the types of support the technologies provide for sophisticated linking and content management. This discussion is supported by XML fragments examples as a way of gently introducing these concepts through a process of illustration.
Then, Part II of the book gets down to the specific details of the new technologies and considers the emerging core standards in some detail. Chapter 5 begins by considering a range of foundation technologies, which provide a supporting infrastructure, if not the core technologies. For example, we look at XML, XML Namespaces, XML Base, XInclude, XML Infoset, XHTML, XSL, XSLT, XSL-FO, and RDF. Readers with a background in the newer Web technologies may wish to skip this chapter and continue directly with the discussion in the following chapters; however, readers familiar only with the more "traditional" Web technologies, such as HTML and http, should first read this chapter.
In chapters 5, 6, and 7, we look in detail at three of the key technologies that enable our vision: XPath, XPointer, and XLink. In each case, rather than simply presenting the standard, we explain the concepts, and wherever appropriate, the strengths, limitations, and ambiguities of the standard. As such, it is important that these chapters be read in conjunction with the relevant standards. This, in turn, raises an important point: The XPointer and XLink standards have been evolving continually during the writing of this book and are likely to continue to evolve. This means that you will need to be careful in interpreting some of the comments here. In particular, at the time of this writing, the current status and version of the most relevant standards are as follows:
XML Path Language (XPath): W3C Recommendation Clark and DeRose, 1999
XML Pointer Language (XPointer): W3C Candidate Recommendation DeRose et al., 2001b
XML Linking Language (XLink): W3C Recommendation DeRose et al., 2001a
This means that the standards as they are today are not going to change, but since adoption has been slow so far, actual implementations may differ from these standards, and the standards may have to be reworked. (This is not the way standards are supposed to work, but it may happen. For example, HTML standards for some time more or less simply tracked what the two major browser providers had already implemented.) Currently, there is no sign that this going to happen, but readers should regularly check W3C's Web site at http://www.w3.orgspecifically, the technical reports page at http://www.w3.org/TR/for the latest versions of the standards. We will also track standard development on the book's Web site (http://transcluding.com).
Finally, in Part III we look at how these technologies can be applied in order to move toward the vision we established in Part I. These discussions are in the context of current practical limitations imposed by available infrastructure, environments, and tools (or lack of tools). In chapter 8, we investigate the authoring of applications to take advantage of XLink and XPointer. Specifically, we look at some general issues affecting how we author and use XLink, then investigate the tools, applications, and environments that are beginning to emerge.
In chapter 9, we then consider some of the issues that need to be addressed in migrating from a conventional model of Web content to a model that uses the more sophisticated techniques discussed so far in the book. In the last chapter, Chapter 10, everything is drawn together, and we make some final comments, particularly with regard to our own perspectives on the future of XLink and XPointer.