A slight aside.
John F Sowa wrote:
SBVR is an interesting use of controlled English. But they made
the mistake of using the CNL the definitive form.
If the CNL has a well-defined mapping to a logic language, then it
is not a mistake to use it normatively. Creating a well-defined CNL
with a well-defined logical interpretation, however, tends to
produce either a crude language, or an anglicized version of logical
formulae. To borrow from Dr. Seuss, "That's not easy, Mr. Fox,
sir."
It seems that the SBVR folk thought they had (a) defined a CNL and
(b) defined a mapping from the CNL to a formal logic
representation. In fact they (a) described a CNL and exemplified
careful usage, without ever being clear about grammar rules; and (b)
described the mapping of the keywords in the CNL to logic, without
describing the interpretation of complex constructs. So, the formal
definitions and axioms in the specification have clear logical
interpretations, for which only a certain amount of undocumented
logical intuition is required. On the other hand, the spec gives
several examples of business rules in a not-so-carefully written
dialect of the CNL, with fully expanded logical interpretations that
can only be produced from the example statements using NLP
heuristics.
For a simple axiom like "Each X has at least one Y", for example,
there is no rule that tells us which quantifier encloses the other.
We, of course, know what the sense of that axiom is. But "At least
one Y of each X is a Z" takes more thinking, and follows a different
interpretation rule for quantifiers. And "if a customer places a
volume order for some product, every subsequent order that the
custormer places for the same product gets a volume discount"
requires rather more interpretation guidance than: 'a' and 'some'
are existential quantifiers, and if...then... is an implication. In
fact, in this case, 'a volume discount' is existential, but all the
other 'a' and 'some' adjectives have universal intent. If you are
using a CNL normatively, and it allows such a sentence (as SBVR says
it does), then you have to explain the rules that produce the
logical interpretation of that sentence. Within the specification,
SBVR is very careful to rephrase a sentence like this to expose the
proper quantifiers, which is only to say that more "control" in the
use of the CNL is required than is described.
In English, 'be', 'have', and 'do' are classified as verbs, but
their
syntax is distinctly different from "normal" verbs, and they have
very little semantic content. They should not be used by
themselves
as relation names.
Fully agree. Only some of the uses of those verbs carry specific
semantic content. 'is' can mean identity; 'has' can refer to
ownership. Other uses are, in one sense or another, purely
'auxiliary'. And it is perhaps important to mention that, in a
formal language, 'is' and 'has' as independent verbs get one
semantic interpretation each. Every other interpretation requires
an additional word in the verb phrase, or some rule about the
context of usage.
-Ed
John
--
Edward J. Barkmeyer Email: edbark@xxxxxxxx
National Institute of Standards & Technology
Systems Integration Division, Engineering Laboratory
100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528
Gaithersburg, MD 20899-8263 Cel: +1 240-672-5800
"The opinions expressed above do not reflect consensus of NIST,
and have not been reviewed by any Government authority."
|