Chris and Simon,
Your comments are consistent with widely used development tools that have been implemented.
I agree that frame notation can be quite user-friendly. But it's important to have a formal specification of exactly how it is mapped to and from FOL or some subset or superset. Many people throw up their hands when they see predicate calculus notation, but it can be translated to English-like notations with just nine words: AND, OR, NOT, IF, THEN, EITHER, OR, SOME, EVERY. (Actually, you only need three words -- AND, NOT, SOME -- but the other words make the sentences shorter and easier to read.)
However, there are many factors that can make implemented systems more user-friendly. For an overview of the technical issues and examples of various implementations, see
https://jfsowa.com/talks/cnl4ss.pdf
Interesting point: TQA was a very usable English Query language developed by IBM research. They found that it was much easier to translate English to predicate calculus notation and then to SQL than to translate directly to SQL. Formal notations that are good for computers can be good intermediate notations to and from natural languages
In fact, that is an excellent application for LLMs (or more liikely SLMs -- Small Language Models): translate notations and diagrams with good human factors to and from computer systems..
As the cnl4ss slides show, the users loved TQA, but IBM canceled the project because the task of customizing TQA for each application was too difficult for most users and too expensive for IBM. But the current LLM or SLM technology could learn to do the translations very quickly and inexpensively.
I wrote cnl4ss long before LLM/SLM were available. But today that technology would be excellent for tailoring any of the systems discussed in that pdf.
John
From: "Chris Mungall" <cjmungall@lbl.gov>
Frames actually turn out to be quite useful for meta-modeling of OWL ontologies. I think we took the wrong fork in the path in 2006, as you suggest.
A lot of large OWL ontologies turn out to be quite unwieldy and difficult to maintain, leading to a lot of different approaches like templated ontology generation from spreadsheets or design pattern systems. See my keynote from the Ontology Pattern Workshop from 2020:
doi.org/10.5281/zenodo.7655184
LinkML provides a language with frame-like semantics for a modern user base (YAML rather than S-expressions; compiling to Pydantic and JSON-Schema), and a more user-friendly way to incorporate IRIs for all elements.
We have a framework linkml-owl (
https://linkml.io/linkml-owl/) that allows the (historically implicit) metaclasses in an OWL ontology to be modeled in LinkML/frames, with the OWL TBox being "compiled" from LinkML/Frame "instances". This kind of metamodeling is at best very awkward in OWL itself. See the
tutorial.