Проверьте, является ли предикат стандартного типа в Сезам
Есть ли в Сезаме какая-либо возможность проверить, является ли Предикат (URI), стандартным предикатом w3c (например, предикатами RDFS) как RDF.TYPE или включен в словарь RDF?
1 ответ
Вы можете просто сравнить часть пространства имен IRI с пространством имен словаря, вот так:
IRI predicate = ... ; // predicate you want to check
switch (predicate.getNamespace()) {
case RDF.NAMESPACE:
// it's an RDF predicate
break;
case RDFS.NAMESPACE:
// it's an RDFS predicate
break;
... etc
}
Конечно, это не скажет вам, существует ли на самом деле предикат как часть словаря RDF/RDFS - он просто скажет вам, что его часть пространства имен соответствует. Так что, если ваш предикат - это какое-то выдуманное свойство, например http://www.w3.org/1999/02/22-rdf-syntax-ns#foobar
, он также завершит свою часть пространства имен RDF: он не проверяет, является ли foobar
свойство действительно существует в этом пространстве имен.
Проверьте API Javadoc для полного обзора всех констант свойств в словарях RDF и RDFS.