Gift Guide

Modeling XML Applications with UML: Practical e-Business Applications / Edition 1

Paperback (Print)
Buy Used
Buy Used from
(Save 25%)
Item is in good condition but packaging may have signs of shelf wear/aging or torn packaging.
Condition: Used – Good details
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 95%)
Other sellers (Paperback)
  • All (19) from $1.99   
  • New (5) from $27.18   
  • Used (14) from $1.99   
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any coupons and promotions
Seller since 2014

Feedback rating:



New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.

PAPERBACK New 0201709155 Brand New Book in Perfect Condition. Fast Shipping with tracking number.

Ships from: Houston, TX

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
Seller since 2008

Feedback rating:


Condition: New

Ships from: fallbrook, CA

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Seller since 2008

Feedback rating:


Condition: New
Brand New, Perfect Condition, Please allow 4-14 business days for delivery. 100% Money Back Guarantee, Over 1,000,000 customers served.

Ships from: Westminster, MD

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
Seller since 2007

Feedback rating:


Condition: New

Ships from: Avenel, NJ

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
Seller since 2014

Feedback rating:


Condition: New

Ships from: Idyllwild, CA

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
Page 1 of 1
Showing All
Sort by


eXtensible Markup Language (XML) and Unified Modeling Language (UML) are two of the most significant advances from the fields of Web application development and object-oriented modeling. Modeling XML Applications with UML reveals how to integrate these two technologies to create dynamic, interactive Web applications and achieve optimal business-to-business application integration.

This book focuses on the design and visual analysis of XML vocabularies. It explores the generation of DTD and Schema languages from those vocabularies, as well as the design of enterprise integration and portals--all using UML class diagrams and use case analysis. Also featured are extensive details on the deployment of XML vocabularies and portals, showing how to put these elements to work within distributed e-business systems. You will learn practical techniques that can be applied to both small and large system development projects using either formal or informal processes.

For those who may be new to XML and UML, the book includes a brief overview of these topics, although some background knowledge in these areas is recommended.

Topic coverage includes:

  • An overview of XML vocabularies, HTML presentations, and XSLT stylesheets
  • An overview of the UML diagrams and the Unified Process
  • Defining business vocabulary and creating XML Schemas
  • Designing and customizing e-business portals using XML
  • Mapping UML to XML, including UML relationships to XML hyperlinks
  • Generating XML Schemas from the UML class diagrams
  • Transforming custom XML vocabularies into the RosettaNet XML standard
  • Transforming XML vocabularies into HTML using XSLT
  • Transforming XML documents into Portlets
  • Simple Object Access Protocol (SOAP) as an XML-based messaging standard for business-to-business integration

A large-scale example runs throughout the book to illustrate important concepts and techniques. Each chapter also features "Steps for Success," a list of tips and issues to consider when planning for a more effective design effort.


Read More Show Less

Editorial Reviews

From Barnes & Noble
The Barnes & Noble Review
How do you design XML-based B2B systems that successfully address the needs of everyone involved? With UML. But today's e-business systems are often quite different from the systems modeled in most UML books. In this book, David Carlson takes on every key aspect of modeling them, from the standpoint of five key stakeholders: consumers, business analysts, web application specialists, system integration specialists, and content developers.

As Carlson points out, XML offers an excellent syntax for exchanging data and documents, but communication among all the players in today's inter-business systems also requires shared models of underlying domain semantics, and of e-commerce processes and policies.

Carlson first shows how to model system requirements with use cases, defining the roles and functional requirements of each stakeholder group. Next, he walks through modeling processes and communication policies that coordinate sequences of activities among multiple business partners. Finally, he shows how to model business vocabularies robust enough to handle all messages, from short and simple to long and complex.

The book is full of UML class, sequence, and activity diagrams, and every chapter ends with "steps for success" that show you exactly how to translate principles into action. (Bill Camarda)

Bill Camarda is a consultant and writer with nearly 20 years' experience in helping technology companies deploy and market advanced software, computing, and networking products and services. His 15 books include Special Edition Using Word 2000 and Upgrading & Fixing Networks For Dummies®, Second Edition.

Read More Show Less

Product Details

  • ISBN-13: 9780201709155
  • Publisher: Addison-Wesley
  • Publication date: 4/10/2001
  • Series: Object Technology Series
  • Edition description: New Edition
  • Edition number: 1
  • Pages: 368
  • Product dimensions: 7.40 (w) x 9.00 (h) x 1.00 (d)

Meet the Author

