Science topic

OWL - Science topic

Explore the latest questions and answers in OWL, and find OWL experts.
Questions related to OWL
  • asked a question related to OWL
Question
1 answer
For the completion of RDF graphs. Do you recommend only leaving triples whose expressiveness corresponds only to RDF framework or another more expressive language such as RDF-S or OWL?
Relevant answer
Probably completion in a real world application is a strongly domain depending task. And starting from the fact that I am not aware of the specific knowledge represented here, I would speculate that OWL should be a good option, considering that its deductive capabilities can help in completion, at least by obtaining new items, not explicitly defined, and preserving the consistence, by regularly checking.
Can be argued that complexity will be a concern when rising the graph order/size, but you always can easily move from and OWL to other representation, keeping those nodes/edges obtained by deduction. On the other hand, you could consider apply "light weight ontology languages", but it's always depending on domain.
I suggest to be a bit more descriptive, and, BTW, include other keywords, like graph completion, in order to attract the attention the related to the problem specialists.
  • asked a question related to OWL
Question
1 answer
I totally can imagine what a huge potential semantic technologies such as knowledge graphs, ontologies, SPARQL search and automated reasoning might have in different fields of science and engineering. However, apart from biology and medicine (which I have only very little insight on) they seem to be rarely used (e.g. compared to machine learning methods).
Of course it is likely that I am simply unaware of very useful applications of semantic technologies, therefor this question.
More precisely, I am interested in short descriptions which concrete knowldegebase/tool is used and which problem it helps to solve or which question it helps to answer.
Relevant answer
Answer
Hi Carsten,
not sure about most "convincing" and what it means. In the sense of practicality or impact? It is also a vast domain, including manufacturing, digital twins, biology, medicine (there are many biomedical ontologies for example from bigger taxonomic structures to simple domain ontologies, obo foundry), research knowledge graphs etc.
In my project we build a knowledge base of systems and electronic engineering. Including means of ontology, reasoning, a distributed database, expert system, and constraint propagation.
One of the applications is to make estimations and predictions of future systems, and interactively explore different configurations, structures of systems, solution spaces and properties while simultaneously considering the system context. An example is looking at the effects the tweaking of neural net parameters might have.
This is just one example from what we do.
The state is often ontologies are developed by few specialized experts and often not reused by others, leaving them hanging, or siloed and just used for a personalized project. Then others do not want to share of their own knowledge or do not connect to the other graph. At least this seems to be two aspects of what I can see it.
Knowledge Graph Construction looks promising. I am currently looking into the boundaries and how it might scale. Also considering the quality of the constructed graph regarding the commitment to an ontology or proper semantic structures in general.
But I agree, overall outwardly it looks shy in comparison to the ML hype. There seem to be a couple of reasons which are multi-faceted. It was also discussed on one of the last ISWC conferences.
FYI I recently came across one workshop covering this theme/topic:
Greetings, and have a nice day!
-Frank
  • asked a question related to OWL
Question
1 answer
It has apparently been proven that SQL with cyclic tags is Turing-complete (see [1]).
There are also approaches that convert relational structures to OWL (e.g. [2], [3]).
Can one conclude that one can define any algorithm in OWL or in one of its derivatives?
Does anyone know a paper?
Thanks!
Best,
Felix Grumbach
Relevant answer
Answer
hi,
The W3C Web Ontology Language (OWL) is a Semantic Web language designed to represent rich and complex knowledge about things, groups of things, and relations between things.
OWL Full allows free mixing of OWL with RDF Schema and, like RDF Schema, does not enforce a strict separation of classes, properties, individuals and data values. OWL DL puts constraints on the mixing with RDF and requires disjointness of classes, properties, individuals and data values.
Kindly refer this link:
Best wishes..
  • asked a question related to OWL
Question
12 answers
I know about RDFLib and OWLReady2,
but is there something similar to the (Java) OWL API (involving reasoning) ?
[e.g. I have heard of OWLAPy]
Thanks
Relevant answer
Answer
Check this book :
  • asked a question related to OWL
Question
7 answers
The term "Semantic Web" goes back to at least 1999 and the idea – enable machines to "understand" information they process and enable them to be more useful – is much older. But still we do not have universal expert systems, despite that they would be very advantageous, especially in the context of (interdisciplinary) research and teaching.
My impression is, that from the beginning semantic web technologies was dominated by Java-based tools and libraries and that the situation barely changed until today (2022): E.g. most of practical ontology development/usage seems to happen inside Protegé or by using OWLAPI.
However, in the same time span we have seen a tremendous success of numerical AI (often called "machine learning") technologies and here we see a much greater diversity of involved languages and frameworks. Also, the numerical AI community has grown significantly in the last decade.
I think, to a large part this is, because it is simple to getting started with those technologies and Python (-Interfaces) and Jupyter-Notebook contribute significantly to this. Also, Python greatly simplifies programming (calling a library function and piping results to the next) for people who are not programmers by training such as physicists, engineers etc.
On the other hand getting started with semantic technologies is (in comparison) much harder: E.g. a lot of (seemingly) outdated documentation and the lack of user-friendly tools to achieve quick motivating results must be overcome in this process.
Therefore, so my thesis, having an ecosystem of low-threshold Python-based tools available could help to unleash the vast potential of semantic technologies. It would help to grow the semantics community and to enable more people to contribute contents such as (patches to) domain-ontologies, sophiticated queries and innovative applications e.g. combining Wikidata and SymPy.
Over the past months I collected a number of semantic-related Python projects, see https://github.com/pysemtec/semantic-python-overview. So the good news is: There is something to use and grow. However, the amount of collaboration between those projects seems to be low and something like a semantic-python-community (i.e. people who are interested in both semantic technologies and python programming) is still missing.
Because complaining alone rarely leads to improvement of the situation, I try to spawn such a community, see https://pysemtec.org.
What do you think, can Python help to generate more useful applications of semantic technology, especially in science? What has to happen for this? What are possible counter-arguments?
Relevant answer
Answer
@
J. Rafiee
Thanks for your reply. While "Python is just another language" it has from my experience some advantages which make it favorable in a scientific context:
- possibility of interactive usage (e.g. via Jupyter-Notebooks)
- plenty of science-relevant libraries (numpy, sympy, pytorch, ...)
- comparatively low entrance barrier to getting started (e.g. for undergraduate-students from subjects other than computer science)
To prevent misunderstandings: I do not claim that Python is the perfect language. It definitely has weaknesses (such as execution speed).
My point is: If there were more (and better supported) python-tools for semantic-related tasks available and the existing ones were better known, this would significantly foster the development and the applicability of semantic technologies such as ontologies, reasoners and rule-processors.
I expect the scientific world would benefit from such a development because suitable management of available knowledge is one of its core-challenges and having more and easier tools available to tackle that challenge would consequently result in more and better research results.
Even if we discount for "hype-factor": Machine Learning (or numerical AI) techniques have had tremendous success (both in quality and quantity) in many research disciplines and Python-based libraries and interfaces take a large part of the credit for that. I think a similar development could happen with semantic technologies (aka symbolic AI).
  • asked a question related to OWL
