Harriet Klausner
Steve Martin Cohen has an excellent imagination, along with his ability to write and create unique characters that means one heck of a book.
If you liked Silence of the Lambs then you will love this over the edge thriller. Just remind me not to bumb into Mr. Cohen in a dark alley at night!
The book is an easy read. In fact, Martini could have fleshed out the book with more information and twists and the story would still be taught. What he managed to do is only admit critical elements to the story to make it a story and keep it engaging. I hope to read more of his works.
As the story begins Judge Acosta finds himself in a most awkward position of being accused of soliciting a prostitute. He is removed from the bench pending an investigation. But it doesn't take long before the leading witness for the prosecution against the Judge is found deceased...uh oh. The Judge is now in SERIOUS trouble...so much so that he actually contemplates something that he never EVER would have thought could happen in a million years: He hires the attorney that he despises, Paul Madriani. This murder/mystery/courtroom drama is impressive from beginning to its surprising and absolutely fantastic ending--in MY opinion this has Martini's best ending to date and certainly one of my favorites in fiction. The courtroom drama is clever, surprising and utterly compelling. Several laugh-out-loud moments, too (which came as a complete surprise to me) and an all-around tremendous plot. Easily one of the best in this particular genre I have ever read, and also ranks (again in MY opinion) as Mr. Martini's best novel to date (that includes 'The List' and 'Critical Mass'). Get to know Paul Madriani, the sooner the better, but I recommend starting with 'Compelling Evidence' the novel that debuted Madriani and continue from there. Highly Recommended.
The storyline behind this courtroom thriller is absolutely fantastic. It took about 100 pages for the book to get really interesting, but once the story took off, I couldn't let go of the book. I can't wait to read one of his other books and I hope you enjoy 'Compelling Evidence' as much as I did.
Shortly before the appointed hour for their next meeting, however, Ben supposedly blows away the top of his head with a shotgun. No one really believes that Ben Potter killed himself though, and sure enough, we learn that not a shotgun, but a small caliper pistol like the one Talia owns was the true murder weapon. Guess what! Talia is charged with murder and Paul Madriani, assisted by "tell it like it is" Harry are her lawyers.
The drama unfolds with manageable twists, turns and surprises. The cops and the DA seemed convinced that Talia did it, but the reader is soon convinced that she's innocent, so the story has a "whodunit" element along with the courtroom drama. Martini sets his story in "Capital City" in an unnamed State, which I suspect allows him to mix and match actual legal rules and proceedings from different jurisdictions to suit his plot and courtroom activity. This is not obtrusive, at least for a non-lawyer.
It's a satisfying read; something to do while your waiting for the next Grisham novel.
Harriet Klausner
Harriet Klausner
Chapters don't follow a very logic thread and it doesn't deal enough with very relevant subjects. Wrox probably planned to make this book the XML bible but I think they are far from the target.
In Chapter 1, XML is introduced as a mark-up language and its inherent extensibility emphasized. This is followed by a detailed treatment of XML syntax in the next chapter, with emphasis placed on the hierarchical nature of XML. The authors do include a discussion of Processing Instructions (PIs) for users who want to use XML in this fashion.
Document Type Definitions (DTD) are the subject of Chapter 3, where the authors communicate effectively how DTDs formal grammar is used to specify the structure and permissible values of XML documents. The formal DTD structure is discussed, and the principles behind writing DTDs are effectively outlined. They also discuss the problems with using DTDs.
Data modeling with XML is discussed in the next chapter, with information modeling via static and dynamic models treated in detail, and the authors carefully distinguish these two approaches. The actual designing of XML documents is given a nice overview as well as the role of schemas in XML. This is followed in Chapter 6 by a discussion of the (tree-based) Document Object Model, which overviews how XML documents can be accessed by various programs. Some helpful examples are given on how the DOM can be used to create an XML document programmatically. An alternative way of processing an XML document is discussed in the next chapter on the (event-based) SAX interface. The authors outline in detail the benefits of using SAX rather than DOM. In Appendix B the reader will find the Internet Explorer 5.0 XML DOM 1.0 W3C specifications. In addition, in Appendix C, the specification for the SAX 1.0 interface is given.
The shortcomings of DTD are addressed in terms of XML Schemas and namespaces in chapter 7. Since this book was published, XML Schemas have reached W3C recommendation status as of Nov 2000. The authors give a good overview of namespaces and schemas, with helpful examples. This is followed in chapter 8 by a discussion of how to link and query into XML documents using the XML information set, XLink, XPath, XPointer, XML Fragment Interchange, with XLST covered in the next chapter. For database applications, the authors outline the differences between relational databases and XML documents. A very detailed treatment of how XLST transforms the source document is given, and the authors compare XLS and DOM transformations. An Internet Explorer XSL reference is included in one of the appendices of the book.
More details on the relationship between databases and XML is the subject of chapter 10, wherein the authors show how to store XML and how data can be communicated between different servers using XML. The issues involved when moving data from RDBMS to OODBMS or from Oracle to Sybase, are discussed by the authors. This is followed by an interesting discussion on how to use XML as a distributed component model for server-to-server communications via XML-Remote Procedure Call and Simple Object Access Protocol.
E-commerce applications are discussed in the next chapter, with EDI and its improvement via XML. The business markup language cXML , which allows business to business electronic commerce transactions across the Internet, is also treated in detail.
The authors then finally discuss how to render XML documents more readable and pleasing for the viewer in the next chapter using the style languages CSS and XSL. The discussion is really interesting, for the authors dig a little deeper into the foundations of style languages. The discussion of style languages as rule-based languages is particularly illuminating.
The next chapter is very interesting and its inclusion is actually very surprising, namely a discussion of the Wireless Application Protocol. The authors give an introduction to the Wireless Markup Language and WMLScript. The book ends with four useful chapters on case studies for data duality, distributed applications, a book catalog information service, and SOAP.
There are many applications of XML in many different areas, such as CellML (proprietary) used in cell biology, CML (Chemical Markup Language) for molecular chemistry, IML (Instrument Markup Language) for control of laboratory equipment, BSML (Bioinformatic Sequence Markup Language) for gene sequencing, and MathML for formatting of mathematical equations. I find XML an extremely powerful approach to information reporting and I am currently developing a package called NMML (Network Modeling Markup Language) for use in reporting results in simulation and mathematical modeling of networks, and FMML (Financial Modeling Markup Language) for use in reporting results in the modeling of financial instruments. This book, along with the W3C specifications, has been a tremendous help in the development of these applications.