Here is my data in tdb

 - (yago:Majid_Majidi yago:hasGender yago:male)
 - (yago:Majid_Majidi yago:actedIn yago:Boycott_film)
 - (yago:Majid_Majidi yago:directed yago:Baran_film)
 - (yago:Majid_Majidi yago:directed yago:The_Color_of_Paradise)
 - (yago:Majid_Majidi yago:created yago:Children_of_Heaven)
 - (yago:Majid_Majidi yago:created yago:Barefoot_to_Herat)

and here is my rule

[
rule1:
(?x http://yago-knowledge.org/resource/actedIn
http://yago-knowledge.org/resource/Boycott_film)
->
(?x http://yago-knowledge.org/resource/created
http://yago-knowledge.org/resource/Boycott_film)
]

If the rule works , I should get a new fact like

 - (yago:Majid_Majidi yago:created yago:Boycott_film)

but it won't works
Is there some problem with my rules?

and there is second question
Can I create a new fact that the resource  even not existing in my ontology
like

[
rule1:
(?x http://yago-knowledge.org/resource/actedIn
http://yago-knowledge.org/resource/Boycott_film)
->
(?x http://yago-knowledge.org/resource/is
http://yago-knowledge.org/resource/director)
]
the http://yago-knowledge.org/resource/is
& http://yago-knowledge.org/resource/director

is not in my ontology yet .
Can I create this using the rules ?
Or I should do something
Resource director = model.createResource( prefix + "director" );

Thanks you

Reply via email to