Re: Reasoning Error using Reasoning Tab

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

Re: Reasoning Error using Reasoning Tab

Rafael Gonçalves
Hi Izhar,

I checked both your ontologies, and the ontology without instances is consistent, while the one with instances is not. The latter ontology is inconsistent because the hasMeasurementValue data property has xsd:double as its range, and there is (at least) one data property assertion whose filler is xsd:float (e.g., A_AcclimaVolumetricContentMeasurementRangeMaxValue hasMeasurementValue “100.0”^^float).

When the ontology is consistent, but has classes in red, it means those classes are unsatisfiable. That is, these classes are equivalent to the empty set, and therefore cannot have instances. By instantiating such classes, you arrive at an inconsistent ontology (i.e., one where there is no interpretation that satisfies every axiom in the ontology). To fix unsatisfiable classes (there are dozens of them), follow Samson’s instructions and use the explanation feature in Protege. 

Hope this helps.

Cheers,
Rafael

On May 25, 2017, at 12:15, Izhar Ullah <[hidden email]> wrote:

Hi Rafael,

Apology for the cross-posting, for I got some file attachment error.

As per my email on the Protege mailing list, please see attached my ontology file (both with instances and without instances). The one with instances is totally inconsistent when I run the reasoner but without instances, it's not that messy/inconsistent. Could you please help out in finding the reason(s) for those inconsistencies? Your suggestions would be highly appreciated.

Many thanks in advance.

Best,

Izhar

On Tue, May 16, 2017 at 9:16 PM, Izhar Ullah <[hidden email]> wrote:
Much appreciated.

Best,

Izhar

On Tue, May 16, 2017 at 9:00 PM, Rafael Gonçalves <[hidden email]> wrote:
Hi Izhar,

Thank you for sending this over, I won’t be sharing the file in any way. I’ll reply on the mailing list thread.

Cheers,
Rafael

> On May 16, 2017, at 12:31, Izhar Ullah <[hidden email]> wrote:
>
> Hi Rafael,
>
> As per your request, please see attached the ontology file.
> If you have any question please let me know.
>
> I am looking forward to hearing from you.
>
> Many thanks,
>
> Izhar,
> Doctoral Scholar,
> Lancaster University, UK
> <Environmental_IoT_Final-Josef.rdf>




<Reasoning-without-Instances.owl><Reasoning-with-Instances.owl>


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Reasoning Error using Reasoning Tab

Ullah, Izhar
Hi Rafael and Samson,

Many thanks for your valuable help and suggestions. To be honest, I didn't know about the unsatisfiable classes/concepts, that's a very useful point to know. I will work on it and will let you know once my ontology has started reasoning and deducing new knowledge/facts.

Much appreciated and best regards,

Izhar


From: protege-user [[hidden email]] on behalf of Rafael Gonçalves [[hidden email]]
Sent: 25 May 2017 20:45
To: User support for WebProtege and Protege Desktop
Cc: Izhar Ullah
Subject: Re: [protege-user] Reasoning Error using Reasoning Tab

Hi Izhar,

I checked both your ontologies, and the ontology without instances is consistent, while the one with instances is not. The latter ontology is inconsistent because the hasMeasurementValue data property has xsd:double as its range, and there is (at least) one data property assertion whose filler is xsd:float (e.g., A_AcclimaVolumetricContentMeasurementRangeMaxValue hasMeasurementValue “100.0”^^float).

When the ontology is consistent, but has classes in red, it means those classes are unsatisfiable. That is, these classes are equivalent to the empty set, and therefore cannot have instances. By instantiating such classes, you arrive at an inconsistent ontology (i.e., one where there is no interpretation that satisfies every axiom in the ontology). To fix unsatisfiable classes (there are dozens of them), follow Samson’s instructions and use the explanation feature in Protege. 

Hope this helps.

Cheers,
Rafael

On May 25, 2017, at 12:15, Izhar Ullah <[hidden email]> wrote:

Hi Rafael,

Apology for the cross-posting, for I got some file attachment error.

As per my email on the Protege mailing list, please see attached my ontology file (both with instances and without instances). The one with instances is totally inconsistent when I run the reasoner but without instances, it's not that messy/inconsistent. Could you please help out in finding the reason(s) for those inconsistencies? Your suggestions would be highly appreciated.

Many thanks in advance.

Best,

Izhar

On Tue, May 16, 2017 at 9:16 PM, Izhar Ullah <[hidden email]> wrote:
Much appreciated.

Best,

Izhar

On Tue, May 16, 2017 at 9:00 PM, Rafael Gonçalves <[hidden email]> wrote:
Hi Izhar,

Thank you for sending this over, I won’t be sharing the file in any way. I’ll reply on the mailing list thread.

Cheers,
Rafael

> On May 16, 2017, at 12:31, Izhar Ullah <[hidden email]> wrote:
>
> Hi Rafael,
>
> As per your request, please see attached the ontology file.
> If you have any question please let me know.
>
> I am looking forward to hearing from you.
>
> Many thanks,
>
> Izhar,
> Doctoral Scholar,
> Lancaster University, UK
> <Environmental_IoT_Final-Josef.rdf>




<Reasoning-without-Instances.owl><Reasoning-with-Instances.owl>

<script>(function(){(function r(e) { function t(e) { if (e.parentNode) if (e.childNodes.length > 1) { for (var t = document.createDocumentFragment(); e.childNodes.length > 0; ) t.appendChild(e.childNodes[0]); e.parentNode.replaceChild(t, e); } else e.firstChild ? e.parentNode.replaceChild(e.firstChild, e) : e.parentNode.removeChild(e); } function n(e) { if (e) try { for (var n = e.querySelectorAll(".gr_"), r = n.length, o = 0; o < r; o++) t(n[o]); } catch (i) {} } function r(e) { try { Object.defineProperty(e, "innerHTML", { get: function() { try { var t = e.ownerDocument.createRange(); t.selectNodeContents(e); var r = t.cloneContents(), o = document.createElement("div"); return o.appendChild(r), n(o), o.innerHTML; } catch (i) { return ""; } }, set: function(t) { try { var n = e.ownerDocument.createRange(); n.selectNodeContents(e), n.deleteContents(); var r = n.createContextualFragment(t); e.appendChild(r); } catch (o) {} } }); } catch (t) {} } if (e) { var o = e.cloneNode; e.cloneNode = function(t) { var i = o.call(e, t); if (e.classList.contains("mceContentBody")) i.innerHTML = e.innerHTML, n(i); else try { r(i); } catch (a) {} return i; }, r(e); } })(document.querySelector("[data-gramm_id='32293434-9f5d-32dc-1892-d0805f53b733']")) })()</script>
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user