- From: doug foxvog <doug.foxvog@deri.org>
- Date: Thu, 25 Aug 2005 11:40:53 +0100
- To: public-rule-workshop-discuss@w3.org
Sandro Hawke <sandro@w3.org> wrote: > We're talking about one language which is a superset of many of the > common languages, so it can be used as an interlingua. You translate > your ruleset into it, and if you can translate it back out into > another vendor's language (because it has enough features), your rules > will mean the same thing. I'm surprised the mission statement > isn't clear on this. > Perhaps the title should be changed to "Rule Interchange Format (RIF) > Working Group". The draft does say: > The Working Group is to specify an interlingua, a common format > into which existing rule languages can be mapped. This > interlingua may itself be considered a rule language, and may be > supported natively by some rule systems in the future, but > interlingua features are more important than features which make > the language itself easy to use directly. > but perhaps that's still not clear enough. A language that is able to satisfy these conditions, but is of a different format (LISP syntax) and has a slow inference engine (because it is a higher-order language) is CycL. Some features of CycL: * Rules are supported with #$forAll, #$thereExists, #$implies * #$not is the logical NOT * For NAF CycL uses #$unknownSentence. * All sentences and queries are situated in explicit contexts (called Microtheories). Thus NAF reasoning uses a situated NAF. * Argument contraints are expressable and enforced + argument as instance of class: #$argIsa + argument as subclass of class: #$argGenls + inter-argument constraints are also expressible * #$equals is used to express equality * CycL is Open-world by default, but can express closed-world reasoning: + #$completeCollectionExtent -- class membership is closed-world + #$completelyAssertedCollection -- class closed w/o reasoning + #$completeExtentDecidable -- predicate extent is closed-world + #$completeExtentAsserted -- predicate is closed-world w/o reasoning * #$synonymousExternalConcept maps between external and internal terms * classes of classes can be expressed * classes of predicates can be expressed * functions can be expressed * modality can be expressed This language could be used as an interlingua if translators were written for the various Semantic Web languages. Consistency checks would automatically be made if an ontology converted into CycL were fed into a CycL system (as opposed to merely transliterating into and out of this language as a textual exercise). Versions of Cyc are feely available for public use. OpenCyc (for the general public) and ResearchCyc (for academic,... research) provide significant sections of the Cyc concepts and knowledge base as well as providing the language. An issue that would arise if a converted ontology were to be loaded into Cyc is that Cyc requires terms to be defined before they are used (in order that argument constraints be met). Translators must take care of such issues ========================================================== douglas foxvog doug.foxvog@deri.org +353 (91) 495 150 Digital Enterprise Research Institute (DERI) National University of Ireland, Galway Galway, Ireland http://www.deri.ie ==========================================================
Received on Thursday, 25 August 2005 10:41:01 UTC