Hi Fajar, thanks for your answer. I followed your suggestion to rewrite the ontology in OWL format using protege. I can continue my project now. And thanks for the reading references as well.
regards, Arif On Thu, Dec 10, 2015 at 10:44 AM, Fajar Juang <[email protected]> wrote: > Hi Arif, > > AFAIK, DAML format is not supported by Jena at the moment (also mentioned > by Dave before). > It was used around year 2000 I think, and then replaced by RDF(S)/OWL > format as a standard. > > I check the GEDCOM ontology, and it shouldn’t be too hard to recreate them > in OWL format from scratch using protege 3.5 [1]. > afterward, you could start to play with them using Jena. > > If you’re not familiar with ontology in general, I suggest to read an > excellent introduction from Noy [1] for starter. > > Hope this helps, > Fajar > > [1] > http://protege.stanford.edu/download/protege/3.5/installanywhere/Web_Installers/ > < > http://protege.stanford.edu/download/protege/3.5/installanywhere/Web_Installers/ > > > [2] > http://protege.stanford.edu/publications/ontology_development/ontology101.pdf > < > http://protege.stanford.edu/publications/ontology_development/ontology101.pdf > > > > > On 10 Dec 2015, at 10:19, M. Arif Wicaksana <[email protected]> > wrote: > > > > Hi Dave, > > > > thanks for your response. > > > > I tried using RDFS_MEM. It gave me the classes, but I got the following > > error for printing the properties: > > > > Exception in thread "main" org.apache.jena.ontology.ProfileException: > > Attempted to use language construct OBJECT_PROPERTY that is not supported > > in the current language profile: RDFS > > > > I am not sure I understand about this: > > "However, for interpreting all the DAML specific things like > > daml:Restriction you will have to work at the RDF level and do this > > yourself." > > What does working at the RDF level mean? (I am sorry, still new in this > > topic) > > > > If DAML support is deprecated, does it mean that I cannot enrich the > GEDCOM > > ontology, and use it to do inference on a RDF file? > > > > > > Regards, > > Arif > > > > On Thu, Dec 10, 2015 at 9:55 AM, Dave Reynolds < > [email protected]> > > wrote: > > > >> Jena's DAML support was deprecated and then removed some time ago I > think. > >> > >> For just finding the classes you could use an RDFS_MEM model since DAML > is > >> using rdfs:Class to declare classes (and not owl:Class). > >> > >> However, for interpreting all the DAML specific things like > >> daml:Restriction you will have to work at the RDF level and do this > >> yourself. > >> > >> Dave > >> > >> > >> > >> On 09/12/15 20:12, M. Arif Wicaksana wrote: > >> > >>> Hi all, > >>> > >>> I have a project to use GEDCOM ontology ( > >>> http://www.daml.org/2001/01/gedcom/gedcom), enrich it with additional > >>> classes and properties, and do some inferences against an RDF file > based > >>> on > >>> the enriched GEDCOM ontology. > >>> > >>> Currently, I want to print all classes and properties from that > ontology > >>> (just to see if Jena can read it properly) using the code I put in the > end > >>> of this message. I download the ontology as 'gedcom-ori.xml'. However, > the > >>> code returns nothing. > >>> > >>> I have tried this code for another ontology which uses OWL. And it > works > >>> properly (prints all classes and properties). But I have no idea why it > >>> does not work for GEDCOM ontology above. I suspect the problem is > because > >>> the ontology uses DAML. I tried my best to find in the documentation of > >>> Jena about how to read DAML, but I can't find it. > >>> > >>> My question is, how can my code print all classes and properties from > the > >>> GEDCOM ontology? what is the correct way to read DAML-based ontology > using > >>> Jena? > >>> > >>> It is very likely that I misunderstand this problem, since I am still > new > >>> in this field. If that is the case, would you mind to show me my > mistake? > >>> > >>> Thanks! > >>> > >>> > >>> Regards, > >>> Arif > >>> > >>> > >>> ============= > >>> code: > >>> > >>> OntModel m = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM); > >>> OntDocumentManager dm = m.getDocumentManager(); > >>> dm.addAltEntry("http://www.daml.org/2001/01/gedcom/gedcom", > >>> "file:/home/arif/workspace/RoyalInference/gedcom-ori.xml"); > >>> > >>> m.read("http://www.daml.org/2001/01/gedcom/gedcom"); > >>> > >>> if(m.isEmpty()) { > >>> System.out.println("is empty"); > >>> } else { > >>> System.out.println("not empty"); > >>> } > >>> > >>> ExtendedIterator allProperties = m.listAllOntProperties(); > >>> while(allProperties.hasNext()) { > >>> System.out.println("datatypeproperties: " + > >>> allProperties.next().toString()); > >>> } > >>> > >>> > >>> ExtendedIterator classes = m.listClasses(); > >>> > >>> while(classes.hasNext()) { > >>> OntClass thisClass= (OntClass) classes.next(); > >>> System.out.println("found class: " + thisClass.toString()); > >>> > >>> ExtendedIterator instances = thisClass.listInstances(); > >>> > >>> while(instances.hasNext()) { > >>> Individual thisInstance = (Individual) instances.next(); > >>> System.out.println("found instance: " + > >>> thisInstance.toString()); > >>> } > >>> } > >>> ====================================== > >>> > >>> > >
