Your point about the difficulty of persuading folks to cross the
intellectual silo barriers between HCI // Formal Logic // Programming
Languages is one which we have experienced too.

The system [1] is an integration of a browser based author- and
user-interface (open vocabulary executable English), with a logic
engine based on a model theoretic semantics [2], and with automatic
generation and execution of complex networked SQL.

We find that some folks just look at one part of the system (e.g. SQL),
rather than at the intention of the whole design, which is to help to
align IT with actual business and scientific requirements.

Your correspondent wrote

> The human interfaces are "controlled" interfaces, capable of
> being unambiguously mapped to strict logic. So they lack some
> of the richness, ambiguity, and color of unrestricted natural
> languages.

I'd respectfully suggest that the lack of richness at the human
interface comes in part from the assumption that any such interface
must control the
syntax and the vocabulary. This is understandable in terms of the
historical prestige of Chomsky grammars and dictionary
construction. But it is possible to relax the assumption, without
getting into trouble with ambiguity, as demonstrated in the online
system [1]. Of course, there is no such thing as a free natural
language lunch, and there is a trade off involved. However, the
trade off allows one to specify and run quite sophisticated business
tasks [3,4] in open vocabulary, executable English.

Perhaps the best way of approaching the "semantic" work facing
ontologists and others, is to start from the task and see what is
helpful in doing it, rather than to start from intellectual islands
built for other purposes hoping they, and only they, will suffice.

Cheers, -- Adrian

[1] Internet Business Logic (R)
A Wiki for Executable Open Vocabulary English
Online at www.reengineeringllc.com Shared use is free

Following is an edited version of a note I sent to somecolleagues. Peter suggested that I send it to the group.

John Sowa

-------- Original Message --------

Attached is a .gif file, which may be useful to clarify the
relationships among various languages we have been discussing:

1. At the top are the human interfaces: controlled natural languages in green and graphics in yellow. I have not mentioned any specific controlled NL, but there are many
implementations, such as CLCE, ACE, and the Executable English that Adrian Walker has been discussing. In the middle are FLIPP diagrams (Format for Logical Information Planning and Presentation). FLIPP diagrams combine graphics
with NLs, but the NLs could be replaced with controlled NLs. Therefore, the green and yellow are blended to indicate a combination. For an example of the FLIPP techniques, see

2. In the middle is Common Logic, which is the ISO standard. That is the hard interface to and from which all other
languages are translated. Three dialects of Common Logic have been standardized by ISO, and they are shown in blue: CGIF (Conceptual Graph Interchange Format), CLIF (Common Logic Interchange Format), and XCL (an XML notation for
Common Logic).

3. At the bottom are logic-based languages used as machine interfaces. This is an open-ended list, but I included several as illustrations: SQL for relational databases,
OCL for the UML Object Constraint Language, Prolog, Datalog, and the Semantic Web languages RDF(S), OWL, and RuleML.

At present, we have implemented the translators to support threelanguages and the mappings between them: Common Logic Controlled
English (CLCE), CGIF, and Prolog. We intend to implement othersas we get the time and funding to do so, but these three are theones we are primarily using right now. We are also supportingthe IKL extensions to Common Logic, which include metalanguage:

> An interesting aspect of your diagram is what it tells us about > human cognition. What is it that makes the human interfaces
> more readable by humans than the machine interfaces?

That is a good question, which involves many issues of linguistics,psychology, and human factors. We still do not have sufficientguidelines for determining what really makes languages and graphics
readable and intelligible.

For some aspects, such as the type hierarchy, graphics have beenused as a supplement to logic since the Tree of Porphyry in the3rd century AD. But it's not clear how to increase the expressive
power of the graphics without substantially reducing readability.One reason why I like the FLIPP diagrams is that they take advantageof the graphics for showing the logical structure and the NLs fortheir use of familiar vocabulary and syntax.

The UML approach of having a half-dozen different kinds of diagramsis also interesting. Each one expresses a different view of certainaspects of the logic and ontology. It would be interesting toexplore systematic ways of highlighting, zooming, and focusing on
various aspects.

> The human interfaces are "controlled" interfaces, capable of > being unambiguously mapped to strict logic. So they lack some > of the richness, ambiguity, and color of unrestricted natural
> languages. But they are undeniably easier to read than the > machine interface languages. I imagine the reasons for this > difference have already been the subject of some serious study > in the literature, but I suspect that there is room for more.

Unfortunately, the people who address human factors and thosewho focus on the expressive power of the logic are almostcompletely disjoint. Furthermore, the journals, academicdepartments, and funding agencies are partitioned in ways that
have the effect of keeping the skills disjoint. Professorswho work on the boundary between two disciplines are oftenignored by the promotion and tenure committees in both.

> I suspect that the distinction between human interfaces
> and machine interfaces bears at least some relationship > to the distinction between good technical writing and bad > technical writing in natural language.

I agree. In fact, my hope for the combination of CLCE with
graphics is to approach the style of a well-written, freshmanlevel textbook in math or science. CLCE would express theprecise definitions and axioms, the graphics tools wouldpresent the illustrations, and the comments would provide
some of the background and motivation.

But there are many issues to be explored -- in human factors,computability, and logical expressivity.