Can an ObjectProperty have a DatatypeProperty?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
I'm trying to describe a graph using OWL. Let's say I want two classes workshop
and location
, and an edge between them hasLocation
. Can I have a property on hasLocation
which will denote the time that workshop
occurred at location
? I tried to define this using Protege but it seems one can only define properties on classes.
rdf owl ontology protege
add a comment |
I'm trying to describe a graph using OWL. Let's say I want two classes workshop
and location
, and an edge between them hasLocation
. Can I have a property on hasLocation
which will denote the time that workshop
occurred at location
? I tried to define this using Protege but it seems one can only define properties on classes.
rdf owl ontology protege
add a comment |
I'm trying to describe a graph using OWL. Let's say I want two classes workshop
and location
, and an edge between them hasLocation
. Can I have a property on hasLocation
which will denote the time that workshop
occurred at location
? I tried to define this using Protege but it seems one can only define properties on classes.
rdf owl ontology protege
I'm trying to describe a graph using OWL. Let's say I want two classes workshop
and location
, and an edge between them hasLocation
. Can I have a property on hasLocation
which will denote the time that workshop
occurred at location
? I tried to define this using Protege but it seems one can only define properties on classes.
rdf owl ontology protege
rdf owl ontology protege
asked Nov 5 '18 at 9:21
JohnnyJohnny
2,86873457
2,86873457
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
You could use annotations or punning.
However, annotation or data property will be a property of the hasLocation
property itself, and not of its particular occurences. That is a key difference between RDF/OWL and LPG.
I'd suggest to use more or less common modelling techniques. In Turtle:
@prefix : <http://www.semanticweb.org/1226761/ontologies/2018/10/untitled-ontology-6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
[ rdf:type owl:Ontology ] .
:Workshop rdf:type owl:Class .
:Location rdf:type owl:Class .
:SpatioTemporalExtent rdf:type owl:Class .
:hasLocation rdf:type owl:ObjectProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range :Location .
:hasSpatioTemporalExtent rdf:type owl:ObjectProperty ;
rdfs:domain :Workshop ;
rdfs:range :SpatioTemporalExtent .
:hasTime rdf:type owl:DatatypeProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range xsd:dateTime .
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent :extent11 .
:extent11 rdf:type owl:NamedIndividual , :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
:city1 rdf:type owl:NamedIndividual , :Location .
Alternatively, with anonymous individuals:
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent [rdf:type :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
] .
Do you know what is the reasoning behind not allowing properties on edges?
RDF means Resource Description Framework. It was initially intended for publishing data on the Web. Resources should have URIs (well, unless they are literals). Property occurences are not considered to be ontologically solid enough to have such strong identifiers. For example, their number is relatively large… In English, for comparison, one'd rather say "I love you" than "I love-5 you".
Blank nodes (with their weak identifiers) in the predicate position could resolve this issue. So the question remains why blank nodes are not allowed in the predicate position (even for Tim Berners-Lee, though not for Manu Sporny).
I suppose that the reason is the desire to not leave first order ground for good, bearing in mind 'natural' translation of the a b c
triple into FOL as something like b(a,c)
. Then b c
could be translated as ∃x b(x,c)
, but what about a c
?
So if I understand correctly the solution you propose is to have a class called SpatioTemporalExtent and connect Workshop->SpatioTemporalExtent (with the datetime as a property)->Location? Is there no way to have the timestamp on an edge connecting workshop to location?
– Johnny
Nov 5 '18 at 12:24
1
Yes, you understand correctly. And there is no way to have the timestamp on particular "edge" (it is more or less possible to have this timestamp on all edges constitueted by this property) in RDF or OWL. There are however RDF extensions like Blazegraph's RDF*, Google's Badwolf, Strabon's (?) stRDF etc.
– Stanislav Kralin
Nov 5 '18 at 12:33
1
And obviously you can make a datatype property a property ofWorkshop
, if it is not the case that a workshop can occur at two different places at two different times (e. g. in Rome today, in Paris tomorrow).
– Stanislav Kralin
Nov 5 '18 at 14:34
1
Do you know what is the reasoning behind not allowing properties on edges?
– Johnny
Nov 5 '18 at 14:56
1
@Johnny this can be done in RDF via reification only. An alternative would be using a property graph or some non-standard extensions for RDF
– AKSW
Nov 5 '18 at 20:24
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53151454%2fcan-an-objectproperty-have-a-datatypeproperty%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You could use annotations or punning.
However, annotation or data property will be a property of the hasLocation
property itself, and not of its particular occurences. That is a key difference between RDF/OWL and LPG.
I'd suggest to use more or less common modelling techniques. In Turtle:
@prefix : <http://www.semanticweb.org/1226761/ontologies/2018/10/untitled-ontology-6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
[ rdf:type owl:Ontology ] .
:Workshop rdf:type owl:Class .
:Location rdf:type owl:Class .
:SpatioTemporalExtent rdf:type owl:Class .
:hasLocation rdf:type owl:ObjectProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range :Location .
:hasSpatioTemporalExtent rdf:type owl:ObjectProperty ;
rdfs:domain :Workshop ;
rdfs:range :SpatioTemporalExtent .
:hasTime rdf:type owl:DatatypeProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range xsd:dateTime .
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent :extent11 .
:extent11 rdf:type owl:NamedIndividual , :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
:city1 rdf:type owl:NamedIndividual , :Location .
Alternatively, with anonymous individuals:
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent [rdf:type :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
] .
Do you know what is the reasoning behind not allowing properties on edges?
RDF means Resource Description Framework. It was initially intended for publishing data on the Web. Resources should have URIs (well, unless they are literals). Property occurences are not considered to be ontologically solid enough to have such strong identifiers. For example, their number is relatively large… In English, for comparison, one'd rather say "I love you" than "I love-5 you".
Blank nodes (with their weak identifiers) in the predicate position could resolve this issue. So the question remains why blank nodes are not allowed in the predicate position (even for Tim Berners-Lee, though not for Manu Sporny).
I suppose that the reason is the desire to not leave first order ground for good, bearing in mind 'natural' translation of the a b c
triple into FOL as something like b(a,c)
. Then b c
could be translated as ∃x b(x,c)
, but what about a c
?
So if I understand correctly the solution you propose is to have a class called SpatioTemporalExtent and connect Workshop->SpatioTemporalExtent (with the datetime as a property)->Location? Is there no way to have the timestamp on an edge connecting workshop to location?
– Johnny
Nov 5 '18 at 12:24
1
Yes, you understand correctly. And there is no way to have the timestamp on particular "edge" (it is more or less possible to have this timestamp on all edges constitueted by this property) in RDF or OWL. There are however RDF extensions like Blazegraph's RDF*, Google's Badwolf, Strabon's (?) stRDF etc.
– Stanislav Kralin
Nov 5 '18 at 12:33
1
And obviously you can make a datatype property a property ofWorkshop
, if it is not the case that a workshop can occur at two different places at two different times (e. g. in Rome today, in Paris tomorrow).
– Stanislav Kralin
Nov 5 '18 at 14:34
1
Do you know what is the reasoning behind not allowing properties on edges?
– Johnny
Nov 5 '18 at 14:56
1
@Johnny this can be done in RDF via reification only. An alternative would be using a property graph or some non-standard extensions for RDF
– AKSW
Nov 5 '18 at 20:24
add a comment |
You could use annotations or punning.
However, annotation or data property will be a property of the hasLocation
property itself, and not of its particular occurences. That is a key difference between RDF/OWL and LPG.
I'd suggest to use more or less common modelling techniques. In Turtle:
@prefix : <http://www.semanticweb.org/1226761/ontologies/2018/10/untitled-ontology-6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
[ rdf:type owl:Ontology ] .
:Workshop rdf:type owl:Class .
:Location rdf:type owl:Class .
:SpatioTemporalExtent rdf:type owl:Class .
:hasLocation rdf:type owl:ObjectProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range :Location .
:hasSpatioTemporalExtent rdf:type owl:ObjectProperty ;
rdfs:domain :Workshop ;
rdfs:range :SpatioTemporalExtent .
:hasTime rdf:type owl:DatatypeProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range xsd:dateTime .
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent :extent11 .
:extent11 rdf:type owl:NamedIndividual , :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
:city1 rdf:type owl:NamedIndividual , :Location .
Alternatively, with anonymous individuals:
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent [rdf:type :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
] .
Do you know what is the reasoning behind not allowing properties on edges?
RDF means Resource Description Framework. It was initially intended for publishing data on the Web. Resources should have URIs (well, unless they are literals). Property occurences are not considered to be ontologically solid enough to have such strong identifiers. For example, their number is relatively large… In English, for comparison, one'd rather say "I love you" than "I love-5 you".
Blank nodes (with their weak identifiers) in the predicate position could resolve this issue. So the question remains why blank nodes are not allowed in the predicate position (even for Tim Berners-Lee, though not for Manu Sporny).
I suppose that the reason is the desire to not leave first order ground for good, bearing in mind 'natural' translation of the a b c
triple into FOL as something like b(a,c)
. Then b c
could be translated as ∃x b(x,c)
, but what about a c
?
So if I understand correctly the solution you propose is to have a class called SpatioTemporalExtent and connect Workshop->SpatioTemporalExtent (with the datetime as a property)->Location? Is there no way to have the timestamp on an edge connecting workshop to location?
– Johnny
Nov 5 '18 at 12:24
1
Yes, you understand correctly. And there is no way to have the timestamp on particular "edge" (it is more or less possible to have this timestamp on all edges constitueted by this property) in RDF or OWL. There are however RDF extensions like Blazegraph's RDF*, Google's Badwolf, Strabon's (?) stRDF etc.
– Stanislav Kralin
Nov 5 '18 at 12:33
1
And obviously you can make a datatype property a property ofWorkshop
, if it is not the case that a workshop can occur at two different places at two different times (e. g. in Rome today, in Paris tomorrow).
– Stanislav Kralin
Nov 5 '18 at 14:34
1
Do you know what is the reasoning behind not allowing properties on edges?
– Johnny
Nov 5 '18 at 14:56
1
@Johnny this can be done in RDF via reification only. An alternative would be using a property graph or some non-standard extensions for RDF
– AKSW
Nov 5 '18 at 20:24
add a comment |
You could use annotations or punning.
However, annotation or data property will be a property of the hasLocation
property itself, and not of its particular occurences. That is a key difference between RDF/OWL and LPG.
I'd suggest to use more or less common modelling techniques. In Turtle:
@prefix : <http://www.semanticweb.org/1226761/ontologies/2018/10/untitled-ontology-6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
[ rdf:type owl:Ontology ] .
:Workshop rdf:type owl:Class .
:Location rdf:type owl:Class .
:SpatioTemporalExtent rdf:type owl:Class .
:hasLocation rdf:type owl:ObjectProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range :Location .
:hasSpatioTemporalExtent rdf:type owl:ObjectProperty ;
rdfs:domain :Workshop ;
rdfs:range :SpatioTemporalExtent .
:hasTime rdf:type owl:DatatypeProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range xsd:dateTime .
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent :extent11 .
:extent11 rdf:type owl:NamedIndividual , :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
:city1 rdf:type owl:NamedIndividual , :Location .
Alternatively, with anonymous individuals:
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent [rdf:type :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
] .
Do you know what is the reasoning behind not allowing properties on edges?
RDF means Resource Description Framework. It was initially intended for publishing data on the Web. Resources should have URIs (well, unless they are literals). Property occurences are not considered to be ontologically solid enough to have such strong identifiers. For example, their number is relatively large… In English, for comparison, one'd rather say "I love you" than "I love-5 you".
Blank nodes (with their weak identifiers) in the predicate position could resolve this issue. So the question remains why blank nodes are not allowed in the predicate position (even for Tim Berners-Lee, though not for Manu Sporny).
I suppose that the reason is the desire to not leave first order ground for good, bearing in mind 'natural' translation of the a b c
triple into FOL as something like b(a,c)
. Then b c
could be translated as ∃x b(x,c)
, but what about a c
?
You could use annotations or punning.
However, annotation or data property will be a property of the hasLocation
property itself, and not of its particular occurences. That is a key difference between RDF/OWL and LPG.
I'd suggest to use more or less common modelling techniques. In Turtle:
@prefix : <http://www.semanticweb.org/1226761/ontologies/2018/10/untitled-ontology-6#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
[ rdf:type owl:Ontology ] .
:Workshop rdf:type owl:Class .
:Location rdf:type owl:Class .
:SpatioTemporalExtent rdf:type owl:Class .
:hasLocation rdf:type owl:ObjectProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range :Location .
:hasSpatioTemporalExtent rdf:type owl:ObjectProperty ;
rdfs:domain :Workshop ;
rdfs:range :SpatioTemporalExtent .
:hasTime rdf:type owl:DatatypeProperty ;
rdfs:domain :SpatioTemporalExtent ;
rdfs:range xsd:dateTime .
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent :extent11 .
:extent11 rdf:type owl:NamedIndividual , :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
:city1 rdf:type owl:NamedIndividual , :Location .
Alternatively, with anonymous individuals:
:workshop1 rdf:type owl:NamedIndividual , :Workshop ;
:hasSpatioTemporalExtent [rdf:type :SpatioTemporalExtent ;
:hasLocation :city1 ;
:hasTime "2018-05-11T00:00:00"^^xsd:dateTime .
] .
Do you know what is the reasoning behind not allowing properties on edges?
RDF means Resource Description Framework. It was initially intended for publishing data on the Web. Resources should have URIs (well, unless they are literals). Property occurences are not considered to be ontologically solid enough to have such strong identifiers. For example, their number is relatively large… In English, for comparison, one'd rather say "I love you" than "I love-5 you".
Blank nodes (with their weak identifiers) in the predicate position could resolve this issue. So the question remains why blank nodes are not allowed in the predicate position (even for Tim Berners-Lee, though not for Manu Sporny).
I suppose that the reason is the desire to not leave first order ground for good, bearing in mind 'natural' translation of the a b c
triple into FOL as something like b(a,c)
. Then b c
could be translated as ∃x b(x,c)
, but what about a c
?
edited Nov 23 '18 at 19:24
answered Nov 5 '18 at 11:42
Stanislav KralinStanislav Kralin
7,97941943
7,97941943
So if I understand correctly the solution you propose is to have a class called SpatioTemporalExtent and connect Workshop->SpatioTemporalExtent (with the datetime as a property)->Location? Is there no way to have the timestamp on an edge connecting workshop to location?
– Johnny
Nov 5 '18 at 12:24
1
Yes, you understand correctly. And there is no way to have the timestamp on particular "edge" (it is more or less possible to have this timestamp on all edges constitueted by this property) in RDF or OWL. There are however RDF extensions like Blazegraph's RDF*, Google's Badwolf, Strabon's (?) stRDF etc.
– Stanislav Kralin
Nov 5 '18 at 12:33
1
And obviously you can make a datatype property a property ofWorkshop
, if it is not the case that a workshop can occur at two different places at two different times (e. g. in Rome today, in Paris tomorrow).
– Stanislav Kralin
Nov 5 '18 at 14:34
1
Do you know what is the reasoning behind not allowing properties on edges?
– Johnny
Nov 5 '18 at 14:56
1
@Johnny this can be done in RDF via reification only. An alternative would be using a property graph or some non-standard extensions for RDF
– AKSW
Nov 5 '18 at 20:24
add a comment |
So if I understand correctly the solution you propose is to have a class called SpatioTemporalExtent and connect Workshop->SpatioTemporalExtent (with the datetime as a property)->Location? Is there no way to have the timestamp on an edge connecting workshop to location?
– Johnny
Nov 5 '18 at 12:24
1
Yes, you understand correctly. And there is no way to have the timestamp on particular "edge" (it is more or less possible to have this timestamp on all edges constitueted by this property) in RDF or OWL. There are however RDF extensions like Blazegraph's RDF*, Google's Badwolf, Strabon's (?) stRDF etc.
– Stanislav Kralin
Nov 5 '18 at 12:33
1
And obviously you can make a datatype property a property ofWorkshop
, if it is not the case that a workshop can occur at two different places at two different times (e. g. in Rome today, in Paris tomorrow).
– Stanislav Kralin
Nov 5 '18 at 14:34
1
Do you know what is the reasoning behind not allowing properties on edges?
– Johnny
Nov 5 '18 at 14:56
1
@Johnny this can be done in RDF via reification only. An alternative would be using a property graph or some non-standard extensions for RDF
– AKSW
Nov 5 '18 at 20:24
So if I understand correctly the solution you propose is to have a class called SpatioTemporalExtent and connect Workshop->SpatioTemporalExtent (with the datetime as a property)->Location? Is there no way to have the timestamp on an edge connecting workshop to location?
– Johnny
Nov 5 '18 at 12:24
So if I understand correctly the solution you propose is to have a class called SpatioTemporalExtent and connect Workshop->SpatioTemporalExtent (with the datetime as a property)->Location? Is there no way to have the timestamp on an edge connecting workshop to location?
– Johnny
Nov 5 '18 at 12:24
1
1
Yes, you understand correctly. And there is no way to have the timestamp on particular "edge" (it is more or less possible to have this timestamp on all edges constitueted by this property) in RDF or OWL. There are however RDF extensions like Blazegraph's RDF*, Google's Badwolf, Strabon's (?) stRDF etc.
– Stanislav Kralin
Nov 5 '18 at 12:33
Yes, you understand correctly. And there is no way to have the timestamp on particular "edge" (it is more or less possible to have this timestamp on all edges constitueted by this property) in RDF or OWL. There are however RDF extensions like Blazegraph's RDF*, Google's Badwolf, Strabon's (?) stRDF etc.
– Stanislav Kralin
Nov 5 '18 at 12:33
1
1
And obviously you can make a datatype property a property of
Workshop
, if it is not the case that a workshop can occur at two different places at two different times (e. g. in Rome today, in Paris tomorrow).– Stanislav Kralin
Nov 5 '18 at 14:34
And obviously you can make a datatype property a property of
Workshop
, if it is not the case that a workshop can occur at two different places at two different times (e. g. in Rome today, in Paris tomorrow).– Stanislav Kralin
Nov 5 '18 at 14:34
1
1
Do you know what is the reasoning behind not allowing properties on edges?
– Johnny
Nov 5 '18 at 14:56
Do you know what is the reasoning behind not allowing properties on edges?
– Johnny
Nov 5 '18 at 14:56
1
1
@Johnny this can be done in RDF via reification only. An alternative would be using a property graph or some non-standard extensions for RDF
– AKSW
Nov 5 '18 at 20:24
@Johnny this can be done in RDF via reification only. An alternative would be using a property graph or some non-standard extensions for RDF
– AKSW
Nov 5 '18 at 20:24
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53151454%2fcan-an-objectproperty-have-a-datatypeproperty%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown