Hi, On Wed, 2011-08-03 at 21:44 +0200, Maatari Daniel Okouya wrote: > Dear Everyone, > > I'm new to RDFS and I would like to understand something that i can't > figure out by myself. > > I would like to know if RDFS reasoner support ontology import. What i > mean is that in OWL it is clear that to import an ontology and not > just identify the external element via namespace, it is required to > use the import statement. this way all the definition including > assertion axiom of the imported ontology are available in the > importing ontology. > > However this mechanism do not exist in RDF. I suppose that it is the > reason why, RDFS necessitate a specific native support in the tools.
?? Don't know what you mean by that, to reason with RDFS you need an RDFS reasoner, nothing to do with import processing. > That , the tools such as jena already posses the definition of RDFS. > My question now would be: > > If i define, an ontology using RDFS in a file let say onto1 and create > another ontology in another file onto2 that use terms defined in > onto1. Can the jena reasoner properly reason on onto2. will it be able > to recover information from onto1. If yes, what are the proper > contruct in RDFS/XML to support the import. Is this behavior Jena > specific or any reasoner can? There are (at least) two plausible approaches here: (1) Use owl:imports to explicitly import the ontologies you are interested in. RDFS is true subset of OWL Full so there is no problem using owl:imports and no other OWL constructs in you instance data. That way you can use Jena's OntModel implementation to do the import processing for you but can define it to just use the RDFS reasoner. (2) Adopt a convention that any mention of an ontology term should cause your processor to dereference that URI and add whatever comes back as an implicit import and then reason over the recursive closure of those imports. Some tools work this way. Jena allows you to write such tools on top but doesn't implement it natively (it is not part of the RDF/RDFS specs and can be very expensive and fragile). With (1) you don't need any code other than configuring the Jena OntModel but onto1 has to explicitly import onto2. With (2) you are going beyond the specs, though in a reasonable way, and would need to write your own additional processing layer to configure the RDFS resasoner. Dave
