[protege-owl] Illegal OWL file causes infinite loading screen

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[protege-owl] Illegal OWL file causes infinite loading screen

Jochem Liem
Dear Protege Team,

I was trying to find out if treating an instance as a class was really
invalid in OWL Full by indicating Ainstance was a superclass of B [1]. I
made an error causing the OWL file to become more invalid than I
intended. I forgot the namespace for the individual Ainstance, causing
Protege to give a permanent loading screen with a running bar.
Furthermore, the following exception is thrown:

[ProtegeOWLParser] Warning: com.hp.hpl.jena.rdf.arp.ParseException:
{W104} Element node must be qualified.
[ProtegeOWLParser] Completed triple loading after 12 ms
Exception in thread "Thread-2" java.lang.RuntimeException:
java.lang.IllegalArgumentException: Duplicate frame name: A

It is impossible to close Protege afterwards.
I'm using Protege 3.2 build 241.

[1] http://staff.science.uva.nl/~jliem/ontologies/temp/test2.owl

Best regards,
Jochem

-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html

Reply | Threaded
Open this post in threaded view
|

[protege-owl] Re: Illegal OWL file causes infinite loading screen

Rinke Hoekstra-3
Hoi Jochem,

According to the OWL Species Validator, your file is perfectly sound OWL
Full. Also, forgetting a namespace should not pose a problem since all
unspecified namespaces default to the xml:base of your file (in your
case the URL of your ontology).

Looks to me like a bug in the Jena RDF parser (ARP).

-Rinke

Exception:
[ProtegeOWLParser] Warning: com.hp.hpl.jena.rdf.arp.ParseException:
{W107} Bad U
RI <A> in qname: No scheme found in URI 'A'
[ProtegeOWLParser] Completed triple loading after 16 ms
Exception in thread "Thread-2" java.lang.RuntimeException:
java.lang.IllegalArgu
mentException: Duplicate frame name: A
         at
edu.stanford.smi.protegex.owl.ui.ProgressDisplayDialog$2.run(Progress
DisplayDialog.java:116)
         at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: Duplicate frame name: A
         at
edu.stanford.smi.protege.model.framestore.SimpleFrameStore.setFrameNa
me(Unknown Source)
         at
edu.stanford.smi.protege.model.framestore.EventDispatchFrameStore.set
FrameName(Unknown Source)
         at
edu.stanford.smi.protege.model.framestore.ArgumentCheckingFrameStore.
setFrameName(Unknown Source)
         at
edu.stanford.smi.protege.model.framestore.ChangeMonitorFrameStore.set
FrameName(Unknown Source)
         at
edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
ame(Unknown Source)
         at
edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
ame(Unknown Source)
         at
edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
ame(Unknown Source)
         at
edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.replaceTem
poraryNames(ProtegeOWLParser.java:609)
         at
edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.replaceTem
poraryNames(ProtegeOWLParser.java:552)
         at
edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.access$100
0(ProtegeOWLParser.java:42)
         at
edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser$3.runTask(
ProtegeOWLParser.java:257)
         at
edu.stanford.smi.protegex.owl.ui.ProgressDisplayDialog$2.run(Progress
DisplayDialog.java:112)
         ... 1 more



Jochem Liem wrote:

> Dear Protege Team,
>
> I was trying to find out if treating an instance as a class was really
> invalid in OWL Full by indicating Ainstance was a superclass of B [1]. I
> made an error causing the OWL file to become more invalid than I
> intended. I forgot the namespace for the individual Ainstance, causing
> Protege to give a permanent loading screen with a running bar.
> Furthermore, the following exception is thrown:
>
> [ProtegeOWLParser] Warning: com.hp.hpl.jena.rdf.arp.ParseException:
> {W104} Element node must be qualified.
> [ProtegeOWLParser] Completed triple loading after 12 ms
> Exception in thread "Thread-2" java.lang.RuntimeException:
> java.lang.IllegalArgumentException: Duplicate frame name: A
>
> It is impossible to close Protege afterwards.
> I'm using Protege 3.2 build 241.
>
> [1] http://staff.science.uva.nl/~jliem/ontologies/temp/test2.owl
>
> Best regards,
> Jochem
>
> -------------------------------------------------------------------------
> To unsubscribe go to http://protege.stanford.edu/community/subscribe.html
>
>


