System and Method For Automatically Refining Ontology Within Specific Context

Information

  • Patent Application
  • 20080071731
  • Publication Number
    20080071731
  • Date Filed
    September 12, 2007
    17 years ago
  • Date Published
    March 20, 2008
    16 years ago
Abstract
The present invention provides a system and method for automatically refining ontology within a specific context. The system comprises: a rich context extractor for discovering a semantics relationship conflict existing between an original ontology schema and application data; and an ontology schema and mapping refiner for refining the original ontology schema based on the semantics relationship conflict discovered by the rich context extractor, and creating a new mapping between the refined ontology schema and a data schema of the application data. According to the invention, users can save a lot of work of manual refinement, since the ontology schema is automatically refined based on contexts in the application data.
Description

BRIEF INTRODUCTION TO THE DRAWINGS

The above and other objects, features and advantages of the present invention will become more apparent by describing in detail preferred embodiments of the present invention with reference to the drawings, in which:



FIG. 1 shows an example of ontology predefined by experts in securities business.



FIG. 2 shows an example of a conflict existing between the predefined ontology and data.



FIG. 3 shows an example of an approach for clearing the conflict according to the prior art.



FIG. 4 shows a block diagram of a system to which the present invention is applied.



FIG. 5 shows an exemplary flow chart of the method applied in the present invention.



FIG. 6 shows an exemplary diagram after initial process of ontology mapping with relational data.



FIG. 7 shows an exemplary diagram after the process of transforming conflict property into relationship class.



FIG. 8 shows an exemplary diagram after the process of rebuilding “subpropertyof” relation (sub-property relation) in RDFS.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention relates to a system and method for automatically refining ontology within context. According to the present invention, the properties between two classes in ontology schema would be checked one by one. Once found not to agree with the semantic relationships in data, they will be collected to further discover which columns in data they do rely on. After transforming all of those conflict properties into new classes and referring to their dependent columns in data as properties of the classes, we can continue to reorganize “subpropertyof” in which the object as a property is replaced with a path expression. Thus, the refined ontology schema is generated and those properties in new classes are also mapped into the corresponding data schema.


The system and method for refining ontology automatically according to the present invention will be described in detail with reference to the drawings hereinafter. It is noted that in the following we choose an RDF model as ontology representation and a relational table in a relational database as data storage for convenience of illustration. But those skilled in the art should understand that the ontology representation model and the data storage format are not limited to those. For example, the ontology representation model can further be an OWL model etc. and the data storage format can also be XML etc.



FIG. 4 shows a block diagram of a system 100 according to the present invention. As shown in FIG. 4, the system 100 according to the present invention is the rectangular part enclosed by a broken line, and the two ellipse parts are the inputs and outputs of the present system 100, respectively. By recent data integration tools, we might populate ontology schema, e.g., as the format of RDFS, with existing data, e.g., stored in a relational database, in the same domain. The general way is to build a mapping graph between RDFS and data schemas. By the system 100, the RDFS will be refined with richer context from application data and a new mapping graph between the refined RDFS and original data schemas will also be generated.


The system 100 mainly includes two functional modules, i.e. a rich context extractor 110 and an RDFS & mapping refiner 120. The rich context extractor 110 is used for discovering the kind of semantic conflict, which has been illustrated in the part of background art of the invention, existing between relationship properties in RDFS and real dependency in data. This kind of conflict embodies inability to exactly explain the semantics or rules hidden in real data only from RDFS expressiveness. The RDFS & mapping refiner 120 is used for updating the RDFS based on the results extracted before, and creating a new mapping between RDFS and data schemas.


In particular, the rich context extractor 110 is used for finding out those properties directing to other classes in RDFS, which can not fully describe the semantics in the application data. In other words, when the property has multiple values all of which are the same, ontology can not vividly distinguish them. Under the circumstance, we must reorganize the RDFS to support the functionality unless this kind of semantics might be ignored. By the rich context extractor 110, the properties in RDFS and corresponding data schemes have been collected.


The RDFS & mapping refiner 120 is mainly used to reorganize the RDFS by transforming the discovered properties into new classes with new properties extracted from the corresponding data schemas. Furthermore, the RDFS & mapping refiner 120 also builds a new mapping between the refined RDFS and original data schemas at last.


Hereinafter, the method for refining ontology automatically according to the present invention will be described in detail according to the exemplary flow chart shown in FIG. 5. Obviously, the method for refining ontology automatically according to the present invention is not limited to the exemplary method shown in FIG. 5, and those skilled in the are can design various implementations depending on specific cases according to the teaching here.


