Patent ID: 8656356

Claim:
A computer-implemented method for creating Web Ontology Language (“OWL”) ontology from an object-oriented programming language source code comprising a plurality of classes, the method comprising: creating, using program instructions executed by a computer system, an OWL class for each class of the plurality of classes from JAVA programming language source code, wherein each class of the plurality of classes comprises one or more members and one or more objects; creating, using program instructions executed by a computer system, an OWL concept for each of the one or more members; creating, using program instructions executed by a computer system, an OWL instance for each of the one or more objects, wherein each of the one or more objects instantiate a corresponding class of the plurality of classes; assigning, using program instructions executed by a computer system, one or more data type properties to each of the OWL classes, to each of the OWL concepts and to each of the OWL instances; adding, using program instructions executed by a computer system, each of the OWL classes, each of the OWL concepts and each of the OWL instances as Assertional Box axioms to the OWL ontology; facilitating checking for, using program instructions executed by a computer system, inconsistencies in the OWL ontology and inconsistencies in the JAVA programming language source code, wherein inconsistencies in the JAVA programming language source code are checked by drawing one or more inferences from an output of a check performed on the OWL ontology; and when an inconsistency is found in the JAVA programming language source code and an inconsistency is found in the OWL ontology, facilitating correction of, using program instructions executed by a computer system, the inconsistency in the OWL ontology and the inconsistency in the JAVA programming language source code, wherein the inconsistency in the JAVA programming language source code is corrected using the one or more inferences.