Question
3 answers
Dear Researchers,
We are trying to implement semantic Geospatial data infrastructure and want to use OWL files with Geonetwork.
Any hint on how to link ontology files with Geonetwork will be greatly appreciated.
Thank you very much for your time.
Regards
Ali Madad
Relevant answer
Answer
Dear Researcher,
Please refer to the below links for GeoNetwork Metadata plugins @ OWL Resources. I think this might be helpful.
  • asked a question related to OWL
Question
1 answer
Currently, I want to merge several SKOS files (.rdf files) into one, taking into account mappings between them, made previously.
Is there any tool that allows me to do this?
Relevant answer
Answer
This article using SKOS tool might be helpful, have a look:
Hope this helps.
Kind Regards
Qamar Ul Islam
  • asked a question related to OWL
Question
6 answers
I designed and developed a domain ontology for solid waste collection management and have OWL/RDF version of my OntoWM domain ontology. Can I use quantitative or qualitative method to evaluate the OntoWM domain ontology? any sample thesis or article please.
Regards
Abdul
Relevant answer
Answer
Thank You Luis Ramos I will definitely read this article.
  • asked a question related to OWL
Question
1 answer
There are the following well-known ontology evaluation methods of computational ontology
1. Evaluation by Human
2. Evaluation using ontology-based Application
3. Data-driven evaluation
4. The Gold Standard Evaluation
We designed and developed a domain ontology and implemented it in OWL semantic language. How to evaluate it?
Relevant answer
Answer
Dear Abdul Sattar
You may read the article below, which I think can help you . Please, if still interested, send me an email by RG, since it is in private mode due to copyright.
Sincerely,
Luis
  • asked a question related to OWL