David Carlson, the CTO of Ontogenics Corporation, is an experienced researcher, developer, author, instructor, and e-business consultant. He is a frequent contributor to several technical journals, and has been a speaker at recent OOPSLA and XML conferences. In addition, he has taught graduate level courses in knowledge-based systems and computer architecture, and was a Sun-certified instructor for Java 1.0. During his 20-year career, Mr. Carlson's focus has been on creating practical applications of leading edge technology, including application modeling and XML vocabularies.


Read More Show Less

Read an Excerpt

Chapter 1: Convergence of Communities

e-Business is a catalyst for change. The change has been profound and fast as companies adopt the Internet as a primary channel for business interactions. Businesses initially used the Web as a one-way channel for communicating text and graphical information to consumers. The Web quickly became a platform for electronically processing orders and making catalog and real-time inventory available online. This consumer-oriented business transformation has now begun to impact the very heart of supply chain operations. Recent forecasts predict that business-to-business (B2B) transactions via the Internet will soon dwarf the other e-business conducted with consumers. Behind the scenes of this publicity, however, information-technology professionals are scrambling faster than ever. Yet, they are still falling behind in their efforts to interconnect all of the new and legacy systems required to fulfill this new electronic-business age.

e-Business requires integration of the information and processes needed to conduct business in real time. At the consumer level, this means that online catalogs must access the inventory database; also, credit authorization, order processing, and fulfillment must be integrated to deliver the goods to each buyer. Challenges have been encountered but were conquered, and the world moved on with this new, faster channel for sales. Then came B2B integration. Supply chain integration of manufacturers and distributors requires deeper introspection into sales forecasts, production scheduling, product configuration, and inventory management. The arrival of electronic marketplaces has created a “brave new world” of electronic bidding, auctions, reverse auctions, and a steady stream of never-before encountered business processes—all of which needs to be completed yesterday.

Finally, as if these challenges weren't difficult enough, all these new services must be delivered via personalized portals that can be accessed using Web browsers, personal digital assistants (PDAs), cell phones, pagers, interactive television, and automated shopping agents. These portals must become an extension of the core enterprise information infrastructure, not simply patched on as a Web sales channel. The portal becomes a secure conduit for basic operational data to be delivered to remote and mobile employees, key business partners, suppliers, and customers. The portal is a window into the B2B flow of information.

To satisfy these new demands, we must adopt a fundamental change in the way system integration is accomplished. This means an infrastructure that supports loose coupling of intra- and inter-enterprise information between widely disparate application designs, operating systems, databases, and application programming interfaces (APIs). The eXtensible Markup Language (XML) has become a solution for many of these needs. XML is not a magic wand that can solve all problems, but it does enable us to focus on the definition of shared vocabularies for exchanging information that can be processed easily by both human and computer systems. XML and its domain vocabularies are becoming the lingua franca for B2B communication.

An additional benefit of XML is that it was derived from a document-processing heritage for supporting both computer and human communication. As a result, it contains standardized stylesheet processing languages and tools for presenting XML documents to human users in many formats—print, multimedia, and synthesized voice. Through these technologies, XML has the potential to become the standard platform for convergence of information to all types of portals.

A complete coverage of how XML can address these e-business issues would require many volumes. This book adopts a more modest goal of addressing business-to-business vocabularies and portals using XML. Our main goal is to describe the use of the Unified Modeling Language (UML) as a technique for designing business vocabularies that can be deployed using XML for e-business integration.

Models for e-Business

By itself, XML is only a syntax for the exchange of data and text-oriented documents; yet we need more than a common syntax for successful communica-tion. Communication requires shared models of both the underlying domain semantics, and the processes and policies used to engage in electronic commerce.These models are the very essence of B2B integration. They may be implicit in the applications that process the XML documents; or they may be explicit in definition of the model's concepts, relationships, and constraints. In practice, the models are defined both implicitly and explicitly.

We'll cover the following three aspects of modeling B2B communication.

  • Modeling system requirements with use cases. These models define the roles of stakeholders and the use case actors who are involved in B2B interactions, plus the functional requirements of those stakeholders and actors.
  • Modeling processes and communication policies. B2B interactions are not limited to sending a single message but require a coordinated sequence of activities and expectations of the business partners.
  • Modeling business vocabularies. Each message exchanged within a communication process contains information content that may be short and simple or very long and complex. Each of these content documents is defined by a vocabulary that is shared by the parties engaged in the communication.
