Learning XSLT
by Michael Fitzgerald
XSLT Cookbook, 2nd Edition
by Sal Mangano
Learning XML, 2nd Edition
by Erik T. Ray
XML in a Nutshell, 3rd Edition
by Elliotte Rusty Harold; W. Scott Means
XSL-FO
by Dave Pawson
Ajax: The Definitive Guide, 1st Edition
by Anthony T. Holdener III
XML: Visual QuickStart Guide, Second Edition
by Kevin Howard Goldberg
HTML & XHTML: The Definitive Guide, 6th Edition
by Chuck Musciano; Bill Kennedy
XML Pocket Reference, 3rd Edition
by Simon St. Laurent; Michael Fitzgerald
Designing Forms for Microsoft Office InfoPath and Forms Services 2007
by Scott Roberts; Hagen Green
XSLT documents a core technology for processing XML. Originally created for page layout, XSLT (Extensible Stylesheet Transformations) is now much more: a general-purpose translation tool, a system for reorganizing document content, and a way to generate multiple results-- such as HTML, WAP, and SVG--from the same content. What sets XSLT apart from other books on this critical tool is the depth of detail and breadth of knowledge that Doug Tidwell, a developer with years of XSLT experience, brings to his concise treatment of the many talents of XSLT. He covers XSLT and XPath, a critical companion standard, and addresses topics ranging from basic transformations to complex sorting and linking. He 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. Useful as XSLT is, its peculiar characteristics make it difficult to get started in, and the ability to use advanced techniques depends on a clear and exact understanding of how XSLT templates work and interact. For instance, the understanding of "variables" in XSLT is deeply different from the understanding of "variables" in procedural languages. The author explains XSLT by building from the basics to its more complex and powerful possibilities, so that whether you're just starting out in XSLT or looking for advanced techniques, you'll find the level of information you need.
Average Amazon.com® Rating: ![]()
![]()
![]()
![]()
Based on 38 Ratings
A Disappointment From O'Reilly. - 2005-03-18
Reviewer Rating: ![]()
![]()
![]()
![]()
![]()
This book is one of the most frustrating technical books I have ever read. The fact that it is from O'Reilly just makes it doubly insulting. The author doesn't bother to explain concepts. He just lists out the syntax for the various elements without bothering to explain how the instruction works. This book might be useful as an XSLT reference but it is useless as a learning tool. I totally agree with the other reviews of this book about the "huge honking examples" To give you an idea of how bad it is, the first XSLT example in this book is the obligatory "Hello World" example which is less than 20 lines. The second example is 3 pages long and uses concepts that have not been introduced at all!! The book also suffers from too many forward references. He keeps mentioning concepts that have no relation to the topic at hand. Sure, it might be great for completeness, but it just gets in the way when you're trying to learn a new concept and he keeps throwing additional, esoteric (by his own admission) stuff at you. In my opinion this is a very poorly written book.
A book I really use regularly - 2005-04-05
Reviewer Rating: ![]()
![]()
![]()
![]()
![]()
I've been programming in a system that uses XSLT for reporting for about three years now. This is the book I actually use. It's getting beat-up and battered and has a couple of pages bookmarked - mostly in Chapter 3. I found the initial Hello World examples - where the same XML is processed for text, SVG, Java, and VRML - to be a really fascinating read.
The core functional programming block in Chapter 4 is worth the skull-sweat it takes to work through it. One useful feature is a number of examples that don't work - that seem right but are misleading.
On the downside, the index is fairly poor, but that's typical.
Its actually a good book - 2007-03-30
Reviewer Rating: ![]()
![]()
![]()
![]()
![]()
I was able to use this book on a new project I was assigned to at work. I had previously read a bit about XPath, but other than that, I had no experience with XSLT. Within 2 days of reading, that being the first 4 chapters or so, I was able to fix the issues I had been assigned.
This is a book for programmers, and for people who know a bit about XML. It is not a school textbook. It does reference some topics before it details them, but if you are a programmer, you are used to reading the context of something unknown to figure out what it does. This book is no different. The examples it includes are non-trivial, and they give you a good idea of the power and correct usage of XSLT.
I highly recommend this book. It helped me do what I needed to get done, quickly and correctly.
My favorite XSLT reference - 2008-10-26
Reviewer Rating: ![]()
![]()
![]()
![]()
![]()
This is by far my favorite XSLT reference. I like the Kay book, but it seems more like a dictionary than anything else. This book includes descriptions and examples (yes, they are long, but not that long) that help illustrate the how to write transformations. It will teach you the language, and it doesn't pretend to be anything else.
One of the biggest advantages of this book is the language. It is extremely clear and concise. The book is so easy to read that you will find yourself frequently remembering not only the location in the book, but the examples used, and even the solution. In contrast, the language in Tennison's book was confusing and disorganized. That distracted from the concepts and made learning far more difficult than it should be.
This book does not go into the details of implementation, but I don't believe that it should. The book is specifically about the language, and should be platform/implementation indifferent.
I truly believe that if you are trying to learn the language, you need this book. If you have learned the language and are attempting to debug, you would be better off with Kay's. But for learning the language, I can't think of anything better. Highly recommended.
Well organised chapters but be prepared to persevere if you're a beginner - 2007-12-02
Reviewer Rating: ![]()
![]()
![]()
![]()
![]()
Coming from a tech writing background, I bought this book back in early 2007, wishing to develop practical programming skills in XSLT 1.0, which I was utilising to transform single-sourced XML documentation into multiple outputs, such as HTML/Java Help and PDF.
Without an apparent specific target audience in mind, this book initially gives the appearance it's written for those wishing to learn XSLT with little or no prior XSLT programming knowledge. It has topics organised in a manner that covers the basics of XSLT programming principles in early chapters to more complex XSLT concepts further on. There are several appendices: an XSLT reference for all elements in the XSLT specification, an XPath reference and an XSLT and XPath function reference, all of which should prove useful once you start making headway into XSLT programming. The structure of this book is commendable.
Whilst Tidwell comes across as an intelligent, knowledgeable and enthusiastic XSLT programmer, describing XSLT concepts is not one of his strengths. Initially, XSLT can be a difficult programming language to get into, but unfortunately Tidwell frequently fails to put himself into the shoes of the novice, making assumptions about certain XSLT concepts in his descriptions that fail to come across clearly. One major weakness of this book is its insufficient coverage on XPath. Sure enough it has reference material to XPath axes and functions, but little coverage on HOW XPath is actually used in XSLT. This is a shame, considering that XPath is such a fundamental component of XSLT.
Tidwell uses fairly good XSLT code samples and snippets to help explain specific XSLT concepts. However, some of the early samples make use of XSLT code whose concepts are not covered until much later chapters in the book. Often, there were no clear indications as to whether one should read ahead to understand these concepts first or put them mentally on hold. I found this potential need to forward reference rather distracting. In other XSLT samples, code from different programming languages (such as Java) was utilised more than necessary.
In one chapter, Tidwell makes three successive attempts to explain the somewhat complex "Muench Method" for grouping XML nodes! Whilst I almost grasped the concepts involved after the first explanation, the subsequent explanations just plunged me into further confusion. Between each explanation, he adds comments such as "Well, that's crystal clear, isn't it?". This style of writing only contributed to the frustration felt upon making a sincere attempt to actually understand this concept. I ended up having to search material elsewhere to find an explanation I could actually understand.
After having practiced a little more XSLT myself and having reread a few more chapters, this book became easier to understand, partly because I developed a clearer understanding of the concepts involved and partly because I felt more acquainted with Tidwell's style of writing. With perseverance, a beginner can make substantial headway into XSLT programming using this book, although I wouldn't rely on it as a sole XSLT learning resource. I found that the XSLT 1.0 Pocket Reference by Evan Lenz a fantastic little reference book - it's concise, explicit descriptions of XSLT concepts really helped me understand some of the ones which were lacking in this book.
I guess if you come from a programming background and know a little about XPath, this book would probably work well for you. Otherwise, I strongly suggest supplementing it with another XSLT learning resource or Google searches on the Internet. There are loads of helpful code-snippets out there with decent-enough explanations to supplement them and XSLT programming principles can be learnt well by example.
Let's hope that Tidwell's next edition of this book is an improvement upon what is potentially a good learning resource.
Top Level Categories:
Internet/Online
Markup Languages
Sub-Categories:
Internet/Online > XML
Markup Languages > XML
Markup Languages > XSLT
Some information on this page was provided using data from Amazon.com®. View at Amazon >