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.


Reply via email to