Professional Documents
Culture Documents
Colle
Visit to download the full and correct content document:
https://ebookmass.com/product/core-data-services-for-abap-renzo-colle/
Renzo Colle, Ralf Dentzer, Jan Hrastnik
Notes on Usage
Table of Contents
Preface
3 Associations
3.1 Define Associations
3.2 Expose Associations
3.3 Model Compositional Relations
3.4 Model M:N Relations
3.5 Project Associations
3.6 Use Associations in CDS Views
3.6.1 Define Path Expressions
3.6.2 Implicit Joins
3.6.3 Cardinality Changes Resulting from Path
Expressions
3.6.4 Restrictions for Defining Path Expressions
3.7 Use Associations in ABAP Code
3.8 Summary
4 Annotations
4.1 Annotation Definitions
4.1.1 Syntax Overview
4.1.2 Annotation Names
4.1.3 Annotation Types and Values
4.1.4 Enumeration Values
4.1.5 Annotation Default Values
4.1.6 Annotation Scopes
4.2 Effects of Annotations
4.3 Propagation Logic for Annotations
4.3.1 Propagation Logic within Simple Type
Hierarchies
4.3.2 Propagation Logic of Element Annotations
4.3.3 Consistency Aspects
4.4 Metadata Extensions
4.5 Active Annotations
4.6 Summary
5 Access Controls
5.1 Fundamentals of Access Controls
5.2 Mode of Action of Access Controls
5.3 Implementation Patterns for Access
Controls
5.3.1 Implement Access Controls with Path
Expressions
5.3.2 Inherit Implementation of Access Controls
5.3.3 Implement Access Controls without Using
Authorization Objects
5.3.4 Implement Access Controls for Analytical
Queries
5.3.5 Implement Access Controls for Transactional
Applications
5.3.6 Implement Access Controls on the Field
Level
5.3.7 Change Access Controls of SAP-Delivered
CDS Models
5.3.8 Block Standard Data Selections from CDS
Models
5.3.9 Decouple Access Controls from User Input
5.3.10 Map CDS Fields onto Fields of Authorization
Objects Using Indirection
5.4 Test Access Controls
5.5 Summary
6 Business Services
6.1 Projection Views
6.2 Service Definitions
6.3 Service Bindings
6.3.1 OData UI Services
6.3.2 OData Web API Services
6.3.3 InA UI Services
6.3.4 SQL Web API Services
6.4 Testing Business Services
6.4.1 Use OData Service URLs
6.4.2 Use UI Previews
6.5 Summary
10 Modeling Analytical
Applications
10.1 Analytics in SAP S/4HANA
10.2 Analytical Views
10.2.1 First Analytical Cube View
10.2.2 Test Environment for Analytical Views
10.2.3 Analytical Cube Views
10.2.4 Analytical Dimension Views
10.2.5 Analytical Model in the Test Environment
10.2.6 Consistency of the Analytical Model
10.3 Analytical Queries
10.3.1 Definition of an Analytical Query
10.3.2 Initial Layout of a Query
10.3.3 Filter, Select Options, Parameters
10.3.4 Calculation of Measures
10.3.5 Restricted Measures
10.3.6 Exception Aggregation
10.3.7 Currencies and Conversion
10.3.8 Analytical Query Selecting from Dimension
Views
10.4 Analytical Infrastructure
10.5 Summary
11 Modeling Transactional
Applications
11.1 Transactional Applications
11.2 Transactional Infrastructure in SAP
S/4HANA
11.3 Transactional Object Models
11.3.1 Object Models
11.3.2 Access Controls
11.4 Behavior Definitions
11.4.1 Create Behavior Definition
11.4.2 Behavior Pool and Handler Implementation
11.4.3 Consumption via EML
11.4.4 Static Field Control
11.4.5 Numbering
11.4.6 Exclusive Locks
11.4.7 Authorization Checks
11.4.8 Authorization Contexts and Privileged
Access
11.4.9 Associations
11.4.10 Actions
11.4.11 Functions
11.4.12 Data Determinations and Validations
11.4.13 Dynamic Feature Control
11.4.14 Mappings
11.4.15 Calculated Fields
11.4.16 Prechecks
11.4.17 HTTP ETags
11.4.18 Draft
11.4.19 Side Effects
11.4.20 Change Documents
11.4.21 Events
11.5 Transactional Projection Object
Models
11.5.1 Projection Object Models
11.5.2 Access Control
11.5.3 Denormalized Fields
11.5.4 Localized Elements
11.5.5 Calculated Fields/Virtual Elements
11.6 Define Interface Behavior Definition
11.6.1 Create Interface Behavior Definition
11.6.2 Static Feature Control
11.6.3 Operations
11.6.4 Draft, ETag, and Side Effects
11.6.5 Events
11.6.6 Consumption via EML
11.6.7 Release for Consumption
11.7 Define Projection Behavior
Definition
11.7.1 Create Projection Behavior Definition
11.7.2 Actions and Functions
11.7.3 Prechecks
11.7.4 Augmentation
11.7.5 Side Effects
11.7.6 Events
11.7.7 Consumption via EML
11.8 Runtime Orchestration
11.8.1 Interaction Phase Operation Flow
11.8.2 Save Phase Operation Flow
11.8.3 Runtime Component Overview
11.8.4 Consumption via OData
11.9 SAP Fiori and OData Consumption
11.9.1 OData Service for Web API Consumption
11.9.2 OData Service for UI Consumption
11.10 SAP Event Mesh and Local Event
Handlers
11.10.1 Local Event Handler
11.10.2 SAP Event Mesh
11.11 Summary
12 Hierarchies in CDS
12.1 Hierarchy Categories and Basics
12.2 Annotation-Based Parent-Child
Hierarchies
12.2.1 Example of a Parent-Child Hierarchy
12.2.2 Determination of a Hierarchy
12.2.3 Test a Hierarchy
12.3 CDS Hierarchies
12.3.1 Data for an Example of a Reporting Line
Hierarchy
12.3.2 Define the CDS Hierarchy
12.3.3 Hierarchy Attributes
12.3.4 Visualization of a Hierarchy
12.3.5 Hierarchy with an Orphaned Node
12.3.6 Hierarchy with Multiple Parent Nodes
12.3.7 Hierarchy with Cycles
12.3.8 Further Options for Defining Hierarchies
12.3.9 CDS Hierarchies in ABAP SQL
12.3.10 OData Service for CDS Hierarchies
12.4 Summary
13 CDS-Based Search
Functionality
13.1 Modeling Value Helps
13.1.1 Modeling Elementary Value Helps
13.1.2 Integrating Value Help CDS Views
13.1.3 Collective Value Helps
13.1.4 Exposing Value Helps in OData Services
13.1.5 Using Value Helps
13.2 Free-Text Search Functionality in
OData Services
13.3 Enterprise Search Functionality
13.3.1 Define Enterprise Search Models
13.3.2 Adapt Enterprise Search Models from SAP
13.4 Summary
17 Troubleshooting
17.1 Performance Aspects
17.1.1 Static View Complexity
17.1.2 Calculated Fields
17.1.3 CDS Models in ABAP Code
17.1.4 Performance Tests
17.1.5 Analysis Tools
17.2 Pitfalls
17.2.1 Null Values
17.2.2 Data Types
17.2.3 Decimal Shift Logic for Amounts
17.3 Troubleshoot Implementations of
CDS Models
17.3.1 Syntax Checks
17.3.2 Consistency Checks of Frameworks
17.4 Troubleshoot Activation Issues
17.4.1 Online Activation
17.4.2 Mass Checks and Repairs
17.5 Examine ABAP RESTful Application
Programming Model Applications
17.6 Summary
[+] Tip
[»] Note
[ ! ] Warning
With this icon, we have marked warnings and common
pitfalls.
Acknowledgments
We would like to thank our colleagues Christoph Glania,
Irena Kofman, Roland Lucius, Horst Schnörer, Stefan
Unnebrink, and Felix Wente for taking the time to discuss
and review the contents of the book. Your comments and
suggestions have contributed significantly to the success of
the book. In particular, we would like to thank our families
and friends, whose support has given us the necessary
freedom to create the book.
Using CDS models, you can capture the data retrieval logic of your
application in such a way that it can be executed directly in the
database system. This chapter explains how to develop and analyze
such CDS models.
Currently, CDS views represent the most important design-time
artifacts within the range of supported CDS model types. They allow
you to flexibly transform the fixed design of database tables into
suitable data models, on top of which you can then efficiently build
your applications.
You define your CDS views in syntax similar to the structured query
language (SQL) that you use for selecting data from database tables
via the ABAP SQL interface (ABAP SQL). From this CDS view model, a
corresponding database view gets generated on the SAP HANA
database by the ABAP infrastructure. This generated database view is
executed when selecting data from the CDS view in ABAP.
Note that this chapter doesn’t focus on the details of the CDS
implementation. You’ll learn more about the detailed aspects of the
CDS models in subsequent chapters. Instead, we focus on presenting
the processes and procedures as well as the available tools, which
you’ll apply during your development activities.
In Section 1.1, we’re looking at the design of the data model of your
application. Based on the model of the database tables, we then run
through the individual, practically executable steps for creating and
changing CDS views in Section 1.2. In this context, you’ll also learn
how to use CDS views as basic building blocks for defining other CDS
views as well as learn how to use CDS views as data sources in your
ABAP logic. That is, you’ll learn how to select data from the modeled
CDS views by leveraging the ABAP SQL syntax.
For each sales order header data record, a maximum of one sales
organization and one customer data record can be assigned
(maximum cardinality: 1). A sales order item data record can have a
maximum of one product assigned, that is, one product header
(maximum cardinality: 1). For each product header data record, a
large number of multilingual texts can be stored as data records of
the entity product text (maximum cardinality: *).
Table 1.1 shows a summary of the objects and entities of the sample
reference application and provides an overview of how the entities of
the reference data model are mapped onto the underlying database
tables. Furthermore, the table lists the basic CDS views that
represent the data model of the application in CDS. Note that these
are sample tables and CDS views that you must create locally in your
system if you want to use them.
Object Entity Database Basic CDS View
Table
Table 1.1 Reference Data Model with Associated Database Tables and CDS Views
In general, we use names for all CDS models and their components
with spellings and prefixes based on the specifications of the virtual
data model (VDM), which most of the CDS models delivered by SAP
adhere to. SAP’s VDM will be explained in more detail in Chapter 9.
The CDS models of the reference data model are created in the local
namespace. For the sake of simplicity, they are prefixed with the
letter Z.
When you create CDS models, you must always define them in your
own namespace to avoid naming conflicts with the models
delivered by SAP. Merely adding the prefix Z for local developments
might not be sufficient for avoiding name clashes.
1.2 Implement the Data Model of the
Application
We now want to implement an extract from the reference data
model. First, we create the database tables for sales order item
ZSALESORDERITEM and for product ZPRODUCT in Section 1.2.1. Based on
database table ZPRODUCT, in Section 1.2.2, we then define CDS
view ZI_Product, which will represent the product. In Section 1.2.3,
we’ll show you how you can maintain this CDS view and how the
maintenance steps get reflected in its activation states. We
conclude this chapter by defining a hierarchy of CDS view models
in Section 1.2.4 in which we first create CDS view
ZI_SalesOrderItem as a representative of the sales order item
similar to CDS view ZI_Product. We capture the semantic
relationship of these two CDS views by means of CDS association
_Product.
Figure 1.2 Excerpt from the Implementation of the Reference Application Data
Model
Finally, we show you how you can analyze CDS models and
present the corresponding tools provided by the CDS
infrastructure.
When creating a CDS model, you can proceed in the same way as
when creating database tables. Choose File • New • Other…
from the main menu. In the dialog box that appears (see
Figure 1.7), choose ABAP • Core Data Services • Data
Definition. You can restrict the object selection by entering the
filter “Data Definition”. Confirm your selection by choosing Next
>.
Figure 1.7 Selecting the Creation of a CDS Data Model
Figure 1.8 First Dialog Step When Creating a CDS Data Model
The entered name will become the name of your data definition
language source (DDLS) transport object, as well as the proposed
name for your CDS model.
For some types of CDS models, the names of these two design-
time artifacts—the DDLS transport object and the CDS model—
can differ from each other. However, we recommend that you
always define these two names in such a way that the DDLS
name corresponds to the name of the CDS model in uppercase
letters. Otherwise, you must map both names for later
analyses.
Let me here say that I hold judges, and especially the Supreme
Court of the country, in much respect; but I am too familiar with the
history of Judicial proceedings to regard them with any superstitious
reverence. Judges are but men and in all ages have shown a full share
of frailty. Alas! alas! the worst crimes of history have been
perpetrated under their sanction. The blood of martyrs and of
patriots, crying from the ground, summons them to judgment.
It was a judicial tribunal which condemned Socrates to drink the
fatal hemlock, and which pushed the Saviour barefoot over the
pavements of Jerusalem, bending beneath his cross. It was a judicial
tribunal which, against the testimony and entreaties of her father,
surrendered the fair Virginia as a slave; which arrested the teachings
of the great apostle to the Gentiles, and sent him in bonds from
Judea to Rome; which, in the name of the old religion, adjured the
saints and fathers of the Christian Church to death, in all its most
dreadful forms; and which afterwards in the name of the new
religion, enforced the tortures of the Inquisition, amidst the shrieks
and agonies of its victims, while it compelled Galileo to declare, in
solemn denial of the great truth he had disclosed, that the earth did
not move round the sun.
It was a judicial tribunal which, in France, during the long reign of
her monarchs, lent itself to be the instrument of every tyranny, as
during the brief reign of terror it did not hesitate to stand forth the
unpitying accessory of the unpitying guillotine. Ay, sir, it was a
judicial tribunal in England, surrounded by all the forms of law,
which sanctioned every despotic caprice of Henry the eighth, from
the unjust divorce of his queen to the beheading of Sir Thomas
Moore; which lighted the fires of persecution, that glowed at Oxford
and Smithfield, over the cinders of Latimer, Ridley, and John
Rodgers; which, after elaborate argument, upheld the fatal tyranny
of ship money against the patriotic resistance of Hampden; which, in
defiance of justice and humanity, sent Sydney and Russell to the
block; which persistently enforced the laws of conformity that our
Puritan Fathers persistently refused to obey; and which afterwards,
with Jeffries on the bench, crimsoned the pages of English history
with massacre and murder, even with the blood of innocent women.
Ay, sir, and it was a judicial tribunal in our country, surrounded by
all the forms of law, which hung witches at Salem, which affirmed
the constitutionality of the Stamp Act, while it admonished “jurors
and the people” to obey; and which now, in our day, has lent its
sanction to the unutterable atrocity of the Fugitive Slave Law.
Galusha A. Grow’s Speech on the Homestead
Bill.
But even if the Government could derive any revenue from the
actual sale of public lands, it is neither just nor sound policy to hold
them for that purpose. Aware, however, that it is a poor place, under
a one hour rule, to attempt to discuss any of the natural rights of
men, for, surrounded by the authority of ages, it becomes necessary,
without the time to do it, first to brush away the dust that has
gathered upon their errors. Yet it is well sometimes to go back of the
authority of books and treatises, composed by authors reared and
educated under monarchical institutions, and whose opinions and
habits of thought consequently were more or less shaped and
moulded by such influences, and examine, by the light of reason and
nature, the true foundation of government and the inherent rights of
men.
The fundamental rights of man may be summed up in two words—
Life and Happiness. The first is the gift of the Creator, and may be
bestowed at his pleasure; but it is not consistent with his character
for benevolence, that it should be bestowed for any other purpose
than to be enjoyed, and that we call happiness. Therefore, whatever
nature has provided for preserving the one, or promoting the other,
belongs alike to the whole race. And as the means for sustaining life
are derived almost entirely from the soil, every person has a right to
so much of the earth’s surface as is necessary for his support. To
whatever unoccupied portion of it, therefore, he shall apply his labor
for that purpose, from that time forth it becomes appropriated to his
own exclusive use; and whatever improvements he may make by his
industry become his property, and subject to his disposal.
The only true foundation of any right to property is man’s labor.
That is property, and that alone which the labor of man has made
such. What right, then, can the Government have in the soil of a wild
and uncultivated wilderness as a source of revenue, to which not a
day nor hour’s labor has been applied, to make it more productive,
and answer the end for which it was created, the support and
happiness of the race?
It is said by the great expounder of the common law in his
commentaries, that “there is no foundation in nature or natural law,
why a set of words upon parchment should convey the dominion of
land.” The use and occupancy alone gives to man, in the language of
the commentaries, “an exclusive right to retain, in a permanent
manner, that specific land which before belonged generally to
everybody, but particularly to nobody.” * * *
It may be said, true, such would be man’s right to the soil in a state
of nature; but when he entered into society, he gave up part of his
natural rights, in order to enjoy the advantages of an organized
community. This is a doctrine, I am aware, of the books and treatises
on society and government; but it is a doctrine of despotism, and
belongs not to enlightened statesmen in a liberal age. It is the excuse
of the despot in encroaching upon the rights of the subject. He
admits the encroachment, but claims that the citizen gave up part of
his natural rights when he entered into society; and who is to judge
what ones he relinquished but the ruling power? It was not necessary
that any of man’s natural rights should be yielded to the state in the
formation of society. He yielded no right, but the right to do wrong,
and that he never had by nature. All that he yielded in entering into
organized society, was a portion of his unrestrained liberty, which
was, that he would submit his conduct, that before was subject to the
control of no living being, to the tribunals to be established by the
state, and with a tacit consent that society, or the Government, might
regulate the mode and manner of the exercise of his rights. Why
should he consent to be deprived of them? It is upon this ground that
we justify resistance to tyrants. Whenever the ruling power so far
encroaches upon the natural rights of men that an appeal to arms
becomes preferable to submission, they appeal from human to divine
laws, and plead the natural rights of man in their justification. That
government, and that alone, is just, which enforces and defends all of
man’s natural rights, and protects him against the wrongs of his
fellow-men. But it may be said, although such might be the natural
rights of men, yet the Government has a right to these lands, and
may use them as a source of revenue, under the doctrine of eminent
domain. * * *
What is there in the constitution of things giving to one individual
the sole and exclusive right to any of the bounties provided by nature
for the benefit and support of the whole race, because, perchance, he
was the first to look upon a mere fragment of creation? By the same
process of reasoning, he who should first discover the source or
mouth of a river, would be entitled to a monopoly of the waters that
flow in the channel, or he who should first look upon one of the rills
or fountains of the earth might prevent fainting man from quenching
there his thirst, unless his right was first secured by parchment.
Why has the claim to monopolize any of the gifts of God to man
been confined, by legal codes, to the soil alone? Is there any other
reason than that it is a right which, having its origin in feudal times—
under a system that regarded man but as an appendage of the soil
that he tilled, and whose life, liberty and happiness, were but means
of increasing the pleasures, pampering the passions and appetites of
his liege lord—and, having once found a place in the books, it has
been retained by the reverence which man is wont to pay to the past,
and to time-honored precedents? The human mind is so constituted
that it is prone to regard as right what has come down to us approved
by long usage, and hallowed by gray age. It is a claim that had its
origin with the kindred idea that royal blood flows only in the veins
of an exclusive few, whose souls are more ethereal, because born
amid the glitter of courts, and cradled amid the pomp of lords and
courtiers, and, therefore, they are to be installed as rulers and law-
givers of the race. Most of the evils that afflict society have had their
origin in violence and wrong enacted into law by the experience of
the past, and retained by the prejudices of the present.
Is it not time to sweep from the statute book its still lingering relics
of feudalism; and to blot out the principles engrafted upon it by the
narrow-minded policy of other times, and adapt the legislation of the
country to the spirit of the age, and to the true ideas of man’s rights
and relations to his Government? If a man has a right on earth, he
has a right to land enough to rear a habitation on. If he has a right to
live, he has a right to the free use of whatever nature has provided for
his sustenance—air to breathe, water to drink, and land enough to
cultivate for his subsistence; for these are the necessary and
indispensable means for the enjoyment of his inalienable rights of
“life, liberty and the pursuit of happiness.” And is it for a
Government that claims to dispense equal and exact justice to all
classes of men, and that has laid down correct principles in its great
chart of human rights, to violate those principles and its solemn
declarations in its legislative enactments?
The struggle between capital and labor is an unequal one at best. It
is a struggle between the bones and sinews of men, and dollars and
cents. And in that struggle, is it for the government to stretch forth
its arm to aid the strong against the weak? Shall it continue, by its
legislation, to elevate and enrich idleness on the wail and woe of
industry?
If the rule be correct as applied to governments as well as
individuals, that whatever a person permits another to do, having the
right and means to prevent it, he does himself, then indeed is the
government responsible for all the evils that may result from
speculation and land monopoly in the public domain. For it is not
denied that Congress has the power to make any regulations for the
disposal of these lands, not injurious to the general welfare. Now,
when a new tract is surveyed, and you open the land office and
expose it to sale, the man with the most money is the largest
purchaser. The most desirable and available locations are seized
upon by the capitalists of the country, who seek that kind of
investment. The settler who chances not to have a pre-emption right,
or to be there at the time of sale, when he comes to seek a home for
himself and his family, must pay the speculator three or four
hundred per cent. on his investment, or encounter the trials and
hardships of a still more remote border life. And thus, under the
operation of laws that are called equal and just, you take from the
settler three or four dollars per acre, and put it in the pocket of the
speculator—thus, by the operation of law, abstracting so much of his
hard earnings for the benefit of capital; for not an hour’s labor has
been applied to the land since it was sold by the government, nor is it
more valuable to the settler. Has not the laborer a right to complain
of legislation that compels him to endure greater toils and hardships,
or contribute a portion of his earnings for the benefit of the
capitalist? But not upon the capitalist or the speculator is it proper
that the blame should fall. Man must seek a livelihood and do
business under the laws of the country; and whatever rights he may
acquire under the laws, though they may be wrong, yet the well-
being of society requires that they be respected and faithfully
observed. If a person engage in a business legalized and regulated by
the law, and uses no fraud or deception in its pursuit, and evils result
to the community, let them apply the remedy to the proper source—
that is to the law-making power. The laws and the law-makers are
responsible for whatever evils necessarily grow out of their
enactments.
While the public lands are exposed to indiscriminate sale, as they
have been since the organization of the government, it opens the
door to the wildest system of land monopoly. It requires no lengthy
dissertation to portray its evils. In the Old World its history is written
in sighs and tears. Under its influence, you behold in England, the
proudest and most splendid aristocracy, side by side with the most
abject and destitute people; vast manors hemmed in by hedges as a
sporting-ground for her nobility, while men are dying beside the
enclosure for the want of land to till. Thirty thousand proprietors
hold the title deeds to the soil of Great Britain, while in Ireland alone
there are two and a half millions of tenants who own no part of the
land they cultivate, nor can they ever acquire a title to a foot of it, yet
they pay annually from their hard earnings twenty millions of dollars
to absentee landlords for the privilege of dying on their soil. Under
its blighting influence you behold industry in rags and patience in
despair. Such are some of the fruits of land monopoly in the Old
World; and, shall we plant its seeds in the virgin soil of the
New? * * *
If you would raise fallen man from his degradation, elevate the
servile from their grovelling pursuits to the rights and dignity of
men, you must first place within their reach the means for satisfying
their pressing physical wants, so that religion can exert its influence
on the soul, and soothe the weary pilgrim in his pathway to the tomb.
It is in vain you talk of the goodness and benevolence of an
Omniscient Ruler to him, whose life from the cradle to the grave is
one continued scene of pain, misery and want. Talk not of free
agency to him whose only freedom is to choose his own method to
die. In such cases, there might, perhaps, be some feeble conceptions
of religion and its duties—of the infinite, everlasting, and pure; but
unless there be a more than common intellect, they would be like the
dim shadows that float in the twilight. * * *
Riches, it is true, are not necessary to man’s real enjoyment; but
the means to prevent starvation are. Nor is a splendid palace
necessary to his real happiness; but a shelter against the storm and
winter’s blast is.
If you would lead the erring back from the paths of vice and crime
to virtue and honor, give him a home—give him a hearth-stone, and
he will surround it with household gods. If you would make men
wiser and better, relieve the almshouse, close the doors of the
penitentiary, and break in pieces the gallows, purify the influences of
the domestic fireside. For that is the school in which human
character is formed, and there its destiny is shaped. There the soul
receives its first impress, and man his first lesson, and they go with
him for weal or woe through life. For purifying the sentiments,
elevating the thoughts, and developing the noblest impulses of man’s
nature, the influences of a moral fireside and agricultural life are the
noblest and the best. * * *
It was said by Lord Chatham, in his appeal to the House of
Commons, in 1775, to withdraw the British troops from Boston, that
“trade, indeed, increases the glory and wealth of a country; but its
true strength and stamina are to be looked for in the cultivators of
the land. In the simplicity of their lives is found the simpleness of
virtue, the integrity and courage of freedom. These true, genuine
sons of the soil are invincible.”
The history of American prowess has recorded these words as
prophetic: man, in defence of his hearth-stone and fireside, is
invincible against a world of mercenaries. In battling for his home
and all that is dear to him on earth, he is never conquered save with
his life. In such a struggle every pass becomes a Thermopylæ, every
plain a Marathon. With an independent yeomanry scattered over our
vast domain, the “young eagle” may bid defiance to the world in
arms. Even though a foe should devastate our seaboard, lay in ashes
its cities, they have made not one single advance towards conquering
the country; for from the interior comes its hardy yeomanry, with
their hearts of oak and nerves of steel, to expel the invader. Their
hearts are the citadel of a nation’s power—their arms the bulwarks of
liberty.