[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Re: [topicmaps-comment] OpenCyc and Topic Maps: Progress Report
W. Eliot Kimber wrote: > I spent the weekend coming up to speed--I think I now have a basic idea > of how Cyc represents knowledge--I can at least create simple constants, > associations, and rules and then ask simple questions about them and get > the expected answer. Eliot, in reading through your message you come to many of the same conclusions as I did in my earlier Cyc parser (which to those unaware resulted in a posting on a now defunct web site of a set of PSIs for each of the Cyc upper ontology constants). Detailed responses follow. > Unless I've missed something, there is clearly a direct mapping between > Cyc's knowledge representation and topics, in particular: > > - Cyc "constants" correspond to topics, that is, reified things about > which assertions can be made. Topic characteristics become other > constants to which the base constant is associated. Yes, I feel they are almost identical concepts. Additionally, it should be possible to make statements about Cyc assertions as well, i.e., since each assertion in Cyc is (or can be) reified as a constant this would in any conversion also become a PSI, so this doesn't seem to be an issue. > - Cyc "assertions" correspond to topic associations, to the degree that > they relate topics together. Any topic map association can be > completely modeled as one or more Cyc assertions, including roles and > constraints on members. Agreed, though I'm less clear on roles and constraints. My Ceryle parser parses most of the Cyc grammar into an XTM document, then passes that to TouchGraph for visualization. I'm for the most part happy with the result. The one issue I wanted to figure out a better solution to (which I'm not certain is better in Cyc either) is how to visualize directionality in the graph. But since directionality is not an obvious product of any arbitrary assertion/association (and is bound by the semantics of each relation in an almost intuitive way), I preferred to "leave that until later." > - Cyc's "isa" and "genls" (generalizes) assertions directly correspond > to the subclass and instance-of associations in topic maps (no > surprise). Yes, I wrote specific methods for each since they were so common. > - Cyc's concept of "microtheory" (bounded context) seems to correspond > to scope (although it's not yet 100% clear to me that scope exactly > matches this concept or is the best way to represent it). In particular, > microtheories scope assertions, which can only be represented indirectly > in topic maps by setting the scope on association role members. It > probably comes to the same thing but the mapping might not always be > obvious to the casual observer. This was very much a grey area to me. Not only (at the time) was I unclear on the definition of a microtheory, but absent a formal model of topic maps it was difficult to see how this should be mapped. >>From this it seems clear that there should be a direct mapping from > topics and associations to constants and assertions within Cyc, although > I'm sure there will be some subtle problems of exactly how to map > certain topic map constructs. This would then enable Cyc to reason about > the topic map and, possibly, further analyse occurrences of topics in > the input topic map in order to learn more (but I have no idea how much > of the Cyc natural language features are exposed in the OpenCyc > project). This is still a mystery to me, and will remain so until someone on that project publishes the XML generator tools. > In addition, Cyc constants would make very good public subjects. In any > case, fully useful import of topics into Cyc would require mapping the > subjects in the topic map to the corresponding subjects in Cyc. Also, > Cyc appears to have a pretty robust mechanism for talking about the > temporal nature of things, so it might offer a ready solution to the > problem of temporal scoping. Yes, I had published the list of PSIs for the Cyc upper ontology. Once I have access to the ontology again in XML I'll do this once more. In the interim I've developed my own, much more limitied in scope ontology to model what authors might want (since my project is focused on authoring and not all of "common sense" as is Cyc). For temporality I've opted to develop an entirely different markup which I call the XML Sequence Map Language (XSM). It is informed by ideas you and I have talked about, as well as HyTime (no surprise). A month or so ago I began investigating outlining markup languages but decided XSM was more the direction I wanted to go, essentially a markup language designed to work alongside XTM, with XTM mapping things by topic, XSM temporally along n-dimensions. I don't think this can be done sensibly within XTM, though I'd be happy to entertain any ideas you have. I'd considered establishing PSIs for some basic temporal relations, etc. but the XTM markup really didn't suit. I'm not sure the topic map semantics really do either. > It's also clear that even the subset of the Cyc KB released in OpenCyc > reflects a huge body of very deep thought about how to classify and > relate things--the range of subtle distinctions of association and > typing within Cyc is quite astounding. This thinking could certainly be > of great value to anyone developing a complex topic map that models more > than some very narrow subject domain. Yes, though it also occurs to me that after working on my own ontologies that there at times must be made an almost arbitrary set of decisions on exactly how any concept or relation is defined and modeled, i.e., that human language is slippery enough that no ontology is really on very solid ground, other than its own definitions. I'm sure that many in the CG community would agree. You draw a line in the sand and define things from there. Nothing comes to you a priori. > Likewise, it should be possible to export or expose some or all of a Cyc > database as a topic map, although I'm not entirely sure what value that > would have in practice (it might have value for interchange of knowledge > bases between disparate expert systems, but I can't really see using a > generic topic map engine in any useful way on such a topic map when the > Cyc engine is already optimized for that sort of processing). As the Cyc > ontology defines everything within the KB all the way up to "thing", it > must be possible to generate a topic map that captures all the > information in the KB without loss. But I find that prospect much less > interesting than the prospect of importing topic maps into Cyc in order > to then use Cyc to reason about the topic map. Hmm. I see your point. I was initially only interested in Cyc only as a source of PSIs for a brand-new, almost semantically empty landscape, not for the possible inferencing it might provide. I still to a large degree see Cyc's value in the topic map world that way. I think it'd be a really interesting project to develop an inferencing engine based on a topic map model, but it's not my project. As you say, it's probably a lot more sensible to "simply" import topic maps into the existing OpenCyc system, and since both OpenCyc and most topic map engines are in Java, this is an area ripe for exploration. Again, not *my* project though. > My next task is to experiment with importing topic maps into OpenCyc. > Given that OpenCyc provides a Java API it should be relatively easy to > integrate any Java-based topic map engine with it (e.g., TM4J). The real > challenge will be mapping the input topic map's public subjects to > existing Cyc constants and figuring out what the mapping conventions > should be. oops. I guess we're thinking alike -- should have read ahead. Yes, this sounds reasonable. I look forward to hearing what you come up with. Perhaps I'll be able to add inferencing to my project after all... The one thing I never tackled was Cyc variables, and how to handle slots (or arguments/characteristics/parameters). If you figure out a decent way to manage that, I'd be most appreciative. Murray ...................................................................... Murray Altheim <http://kmi.open.ac.uk/people/murray/> Knowledge Media Institute The Open University, Milton Keynes, Bucks, MK7 6AA, UK If it wants to be a global power and a player in the Atlantic alliance, Europe has to get back into the business of making war. -- Newsweek Magazine, June 3, 2002
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC