protege | source ontology editor that supports the latest OWL | Data Manipulation library

 by   protegeproject Java Version: protege-parent-5.6.2 License: Non-SPDX

kandi X-RAY | protege Summary

kandi X-RAY | protege Summary

protege is a Java library typically used in Utilities, Data Manipulation applications. protege has no bugs, it has no vulnerabilities, it has build file available and it has high support. However protege has a Non-SPDX License. You can download it from GitHub, Maven.

Protege is a free, open-source ontology editor that supports the latest OWL 2.0 standard. Protege has a pluggable architecture, and many plugins for different functionalities are available. To read more about Protege's features, please visit the Protege home page. The latest version of Protege can be downloaded from the Protege website, or from github. If you would like to contribute to the Protege Project please see our contributing guide. The Developer Documentation may be found on the wiki. Looking for support? Please ask questions on the protege-user or protege-dev mailing lists. If you found a bug or would like to request a feature, you may also use this issue tracker. Protege is released under the BSD 2-clause license. Instructions for building from source are available on the the wiki.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              protege has a highly active ecosystem.
              It has 850 star(s) with 225 fork(s). There are 76 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 352 open issues and 694 have been closed. On average issues are closed in 25 days. There are 19 open pull requests and 0 closed requests.
              It has a positive sentiment in the developer community.
              The latest version of protege is protege-parent-5.6.2

            kandi-Quality Quality

              protege has 0 bugs and 0 code smells.

            kandi-Security Security

              protege has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              protege code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              protege has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              protege releases are available to install and integrate.
              Deployable package is available in Maven.
              Build file is available. You can build the component from source.
              It has 86158 lines of code, 9576 functions and 1441 files.
              It has medium code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed protege and discovered the below as its top functions. This is intended to give you an instant insight into protege implemented functionality, and help decide if they suit your requirements.
            • Initialise the checkboxes
            • Updates the view based on the given property
            • Adds a setter to the given checkbox
            • Configure the setters
            • Initialize the wizard
            • Displays the currently selected panel
            • Sets the current panel to the specified object
            • Initialize the UI
            • Updates whether or not the given orcid is enabled or not
            • Main method for testing
            • Creates the center panel
            • Loads imports and imports
            • Rebuild the view menu items
            • Initialise the preview
            • Creates the center panel for the document
            • Paints the icon
            • Initialise the OL view
            • Prepare the styles
            • Provides a renderer for the given value
            • Creates the UI
            • Gets the tool tip text
            • Layout the lines
            • Update the node
            • This method initialises the panel
            • Create and copy the view
            • Paint the action icon
            Get all kandi verified functions for this library.

            protege Key Features

            No Key Features are available at this moment for protege.

            protege Examples and Code Snippets

            No Code Snippets are available at this moment for protege.

            Community Discussions

            QUESTION

            SPARQL Query the triples created using Protégé ontological approach for distinct classes with object properties
            Asked 2022-Apr-03 at 18:52

            I have a question about querying the object properties that can be defined between classes.I have created triples using the protege ontological approach where,I have created two classes named "A" and "B" with instances A1, A2, A3, and B1, B2, and B3 respectively.

            I have added an object property "aToB". Now I want to write a Query that can query the instances under each class using the object property.for which I have written the following QUERY

            ...

            ANSWER

            Answered 2022-Apr-03 at 18:52

            The prefix in your query is missing the closing #.

            Source https://stackoverflow.com/questions/71720821

            QUESTION

            SPARQL query answers for Punned Entities in Ontology
            Asked 2022-Mar-11 at 14:06

            I have built a small ontology in Protege to test punning with a SPARQL query. The Ontology is:

            ...

            ANSWER

            Answered 2022-Mar-11 at 14:06

            Harry is a GE, from your assertions. GE is both a class and an individual; so GE appears in other statements as well, and that's multiplying the answers you're seeing. It's analogous as joining across tables where the join value matches multiple rows in one of the tables involved.

            Source https://stackoverflow.com/questions/71425038

            QUESTION

            How is: "A subclassOf of B, C" interpreted? As AND or OR in rdfs / owl / description logic?
            Asked 2022-Feb-01 at 21:13

            Is the following interpreted as the intersection (AND) in the sense that members of class A are members of B and C; or as the disjunction (OR) that members of A are a member of B, or a member of C, or member of both?

            ...

            ANSWER

            Answered 2022-Feb-01 at 00:33

            I can quote RDFS, and considering OWL should follow from that, I don't expect any difference there:

            If a class C is a subclass of a class C', then all instances of C will also be instances of C'. The rdfs:subClassOf property may be used to state that one class is a subclass of another.

            Class inheritance axioms in RDFS are built so that a contradiction can never occur, thus a statement like this can only be "additive" in a sense. Additionally, from the nature of triples in RDF, we know that A rdfs:subClassOf B, C. means A rdfs:subClassOf B. A rdfs:subClassOf C..

            Expressed in the language of sets, such a construction means A ⊆ B ∧ A ⊆ C. Any member of A is also a member of B, and any member of A is also a member of C, thus any member of A must be a member of both B and C. We can see that A ⊆ (B ∩ C), from the duality of set and logical operators.

            Expressed equivalently, any member of B not found in C must also not be in A (and the same for B and C swapped).

            Source https://stackoverflow.com/questions/70853378

            QUESTION

            How to create a knowledge graph from a pandas dataframe using RDFLIB library in Python
            Asked 2022-Jan-29 at 14:10

            I have a df from which I need to create a Knowledge Graph using RDFlib library in Python. So that I can visualize the created knowledge graph in various visualization tools like Protege, Webowl etc. How can this be done?

            ...

            ANSWER

            Answered 2022-Jan-29 at 14:10

            Here is my approach based on this answer. See also this notebook for outputs.

            Source https://stackoverflow.com/questions/70875222

            QUESTION

            How to produce triple with differentFrom vocab in OWLAPI
            Asked 2021-Dec-23 at 13:03

            I tried to create different individual axiom using OWLAPI 5 in Java. What I want is simple triple using vocab owl:differentFrom like:

            ...

            ANSWER

            Answered 2021-Dec-23 at 13:03

            There is an alternative implementation of OWLAPI-v5 that provides a direct way to work with underlying RDF data - ONT-API (by the way, RDF based Protege version also exists). If working via OWLAPI interface for two operands it produces a single triple.

            Also it is possible to copy ontology between ont-api manager and owl-api-impl managers, if you prefer to store the data in the form of OWL axioms and need to solve only this particular problem with serialization.

            example:

            Source https://stackoverflow.com/questions/70443271

            QUESTION

            When using rdfs:subClassOf or owl:equivalentClass in case of existential quantification (owl:SomeValuesFrom) for a OWL class restriction constructor?
            Asked 2021-Dec-23 at 09:25

            We define a class A as owl:equivalentClass and a class A2 as rdfs:subClassOf based on the intersection (AND) of instances having a relation a_to_b and a_to_c with an instance of B or C respectively. Please see the example:

            ...

            ANSWER

            Answered 2021-Dec-23 at 09:25

            I think the first thing to be aware of is that equivalence, say D equivalentClass E, is an abbreviation for D subClassOf E and E subClassOf D. The semantics of subClassOf is subset. This means that the set D is a subset of set E and set E is a subset of D, which means set D and set E are exactly the same set. We say they are equivalent.

            Note now the semantics of subClassOf. If I know F subClassOf E and G subClassOf E, what can I say about how F and G relates to each other? Absolutely nothing. It is a bit like knowing a bicycle and a truck are both vehicles. That does not make a bicycle a truck or a truck a bicycle, though both are vehicles.

            Thus, in your example, A can be expanded to the 2 axioms

            A subClassOf (a_to_b some B) and (a_to_c some C)

            (a_to_b some B) and (a_to_c some C) subClassOf A

            Answers to your questions:

            (a) With the assertions for x as you have it, we can see that x is indeed an instance of A. However, there is no information wrt x that makes it possible for us to say x is of type A2. All we know is that both x and A2 are subclasses of (a_to_b some B) and (a_to_c some C).

            (b) This is due to the Open World Assumption, which means the reasoner does not make any assumptions based on the absence of information. If you have not stated explicitly that y has no a_to_b relation to B, it will assume that an a_to_b relation exists but is merely not known. This is as opposed to the closed world assumption made by databases usually. I.e., if no employer information exists for a client the assumption is often made that the client is not employed.

            You can state that y has no a_to_b relation by stating that a_to_b max 0 B. The reasoner will then give an inconsistency.

            (c1) yes, but these may not be known currently due to the open world assumption.

            (c2) yes, based on the semantics of equivalence

            (c3) yes.

            This is not true for A2 because it is merely a subclass rather than all things that have a relation a_to_b with an instance of B and have a relation a_to_C with an instance of C.

            When to use equivalent vs subClassOf

            Equivalence is used for definitions. That is when you want to state the necessary and sufficient conditions for something to be called an A (from your example).

            SubClassOf is used when you want to define a hierarchy from most general to most specific. I.e., it is typically what you see in taxonomies and in programming you will see it as object oriented class hierarchies.

            Source https://stackoverflow.com/questions/70386593

            QUESTION

            Infer Anonymous class in Protege with the Rules Tab
            Asked 2021-Sep-08 at 11:05

            I would like to infer an anonymous class definition for my Individuals in Protege.

            I have a simple Ontology with the Classes Rain NoRain and Scene, The object Property has_weather. My desire is to be able to infer "has_weather(?x, ?noRain), NoRain(?noRain), Scene(?x) -> (has_weather exactly 0 Rain)(?x) which i wrote in the Rules tab, where i can mix SWRL and OWL Expressions.

            I am using Pellet Reasoner, however I also tried with OnTop and Hermit and none works. For example if I do the rule the other way around:

            ...

            ANSWER

            Answered 2021-Sep-08 at 11:05

            In general a set of axioms has an infinite amout of entailments. See for example this paper. For this reason reasoners restrict inferences to known classes (not anonymous classes). I suspect this holds true for rules as well.

            I therefore suggest you add a class NoRain that you set equivalent to has_weather 0 Rain and change your SWRL rule to use the class NoRain.

            Source https://stackoverflow.com/questions/69101093

            QUESTION

            Some subclasses seem deliberately missing from the SSN ontology RDF. Is there a way to import a complete SSN ontology?
            Asked 2021-May-27 at 05:50

            I am using Protege to explore the SSN ontology,
            but a lot of classes like the survivalRange seem to be missing from the main file.

            How could I import all the classes and entities of the ssn-system,
            without importing them manually one by one by the IRI?

            ...

            ANSWER

            Answered 2021-May-27 at 05:50

            You can import http://www.w3.org/ns/ssn/systems/, which itself imports http://www.w3.org/ns/ssn/.

            Source https://stackoverflow.com/questions/67713883

            QUESTION

            How to access the child elements of an element with minidom?
            Asked 2021-May-24 at 06:46

            I am reading an XML/OWL file (generated from Protege) in Jupyter notebook.

            I can read the root element, but for children its showing error/blank.

            ...

            ANSWER

            Answered 2021-May-24 at 06:46

            You have this structure

            Source https://stackoverflow.com/questions/67667051

            QUESTION

            Inferencing the Sematincs of Equality (OWL 2 RL) using owlapi
            Asked 2021-May-16 at 14:02

            I'm trying to produce entailment for the rule in OWL 2 RL 'The Semantics of Equality' using owl-api. I already tried to follow: Why the inferences visualised in Protege differ from the exported inferred axioms

            ...

            ANSWER

            Answered 2021-May-16 at 14:02

            There is no inferred axiom generator that materialises the sameAs relations. You could write one yourself, based e.g., on InferredPropertyAssertionGenerator, or you can open an issue on the OWLAPI GitHub repo for the functionality to be added to the library.

            Source https://stackoverflow.com/questions/67546978

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install protege

            You can download it from GitHub, Maven.
            You can use protege like any standard Java library. Please include the the jar files in your classpath. You can also use any IDE and you can run and debug the protege component as you would do with any other Java program. Best practice is to use a build tool that supports dependency management such as Maven or Gradle. For Maven installation, please refer maven.apache.org. For Gradle installation, please refer gradle.org .

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Data Manipulation Libraries

            Try Top Libraries by protegeproject

            webprotege

            by protegeprojectJava

            swrlapi

            by protegeprojectJava

            cellfie-plugin

            by protegeprojectJava

            owlviz

            by protegeprojectJava

            mapping-master

            by protegeprojectJava