Java XML and JSON Friesen Jeff 2024 Scribd Download
Java XML and JSON Friesen Jeff 2024 Scribd Download
com
https://textbookfull.com/product/java-xml-and-
json-friesen-jeff/
https://textbookfull.com/product/java-xml-and-json-document-
processing-for-java-se-jeff-friesen/
textbookfull.com
https://textbookfull.com/product/java-xml-and-json-document-
processing-for-java-se-2nd-edition-jeff-friesen/
textbookfull.com
https://textbookfull.com/product/learn-java-for-android-development-
friesen-jeff/
textbookfull.com
https://textbookfull.com/product/the-american-promise-volume-c-a-
history-of-the-united-states-since-1890-james-l-roark/
textbookfull.com
Forever Devotion Timeless Devotion Series book 1 Forever
Safe Romance Series 10 1st Edition Samantha Rose [Rose
https://textbookfull.com/product/forever-devotion-timeless-devotion-
series-book-1-forever-safe-romance-series-10-1st-edition-samantha-
rose-rose/
textbookfull.com
https://textbookfull.com/product/wayfinding-first-edition-michael-
bond/
textbookfull.com
https://textbookfull.com/product/communicating-ethically-character-
duties-consequences-and-relationships-william-w-neher/
textbookfull.com
Cambridge Handbook of Open Strategy 1st Edition Georg Von
Krogh
https://textbookfull.com/product/cambridge-handbook-of-open-
strategy-1st-edition-georg-von-krogh/
textbookfull.com
T HE E X P ER T ’S VOIC E ® IN JAVA
Java XML
and JSON
—
Jeff Friesen
Java XML and JSON
Jeff Friesen
Java XML and JSON
Jeff Friesen
Dauphin, Manitoba, Canada
ISBN-13 (pbk): 978-1-4842-1915-7 ISBN-13 (electronic): 978-1-4842-1916-4
DOI 10.1007/978-1-4842-1916-4
Library of Congress Control Number: 2016943840
Copyright © 2016 by Jeff Friesen
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part
of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations,
recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission
or information storage and retrieval, electronic adaptation, computer software, or by similar or
dissimilar methodology now known or hereafter developed. Exempted from this legal reservation are
brief excerpts in connection with reviews or scholarly analysis or material supplied specifically for
the purpose of being entered and executed on a computer system, for exclusive use by the purchaser
of the work. Duplication of this publication or parts thereof is permitted only under the provisions
of the Copyright Law of the Publisher’s location, in its current version, and permission for use must
always be obtained from Springer. Permissions for use may be obtained through RightsLink at the
Copyright Clearance Center. Violations are liable to prosecution under the respective Copyright Law.
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol
with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only
in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of
the trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they
are not identified as such, is not to be taken as an expression of opinion as to whether or not they are
subject to proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of
publication, neither the authors nor the editors nor the publisher can accept any legal responsibility
for any errors or omissions that may be made. The publisher makes no warranty, express or implied,
with respect to the material contained herein.
Managing Director: Welmoed Spahr
Lead Editor: Steve Anglin
Technical Reviewer: Wallace Jackson
Editorial Board: Steve Anglin, Pramila Balan, Louise Corrigan, James T. DeWolf,
Jonathan Gennick, Robert Hutchinson, Celestin Suresh John, James Markham,
Susan McDermott, Matthew Moodie, Ben Renow-Clarke, Gwenan Spearing
Coordinating Editor: Mark Powers
Copy Editor: Mary Behr
Compositor: SPi Global
Indexer: SPi Global
Artist: SPi Global
Distributed to the book trade worldwide by Springer Science+Business Media New York,
233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505,
e-mail orders-ny@springer-sbm.com, or visit www.springeronline.com. Apress Media, LLC is a
California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc
(SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation.
For information on translations, please e-mail rights@apress.com, or visit www.apress.com.
Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional
use. eBook versions and licenses are also available for most titles. For more information, reference our
Special Bulk Sales–eBook Licensing web page at www.apress.com/bulk-sales.
Any source code or other supplementary materials referenced by the author in this text is available
to readers at www.apress.com/9781484219157. For detailed information about how to locate your
book’s source code, go to www.apress.com/source-code/. Readers can also access source code at
SpringerLink in the Supplementary Material section for each chapter.
Printed on acid-free paper
To Dave, the late Father Lucian, Jane, and Rob.
Contents at a
Glance
About the Author ............................................................................ xiii
About the Technical Reviewer ..........................................................xv
Acknowledgments ..........................................................................xvii
Introduction .....................................................................................xix
v
vi Contents at a Glance
Summary ............................................................................................... 28
vii
viii Contents
Summary ............................................................................................... 95
■Chapter 5: Selecting Nodes with XPath ........................................ 97
What Is XPath? ...................................................................................... 97
XPath Language Primer ......................................................................... 97
Location Path Expressions...................................................................................... 98
General Expressions ............................................................................................. 101
Contents ix
■Chapter 9: Parsing and Creating JSON Objects with Gson ......... 179
What Is Gson? ..................................................................................... 179
Obtaining and Using Gson .................................................................................... 180
Chapter 8: Parsing and Creating JSON Objects with mJson ............... 269
Chapter 9: Parsing and Creating JSON Objects with Gson .................. 272
Chapter 10: Extracting JSON Property Values with JsonPath.............. 276
xiii
About the Technical
Reviewer
Wallace Jackson has been writing for leading
multimedia publications about his work in new
media content development since the advent
of Multimedia Producer Magazine nearly two
decades ago. He has authored a half-dozen
Android book titles for Apress, including four
titles in the popular Pro Android series. Wallace
received his undergraduate degree in business
economics from the University of California
at Los Angeles and a graduate degree in MIS
design and implementation from the University
of Southern California. He is currently the CEO
of Mind Taffy Design, a new media content
production and digital campaign design and
development agency.
xv
Acknowledgments
Many people assisted me in the development of this book, and I thank them.
I especially thank Steve Anglin for asking me to write it and Mark Powers for
guiding me through the writing process.
xvii
Introduction
XML and (the more popular) JSON let you organize data in textual formats.
This book introduces you to these technologies along with Java APIs for
integrating them into your Java code. This book introduces you to XML and
JSON as of Java 8 update 60.
Chapter 1 introduces XML, where you learn about basic language features
(such as the XML declaration, elements and attributes, and namespaces).
You also learn about well-formed XML documents and how to validate them
via the Document Type Definition and XML Schema grammar languages.
Chapter 2 focuses on Java’s SAX API for parsing XML documents. You learn
how to obtain a SAX 2 parser; you then tour XMLReader methods along with
handler and entity resolver interfaces. Finally, you explore a demonstration
of this API and learn how to create a custom entity resolver.
Chapter 3 addresses Java’s DOM API for parsing and creating XML
documents. After discovering the various nodes that form a DOM document
tree, you explore the DOM API, where you learn how to obtain a DOM
parser/document builder and how to parse and create XML documents.
Chapter 4 places the spotlight on Java’s StAX API for parsing and creating
XML documents. You learn how to use StAX to parse XML documents with
stream-based and event-based readers, and how to create XML documents
with stream-based and event-based writers.
Moving on, Chapter 5 presents Java’s XPath API for simplifying access to
a DOM tree’s nodes. You receive a primer on the XPath language, learning
about location path expressions and general expressions. You also explore
advanced features starting with namespace contexts.
Chapter 6 completes my coverage of XML by targeting Java’s XSLT API. You
learn about transformer factories and transformers, and much more.
xix
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
xx Introduction
Note You can download this book’s source code by pointing your web browser
to www.apress.com/9781484219157 and clicking the Source Code tab
followed by the Download Now link.
Chapter 1
Introducing XML
Applications commonly use XML documents to store and exchange data.
XML defines rules for encoding documents in a format that is both
human-readable and machine-readable. This chapter introduces XML, tours
the XML language features, and discusses well-formed and valid documents.
What Is XML?
XML (eXtensible Markup Language) is a metalanguage (a language used to
describe other languages) for defining vocabularies (custom markup languages),
which is the key to XML’s importance and popularity. XML-based vocabularies
(such as XHTML) let you describe documents in a meaningful way.
XML vocabulary documents are like HTML (see http://en.wikipedia.org/
wiki/HTML) documents in that they are text-based and consist of markup
(encoded descriptions of a document’s logical structure) and content
(document text not interpreted as markup). Markup is evidenced via tags
(angle bracket-delimited syntactic constructs) and each tag has a name.
Furthermore, some tags have attributes (name-value pairs).
<recipe>
<title>
Grilled Cheese Sandwich
</title>
<ingredients>
<ingredient qty="2">
bread slice
</ingredient>
<ingredient>
cheese slice
</ingredient>
<ingredient qty="2">
margarine pat
</ingredient>
</ingredients>
<instructions>
Place frying pan on element and select medium heat. For each bread
slice, smear one pat of margarine on one side of bread slice. Place cheese
slice between bread slices with margarine-smeared sides away from the
cheese. Place sandwich in frying pan with one margarine-smeared side in
contact with pan. Fry for a couple of minutes and flip. Fry other side for a
minute and serve.
</instructions>
</recipe>
Listing 1-1 presents an XML document that describes a recipe for making
a grilled cheese sandwich. This document is reminiscent of an HTML
document in that it consists of tags, attributes, and content. However, that’s
CHAPTER 1: Introducing XML 3
where the similarity ends. Instead of presenting HTML tags such as <html>,
<head>, <img>, and <p>, this informal recipe language presents its own
<recipe>, <ingredients>, and other tags.
Note Although Listing 1-1’s <title> and </title> tags are also found in
HTML, they differ from their HTML counterparts. Web browsers typically display
the content between these tags in their title bars. In contrast, the content
between Listing 1-1’s <title> and </title> tags might be displayed as a
recipe header, spoken aloud, or presented in some other way, depending on the
application that parses this document.
XML Declaration
An XML document usually begins with the XML declaration, which is special
markup telling an XML parser that the document is XML. The absence of the
XML declaration in Listing 1-1 reveals that this special markup isn’t mandatory.
When the XML declaration is present, nothing can appear before it.
The XML declaration minimally looks like <?xml version="1.0"?> in which
the nonoptional version attribute identifies the version of the XML
specification to which the document conforms. The initial version of this
specification (1.0) was introduced in 1998 and is widely implemented.
Note The World Wide Web Consortium (W3C), which maintains XML, released
version 1.1 in 2004. This version mainly supports the use of line-ending
characters used on EBCDIC platforms (see http://en.wikipedia.org/
wiki/EBCDIC) and the use of scripts and characters that are absent from
Unicode 3.2 (see http://en.wikipedia.org/wiki/Unicode). Unlike
XML 1.0, XML 1.1 isn’t widely implemented and should be used only by those
needing its unique features.
4 CHAPTER 1: Introducing XML
XML supports Unicode, which means that XML documents consist entirely
of characters taken from the Unicode character set. The document’s
characters are encoded into bytes for storage or transmission, and the
encoding is specified via the XML declaration’s optional encoding attribute.
One common encoding is UTF-8 (see http://en.wikipedia.org/wiki/UTF-8),
which is a variable-length encoding of the Unicode character set. UTF-8 is a
strict superset of ASCII (see http://en.wikipedia.org/wiki/ASCII), which
means that pure ASCII text files are also UTF-8 documents.
Note In the absence of the XML declaration or when the XML declaration’s
encoding attribute isn’t present, an XML parser typically looks for a special
character sequence at the start of a document to determine the document’s
encoding. This character sequence is known as the byte-order-mark (BOM) and
is created by an editor program (such as Microsoft Windows Notepad) when it
saves the document according to UTF-8 or some other encoding. For example,
the hexadecimal sequence EF BB BF signifies UTF-8 as the encoding. Similarly,
FE FF signifies UTF-16 big endian (see https://en.wikipedia.org/
wiki/UTF-16), FF FE signifies UTF-16 little endian, 00 00 FE FF signifies
UTF-32 big endian (see https://en.wikipedia.org/wiki/UTF-32), and
FF FE 00 00 signifies UTF-32 little endian. UTF-8 is assumed when no
BOM is present.
If you’ll never use characters apart from the ASCII character set, you can
probably forget about the encoding attribute. However, when your native
language isn’t English or when you’re called to create XML documents that
include non-ASCII characters, you need to properly specify encoding.
For example, when your document contains ASCII plus characters from
a non-English Western European language (such as ç, the cedilla used in
French, Portuguese, and other languages), you might want to choose
ISO-8859-1 as the encoding attribute’s value—the document will probably
have a smaller size when encoded in this manner than when encoded with
UTF-8. Listing 1-2 shows you the resulting XML declaration.
FOOTNOTES:
[11] “The Imitation of Christ” (Rhythmic translation).
[12] Pendennis. Thackeray.
CHAPTER XIV
“To set forth, as only art can, the beauty and the joy of living, the
beauty and the blessedness of death, the glory of battle and
adventure, the nobility of devotion—to a cause, an ideal, a passion
even—the dignity of resistance, the sacred quality of patriotism, that
is my ambition here,” says the editor of “Lyra Heroica” in his preface.
We all feel that some such expression of the “simpler sentiments,
more elemental emotions” should be freely used in the education of
children, that, in fact, heroic poetry contains such inspiration to noble
living as is hardly to be found elsewhere; and also we are aware that
it is only in the youth of peoples that these elemental emotions find
free expression in song. We look at our own ballad literature and find
plenty of the right material, but it is too occasional and too little
connected, and so though we would prefer that the children should
imbibe patriotism and heroism at the one fountain head, we think it
cannot be done. We have no truly English material, we say, for
education in this kind, and we fall back on the Homeric myths in one
or other of the graceful and spirited renderings which have been
made specially for children.
But what if it should turn out that we have our own Homer, our
own Ulysses? Mr. Stopford Brooke has made a great discovery for
us who look at all things from the child standpoint. Possibly he would
not be gratified to know that his “History of Early English Literature,”
invaluable addition as it is to the library of the student and the man of
letters, should be appropriated as food for babes. All the same, here
is what we have long wanted. The elemental emotions and heroic
adventures of the early English put into verse and tale, strange and
eerie as the wildest fairy tale, yet breathing in every line the English
temper and the English virtue that go to the making of heroes. Not
that Beowulf, the hero of the great poem, was precisely English, but
where the English came from, there dwelt he, and Beowulf was early
adopted as the national hero, whose achievements were sung in
every hall.
The poem, says Mr. Stopford Brooke, consisting of three
thousand one hundred and eighty-three lines, is divided into two
parts by an interval of fifty years; the first, containing Beowulf’s great
deeds against the monster Grendel and his dam; the second,
Beowulf’s conquest of the Fire-drake and his death and burial. We
are told that we may fairly claim the poem as English, that it is in our
tongue and in our country alone that it is preserved. The hero
Beowulf comes of brave and noble parents, and mildness and more
than mortal daring meet in him. When he comes to Hrothgar to
conquer Grendel it is of his counsel as much as of his strength that
we hear. The queen begs him to be friendly in council to her sons.
Hrothgar says to him, “Thou holdest thy faith with patience and thy
might with prudence of mind. Thou shalt be a comfort to thy people
and a help to heroes.” None, it is said, could order matters more
wisely than he. When he is dying he looks back on his life, and that
which he thinks of the most is not his great war deeds, but his
patience, his prudence, his power of holding his own well and of
avoiding new enmities. “Each of us must await the close of life,” says
he; “let him who can, gain honour before he die. That is best for a
warrior when he is dead. But do thou throughout this day have
patience of thy woes; I look for that from thee.” Such the philosophy
of this hero, legendary or otherwise, of some early century after
Christ, before His religion had found its way among those northern
tribes. Gentle, like Nelson, he had Nelson’s iron resolution. What he
undertook to do he went through without a thought, save of getting to
the end of it. Fear is wholly unknown to him, and he seems, like
Nelson, to have inspired his captains with his own courage. “I swore
no false oaths,” he said when dying; so also he kept his honour in
faithfulness to his lord. On foot, alone, in front, while life lasted, he
was his king’s defence. He kept it in equal faithfulness when his lord
was dead, and that to his own loss, for when the kingdom was
offered to him he refused, and trained Heardreg, the king’s son, to
war and learning, guarded him kindly with honour, and avenged him
when he was slain. He kept it in generosity, for he gave away all the
gifts that he received; in courtesy, for he gave even to those who had
been rude to him; and he is always gentle and grave with women.
Above all, he kept it in war, for these things are said of him, “so shall
a man do when he thinks to gain praise that shall never end, and
cares not for his life in battle.” “Let us have fame or death,” he cries,
and when Wiglaf comes to help him against the dragon, and Beowulf
is wrapped in the flame, Wiglaf recalls to him the aim of his whole
life:—
“Beowulf, beloved, bear thyself well. Thou wert wont to say in
youth that thou wouldst never let honour go. Now, strong in deeds,
ward thy life, firm-souled prince, with all thy might, I will be thy
helper.” “These,” adds Mr. Stopford Brooke, “are the qualities of the
man and the hero, and I have thought it worth while to dwell on
them, because they represent the ancient English ideal, the
manhood which pleased the English folk even before they came to
Britain, and because in all our histories since Beowulf’s time, for
twelve hundred years or so, they have been repeated in the lives of
the English warriors by land and sea whom we chiefly honour. But it
is not only the idea of a hero which we have in Beowulf, it is also the
idea of a king, the just governor, the wise politician, the builder of
peace, the defender of his own folk at the price of his life, ‘the good
king, the folk king, the beloved king, the war ward of his land, the
winner of treasure for the need of his people, the hero who thinks in
death of those who sail the sea, the gentle and terrible warrior, who
is buried amid the tears of his people.’”
We owe Mr. Stopford Brooke earnest gratitude for bringing this
heroic ideal of the youth of our nation within reach of the unlearned.
But what have we been about to let a thousand years and more go
by without ever drawing on the inspiration of this noble ideal in giving
impulse to our children’s lives. We have many English heroes, it may
be objected: we have no need of this resuscitated great one from a
long buried past. We have indeed heroes galore to be proud of, but
somehow they have not often been put into song in such wise as to
reach the hearts of the children and the unlearned. We have to thank
Tennyson for our Arthur, and Shakespeare for our Henry the Fifth,
but we imagine that parents will find their children’s souls more in
touch with Beowulf than with either of these, because, no doubt, the
legends of a nation’s youth are the pages of history which most
easily reach a child, and Beowulf belongs to a younger stage of
civilisation than even Arthur. We hope the author of “Early English
Literature” will sometime give us the whole of the poem translated
with a special view to children, and interspersed with his own
luminous teaching as we have it here. The quaintness of the metre
employed gives a feeling of eld which carries the reader back, very
successfully, to the long ago of the poem.
We have already quoted largely from this “History of Early English
Literature,” but perhaps a fuller extract will give a better idea of the
work and of its real helpfulness to parents. The cost of the two rather
expensive volumes should be well repaid if a single child were to be
fired with emulation of the heroic qualities therein sung:—
“The action of the poem now begins with the voyage of Beowulf to
the Danish coast. The hero has heard that Hrothgar, the chief of the
Danes, is tormented by Grendel, a man-devouring monster. If
Hrothgar’s warriors sleep in Heorot—the great hall he has built—they
are seized, torn to pieces, and devoured. ‘I will deliver the king,’
thought Beowulf, when he heard the tale from the roving seamen.
‘Over the swan road I will seek Hrothgar; he has need of men.’ His
comrades urged him to the adventure, and fifteen of them were
willing to fight it out with him. Among the rest was a sea-crafty man
who knew the ocean-paths. Their ship lay drawn up on the beach,
under the high cliff. Then—
“There the well-geared heroes
Stepped upon the stem, while the stream of ocean
Whirled the sea against the sand. To the ship, to its breast.
Bright and carved things of cost carried then the heroes
And the armour well-arrayed. So the men outpushed,
On desired adventure, their tight ocean wood.
Swiftly went above the waves, with a wind well-fitted,
Likest to a fowl, the Floater, foam around its neck,
Till about the same time, on the second day,
The up-curvéd prow had come on so far,
That at last the seamen saw the land ahead;
Shining sea-cliffs, soaring headlands,
Broad sea-nesses. So the Sailor of the Sea
Reached the sea-way’s end.”
Beowulf l. 211.
“This was the voyage, ending in a fiord with two high sea-capes at
its entrance. The same kind of scenery belongs to the land whence
they had set out. When Beowulf returns over the sea the boat groans
as it is pushed forth. It is heavily laden; the hollow, under the single
mast with the single sail, holds eight horses, swords and treasure
and rich armours. The sail is hoisted, the wind drives the foam-
throated bark over the waves, until they see the Geats’ Cliffs—the
well-known sea-nesses. The keel is pressed up by the wind on the
sand, and the ‘harbour-guard, who had looked forth afar o’er the sea
with longing for their return’—one of the many human touches of the
poem—‘fastens the wide-bosomed ship with anchoring chains to the
strand, lest the violence of the waves should sweep away the
winsome boat.’... At the end of the bay into which Beowulf sails is a
low shore, on which he drives his ship, stem on. Planks are pushed
out on either side of the prow; the Weder-folk slipped down on the
shore, tied up their sea-wood; their battle-sarks clanged on them as
they moved. Then they thanked the gods that the war-paths had
been easy to them.... On the ridge of the hill above the landing-place
the ward of the coast of the Scyldings sat on his horse, and saw the
strangers bear their bright shields over the bulwarks of the ship to
the shore. He rode down, wondering, to the sea, and shook mightily
in his hands his heavy spear, and called to the men—”
“Who are ye of men, having arms in hand,
Covered with your coats of mail. Who your keel afoaming
O’er the ocean street thus have urged along.
Hither on the high sea!”
* * * * *
“Never saw I greater
Earl upon this earth than is one of you;
Hero in his harness. He is no home-stayer,
‘Less his looks belie him, lovely with his weapons.
Noble is his air!”
Beowulf, ll. 237-247.
FOOTNOTES:
[13] “History of Early English Literature,” by Stopford A.
Brooke, 2 vols. Macmillan & Co.
CHAPTER XV
IS IT POSSIBLE?
do we believe in conversion?”
Everything turns on the condition the originator wisely puts first.
There is the crux. Given money enough, land enough, men enough,
fully equip and officer this teeming horde of incapables, and some
sort of mechanical drill may be got through somehow. But, “when a
man’s own character and defects constitute the reasons for his fall,
that character must be changed and that conduct altered if any
permanent beneficial results are to be obtained.” The drunkard must
be made sober; the criminal, honest; the impure, clean. Can this be
done? is the crucial question. Is it possible that a man can emerge
altogether out of his old self and become a new creature, with new
aims, new thoughts, even new habits? That such renovation is
possible is the old contention of Christianity. Here, and not on the
ground of the inspiration of the sacred text, must the battle be fought
out. The answer to the one urgent question of the age, What think ye
of Christ? depends upon the power of the idea of Christ to attract
and compel attention, and of the indwelling of Christ to vivify and
elevate a single debased and torpid human soul.
Many of us believe exultingly that the “All power” which is given
into the hands of our Master includes the power of upright standing,
strength, and beauty for every bruised human reed. That this is so,
we have evidence in plenty, beginning with ourselves. But many
others of us, and those not the less noble, consider with Robert
Elsmere, that “miracles do not happen.” The recorded miracles serve
as pegs for the discussion; the essential miracle is the utter and
immediate renovation of a human being. Upon this possibility the
saving of the world must hang, and this many cannot receive, not
because they are stiff-necked and perverse, but because it is dead
against natural law as they know it. Proofs? Cases without end? The
whole history of the Christian Church in evidence? Yes; but the
history of the Church is a chequered one; and, for individual cases,
we do not doubt the veracity of the details; only, nobody knows the
whole truth; some preparation in the past, some motive in the
present inadvertently kept out of sight, may alter the bearings of any
such case.
This is, roughly, the position of the honest sceptic, who would, if
he could, believe heartily in General Booth’s scheme, and, by
consequence, in the convertibility of the entire human race. To
improve the circumstances, even of millions, is only a question of the
magnitude of the measures taken, the wisdom of the administration.
But human nature itself, depraved human nature, is, to him, the
impossible quantity. Can the leopard change his spots?