As far as I know RDF describes a graph where the nodes are the subjects and predicates and the edges are the statements about them. A statement is described with RDF triples of subjects predicates and objects, e.g.
#chiwawa rdfs:subClassOf #dog
What I need is adding more properties to a statement or in other words, to an edge on the graph. For example I could add a possibility and a link to the proof property to the statement:
{
subject: "#chiwawa",
predicate: "rdfs:subClassOf",
object: "#dog",
possibility: "certain",
proof: "https://en.wikipedia.org/wiki/Chihuahua_%28dog%29"
}
Or in Neo4j Cypther it would look something like this:
CREATE
(subject {id: '#chiwawa', name:'Chiwawa'})
-[statement {
predicate: 'rdfs:subClassOf',
possibility: 'certain',
proof: 'https://en.wikipedia.org/wiki/Chihuahua_%28dog%29'
}]->
(object {id: '#dog', name:'Dog'})
Is there a way to model such a thing in RDF somehow? What is the proper way to deal with this problem? It appears to be something general, so I assume there is a best practice...