Referring to FIG. 5, the present exemplary method corresponds to the system 100 of FIG. 4, wherein, steps S210-S270 correspond to the procedure of the rich context extractor 110, and steps S310-S350 correspond to the procedure of the RDFS & mapping refiner 120.


The procedure of the rich context extractor 110 recursively tries to check the instance relationships occurring between two classes in which a property exists. Thus the first thing to do is to build a candidate list L in step S210, in which each item is the property bridging two classes and may be easily retrieved from RDFS. In the RDF model, the data are stored orderly as a set of triples, each of which is of “(subject, property, object)”. When both “subject” and “object” are a kind of class or with class label, the “property” will be added into the list L as a candidate. After scanning the whole RDFS table, we can collect all possible candidates.


Next, in step S220, the procedure of the rich context extractor 110 enters into a loop. Only while list L is empty, the procedure will be terminated. The end condition indicates that all possible candidates have been checked. Supposing that a candidate property P has been selected to check from the rest of list L, we need in step S230 to find out the corresponding column (i.e., the property field) information from the mapping table which records each mapping relation between terms described in RDFS and data schemas. The corresponding column information means that of the property P itself and the two classes P bridges. By scanning the mapping table, we can conveniently discover the corresponding columns.


In order to fast check whether the conflict presented above does occur in the situation of current round, we need in step S240 create a temporary table T which consists of the corresponding columns discovered above. Also, the original data in different tables will be filled up to the table T with a series of joining and projecting operations. Specifically, we can further build an index on the composition of columns that are related to the identity properties in the two classes P bridges. The merit is to accelerate the job of checking the conflict.


After the data are ready in table T, the procedure will continue in step S250 to group them by the columns standing for the two classes P bridges and count the records for each group. Then in step S260, it is determined whether there exists at least a group whose count of the records is beyond one. Only while there exists at least a group whose count of the records is beyond one, we can just prove that the conflict occurs. If the condition to check the conflict is failed in the current round, the procedure will move out the property P from the list L and returns to step S220 to enter into the next round. Otherwise, it has to mark the property P in step S270 as relationship class which will be applied in the RDFS. In addition, the corresponding information with the property P will be stored into a table. Meanwhile, we will also update the list R which represents the set of relationship class to be discovered. At last, the procedure moves out the property P from the list L and returns to step S220 to enter into the next round.


By the recursive procedure of the rich context extractor 110, we can discover all conflicts occurring between varieties of property P and their corresponding data. Accordingly, we need to further embody the discoveries into ontology schema. The procedure of the RDFS & mapping refiner 120 in FIG. 5 acts as the role.


Firstly, in step S310, the procedure of the refiner 120 scans the list R, which is discovered in the first procedure and records all properties required to refine in RDFS, and check whether an item I does remain in it. Only while the list R is not empty, we will recursively take the following steps to update RDFS with relationship classes. Here, each item I in R represents a discovered property in RDFS, and is also linked with a set of columns in data schemas.


The columns appear in those tables which act as the role of joining between the two classes the property I bridges in the original RDFS. They would be the candidate set of the properties to be applied in the new relationship class. It is definitely intuitive to contain all the properties into the class. However, if there are too many columns, we still can select some of them as the properties. Under the circumstance, the columns as key in a table would be essential ones to be selected and others are optional. In step S320, after containing those properties mapped to the selected columns into the new relationship class, we can replace the property I with the new relationship class in RDFS. Note that we should also newly create two properties bridging the new class with the two older ones P bridges in the original RDFS, respectively. Then, in step S330, the original RDFS is updated with the new relationship class in the RDFS. The whole loop will not be terminated until all discovered properties in the original RDFS have been processed as above.


After the series of transformations from properties into relationship classes, the procedure will continue to update the “subpropertyof” between the properties and transformed classes in step S340. Since a part of properties in RDFS have been transformed into classes, the relation of “subpropertyof” on them will be impacted. In order to guarantee the soundness in the context of RDFS, we must apply new methods to solve the problem. Here, we rely on the idea of path expression to present the relation. That is “subpropertyof” in RDFS will occur in the two scenarios. One is traditionally done between two properties. The other is done between a property and a path expression. Simply, a path expression consists of two properties. One is from the class the transformed property depends on and the other is from the new relationship class. By composing the two properties, we can create an indirect relationship between the two classes traditionally linked by the transformed one in RDFS. In accordance with the indirect relationship, the procedure will allow the presentation of “subpropertyof” from a property to a path expression. For example, the older one is of “(subject subpropertyof object)”. Both the “subject” and the “object” refer to the property in two classes. Assuming that the “object” property has been transformed into a class, it should be represented as a path expression of “object equal to path”. The composition of the two properties will be the path like “node1 is propertyA” and “node2 is propertyB”. Also, we must mark the containment in the path like “path has node1” and “path has node2”.