--
--------------------------------------
Rinke Hoekstra         [hidden email]
T: +31-20-5253499    F: +31-20-5253495
Leibniz Center for Law,    Law Faculty
University of Amsterdam,   PO Box 1030
1000 BA  Amsterdam,    The Netherlands
--------------------------------------

-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html

Reply | Threaded
Open this post in threaded view
|

[protege-owl] Re: Illegal OWL file causes infinite loading screen

Jochem Liem
Hoi Rinke,

Thanks for your feedback (again). :)

I actually created two OWL files, one specifying the namespace [1] and
another in which I forgot [2]. I tested the OWL files using both the BBN
as the Wonderweb validator.

Test1:
BBN gives a Range Type Mismatch warning, which was expected since I was
using an instance as the target of rdfs:subClassOf. Wonderweb indicated
the file was valid OWL Full.

Test 2:
BBN gives a Parser Error (among other warnings), while Wonderweb again
indicates it's valid OWL Full. It's not strange BBN gives an error as it
also uses Jena.

I would think both files should both be invalid OWL Full, since an
instance is used as a class. The other way around is valid. "OWL Full
also allows classes to be treated as individuals." [3]

Don't warnings in BBN indicate that the ontology is invalid? Or do
warnings (like Range Type) specify that the ontology is "merely"
inconsistent?


Best regards,
Jochem

[1] http://www.science.uva.nl/~jliem/ontologies/temp/test.owl
[2] http://www.science.uva.nl/~jliem/ontologies/temp/test2.owl
[3] http://www.w3.org/TR/owl-ref/#OWLFull

Rinke Hoekstra wrote:

> Hoi Jochem,
>
> According to the OWL Species Validator, your file is perfectly sound OWL
> Full. Also, forgetting a namespace should not pose a problem since all
> unspecified namespaces default to the xml:base of your file (in your
> case the URL of your ontology).
>
> Looks to me like a bug in the Jena RDF parser (ARP).
>
> -Rinke
>
> Exception:
> [ProtegeOWLParser] Warning: com.hp.hpl.jena.rdf.arp.ParseException:
> {W107} Bad U
> RI <A> in qname: No scheme found in URI 'A'
> [ProtegeOWLParser] Completed triple loading after 16 ms
> Exception in thread "Thread-2" java.lang.RuntimeException:
> java.lang.IllegalArgu
> mentException: Duplicate frame name: A
>         at
> edu.stanford.smi.protegex.owl.ui.ProgressDisplayDialog$2.run(Progress
> DisplayDialog.java:116)
>         at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.IllegalArgumentException: Duplicate frame name: A
>         at
> edu.stanford.smi.protege.model.framestore.SimpleFrameStore.setFrameNa
> me(Unknown Source)
>         at
> edu.stanford.smi.protege.model.framestore.EventDispatchFrameStore.set
> FrameName(Unknown Source)
>         at
> edu.stanford.smi.protege.model.framestore.ArgumentCheckingFrameStore.
> setFrameName(Unknown Source)
>         at
> edu.stanford.smi.protege.model.framestore.ChangeMonitorFrameStore.set
> FrameName(Unknown Source)
>         at
> edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
> ame(Unknown Source)
>         at
> edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
> ame(Unknown Source)
>         at
> edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
> ame(Unknown Source)
>         at
> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.replaceTem
> poraryNames(ProtegeOWLParser.java:609)
>         at
> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.replaceTem
> poraryNames(ProtegeOWLParser.java:552)
>         at
> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.access$100
> 0(ProtegeOWLParser.java:42)
>         at
> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser$3.runTask(
> ProtegeOWLParser.java:257)
>         at
> edu.stanford.smi.protegex.owl.ui.ProgressDisplayDialog$2.run(Progress
> DisplayDialog.java:112)
>         ... 1 more
>
>
>
> Jochem Liem wrote:
>
>> Dear Protege Team,
>>
>> I was trying to find out if treating an instance as a class was really
>> invalid in OWL Full by indicating Ainstance was a superclass of B [1].
>> I made an error causing the OWL file to become more invalid than I
>> intended. I forgot the namespace for the individual Ainstance, causing
>> Protege to give a permanent loading screen with a running bar.
>> Furthermore, the following exception is thrown:
>>
>> [ProtegeOWLParser] Warning: com.hp.hpl.jena.rdf.arp.ParseException:
>> {W104} Element node must be qualified.
>> [ProtegeOWLParser] Completed triple loading after 12 ms
>> Exception in thread "Thread-2" java.lang.RuntimeException:
>> java.lang.IllegalArgumentException: Duplicate frame name: A
>>
>> It is impossible to close Protege afterwards.
>> I'm using Protege 3.2 build 241.
>>
>> [1] http://staff.science.uva.nl/~jliem/ontologies/temp/test2.owl
>>
>> Best regards,
>> Jochem
>>
>> -------------------------------------------------------------------------
>> To unsubscribe go to http://protege.stanford.edu/community/subscribe.html
>>
>>
>
>

