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;
}







1















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.










share|improve this question





























    1















    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.










    share|improve this question

























      1












      1








      1


      0






      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.










      share|improve this question














      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






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 5 '18 at 9:21









      JohnnyJohnny

      2,86873457




      2,86873457
























          1 Answer
          1






          active

          oldest

          votes


















          2














          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?






          share|improve this answer


























          • 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 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





            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












          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
          });


          }
          });














          draft saved

          draft discarded


















          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









          2














          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?






          share|improve this answer


























          • 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 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





            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
















          2














          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?






          share|improve this answer


























          • 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 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





            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














          2












          2








          2







          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?






          share|improve this answer















          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?







          share|improve this answer














          share|improve this answer



          share|improve this answer








          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 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





            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






          • 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 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





            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




















          draft saved

          draft discarded




















































          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.




          draft saved


          draft discarded














          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





















































          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







          這個網誌中的熱門文章

          Xamarin.form Move up view when keyboard appear

          Post-Redirect-Get with Spring WebFlux and Thymeleaf

          Anylogic : not able to use stopDelay()