XML is becoming widely used for representing both the process and the content information when deploying models. Process information includes the messaging infrastructure and workflow control that guides the process execution. Many B2B processes are asynchronous and long running, so the XML-based message header information identifies the parties, process, and purpose of the message. The business vocabularies define the heart of the message—its content. Example product catalog vocabulary is developed in this book. The catalog data using this vocabulary will be exchanged in messages between business partners when aggregating catalogs from multiple suppliers or when responding to queries for product specification data.

An XML application is, however, much more than structured data! The application is part of a broader system context, including both architectural and process requirements. Most e-business applications contain requirements, from both business and technical stakeholders, which are distributed across an interenterprise system. Development of these systems benefits greatly from visual models and a process that encourages active communication. Let's face it—the business world revolves around graphical presentation, so anything that adds a visual component to XML specification is very helpful.

Stakeholder Communities

In the beginning stages of developing an e-business system, many stakeholders must contribute requirements, domain model details for the analysis, and specifications for design and implementation. This book does not attempt to cover the full development lifecycle but instead focuses on analysis and some parts of design, all with an eye toward the use of XML. Within this context, we must consider the needs of several diverse stakeholder communities. I have narrowed the focus for this book to five groups: consumers, business analysts, Web application specialists, system integration specialists, and content developers.

A complete analysis of an e-business system would require documenting many different use cases that describe the convergence of these stakeholder communities in B2B and business-to-customer (B2C) interaction scenarios. Figure 1-1 illustrates one high-level use case diagram that incorporates all five of the identified stakeholder communities. This high-level view spans the requirements from designing the product catalog structure and content to presenting personalized views of this catalog to consumers.

A use case specification identifies a set of “actors” that interact with each use case. Each actor represents the role of a user that works with the resulting system after it is deployed; a specific human user may fulfill several different roles. As shown in Figure 1-1, UML use case diagrams always represent an actor using a “stick person” icon. Each oval represents an individual use case that describes (in a separate document and/or diagram) the activity flow required to achieve the goal of that use case. The use case diagram presents an outside view (from the perspective of the actors) of the system without specifying how that functionality is designed or implemented.

I use the term stakeholder rather than actor in this description because of its broader meaning. A stakeholder represents all roles that have an interest in the goals of a use case, not only those who directly participate in performing the use case activities. Thus, a Consumer stakeholder provides requirements for the design of portals and business processes, although he or she may not have a direct role in performing the steps within those use cases.

Future chapters will decompose the individual use cases into scenarios illustrated with class diagrams, object diagrams, sequence diagrams, and activity diagrams that specify how XML fits into the overall e-business solution. But first, I'll describe the typical characteristics of each stakeholder community in a bit more detail....

Read More Show Less

Table of Contents




Chapter 1. Convergence of Communities.

Models for e-Business.

Stakeholder Communities.


Business Analyst.

Web Application Specialist.

System Integration Specialist.

Content Developer.

Road Map for This Book.

Part I. Foundations.

Part II. XML Vocabularies.

Part III. Deployment.

Steps for Success.

Chapter 2. What Is an XML Application?


XML Vocabularies.

XML Presentation.

Cascading Style Sheets.

XSLT Stylesheets.

Chapter Summary.

Steps for Success.

Chapter 3. What Is a UML Model?

Models and Views.

Requirements Workflow.

Use Case Diagram.

Analysis Workflow.

Activity Diagram.

Model Management Diagram.

Collaboration Diagram.

Design Workflow.

Class Diagram.

Object Diagram.

Sequence Diagram.

Component Diagram.

The Unified Process.

Chapter Summary.

Steps for Success.

Chapter 4. e-Business Integration with XML.

Use Case Analysis.

Catalog Vocabulary Requirements.

Shared Business Vocabularies.

Define Business Vocabulary.

Create XML Schema.

Validate Message.

Transform Message Content.

Process Workflow and Messaging.

Define Business Process.

Build Workflow Model.

Define Message Protocol.

Application Integration.

Create Application Classes.

Create Legacy Adapter.

Chapter Summary.

Steps for Success.

Chapter 5. Building Portals with XML.

Use Case Analysis.

Content Management.

Define Business Vocabulary.

Create Content.

Assign Content Metadata.

Portal Design.

Design Portlet.

Design Content Template.

Create Stylesheet.

Design Portal Layout.

Customize Portal Layout.

Wired and Wireless Convergence.

Chapter Summary.

Steps for Success.


Chapter 6. Modeling XML Vocabularies.

What Is a Vocabulary?

CatML Vocabulary.

Simplified Product Catalog Model.

Mapping UML to XML.

XML Metadata Interchange.

Disassembling UML Objects into XML.

UML Classes to XML Elements.


UML Attributes to XML Elements.

UML Attributes to XML Attributes.

Enumerated Attribute Values.

Mapping UML Compositions.

Mapping UML Associations.

Roots and Broken Branches.

Packaging Vocabularies.

FpML Vocabulary.

UML Packages.

XML Namespaces.

Chapter Summary.

Steps for Success.

Chapter 7. From Relationships to Hyperlinks.

Expanded CatML Vocabulary.

XML Standards for Linking.





A Hyperlinked CatML Vocabulary.

Product Bundles.

Product Details.

Taxonomy of Categories.

Chapter Summary.

Steps for Success.

Chapter 8. XML DTDs and Schemas.

The Role of an XML Schema.

XML Document Type Definition.

DTD Attribute Declarations.

DTD Entity Declarations.

Limitations of DTDs.

W3C XML Schema.

Datatypes and Datatype Refinement.

Schemas Compatible with DTDs.

Advanced Schema Structures.

Replacement or Coexistence?

Chapter Summary.

Steps for Success.

Chapter 9. Generating XML Schemas from the UML.

Principles of Schema Generation.

Generating DTDs.

Relaxed DTDs.

Strict DTDs.

Generating W3C XML Schemas.

Relaxed Schemas.

Strict Schemas.

XLink Support.

Controlling Schema Strictness.

UML Extension Profiles.

An Extension Profile for XML.

Profile Applied to CatML.

Chapter Summary.

Steps for Success.


Chapter 10. Vocabulary Transformation.

Reasons for XML Transformation.

Alternative Vocabularies.

Filtering Sensitive or Irrelevant Data.

Presenting XML Documents.

Exporting Non-XML Data.

Introduction to XSLT.

XSLT Processing Model.

Transformation Rules.

Integrating CatML with RosettaNet.

Importing a RosettaNet Dictionary.

Exporting a RosettaNet Sales Catalog.

Chapter Summary.

Steps for Success.


Chapter 11. B2B Portal Presentation.

Portal Analysis Model.

Transforming XML Documents into Portlets.

A Portlet for Product Display.

A Portlet for Promotional Discounts.

Discount Transformation.

RSS Transformation.

Chapter Summary.

Steps for Success.

Chapter 12. e-Business Architecture.

Requirements for e-Business Architecture.

Deploying Web Services.

Message Protocols in XML.

Web Service Description.

Web Service Discovery.

CatX Component Architecture.

Display Portal Content.

Update Newsfeed.

Query Catalog Content.

Integrate Supplier Catalog.

Execute Currency Trade.

Query Schema Repository.

Query Service Registry.

Chapter Summary.

Steps for Success.


Appendix A. Reuse of FpML Vocabulary.

Trading Party Model.

Appendix B. MOF and XMI.

Meta Object Facility.

XML Metadata Interchange.

Appendix C. UML Profile for XML.



Bibliography Example.



Read More Show Less


Writing about XML and e-Business is a lot like taking a snapshot of a speeding train. And for those readers who are new to one or both of these subjects, itis a lot like attempting to jump onto that train. In writing this book, Iive attempted to strike a balance between an introduction to these challenging subjects and a practical guide for designing realistic systems.

I make some assumptions about a basic prior knowledge of both XML and UML, but not so much that a motivated reader cannot easily meet these expectations with quick supplemental study. There are dozens of introductory books on both subjects but there is a lack of good explanation about how XML and UML can be combined in the analysis of complex systems. The goal of this book is not only to teach you about XML and UML but also how to use these technologies for practical applications.

Goals of This Book

Over the past twenty-five years of learning, teaching, and working, I have realized that there is a very significant difference between gaining knowledge about a subject and gaining actionable knowledge about that same topic. Knowledge is actionable when it directly and immediately affects what you do and how you do it. While writing this book, I had a note taped to the top of my computer monitor that read "Actionable Knowledge," so that it would continually prompt me to keep this focus in mind.

After reading this book, you will have learned the following actionable knowledge:

  • Guidelines that you can use to gather key stakeholder input while developing your XML application.
  • How you can integrate XML and UML in current design projects and what this means to achieving your e-business objectives.
  • Steps and criteria to use in the visual analysis and design of XML vocabularies.
  • A detailed guide to how you can generate XML DTDs and Schemas from those vocabularies, plus the trade-offs you must consider while doing so.
  • Substantial, realistic examples to base your own work on.
  • Concrete suggestions about how to apply recently adopted (or almost adopted) XML standards.
  • A deep understanding that is based not on the marketing materials of individual vendors but on common practice that applies to all of them.
  • A solid grounding about how to design XML applications now and many product or system releases in the future.
  • An understanding of what is going to happen next!

