Comment obtenir uniquement des triplets qui représentent la structure de graphe - hiérarchie de classe et de propriétés (c'est-à-dire sans individus, valeurs de propriété)?Obtenir la structure du graphe RDF par requête SPARQL
Répondre
Il semble que j'ai besoin de triplets rdf: type, owl: class et etc. Donc, c'est ma variante:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
select ?s ?p ?o
where
{
{
graph <http://graph.org/gr>
{
?s rdf:type ?o.
?s ?p ?o.
}
FILTER
(?o IN (owl:Class, owl:DatatypeProperty, owl:AnnotationProperty, owl:ObjectProperty, owl:DataRange, owl:Ontology,
owl:DataRange,owl:DeprecatedClass,owl:DeprecatedProperty,owl:OntologyProperty,rdfs:Class,owl:Restriction,owl:InverseFunctionalProperty,
owl:FunctionalProperty,owl:AllDisjointClasses,rdf:Property, rdfs:Datatype)
)
}
UNION
{
graph <http://graph.org/gr>
{
?s ?p ?o.
}
FILTER
(?p IN (rdfs:subClassOf,rdfs:subPropertyOf,rdfs:domain,rdfs:range,rdfs:label,rdfs:comment,rdfs:member,
rdf:first,rdf:rest,owl:allValuesFrom,owl:someValuesFrom,owl:AnnotationProperty,owl:equivalentClass,
owl:equivalentProperty,owl:hasValue,owl:OntologyProperty,owl:SymmetricProperty,owl:TransitiveProperty,
owl:versionInfo,owl:priorVersion,owl:oneOf,owl:maxCardinality,owl:minCardinality,owl:inverseOf,
owl:incompatibleWith,owl:intersectionOf,owl:imports,owl:backwardCompatibleWith,owl:AllDifferent,
owl:differentFrom,owl:disjointWith,owl:distinctMembers,owl:complementOf,owl:cardinality,owl:unionOf,owl:onProperty))
}
}
La prochaine fois devrait clarifier cela dans votre question. Cela ressemble plus à l'interrogation de tous les axiomes de schéma d'une ontologie OWL. Il vous manque toujours des axiomes comme '? P rdf: tapez owl: FunctionalProperty' etc. – AKSW
De plus, vous avez demandé des triplets, donc, je ne vois pas pourquoi vous utilisez une requête' SELECT'. – AKSW
Désolé, j'ai confondu les triples avec des solutions. – palandlom
Pour hiérarchie de classes: 'CONSTRUIRE OU {sous rdfs:? SubClassOf sup}' Analogue de la hiérarchie de propriété à l'aide du prédicat 'rdfs: subPropertyOf' – AKSW
Ou dans une requête: 'CONSTRUCT { ? S? P? O. } OÙ {? VALEURS p {rdfs: subClassOf rdfs: subPropertyOf} s p o } ' – AKSW
Merci, mais il semble que je dois aussi rdf:? Type, hibou: classe: Domaine: triplets gamme. – palandlom