By the updating for all relations of “subpropertyof”, the procedure will finish the process of RDFS refinement and continue in step S350 to rebuild new mapping between RDFS terms and columns in data schemas. The part is mainly to create the new mapping for the properties generated in the above process in the new classes. The properties are automatically extracted from the columns. Their mapping actually have been recorded in the list R. Therefore, it could only copy the corresponding items in R as the mapping information for refined RDFS.


Through the two main parts of the rich context extractor 110 and the RDFS & mapping refiner 120, the procedure could generate the refined ontology just shown in the left bottom of FIG. 5.


For convenience to illustrate the process, we will present a scenario below as an example. FIG. 3 has described an exemplary diagram showing that the conflicts occurring between RDFS and real data would be cleared. Borrowing the part of the case, we will describe its process of the transformation and refinement on RDFS.



FIG. 6 shows the inputs of the case for the procedure of the present invention. The data have been stored in a table and its entity relationship (ER) model is also included for clarity. The mapping between the data and the ontology schema (or RDFS) has been done by a data integration tool. At first, the procedure will find out a conflict occurring between “Shareholding” relation in RDFS and the data by scanning the table of “Transaction”. Here, the procedure will record the corresponding information for the further processing on the conflict.


After the recursive discovery on the kind of conflict, the procedure will solve them one by one. It will create a new relationship class for each conflict property. As shown in FIG. 7, the class of “Transaction” has been built and also contains two new properties of “Year” and “Month”, both of which are extracted from the data columns in the table of “Transaction”. Moreover, the relationships of “Do” and “With” are created to bridge the two classes of “Person” and “Company” which originally were linked by the property of “Shareholding”. Here, notes that the above conflict has been cleared. Each record in the table of “Transaction” could be the instances of the class of “Transaction” in RDFS.


Since the new class has been injected into the RDFS, the original context in RDFS would possibly make no sense. For example, the property of “Shareholding” was a kind of relationship of “Control” between “Person” and “Company”. While the property is transformed into the class of “Transaction”, the original context will be also lost in that each of new properties of the new class of “Transaction” could not independently substitute the property of “shareholding” in semantics. Therefore, the new conflict shown in FIG. 7 must be solved in the next step.


To avoid the lost of semantics in RDFS, we adopt the new format of path expression into the RDF model. For example, as shown in FIG. 8, the original property of “Shareholding” could be replaced with a path from a new property of “Do” of class of “Director” into the class of “Listed Company” through a new property of “With”. The properties of “Do” and “With” are mapped into the columns of “PID” and “CID” in the table of “Transaction”, respectively. Borrowing the join expression among the tables of “Person”, “Transaction” and “Company” based on the columns of “PID” and “CID”, we can describe the internal relationship of “Shareholding” between the classes of“Director” and “Listed Company”. Here, the operator of “0” represents the path expression of the properties of “Do” and “With” in FIG. 8.


Finally, based on the refined ontology, we will build the mapping for those new properties with columns in data schemas. FIG. 3 shows the final and logic version of the ontology as outputs.


As known by those skilled in the art, the system and method for refining ontology automatically according to the present invention can be implemented by manner of software only, hardware only and/or a combination of software and the specific implementations do not limit the scope of the present invention.


In addition, the method according to the present invention is not limited to be executed according to the time sequence described in the specification, and can be executed according to the other time sequence, in parallel or independently, therefore, the execution order of the method described in the present invention does not limit the scope of the present invention either.


While the present invention has been described in detail with reference to a certain embodiment, those skilled in the art can make various modifications, alternations and variations to the embodiments of the present invention without departing from the spirit and scope of the present invention.