Concepts of UML modeling and a streamlined Unified Process are woven throughout this book. e-Business examples demonstrate the breadth of UML modeling capabilities but without overwhelming the primary goal of creating successful applications using XML. As a means to this goal, this book focuses on a consistent, substantial example about the analysis and design of a product catalog application. An XML vocabulary for the Catalog Markup Language (CatML) is designed first in UML, then generated to both DTD and XML Schema languages.

This same catalog example is used to model requirements for the "MyCat" Web portal application, whose content is defined by the CatML vocabulary. An example MyCat portal is demonstrated using the Extensible Stylesheet Language Transformation (XSLT) to produce an HTML presentation from the XML documents, all based on the CatML vocabulary definitions. UML is used throughout the exercise to analyze the application requirements and the vocabulary design. Finally, XSLT is described as a language for transforming the CatML vocabulary to and from RosettaNet product catalog standards. Vocabulary transformation is an essential element in most e-business applications.

Who Should Read This Book?

This book is not a guide to programming XML applications; rather it focuses on the thoughtful analysis and design of XML vocabularies and their use within distributed systems. If you have a need to develop a system using XML, or if you are considering the value of such a system, then you will find this book helpful. Although their use is not restricted to e-business applications, those examples form the central theme throughout all chapters. These examples span the range of XML applied to the content of portal presentations to the specification and transformation of message content for system integration.

System architects will find many valuable points to consider when planning the use of XML. The use case analyses in Chapters 1, 4, and 5 build a business case for e-business integration and portal design using XML. These use cases are described from the perspective of key stakeholders who determine and evaluate the goals of a successful XML application. Each chapter concludes with a list of "Steps for Success" that are especially valuable to an architect.

Complex XML vocabulary definitions are often easier to comprehend and discuss with others when they are expressed graphically. Although a few existing tools provide some assistance in this regard, they are generally limited to a strict hierarchical view of the vocabulary structure. Complex structures may be represented in schemas that are more easily analyzed from an object-oriented perspective. These object-oriented models of schema definition are easily represented using UML class diagrams. This book is valuable to business analysts, who are responsible for the definition of business vocabularies that will be implemented using XML.

Those analysts often team with designers who fine-tune the vocabularies for generation to XML DTDs or Schemas. Chapter 8 provides a detailed comparison of XML DTDs with the new, much richer possibilities available in XML Schema definitions. Chapter 9 includes detailed design heuristics for generating both DTDs and Schemas from UML class models and describes trade-offs for specifying relaxed versus strict schema validation. These decisions are the daily work of XML designers.

Chapter 2 provides an overview of XML terminology using a simple real-world example that is relevant to the topics of this book. The Rich Site Summary (RSS) is described and compared with similar use of news content in HTML. For a more thorough introduction to XML, I recommend:

  • Simon St. Laurent. XML Elements of Style. New York: McGraw-Hill, 1999.

If you are not familiar with UML, Chapter 3 includes a fast-paced overview of the essential diagrams that are used in this book. Those diagrams are applied to the same RSS XML example that is introduced in Chapter 2. For a good introduction to UML that is short and easy to read, I recommend:

  • Martin Fowler, Kendall Scott. UML Distilled: A Brief Guide to the Standard Object Modeling Language, Second Edition. Boston: Addison-Wesley, 2000.

Chapters 10 and 11 include substantial examples of XSLT vocabulary transformations. XSLT is a very powerful but somewhat complex language whose detail is beyond the scope of this book. If you are new to XSLT, I recommend the following supplemental references:

  • Neil Bradley. The XSL Companion. Boston: Addison-Wesley, 2000.
  • Michael Kay. XSLT Programmeris Reference. Birmingham, UK: Wrox Press, 2000.

Because no book covering the topics of XML and e-business can promise more than a snapshot of the speeding train, it is equally important to offer a first-class ticket for the ride into the future. A Web site has been especially prepared as the companion site for this book. It is available at

The following information is available, organized in an easily navigated portal:

  • Current XML news
  • Quick links for XML and UML resources and tools
  • Complete UML models and XML listings from this book's examples
  • Tips and tools for generating XML schemas from UML models
  • Case studies that apply these techniques

Dave Carlson
Boulder, Colorado


Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)