-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html

Reply | Threaded
Open this post in threaded view
|

[protege-owl] Re: Illegal OWL file causes infinite loading screen

Rinke Hoekstra-3
Hoi Jochem,

I thought using an instance as a class is one of the features of OWL
Full, am I wrong? OWL-DL does not allow for reïfication, but OWL Full does.

Doesn't the quote "OWL Full also allows classes to be treated as
individuals." imply just this? If a class can be treated as an
individual, doesn't that make the individual a class? It all depends on
the order in which the file is parsed ...

Please correct me if I'm wrong ... :)

I think the range type warning is an indication that the property used
for the relation between the individual and the class requires a
different filler (i.e. a class instead of an individual). A property
range violation makes the ontology inconsistent, and as we are talking
about a system property here, invalid with respect to the OWL
specification.

-Rinke

Jochem Liem wrote:

> Hoi Rinke,
>
> Thanks for your feedback (again). :)
>
> I actually created two OWL files, one specifying the namespace [1] and
> another in which I forgot [2]. I tested the OWL files using both the BBN
> as the Wonderweb validator.
>
> Test1:
> BBN gives a Range Type Mismatch warning, which was expected since I was
> using an instance as the target of rdfs:subClassOf. Wonderweb indicated
> the file was valid OWL Full.
>
> Test 2:
> BBN gives a Parser Error (among other warnings), while Wonderweb again
> indicates it's valid OWL Full. It's not strange BBN gives an error as it
> also uses Jena.
>
> I would think both files should both be invalid OWL Full, since an
> instance is used as a class. The other way around is valid. "OWL Full
> also allows classes to be treated as individuals." [3]
>
> Don't warnings in BBN indicate that the ontology is invalid? Or do
> warnings (like Range Type) specify that the ontology is "merely"
> inconsistent?
>
>
> Best regards,
> Jochem
>
> [1] http://www.science.uva.nl/~jliem/ontologies/temp/test.owl
> [2] http://www.science.uva.nl/~jliem/ontologies/temp/test2.owl
> [3] http://www.w3.org/TR/owl-ref/#OWLFull
>
> Rinke Hoekstra wrote:
>> Hoi Jochem,
>>
>> According to the OWL Species Validator, your file is perfectly sound
>> OWL Full. Also, forgetting a namespace should not pose a problem since
>> all unspecified namespaces default to the xml:base of your file (in
>> your case the URL of your ontology).
>>
>> Looks to me like a bug in the Jena RDF parser (ARP).
>>
>> -Rinke
>>
>> Exception:
>> [ProtegeOWLParser] Warning: com.hp.hpl.jena.rdf.arp.ParseException:
>> {W107} Bad U
>> RI <A> in qname: No scheme found in URI 'A'
>> [ProtegeOWLParser] Completed triple loading after 16 ms
>> Exception in thread "Thread-2" java.lang.RuntimeException:
>> java.lang.IllegalArgu
>> mentException: Duplicate frame name: A
>>         at
>> edu.stanford.smi.protegex.owl.ui.ProgressDisplayDialog$2.run(Progress
>> DisplayDialog.java:116)
>>         at java.lang.Thread.run(Unknown Source)
>> Caused by: java.lang.IllegalArgumentException: Duplicate frame name: A
>>         at
>> edu.stanford.smi.protege.model.framestore.SimpleFrameStore.setFrameNa
>> me(Unknown Source)
>>         at
>> edu.stanford.smi.protege.model.framestore.EventDispatchFrameStore.set
>> FrameName(Unknown Source)
>>         at
>> edu.stanford.smi.protege.model.framestore.ArgumentCheckingFrameStore.
>> setFrameName(Unknown Source)
>>         at
>> edu.stanford.smi.protege.model.framestore.ChangeMonitorFrameStore.set
>> FrameName(Unknown Source)
>>         at
>> edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
>> ame(Unknown Source)
>>         at
>> edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
>> ame(Unknown Source)
>>         at
>> edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.setFrameN
>> ame(Unknown Source)
>>         at
>> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.replaceTem
>> poraryNames(ProtegeOWLParser.java:609)
>>         at
>> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.replaceTem
>> poraryNames(ProtegeOWLParser.java:552)
>>         at
>> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.access$100
>> 0(ProtegeOWLParser.java:42)
>>         at
>> edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser$3.runTask(
>> ProtegeOWLParser.java:257)
>>         at
>> edu.stanford.smi.protegex.owl.ui.ProgressDisplayDialog$2.run(Progress
>> DisplayDialog.java:112)
>>         ... 1 more
>>
>>
>>
>> Jochem Liem wrote:
>>
>>> Dear Protege Team,
>>>
>>> I was trying to find out if treating an instance as a class was
>>> really invalid in OWL Full by indicating Ainstance was a superclass
>>> of B [1]. I made an error causing the OWL file to become more invalid
>>> than I intended. I forgot the namespace for the individual Ainstance,
>>> causing Protege to give a permanent loading screen with a running
>>> bar. Furthermore, the following exception is thrown:
>>>
>>> [ProtegeOWLParser] Warning: com.hp.hpl.jena.rdf.arp.ParseException:
>>> {W104} Element node must be qualified.
>>> [ProtegeOWLParser] Completed triple loading after 12 ms
>>> Exception in thread "Thread-2" java.lang.RuntimeException:
>>> java.lang.IllegalArgumentException: Duplicate frame name: A
>>>
>>> It is impossible to close Protege afterwards.
>>> I'm using Protege 3.2 build 241.
>>>
>>> [1] http://staff.science.uva.nl/~jliem/ontologies/temp/test2.owl
>>>
>>> Best regards,
>>> Jochem
>>>
>>> -------------------------------------------------------------------------
>>>
>>> To unsubscribe go to
>>> http://protege.stanford.edu/community/subscribe.html
>>>
>>>
>>
>>
>
> -------------------------------------------------------------------------
> To unsubscribe go to http://protege.stanford.edu/community/subscribe.html
>
>

--
--------------------------------------
Rinke Hoekstra         [hidden email]
T: +31-20-5253499    F: +31-20-5253495
Leibniz Center for Law,    Law Faculty
University of Amsterdam,   PO Box 1030
1000 BA  Amsterdam,    The Netherlands
--------------------------------------

-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html