Claims
  • 1. A system for automatically refining ontology within a specific context, comprising: a rich context extractor for discovering a semantics relationship conflict existing between an original ontology schema and application data; and an ontology schema and mapping refiner for refining the original ontology schema based on the semantics relationship conflict discovered by the rich context extractor, and creating a new mapping between the refined ontology schema and a data schema of the application data.
  • 2. The system according to claim 1, wherein the rich context extractor discovers a conflict existing between the original ontology schema and the application data by extracting a relationship property having a conflict with a semantic relationship in the application data in the original ontology schema, and the ontology schema and mapping refiner refines the original ontology schema by transforming the relationship property having the conflict extracted by the rich context extractor into a new relationship class.
  • 3. The system according to claim 2, wherein in addition to extracting the relationship property having the conflict, the rich context extractor further extracts a data schema corresponding to the relationship property having the conflict, and the ontology schema and mapping refiner further refers to the data schema corresponding to the relationship property having the conflict as the property of the new relationship class after transforming the relationship property having the conflict into the new relationship class.
  • 4. The system according to claim 2, wherein after transforming the relationship property having the conflict into the new relationship class, the ontology schema and mapping refiner further uses a path expression to embody an impacted sub-property relation in the ontology schema, wherein the path expression is obtained by combining relationship properties between classes the relationship property having the conflict bridges and the new relationship classes.
  • 5. The system according to claim 3, wherein the ontology schema and mapping refiner creates a new mapping between the refined ontology schema and the data schema of the application data by mapping the property of the new relationship class into the data schema corresponding to the relationship property having the conflict.
  • 6. The system according to claim 1, wherein a representation model of the ontology is resource description framework model or a web ontology language model.
  • 7. The system according to claim 1, wherein the storage format of the application data is a relational table in a relational database or the eXtended Markup Language.
  • 8. A method for automatically refining ontology within a specific context, comprising steps of: a) discovering a semantics relationship conflict existing between an original ontology schema and application data; andb) refining the original ontology schema based on the discovered semantics relationship conflict, andc) creating a new mapping between the refined ontology schema and a data schema of the application data.
  • 9. The method according to claim 8, wherein in step a), a conflict existing between the original ontology schema and the application data is discovered by extracting a relationship property having a conflict with a semantic relationship in the application data in the original ontology schema, and in step b), the original ontology schema is refined by transforming the extracted relationship property having the conflict into a new relationship class.
  • 10. The method according to claim 9, wherein in step a), in addition to extracting the relationship property having the conflict, a data schema corresponding to the relationship property having the conflict is further extracted, and in step b), the data schema corresponding to the relationship property having the conflict is further referred as the property of the new relationship class, after transforming the relationship property having the conflict into the new relationship class.
  • 11. The method according to claim 9, wherein in step b), after transforming the relationship property having the conflict into a new relationship class, a path expression is used to present an impacted sub-property relation in the ontology schema, wherein the path expression is obtained by combining relationship properties between classes the relationship property having the conflict bridges and the new relationship classes.
  • 12. The method according to claim 10, wherein in step c), a new mapping between the refined ontology schema and the data schema of the application data is created by mapping the property of the new relationship class into the data schema corresponding to the relationship property having the conflict.
  • 13. The method according to claim 8, wherein a representation model of the ontology is resource description framework model or a web ontology language model.
  • 14. The method according to claim 8, wherein the storage format of the application data is a relational table in a relational database or the eXtended Markup Language.
  • 15. A computer program product for automatically refining ontology within a specific context embodied in computer executable program stored in a computer accessible storage medium, comprising: a) means for discovering a semantics relationship conflict existing between an original ontology schema and application data; andb) means for refining the original ontology schema based on the discovered semantics relationship conflict, andc) means for creating a new mapping between the refined ontology schema and a data schema of the application data.
  • 16. The computer program according to claim 15, wherein the means for discovering a semantics relationship a conflict existing between the original ontology schema and the application data is discovered by means for extracting a relationship property having a conflict with a semantic relationship in the application data in the original ontology schema, and further comprising means for refining the original ontology schema by transforming the extracted relationship property having the conflict into a new relationship class.
  • 17. The computer program according to claim 16, further comprising extracting a data schema corresponding to the relationship property having the conflict, and means for referring the data schema corresponding to the relationship property having the conflict as the property of the new relationship class, after transforming the relationship property having the conflict into the new relationship class.
  • 18. The computer program according to claim 15, further comprising means for using a path expression to present an impacted sub-property relation in the ontology schema, wherein the path expression is obtained by combining relationship properties between classes the relationship property having the conflict bridges and the new relationship classes.
  • 19. The computer program according to claim 18, further comprising means for creating a new mapping between the refined ontology schema and the data schema of the application data by mapping the property of the new relationship class into the data schema corresponding to the relationship property having the conflict.
Priority Claims (1)
Number Date Country Kind
200610153706.7 Sep 2006 CN national