Hello Suzanne; I'm not sure this is clear yet. Are you describing class restrictions? I.e. something along the lines of: :Person rdfs:subClassOf [:hasProf some :profession] (Sorry for mixing Manchester and RDF syntax, but hopefully the intent is understandable.)
Or do you mean that there are instances of :Person with :profession's, such as: :Person :hasProf :engineer ...or something else. I'm having difficulty understanding the relationship between your property (has_a or has_a_profession) and the owl:oneOf class definition. In terms of SWRL, what rule processor was used to make the inference? -- Scott On Nov 12, 2:09 pm, Suzanne Collier <[email protected]> wrote: > Holger, > > Thanks! > > Ok, so here is a sample ontology, which I hope clarifies things. > > Ontology1: > has a class person > each person has a profession > > Ontology2: > has a class professional > each professional has a profession > each profession is owl:oneOf {engineer, teacher, doctor, > lawyer...} > > The mapping that takes place is: > > ont1:profession -> ont2:profession > > In TopBraid this seems to require iterating through the owl:oneOf list > to pick the correct type. In the SWRL rule this is not necessary. We > wrote the SWRL rules by hand in the rdf/xml format. > > Thanks for your help! > > Suzanne > > On Nov 12, 11:46 am, Holger Knublauch <[email protected]> wrote: > > > > For my first question, I may have not been specific enough. I am > > > creating a function via an eclipse plug-in, which requires me to > > > extend AbstractFunction1, AbstractFunction2 or AbstractFunction3. > > > This is what is limiting the number of arguments. Is there a > > > workaround for this? > > > Ah, yes sure. Either implement the Jena interface Function directly, > > or subclass > > > org.topbraid.sparql.functions.AbstractFunction > > > > For my second question, here is the SWRL rule which corresponds to the > > > query: > > > > <ruleml:imp> > > > <ruleml:_body> > > > <swrlx:datavaluedPropertyAtom swrlx:property="&ont1;property"> > > > <ruleml:var>entity</ruleml:var> > > > <ruleml:var>value</ruleml:var> > > > </swrlx:datavaluedPropertyAtom> > > > </ruleml:_body> > > > <ruleml:_head> > > > <swrlx:individualPropertyAtom swrlx:property="&ont2;property"> > > > <ruleml:var>entity</ruleml:var> > > > <ruleml:var>value</ruleml:var> > > > </ruleml:_head> > > > </ruleml:imp> > > > > For some reason in SWRL it matches the URI without having to iterate > > > through the list. Let me know if you need anymore information. > > > Yes I guess we will need more information. What tool did you create > > the above rule with? Doesn't look like real SWRL to me. Also, you > > stated that you need to match against owl:oneOfs? I don't see how this > > is related. Could you provide the actual example ontology and some > > other clues? > > > Thanks > > Holger --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "TopBraid Composer Users" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/topbraid-composer-users?hl=en -~----------~----~----~----~------~----~------~--~---