Question
8 answers
In the near future I`ll be teaching a course on ontologies development, using Protégé for OWL 2.0, that is, Protègè 4.x and 5.x.
I know Manchester Tutorial, aka "Pizza Tutorial", and "Family tutorial", from University of Manchester too. Is there any other tutorial or manual to help learning ontology development? I'll appreciate any suggestion.
Relevant answer
Answer
I realize this is an old question but in case you are looking for a resource for future classes, I’ve just completed a new version of the Pizza tutorial. It has everything that the original one did plus it has been updated to be consistent with the latest Protége UI. I also added new sections to address concepts and tools such as IRIs, SPARQL, SWRL, SHACL, etc. The latest version can be found on my blog at: https://www.michaeldebellis.com/post/new-protege-pizza-tutorial
  • asked a question related to OWL
Question
6 answers
I had modeled processes in my ontology like sale, purchase, etc. I want to implement these modeling constructs in OWL or RDF or any other semantic language. Can anybody suggest any language for the proper implementation of the aforementioned process?
Thanks
Relevant answer
Answer
Frank Haferkorn Thanks, I will read it and try it.
  • asked a question related to OWL
Question
1 answer
Dear all,
i have a problem with Protege at the moment. Protege can only write a TURTLE or RDF/XML Sytnax with an OWL part in it, you can not "turn off" the OWL Syntax. My problem is that I'm not very good in coding, so Protege is very usefull with its graphical understanding but i really need the code in RDF/RDFS only
I you have any ideas for me, i'd love to here them.
Thanx you in advance.
Relevant answer
Answer
You may use code generation functionality to generate code. It will generate at least a skeleton of the code which can be converted to a working code by inserting instances.
  • asked a question related to OWL
Question
5 answers
I actually want to enable user to defined rules for his resources on Social Network. These rules will be used by proposed model to share users resources across different social network.
Relevant answer
This link maybe useful for you:
  • asked a question related to OWL
Question
1 answer
Using Protege and SWRL tab, I have the ontology mentioned hereinafter. It is composed of the Class Test and the class Shadow, where Test has three individuals t1, t2, t3. I was trying to define an SWRL rule that creates an individual of Shadow class for each existing individual of Test, the rule is
Test(?x) ^ swrlx:makeOWLThing(?new, ?x) -> Shadow(?new)
QUESTIONS:
1. Only one individual of Shadow, named fred is created, instead of three (corresponding to t1, t2, t3).
2. How to control the naming of the resulting individual which is always named fred?
Here is my ontology:
Declaration(Class(:Shadow))
Declaration(Class(:Test))
Declaration(NamedIndividual(:t1))
Declaration(NamedIndividual(:t2))
Declaration(NamedIndividual(:t3))
############################
# Named Individuals
############################
# Individual: :t1 (:t1)
ClassAssertion(:Test :t1)
# Individual: :t2 (:t2)
ClassAssertion(:Test :t2)
# Individual: :t3 (:t3)
ClassAssertion(:Test :t3)
DLSafeRule(Annotation(<http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean) Annotation(rdfs:comment ""^^xsd:string) Annotation(rdfs:label "S1"^^xsd:string) Body(BuiltInAtom(<http://swrl.stanford.edu/ontologies/built-ins/3.3/swrlx.owl#makeOWLThing> Variable(<new>) Variable(<x>)) ClassAtom(:Test Variable(<x>)))Head(ClassAtom(:Shadow Variable(<new>))))
)
Relevant answer
Answer
Dear Sir,
I have the same problem. Have you solved it yet?, please help me!
Thanks in advance!
  • asked a question related to OWL
Question
4 answers
Hello , 
I wanna get ontology classes but not in a randomly way, I'm looking for a way to get them by their hierarchical levels: I mean showing for each level of the ontology its classes; is it possible knowing that I'm using OWL API.
Thank you 
Relevant answer
Answer
I met the same problem. Could you please tell me do you have the solution now?
  • asked a question related to OWL
Question
6 answers
I am wondering what is the best/easiest to use library or API for OWL parsing in C++ . I did not find many libraries (most of the work is in Java). The ones I found are difficult to install and work with as owlcpp. Can anyone tell me about a library for OWL parsing and writing that is easy to install ? or any one used owlcpp that can help me to install it and use it ??
thank you
Relevant answer
Answer
Dear all,
our team experienced the same issues you mentioned (e.g. lack of availability of easy to use OWL libraries outside Java or Python); we also had strict requirements w.r.t. memory usage and computational resources in general, which are not really the main focus of most available OWL implementations.
Since no tool met our necessities, we recently built our own OWL library, named Cowl: http://sisinflab.poliba.it/swottools/cowl
It is a C API for working with OWL 2 ontologies, which focuses on portability, memory efficiency and performance. It is open source and free to use. Contributions are, of course, welcome!
  • asked a question related to OWL
Question
5 answers
Observing trends in publications related to ontologies and ontology Engineering, they look like most of them, if not all, are application oriented.Even more, when analyzing relatively recent history of this field, one can realize that, for example, during the first decade of the XXI Century, there was an intensive process of looking for new methodologies, and after creation of NeON Methodology, I feel, roughly speaking, nothing more has happened.
Other examples, from the development tools. Several years ago there were several tools competing for the roll of most used editor. Today looks like almost every thing is developed using Protégé. Regarding ontology languages there is a similar "state-of-affairs", even we try to open a debate around that topic last year: https://www.researchgate.net/post/What_are_the_current_trends_in_ontology_languages
What do you think? Hopefully I am wrong...
Relevant answer
Answer
Additional resources are on Youtube; enter barry smith ontology into the search field.
  • asked a question related to OWL
Question
3 answers
same as you know if we retrieve the object property or data property and subclass can do that by joining them in one variable :
Query 1
SELECT ?x ?y
WHERE { ?x rdfs:subClassOf ?y.
?x rdf:type owl:ObjectProperty.
}
the x var it's same object property and subclass of other class
im need to join (all individual "NamedIndividual")
with object property or subclass .
the problem that is ( ?x rdf:type owl:NamedIndividual . )
couldn't use "?x" in any other location same as :
?x rdfs:subClassOf ?y.
Query 2
SELECT ?x ?y
WHERE { ?x rdfs:subClassOf ?y.
?x rdf:type owl:NamedIndividual .
}
Query 3
SELECT ?x ?y
WHERE { ?x rdf:type owl:ObjectProperty.
?x rdf:type owl:NamedIndividual .
}
So: Query 2 and Query 3 cannot be implemented.
how I can solve this problem?
Relevant answer
Answer
If I can remember.
To get x that is a subclass of y.
SELECT ?x ?y
WHERE { ?x rdfs:subClassOf ?y.
?x rdf:type owl:Class. ## or rdfs:Class??
}
To get object property of ?x
SELECT ?x ?y ?p ?q
WHERE { ?x rdfs:subClassOf ?y.
?x ?p ?q.
?p rdf:type owl:ObjectProperty.
}
Sometimes, we don't have to specify every constraint. For example, the above. You don't have to specify ?x rdf:type owl:Class ...because it exists already with subclass property.
I don't know this helps you or not. I don't use SPARQL for many years.
Best wishes.
  • asked a question related to OWL
Question
4 answers
There are several weighting factors which can be included into word embedding models in order to get useful and accurate semantic representations of terms. But when you have small data and synonyms or homonyms in your corpus you generate noisy results. You can leverage this problem by making use of already known semantic information as it is available in ontologies (RDF, OWL) or in terminological databases (TBX, SKOS). I would be interested to read your feedback on the best approaches to include existing semantic information into vector space algorithms (LSA, LDA) and models (GloVe, Word2Vec...) possibly using libraries like Gensim.
  • asked a question related to OWL
Question
4 answers
I'm working with ontologies in owl format. According the W3C guide the properties are classified in DatatypeProperty and ObjectProperty. In addition, the properties can be functional, symmetric and transitive. In a bibliography I found three classifications: DatatypePropertys, ObjectPropertys (which could be symmetric or transitive) and FunctionalPropertys. I need to know if any of these classifications (functional, symmetric, transitive) is independent of the ObjectPropertys or they are classifications for the ObjectPropertys.
Relevant answer
Answer
You should start from stating which OWL You will be using for modelling ontology - 1.0 or 2.X, which will determine language expressivity. In other words I switched from OWL 1.0 to 2.0 due to the fact that I can combine DL and FOL constructs which in many cases saves the day for my solutions reasoning paths. Additionally with DL You cannot infer object properties (connect two individuals with object property using reasoner). If You use OWL 2.0 RL You will be able to extend capabilities of Your constructors which will enrich much of the reasoning capabilities.
  • asked a question related to OWL
Question
6 answers
Hello,
I've been looking for an ontology deployment environment , which is necessary in order to use the ontology in ontology-driven systems.
The environment/system should have the ability of processing owl semantics and reasoning/ at most have reasoning APIs. I know there are a lot of frameworks for rdf / triple stores, such as Apache Jena. As well, graph databases seem to be capable of deploying ontologies at some point. However, most frameworks only seem to be able of handling rdf and do not really cope with the semantics of owl.
Do you have any recommendation on the issue of ontology deplyoment frameworks?
Relevant answer
Answer
Morning Markus,
Jena is a really good framework: often updated, many tools such as TDB (Triple Store) or Fuseki (Endpoint), wide community, ...
In particular, OntModel class in Jena does specify that you work with an Ontology Model (OWL structured) and allows reasoning.
You then need to choose if you want to work with a live server (TDB/Fuseki) coupled with a reasoner or reasoning on temporary OntModel (Ontology API) is enough in your favorite IDE.
About reasoners that are easilly implentable in Jena: Openllet is a good one (https://github.com/Galigator/openllet).
Kind regards,
  • asked a question related to OWL
Question
4 answers
I need to get All direct superclasses of one class from the ontology, and I need just named classes, not those gotten from the equivalent expression with 'AllValuesFrom' restriction. I tried with the code below, it works for some ontologies that I create but others downloaded from the web (people ontology - pizza ontology) it doesn't work.
public void motherclasses_Of_One_class() {
for (OWLClass clss : ontology.getClassesInSignature())
{
if(reasoner.getSuperClasses(clss, true).getFlattened().size()>1) // if the class has more than one mother class
{// System.out.println(" \n ---------------- : \n");
System.out.println("\n class "+clss.getIRI().getFragment()+" has more than one mother classes : \n");
for(OWLClass parent: reasoner.getSuperClasses(clss, true).getFlattened())
System.out.println(parent.getIRI().getFragment());
            }
       }
  }
I tried with this version of code too, the same result as the first version :
NodeSet<OWLClass> superclasses = reasoner.getSuperClasses(clss, true);
for (org.semanticweb.owlapi.reasoner.Node<OWLClass> parentOWLNode: superclasses) {
OWLClassExpression parent = parentOWLNode.getRepresentativeElement();
System.out.println(parent.getClassesInSignature());.out.println(parent.getClassesInSignature());
}
the problem with downloaded ontologies, that it returns wrong superclasses for a class. I check the . OWL file, then the ontology through protégé, I can't find from when the problem comes. Please find below a wrong case to understand more what I mean.
In the example, 'cat_owner' class has just one mother 'person' class. As you can see, pet_owner and cat_liker classes are at the same hierarchical level as 'cat_owner' class, they can never be mothers for 'cat_owner' class, and more than that in the description of 'cat_owner' class there is just one superclass 'person' class... but in the program output I get them as superclass 'person' class... but in the program output I get them as superclasses of 'cat_owner' class when 'person' class is absent form the list. I can't understand why... this is the output: from the list. I can't understand why...
Please if you have any idea that may help, I would be grateful. Thank you
Relevant answer
Answer
Hasna, hi.
The behaviour you are observing is because (guessing from the variable names in your code fragment) you are accessing the ontology through a reasoner. This means that you are getting inferred statements in addition to the explicit statements you see when you edit the ontology file. In your particular example, note these axioms in the People Ontology: Class: people:cat_liker EquivalentTo: people:person and (people:likes some people:cat) ObjectProperty: people:has_pet SubPropertyOf: people:likes Class: people:cat_owner EquivalentTo: people:person and (people:has_pet some people:cat) which force any instance of cat_ower to be by necessity also an instance of cat_liker. In other words, the reasoner can prove that cat_ower is a subclass of cat_liker, so the OWL API also returns this result. Similarly: Class: people:pet_owner EquivalentTo: people:person and (people:has_pet some people:animal) Class: people:cat SubClassOf: people:animal forces any instance of cat_ower to be by necessity also an instance of pet_owner, so pet_owner is also added to the superclasses of cat_owner. If you want to get explicit subClassOf statements only, use the subClassAxiomsForSubClass() property of the OWLOntology object, not a reasoner object. Hope this helps, Stasinos
  • asked a question related to OWL
Question
3 answers
I try to get all 'subclass-of' axioms of an ontology. I tried by using the following statement.
MyOntology.getAxioms(AxiomType.SUBCLASS_OF));
Effectively, it returns the ontology 'subclass-of' axioms, except for the first 'subclass-of' axiom which links OWL:Thing with my first ontology class.
I cannot understand why this link isn't taken into account in that case ?
Please, is there any way to get all 'subclass-of' axioms including those linking OWL:Thing with other classes ?
Relevant answer
Answer
Hi,
There is another issue here: the code that you are using is retrieving only the explicitly asserted subclassOf relations (that's why when you use Protegé to assert them, you can retrieve them). If you want to retrieve the inferred taxonomy, you should use a reasoner, and work with the OWLReasoner instead (or along with) of the OWLOntology. The DL reasoner infers the actual hierarchy that the ontology is modeling, and allows you to navigate through it . 
  • asked a question related to OWL
Question
9 answers
tools Else than D2RQ that uses ontologies in RDF
because we have ontologies in OWL.
Relevant answer
If you want to generate an ontology from a Database and have the ability to store semantics on your data stored in the Database, then ONTOP is your tool. I recommend it.
Best regards.
  • asked a question related to OWL
Question
6 answers
I am an AI developer working on Project ERGON, an AMA program. I am looking into multiagent development and realize that inter-AI/IoT data dialogue requires a translation middleware using a lingua franca.
I have discovered Ontologies and OWL, and would like to use Protégé, but cannot find a basic step-bystep howto use either?
Can you help please?
Relevant answer
Answer
You can start with this video tutorial titled "Simple Protege Introduction". https://www.youtube.com/playlist?list=PLea0WJq13cnAfCC0azrCyquCN_tPelJN1
You can get more detailed information from Protege support page, http://protege.stanford.edu/support.php. There are several documents, and you can start with Ontology Development 101, then WebProtégé User's Guide and also Protégé OWL Tutorial.
  • asked a question related to OWL
Question
4 answers
If you will need some help or assistance in field data obtaining, I can help you.
Relevant answer
Answer
Thanks for the explanation of the situation. It is a shame, because your studies are still actual. On other side, thank you for pooling of various studies about owls ecology on one place. Best wishes.
  • asked a question related to OWL
Question
7 answers
I'm building an ontology and I need to create the same semantic relation (the name of the relation is the same as well as the meaning in the domain) between different classes of elements. For example:
o:ClassA o:hasSemanticRelation xsd:string
o:ClassB o:hasSemanticRelation xsd:string
o:ClassC o:hasSemanticRelation xsd:string
My first approach was to create multiple domains for the property but this actually means the intersection of the concepts which is not correct in the domain. My second approach was to have a super property
owl:Thing o:hasSemanticRelation xsd:string
o:hasSemanticRelationA owl:subPropertyOf o:hasSemanticRelation
o:ClassA o:hasSemanticRelationA xsd:string
Because of the meaning of the hasSemanticRelation I want that every time it is used it can be linked to the same property, i.e., o:hasSemanticRelation
Could anyone give ideas how can I best represent this situation?
Relevant answer
Answer
Have you considered owl:unionOf to define a class extension that contains all individuals of the class descriptions in the list? For example:
o:hasSemanticRelation rdfs:domain [
  a owl:Class ;
  owl:unionOf ( o:ClassA o:ClassB o:ClassC )
] .
Note that owl:unionOf is not part of OWL Lite.
  • asked a question related to OWL
Question
2 answers
Hi,
Is there any tool/software/API that supports and helps to model a fuzzy ontology ? I need to develop a fuzzy ontology, validate the model using a reasoner (probably DLorean) and query.
I tried using Protege fuzzy OWL but due to some inconsistency in Gurobi optimization engine, I am not able to validate my fuzzy ontology. I am wondering if anyone has modeled a fuzzy ontology using a readily available ontology tool?
thanks in advance. 
Relevant answer
Answer
Basically, the selection  depends on what you expect of a fuzzy ontological model and fuzzy reasoning. There are tools (I think referenced in https://www.researchgate.net/publication/260514203_Application_of_Fuzzy_Ontological_Reasoning_in_an_Implementation_of_Medical_Guidelines) that incorporate membership functions into the model and support a number of fuzzy operators.
However, another approach (presented in the mentioned paper) is possible. It consists in using plain OWL and adding datatype property (weight) supporting membership level. However, such approach has a number of consequences:
  • Some axioms should be removed, e,g, classes like Tall and Small should be no longer disjoint
  • To implement fuzzy properties, you should reify them (i.e. replace by an individual with assigned weight)
The paper shows that it is possible to encode Mamdani rules with SWRL and combine Jena and Pellet to implement a FIS. See also attached sildes: https://www.researchgate.net/publication/263083436_SLIDES_-_Application_of_Fuzzy_Ontological_Reasoning_in_an_Implementation_of_Medical_Guidelines
Best regards
  • asked a question related to OWL
Question
2 answers
I'm currently building an OWL Ontology for the manufacturing/automation domain. I have realized that the eCl@ss Catalog contains crucial information in this regard, and it should be reused. The thing is that the OWL eCl@ss is built for the 5.1.4 and the catalog is now in 9.1 version, therefore many information is not included there. Is still a good practice to reuse this ontology?
Relevant answer
Answer
A good question, but I'm not sure how many experts are around in ResearchGate. Maybe there is a mailing list around the OWL eCl@ss effort where more experts are listening.
  • asked a question related to OWL
Question
2 answers
I was using Protege 5 beta 17 platform independent, everything was okay, until I tried to open a very large ontology, then it froze and never responded.
When I open Protege again, it gives the DOT error, for graphvis, and then freezes and never respond.
I tried everything from uninstall/reinstall/different versions of Protege including 5 beta for windows, 4.2 and 4.3, the same problem/reinstalling java the same problem/installing protege with its own java the same problem.
What is the problem/solution?
Thanks
The log says 
INFO Cajun Visualization Plugin Plugin has no plugin.xml resource org.protege.editor.core.ProtegeApplication[FelixDispatchQueue]
INFO OWLAPI-RDF Library Plugin has no plugin.xml resource org.protege.editor.core.ProtegeApplication[FelixDispatchQueue]
INFO Using OWL API version 3.4.2 org.protege.editor.owl.OWLEditorKit[FelixDispatchQueue]
INFO Rebuilding entity indices... org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO ... rebuilt in 4 ms org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO Setting active ontology to OntologyID(OntologyIRI(<http://www.semanticweb.org/hilal/ontologies/2016/2/untitled-ontology-22>)) org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO Rebuilding entity indices... org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO ... rebuilt in 1 ms org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO ... active ontology changed org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO Cannot generate ontology catalog for ontology at http://www.semanticweb.org/hilal/ontologies/2016/2/untitled-ontology-22 org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO Setting active ontology to OntologyID(OntologyIRI(<http://www.semanticweb.org/hilal/ontologies/2016/2/untitled-ontology-22>)) org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO Rebuilding entity indices... org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO ... rebuilt in 1 ms org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
INFO ... active ontology changed org.protege.editor.owl.model.OWLModelManagerImpl[FelixDispatchQueue]
Relevant answer
Answer
what is the depth and complexity of your ontology. is it a high level ontology or just few say 5 to 4 classes in it? 
  • asked a question related to OWL
Question
5 answers
I use RAP api for PHP to query my knowledge (RDF, OWL and etc.) but I cannot find the way to apply SWRL that I designed on Protege. Somebody suggests me to use Jena.
Relevant answer
Answer
In the near past I've used Jena to integrate a set of SWRL rules (pre-authored in Protege 3.4.4) for artificial intelligent and automated reasoning mechanisms. The programming language was -once more- Java and the only prerequisite was to include the Pellet reasoner. Both Apahe Framework and Pellet (now on GitHub) have extensive tutorials and examples, so give it a try instead of using PHP which has limited, or not at all, support in Semantic Web area...
  • asked a question related to OWL
Question
14 answers
I have developed an ontology and I am trying to query owl ontology data property assertions using OWL API in java. I have tried to query the definitions for namedIndividuals through data property assertions but I am not succeeding. Can somebody assist out there?
Relevant answer
Answer
Hello with owl-api jar and PelletReasoner
first you import : org.semanticweb.owlapi.model.OWLDataProperty;
and uses this code
OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
OWLOntology ontology = manager.loadOntologyFromOntologyDocument (new File (file));
// DataProperty
OWLDataProperty name = manager.getOWLDataFactory().getOWLDataProperty(IRI.create("URI_of your DataProperty "));
// Ind contains information about the individual (and all other individuals that were inferred to be the same)
OWLNamedIndividual ind = sameInd.getRepresentativeElement();
// get the info about this specific individual: dataProperty
Set<OWLLiteral> names = reasoner.getDataPropertyValues( ind, name );
  //  we can get the value directly
String nameInd = names.iterator().next().getLiteral();
I hope that is usful
  • asked a question related to OWL
Question
3 answers
Description I'm developing an OWL application that uses a reasoner. The classification takes too much time (more than 4 minutes) as I'm treating a relatively large ontology. I don't want to waste this time each time I run the application. The alternate is to save the reasoner inferred model and use the stored inferred one instead of running the reasoner each time.
Let's consider the following ontology:
Example
:A rdf:type owl:Class .
:A1 rdf:type owl:Class ;
rdfs:subClassOf :A .
:A2 rdf:type owl:Class ;
rdfs:subClassOf :A1 .
which asserts that A2 subClassOf A1 subClassOf A.
Problem When I use Protege 5 with some reasoner (e.g Pellet or even Hermit), start the reasoner and save the inferred model with all the available inference options. When I open the inferred model, I see that it doesn't state that A2 is a subclass of A. It only states that it's a subclass of A1. see below what it contains about A2:
A2 rdf:type owl:Class ;
rdfs:subClassOf :A1 .
I want all the implicit knowledge to become explicit. This work by Protege doesn't give me what I want (i.e. don't assert that A2 is also a subclass of A)? What is the problem? Any alternatives?
Remark: Saving the inferred model using some other tool (i.e. Jena or OWLAPI) will solve my problem as well, however, calling their methods to save the inferred model behaves the same way as Protege.
Relevant answer
Answer
I presume you are using protege, rather than jena library/OWL API directly. Have you tried with the export (all inferred axioms) option? or u just saved the file after running reasoner?
  • asked a question related to OWL
Question
1 answer
is because it have a high volume?
Note: but, i can run a query with jena api on this owl file.
please help me.
Relevant answer
Answer
For me it worked setting 1GB in run.bat
jre\bin\java.exe -Xmx1G -Dlog4j.configuration=file:log4j.xml -DentityExpansionLimit=100000000 -Dfile.encoding=utf-8 -Dorg.protege.plugin.dir=plugins -classpath bin/felix.jar;bin/ProtegeLauncher.jar org.protege.osgi.framework.Launcher
then it loaded successfully the ontology.
However in Win32 systems the JVM can not use more than 1.4GB as documented in this note by Oracle
  • asked a question related to OWL
Question
5 answers
Anybody know if exists some variant of OWL language, specially designed for the spatial domain ontologies. Similar to GeoSPARQL regarding SPARQL.
Greetings.
.
Relevant answer
Answer
What do you mean by reasoning? sparql can be used for some kind of reasoning purpose.
Pellet has implemented a spatial reasoner but there is no so many spatial reasoner available
The OGC Geo Spaql standard is not only about querying is also the definition of property and class that can be used to described spatial information.
 you should follow the work of a  team  of
Manolis Koubarakis,
Kostis Kyzirakos
about stSPARQLand stRDF data.
  • asked a question related to OWL
Question
10 answers
As OWL is based on the open world assumption it will rather classify entities than validate them in the classic way, since it assumes a non complete knowledge base.
This characteristic had caused me great problems when considering to use OWL for MDE (Model Driven Engineering) to generate a form based knowledge management system.
With forms the user WANTS validation, which must be rather strict and in real-time. The domain and range conditions won't help:
"The fact that domain and range conditions do not behave as constraints and the fact that they can cause ‘unexpected’ classification results can lead problems and unexpected side effects." (A Practical Guide To Building OWL Ontologies Using Protégé 4 and CO-ODE Tools, p36)
I've found Pellet Integrity Constraints (http://clarkparsia.com/pellet/icv/) which adds stricter constraint features to OWL.
This is where the Semantic Web has lost me. I need to extend an already complex system in order to achive something as simple and common as classic validation?
Have I missed something obvious, or is OWL really unsuitable (or at least very painful) to model closed world systems?
I can see why OWL and the OWA work the way they do and that knowledge bases that aggregate information from different sources can benefit from this concept. However, most systems are (for good reasons) closed world.
Relevant answer
Answer
Hello Simon,
Although ontologies are in essence OWA, they are described as a set of restrictions. IMO the concrete language ( OWL ) may perfectly describe CWA. The question is an interpretation. Obviously reasoners are based on OWA and because this is the only correct way to work with ontologies, getting CWA is a hard task.
In my OWL2XS tool I had to make a lot of logical querying based on negation to get CWA. The simplest example is: Monkeys have a tail and they are mammals. Do humans have a tail? In the OWA they "might". Any OWA reasoner will return an existential quantification hasTail for both mammals and humans unless you specifically negate it. To check CWA one should explicitly try to negate it for the class and this is very computationally intensive.
Probably more interesting would be to create a CWA reasoner - it should be very close to an OWL parser!
So my answer yes you can. Nothing prevents to see your ontology as a closed world.
The question is in which scenario would we need it? In my case I was interested in Web services generation (XML).
Kind regards,
Dmitry
  • asked a question related to OWL
Question
6 answers
Actually, I'm getting lost with domain and range semantics when a subsummption exists, in addition to restriction inheritance between class taxonomy members. Please see the following cases.
Let's consider
(1) hasCar Domain driver
(2) driver subClassOf human
Then, can we infer that
hasCar Domain human
Let's have hasCar (x, y) whatever x is
from (1): driver(x) & from (2): human(x)
then: whatever x is, if hasCar(x, y) => driver (x) =>
(3) hasCar Domain human
First Question: Is this conclusion correct? Why isn't Protege 5 with Hermit (neither Pellet, not even Jena with some reasoner) inferring that?
------------------------------------------------------------------------------------------------
Let's consider
(1) hasAudiCar Range AudiCar
(2) AudiCar subClassOf Car
In a similar fashion, we can infer that
(3) hasAudiCar Range Car
Second Question: Is this conclusion correct? Why isn't Protege 5 with Hermit (neither Pellet, not even Jena with some reasoner) inferring that?
-------------------------------------------------------------------------------------------------
Let's consider
(1) hasAudiCar Domain driver
(2) hasAudiCar Range audiCar
(3) driver hasAudiCar min 1 audiCar
(4) audiCar subClassOf car
Then, we can infer that
driver hasAudiCar min 1 car
Third Question: Is this conclusion correct? Why isn't Protege 5 with Hermit (neither Pellet, not even Jena with some reasoner) inferring that?
Surprisingly; Using Jena with the specification OntModelSpec.OWL_DL_MEM_RULE_INF gives my expected results!
Relevant answer
Answer
Median,
First of all, Protege does not show by default all the inferences that you may be interested in seeing, but you can easily activate different inference types through the Reasoner->Configure... menu (in your case you want to check the "Domains" and "Ranges" checkboxes under the "Displayed Object Property Inferences" section).
Second, although I am not a logics expert I think, that the answer to your first and second question is in fact "No", that is why I believe Protege does not show them, even if you activate the domain and range inferences in the configuration. Here is my reasoning, in case of your first question:
Although you correctly infer that 
whatever x is, if hasCar(x, y) => driver (x) => human(x),
x will still belong to the subset of those members of the human class that are also members of the driver class (i.e. they will never be member of the complement of the driver class, such as the non-driver humans - which BTW, I think is a inappropriate modeling in your example, since we know that non-driver persons can own a car in reality), and as such the the domain of the hasCar property will remain the driver class and cannot be extended to the entire human class. If you would say, for the sake of the argument, that there is no human that cannot drive (i.e. the human class is equivalent  with the driver class), than protege would show that the domain of the hasCar property is not just driver but also human.
Same reasoning goes for the range in your second question.
The answer to your third question is "True", but possibly not for the reasons that you would think of. The key statement that produce that inference are the range/domain statements, not the subclass relationship between audiCar and car
You may wonder why this inferable statement is not shown in Protege, even if you check all the possible reasoner configuration options. Simply, because there are infinite number of statements that can be entailed from an ontology, and Protege shows only a certain subset of those, which are commonly of interest to people who are building or using an ontology.  And this particular type of inference did not fall in that category.
However, if you write this statement into the DL Query plugin, and you check the "Equivalent classes" checkbox, you will see that driver class is returned as an equivalent class to the "driver hasAudiCar min 1 car" expression, and you can even get a nice explanation of why this is the case, if you click on the question mark on the right of the driver class in the query results.
I hope this helps.
  • asked a question related to OWL
Question
3 answers
But do not know if the version I downloaded contains only the Ontology Sumo or other manufacturer's components like Dbpedia, FOAF and other Ontologies that are in sumo.
Relevant answer
Answer
The connections refers to instantiations of some concepts related to other ontologies (ex: FOAF) in your ontology.
You can filter the classes defined in SUMO by just analysing the URIs prefixes. 
I hope that I was clear and helpful.
  • asked a question related to OWL
Question
2 answers
SUMO OWL=(T-Box)+(A-Box)
but, i want only T-box
Relevant answer
Answer
  • asked a question related to OWL
Question
4 answers
Is there any domain ontologies (in owl format) which capture the educational concepts in the JAVA programming course or c++ ?
Relevant answer
Answer
Hi Mona,
Linked Open Vocabularies (LOV) is great initiative when you are looking for existing ontologies that describe certain concept. You could simply search for a certain class or property and get links to the matched ontologies as a result .
The links usually contain descriptions of the classes and properties of an ontology as well as file in OWL, RDF or other Semantic Web/LOD standard format of the ontology that you could easily convert to OWL (if necessary) using online converters for instance.
Hope you'll find this useful,
Bojan
  • asked a question related to OWL
Question
4 answers
We have not find a bottom spacer in the electrophoresis set for gel casting system. Please, help to find any instruction for gel casting system in the Owl P8DS-2 vertical dual gel system.
Relevant answer
Answer
Dear Paul, thank you for sharing the manual. What is problem with your attachment but I could not get it. By any why, I used this file name to search in google and found the manual. It seems some different the gel casting there and should be used a bag to close well the bottom side.
  • asked a question related to OWL
Question
3 answers
I have a owl file and I want to find out wether this file is a owl-dl/ owl-lite or owl full ?
Is there any tag in the owl file that hold dl/life/full keyword or something like this that given an idea that the file belongs to which sub-language of owl?
Relevant answer
Answer
You can think of  OWL 2 DL as a *syntactically* restricted version of OWL 2 Full. Yes there are certain language constructs that will allow you to tell what OWL a certain ontology falls under.
Take a look at the following:
  • asked a question related to OWL
Question
7 answers
I am finding it very hard to understand
Relevant answer
Answer
Hi, look at this other Q/A:
Piotr Szwed · 14.08 · 4.36 · AGH University of Science and Technology in Kraków
RDFS offers taxonomic relations, object relations and datatype properties.
OWL has richer vocabulary and is more expressive:
with OWL it is possible to specify cardinalities of object relations and datatype properties (attributes)
it is possible to use logical opeartors in definitions (e.g. use union of classes as a range of relation)
For details you should compare specifications, e.g.:
  Enayat Rajabi · 6.98 · 3.89 · University of Alcalá 
Briefly, ontology gives you more facilities to define objects and their semantic relationships, while RDFS schema is about defining the Data structure. By RDFS, you can create your data hierarchy and their properties. Instead, in ontology you can say e.g., if A is a subclass of B, what are the other relationships of A to B? and to other classes? A good example could be, defining a sameAs relationship between objects which specified two objects that are semantically related.
  • asked a question related to OWL
Question
9 answers
Many research papers and tools do exist that automatically generate specific domain Ontology from text. and there exist tools to validate the OWL syntax and semantic relationships. However, do we have any tool that check the quality of the generated specific domain ontology?
Relevant answer
Answer
There is a rather large body of work which looks at quality of ontologies, particularly in the biomedical domain but not exclusively. 
For a tool you can just use there is the OntoOops online system: slides and link to online tool in slides: http://www.eudat.eu/system/files/MariaPovedaVillalon.pdf  It looks for common issues with ontologies and flags them giving you an idea of quality.
Jeremy Rogers' early work on medical ontology quality: http://www.ncbi.nlm.nih.gov/pubmed/16685334
on concepulization quality: 
and on activity levels as a metric:
and many more...
  • asked a question related to OWL
Question
3 answers
Currently, I am doing the research on the modelling of design patterns using OWL. For the application, I have considered IOT. 
Relevant answer
Answer
Enterprise Integration Patterns is a good start: http://www.enterpriseintegrationpatterns.com/toc.html
Typically you are looking at Remote invocation, Distributed Tracking, Discovery protocols and Message etc. 
  • System Integration patterns
  • Messaging patterns
  • Routing patterns
  • Transformation patterns
  • Distributed Coordination patterns
  • asked a question related to OWL
Question
11 answers
Currently, my colleagues and I are in the first stage of preparing a article about gender determination of Long-eared Owls (Asio otus) based on plumage coloration and biometric measurements supported of DNA analyzes. For now, we found several close related papers which we have been able to found on the Internet databases (Scopus etc). Thank you in advance for your help. 
Relevant answer
Answer
Entries in my database on Identification and Long-eared Owl:
Baker, K. (1983): Guide to ageing and sexing non-passeriformes (part. 7). Ringer's Bulletin 6: 45.
Baker, K. (1993): Identification guide to European non-passerines. British Trust for Ornithology, Norfolk.
Gálvez, R. A., L. Gavashelishvili & Z. Javakhishvili (2005): Raptors and owls of Georgia. Georgian Centre for the Conservation of Wildlife and Buneba Print Publishing, Tbilisi.
Martínez Climent, J. A., Í. Zuberogoitia Arroyo & R. A. Moreno (2002): Rapaces Nocturnas. Guía para la determinación de la edad y el sexo en las Estrigiformes ibéricas. Monticola, Madrid.
Mikkola, H. & J. Lamminmäki (2014): Moult, Aging and Sexing of Finnish Owls.
  • asked a question related to OWL
Question
9 answers
Research on survival rate of injured birds of prey post release.
Correlation between form of release and success rate.
Also type of injury and time of rehabilitation.
Relevant answer
Answer
This paper may be of interest:
Causes of admissions to a raptor rehabilitation centre in KwaZulu-Natal, South Africa
LJ Thompson, B Hoffman, M Brown - African Zoology, 2013
  • asked a question related to OWL
Question
9 answers
Disjointness, transitive features etc
Relevant answer
Answer
SPARQL 1.1 supports querying over inferred data (e.g., with RDFS/OWL) using an extension called entailment regimes. Further information can be accessed at http://www.w3.org/TR/2013/REC-sparql11-entailment-20130321
  • asked a question related to OWL
Question
6 answers
OWL Ontology Model
Many thanks.
Relevant answer
Answer
Dear Luis, Thanks for your recommendation !
Best Regards
  • asked a question related to OWL
Question
9 answers
ontology potege?
Relevant answer
Answer
The Oracle Database Comes With Triple Stores And SPARQL Querying And Inferencing Support Starting From Version 11a Onwards... Thats Your Best Place To Start...
  • asked a question related to OWL
Question
4 answers
I know there is a large ontology repository for example here: http://rpc295.cs.man.ac.uk:8080/repository/. I am also aware of generators like LUBM or UOBM. However, they provide either a lot of different ontologies without instances, or (in case of generators) ontologies with fixed number of instances. What I am looking for is a dataset (or generator) that allows to create ontologies of different size (different number of instances).
Relevant answer
Answer
I just uploaded the datasets we used for the attached paper. You should be able to access them via that publication link.
Is the TBox complexity relevant for your experiment? If it has to be a specific TBox, it might be necessary to write your own instance generator that populates the ontology exactly the way you want it. (Often not all classes / properties need to be populated explicitly.)
  • asked a question related to OWL
Question
6 answers
creation of database automatically
Relevant answer
Answer
The ontology can be saved on the disk or memory.  Then, you have to use what we call a triplestore.  The later is a database management system for RDF triples.  After that, you can query the database which is composed of Ontology + instances.  A triplestore contains also a set of reasoning systems.   The list of available triplestore can be found in :
  • asked a question related to OWL
Question
19 answers
As RDF and Ontology belong to two separate layers in the Semantic Web Layer cake so I want to understand the difference between these two layers? Most of the data on the internet said these two are same. Please help me to understand the difference?
Relevant answer
Answer
RDFS offers taxonomic relations, object relations and datatype properties.
OWL has richer vocabulary and is more expressive:
  • with OWL it is possible to specify cardinalities of object relations and datatype properties (attributes)
  • it is possible to use logical opeartors in definitions (e.g. use union of classes as a range of relation)  
For details you should compare specifications, e.g.:
 
  • asked a question related to OWL
Question
6 answers
I am looking for information on how I can provide access to a large Ontology developed using Protege as an online web service.
Relevant answer
Answer
Thank you all for your helpful suggestions. I found ARC 2 - An Easy RDF and SPARQL for LAMP systems to expose the endpoints.
As the rest of our system was build using LAMP, PHP and MqSQL getting ARC2 working with the rest of the system was very easy. You can try our end point at
This is an agriculture knowledgebase for farmers.
Our Agriculture Ontology was developed using protege. We find it takes a very long time to populate it with NamedIndividual.
Does anyone know a better method to add large number of NamedIndividuals to an ontology developed with protege ?
  • asked a question related to OWL
Question
2 answers
OWL API supports in memory representation and thus does not allow large size ontologies.
Here are a number of API that are using OWL API as there underlying technology:
Protege 4, NeOn Toolkit, OWLSight, Ontology browser, OntoTrack,SKOS, SKOSED, and OWLlinkAPI, etc.
When OWL API is not allowing large size ontologies than how we are going to handle this issue for large application?
Relevant answer
Answer
I've been using OWLAPI for a long time and I cannot understand what is your concern. For example, I've been working with Snomed ontology (~290.000 concepts), and I've haven't had any memory issues with OWLAPI ...
Note that ontologies are more oriented to capture and model the intensional dimension of the data (the schema), instead of the actual data. I recommend you to read the works on the OWL-DL Lite segment, which allows to handle the T-BOX in memory, while storing and handling the A-BOX in an external database, providing you the scalability you might be looking for. You might find the works by Diego Calvanese and Mariano Rodríguez Muro on Query rewriting useful .
Another approach you could use would be to handle the ontology with the OWLAPI and have the instances stored in a RDF repository, such as Virtuoso.