Re: Semantic Layers (Was: Interpretation of RDF reification)

Hi John --

As you say, you and I generally agree.

However, you seem to assume in your note below that

(a)  any use of English will be via a controlled vocabulary, and

(b)  languages and GUIs for people who use an application are such
       that those people cannot *change* the application, and cannot 
*write* new applications

Of course, that's the conventional wisdom.  However, spreadsheets are a 
counter example to (b).

So, sometimes there is progress by changing current assumptions.

To this end, there is an online system [1] that supports the writing and 
running of applications in *open* vocabulary English.  The NLP aspect of 
the implementation is quite lightweight, but the unusual approach appears 
to be useful in practice.

One way to think about this is that the system asks authors to write 
accurate detailed comments about what an application should do.  Then, 
rather than handing the comments over to be programmed in, say, Java, the 
next step is for the system to compute the application directly using the 

As mentioned, there's an online system that does this.   The addition of 
this kind of lightweight natural language layer on top of logic, and on top 
of Common Logic, may be a good idea also.  What do you think?

                                Cheers,   -- Adrian

[1] Internet Business Logic (R)
Executable open vocabulary English
Online at
Shared use is free

Adrian Walker
PO Box 1412
CT 06011-1412 USA

Phone: USA 860 583 9677
Cell:    USA  860 830 2085
Fax:    USA  860 314 1029

At 11:24 PM 3/26/2006 -0800, you wrote:
>I certainly agree:
> > Good to see you pointing out that, for serious knowledge use,
> > we need to additional semantic layers and tools above RDF and OWL.
> > I agree...
> >
> > However, we may need to push the envelope even further than logic,
> > or Common Logic.  At some point, the real world meaning of things
> > like... has to be made clear to nontechnical human beings.
>We need multiple levels of languages:
>  1. Languages that are designed for professional programmers and
>     system developers, who are willing and able to dig deep into
>     the inner workings of the computer system.
>  2. Languages that are designed for specialists in some application
>     area, who are not computer professionals, but who are willing
>     and able to spend some time learning tools that they use in
>     their daily work.
>  3. Languages and GUIs for people who use an application and have
>     no time or desire to learn anybody else's special conventions.
>It's important to recognize that all of us, even those who spend
>a great deal of time using languages of Categories #1 or #2, have
>no desire to learn anybody else's languages and conventions when
>we're making a plane reservation or paying our bills online.  So
>Category #3 will be the most widely used by 99.44% of the population.
>I consider Common Logic, Prolog, Conceptual Graphs, Description Logics,
>and many other such things to belong to category #1.  For level #2,
>I would propose something like a version of controlled English:
>Controlled English can be read by anybody who knows English, but
>it can only be written by people who have some training, such as
>specialists (Category #2) who use it in their daily job.
>My major complaint about SQL is that it was designed to be "human
>factored" -- but the designers didn't have a clue about what kinds
>of humans would be using it for what purpose.  For Category #1, a
>language like Prolog (or Quel which Stonebreaker designed for Ingres)
>would be much more convenient than SQL.  And for Category #2, a
>controlled English language would be much more suitable.  But none
>of those languages -- SQL, Prolog, Quel, or even controlled English
>-- is acceptable for Category #3.
>My complaint about RDF and OWL is that they are terrible languages
>for all three categories of humans -- #1, #2, and #3 -- and they
>are also horribly inefficient for computers.  They do not have
>a target audience.
>Moral of the story:  Human factors can only be evaluated in terms
>of specific applications and the kinds of users who are expected
>to use those applications.

Received on Monday, 27 March 2006 13:00:50 UTC