Am 07.01.2010 um 16:41 schrieb Scott Henninger: > Magnus; I'm a little unclear on exactly where this happens. When you > say "I want to add this prop to a class…" what sequence of actions are > you taking? Are you adding a value to the range of a property?
Okay, the long story: Method 1) The property "matches" is of the type rdf:Property with domain and range rdfs:Class. It is defined in the LOCAL ontology. I am adding a property row for the property "matches" to an existing class A, using the "Class Form". That class itself is an imported one, i.e. it is living in an IMPORTED ontology. The area "Other Properties" shows my property "matches" without any objects (=targets). I now click the triangle next to the prop name and choose "Add empty row". In the empty field I type the first letters of the class name I want to use as object of the prop. Then I hit ctrl+space to get a completion and select one of the offered classes. The class B I select is also imported. THIS does not work, I get the error message "Class or (non-annotation) property name expected", which is strange because the selected name indeed *is* a class name. Method 2) Same as in method 1),, the first two paragraphs. Then I click "Add existing...". In the opening dialog I look for a class (either by navigating to it or by searching with the use of the text field). I click on OK when I find the wanted class B (which is the exactly same one as in method 1) and the class is added as a property object without any problems. THIS is working. I am able to save the ontology without problems. > > I think the "inconsistencies" you are experiencing are actually > features designed to support OWL syntax. The message "Class or (non- > annotation) property name expected" means that you are trying to add a > value that is not allowed in OWL syntax. As descripted above, in this case (invalid selection of a class) both methods should give me the error message. > But your description states that you are adding a class and that the > difference is whether the class is imported or locally defined. I > wasn't able to find any place where this behavior is different for > local vs. imported resources. So a more precise description of where > this occurs will be necessary. Local vs imported classes: Method 1 from above *does* work, if class B (the property's object) is local. I checked this out some minutes ago with the same ontology. Since domain/range of my property are rdfs:Class, I could use *any* class to test this. The whole thing would be not that much of a problem if method 1 were not so much faster ... > -- Scott > > On Jan 7, 7:43 am, grindcrank <[email protected]> wrote: >> I have a property "matches" between classes. When I want to add this >> prop to a class with an existing target class ("Add existing ..."), >> the following happens: >> >> Usually I try to find the target class using the CTRL+SPACE >> autocompletion. Imported classes are found by this way but the form >> field keeps having a red frame and the error message "Class or (non- >> annotation) property name expected" shows in the status bar. >> >> When I look up the target class using the class navigation, everything >> works out fine. When I add a not imported taregt class (i.e. one that >> is in my actual ontology) using the method in the above paragraph, >> everything works out fine. >> >> This GUI behaviour seem quite inconsistent to me. Has anyone noticed >> the same and maybe can offer a workaround? >> >> Thanks, >> >> Magnus Niemann -- Magnus Niemann <[email protected]> Weblog: http://grindblog.de | Fotos: http://www.flickr.com/photos/grindcrank/
-- You received this message because you are subscribed to the Google Groups "TopBraid Composer Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/topbraid-composer-users?hl=en.
