1) Weil DBpedia Tausende von Klassen für alle Arten von verschiedenen Dingen enthält und sie nie irgendwo hingekommen wären, wenn sie das Web nach anderen Klassen durchsuchen müssten, bevor sie mit der Veröffentlichung der DBpedia-Daten beginnen. Also haben sie ihre eigene DBpedia-Ontologie mit ihren eigenen Klassen erstellt. In einigen Fällen ordnen sie die DBpedia-Ontologieklassen zu vorhandenen Klassen über rdfs:subClassOf
oder owl:equivalentClass
später zu, wenn sie vorhandene Klassen entdecken. Außerdem kann es geringfügige Unterschiede geben, wie FOAF "Person" definiert und wie DBpedia "Person" definiert. Zum Beispiel, ist eine fiktive Figur wie Harry Potter eine Person oder nicht? Es kann sicherer sein, eine eigene Klasse zu definieren, damit Sie die volle Kontrolle über die Definition haben.
2) Es ist eine komplexe Entscheidung. Wenn es ein gut etabliertes Vokabular wie FOAF, DC, SKOS usw. gibt, das Ihre Bedürfnisse abdeckt, sollten Sie es immer wieder verwenden, anstatt es selbst zu erfinden. Wenn kein anwendbares Vokabular vorhanden ist, oder wenn Sie nicht vertrauen, dass der Herausgeber des Vokabulars seriös ist und das Vokabular auf lange Sicht aufrecht und stabil hält, dann ist es wahrscheinlich besser, ein eigenes zu erstellen. Sie können immer mehrere Vokabulare kombinieren oder ein vorhandenes Vokabular um einige eigene Eigenschaften erweitern (in Ihrem eigenen Namensraum). Wenn Sie eigene Klassen und Eigenschaften definieren, sollten Sie immer versuchen, sie vorhandenen Klassen und Eigenschaften zuzuordnen. Wenn Sie die Wahl zwischen mehreren vorhandenen Vokabularen haben, wählen Sie die, die am weitesten verbreitet ist. Dienste wie LOV, LODstats und Sindice Analytics können dabei helfen.
danke. Es gibt mir eine Idee/Perspektive. –