The work on translating a hand-made specification to an ontology presents some interesting problems. My current example is to translate the specification of the XML data files of ReSpecTh specification.
Why do this?
Having a machine readable specification can help in several ways:
- Validation: The XML can be automatically validated using the ontology.
- Comparison/Translation: The meta data in the ontology could be used for comparisons with other data structures or even the translation to other data structures.
- Searching: The meta data in the ontology could be used as a basis for more intelligent searching. This could include using the ontology to translate the data to a form that is easily searchable. On example, is forming a knowledge graph of the instance data.
- Interface: The ontology could be used to generate an intelligent interface to create an ReSpecTh XML file.
- Data Extraction: The meta data and relations to data types contained in the ontology could be helpful in the automatic extraction of data from other sources.
Specification verification and clarification
One of the interesting aspects of translating the specification is the differentiation of elements which are listed in the specification as one entity. One example of this is the translation of the ‘property’ element. Though it is listed as one element, ‘property’, within the description there are a myriad of cases. This cases, for example, can decide whether an element or attribute is mandatory or even just ignored.
This work is ongoing… There will be a paper contributed to the KEOD 2024 (16th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management)