2015-12-21 1 views
-1

Tous les cours de mathématiques sont enseignés par David ne (aucun autre chargé de cours doivent être impliqués) .`Comment exprimer la phrase suivante dans la syntaxe owl valide?

<owl:Class rdf:ID="Math"> 
<owl:Restriction> 
<owl:onProperty uni:Resource="#isTaughtBy"/> 
<owl:allValuesFrom uni:Resource="#9432"/> 
</owl:Restriction> 
</owl:Class> 

le code ci-dessus semble invalide pourquoi je tente de tracer le graphique s'il vous plaît aider. Si quelqu'un se demande sur le # 9432 il se réfère à David

+1

Avez-vous essayé de produire des exemples vous-même? – maniacalrobot

+0

Vous voulez l'axiome ** MathClass ⊑ ∀isTaughtBy. {David} ⊓ is.isTaughtBy. {David} **. –

Répondre

0
<owl:Class rdf:ID="Math"> 
<rdfs:subClassOf> 
    <owl:Restriction> 
     <owl:onProperty rdf:resource="#isTaughtBy"/> 
     <owl:hasValue> 
      <owl:Class> 
       <uni:Name>david</uni:Name> 
      </owl:Class> 
     </owl:hasValue‌​> 
    </owl:Restriction> 
</rdfs:subClassOf> 

graph produced by rdf validator

+1

Je ne pense pas que ce soit juste. Cela indique que chaque instance de la classe Math est liée par la propriété isTaughtBy à _. Je ne pense pas que ' david' est correct. Et même si c'est le cas, on dirait que le cours est enseigné par un David, mais pas que ce soit * non * enseigné par quelqu'un d'autre. Un cours pourrait encore être enseigné par plusieurs conférenciers –

+1

s'il vous plaît montrez-moi comment le faire correctement? –

+0

En protégé ce serait ** MathClass SubClassOf (isTaughtBy seulement {David}) et (isTaughtBy some {David}) **. Je suggère que vous utilisiez protégé ou un autre outil basé sur OWL, ou au moins une syntaxe rdf lisible par l'homme, plutôt que de ttying pour écrire la sérialisation rdf/xml d'un mappage de graphe rdf d'une ontologie hibou. Ce sera probablement une expérience beaucoup plus agréable. –