Hello Dave, I have Item as data type property in my Protege ontology. On Mon, Sep 26, 2016 at 9:28 AM, Dave Reynolds <[email protected]> wrote:
> On 26/09/16 16:59, kumar rohit wrote: > >> I have already tried this: >> >> DatatypeProperty item= model.getDatatypeProperty(ns+"Item"); >> > > If the URI ns+"Item" is not already declared as a DatatypeProperty in your > ontology then you'll need model.createDatatypeProperty so as to side-effect > the model to include the declaration of Item. > > Dave > > > Literal value = model.createTypedLiteral(Some value); >> >> customer.setPropertyValue(item, value); >> >> On Mon, Sep 26, 2016 at 8:22 AM, Lorenz Buehmann < >> [email protected]> wrote: >> >> Please try to use the Apache Jena documentations first, most things are >>> pretty much explained there [1] >>> >>>> I am sorry my problem still exists and some values are stored as data >>>> property and some still as "Annotations" though I used the same >>>> procedure >>>> for all. >>>> >>>> OntResource res=model.createOntResource(ns+ value); //value come from >>>> >>> java >>> >>>> variable >>>> >>>> OntProperty price= model.getOntProperty(ns+"ItemPrice"); >>>> >>> I don't understand why you still do not use a typed OWL property here, >>> as I said in my previous answer?... >>> OWL has object property and data property, thus, why don't you call >>> >>> model.getDatatypeProperty(ns+"ItemPrice") >>> >>> For object properties the same: >>> model.getObjectProperty(String uri) >>> >>> [1] https://jena.apache.org/documentation/ontology/#ontology-properties >>> >>>> customer.setPropertyValue(price, res); >>>> >>>> On Mon, Sep 26, 2016 at 5:20 AM, Lorenz B. < >>>> [email protected]> wrote: >>>> >>>> Yes, in that case it is supposed to be an RDF property, thus not typed >>>>> as expected to be in an OWL ontology. >>>>> >>>>>> I used OntModel as model to read the ontology but used Property >>>>>> instead >>>>>> >>>>> of >>>>> >>>>>> OntProperty, is this an issue? >>>>>> >>>>>> On Mon, Sep 26, 2016 at 4:34 AM, Lorenz B. < >>>>>> [email protected]> wrote: >>>>>> >>>>>> For Protege it MUST be an OWL data property, otherwise the OWL API >>>>>>> parser will treat it as OWL annotation property. This has to be >>>>>>> explicitly declared in the ontology, the easiest way in Jena would be >>>>>>> >>>>>> to >>> >>>> use an OntModel >>>>>>> >>>>>>> Yes Lorenz sir I have written it to disk but it writes the data in >>>>>>>> >>>>>>> the >>> >>>> Annotations tab rather than in the data property. >>>>>>>> >>>>>>>> Customer1.setPropertyValue(price, pricevalue); >>>>>>>> Customer1.setPropertyValue(quantity, value); >>>>>>>> >>>>>>>> I want to write as data property values. >>>>>>>> >>>>>>>> On Sun, Sep 25, 2016 at 7:35 AM, Lorenz B. < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>> Ehm, did you write the model to disk? Without seeing any code it's >>>>>>>>> >>>>>>>> like >>>>> >>>>>> to try a shot in the dark. >>>>>>>>> >>>>>>>>> Customer1.setPropertyValue(price, pricevalue); >>>>>>>>>> Customer1.setPropertyValue(quantity, value); >>>>>>>>>> >>>>>>>>>> Next time after login as Customer1, previous data has not >>>>>>>>>> >>>>>>>>> overwritten >>> >>>> and >>>>>>> >>>>>>>> the owl file shows me old data also.. >>>>>>>>>> >>>>>>>>>> On Sun, Sep 25, 2016 at 4:16 AM, Lorenz B. < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>> >>>>>>>>>> Please learn to read the Javadoc [1] if you're programming in >>>>>>>>>>> >>>>>>>>>> Java... >>>>> >>>>>> And using an IDE would also help, usually this is able to show you >>>>>>>>>>> >>>>>>>>>> the >>>>> >>>>>> arguments and it's expected types. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> [1] >>>>>>>>>>> https://jena.apache.org/documentation/javadoc/jena/ >>>>>>>>>>> org/apache/jena/ontology/OntResource.html >>>>>>>>>>> >>>>>>>>>>> I used this: customer.setPropertyValue(property, >>>>>>>>>>>> >>>>>>>>>>> pricevariable); >>> >>>> >>>>>>>>>>>> property here is property name:Item price and pricevariable is >>>>>>>>>>>> >>>>>>>>>>> int >>> >>>> value >>>>>>>>> >>>>>>>>>> but it gives me error of : >>>>>>>>>>>> >>>>>>>>>>>> *int can not be converted to RDF Node* >>>>>>>>>>>> >>>>>>>>>>>> On Sat, Sep 24, 2016 at 8:29 AM, Dave Reynolds < >>>>>>>>>>>> >>>>>>>>>>> [email protected]> >>>>>>>>>>> >>>>>>>>>>>> wrote: >>>>>>>>>>>> >>>>>>>>>>>> On 24/09/16 15:37, kumar rohit wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks Soroka and Dave, but how I can do it dynamically? I used >>>>>>>>>>>>>> >>>>>>>>>>>>> this >>>>>>> >>>>>>>> Property property=model.getProperty(name space+ "Item >>>>>>>>>>>>>> >>>>>>>>>>>>> price"); >>> >>>> and then customer_1.addLiteral(property, Text Field value); >>>>>>>>>>>>>> Now how to remove previously entered values? Any built-in >>>>>>>>>>>>>> >>>>>>>>>>>>> methods? >>>>> >>>>>> Read my message again, I gave you the name of a method that does >>>>>>>>>>>>> >>>>>>>>>>>> the >>>>> >>>>>> replacement (= remove + add) in one go. >>>>>>>>>>>>> >>>>>>>>>>>>> The javadoc and documentation tutorials will help you find the >>>>>>>>>>>>> >>>>>>>>>>>> many >>>>> >>>>>> remove >>>>>>>>>>> >>>>>>>>>>>> methods that are available. >>>>>>>>>>>>> >>>>>>>>>>>>> Dave >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Sat, Sep 24, 2016 at 6:48 AM, A. Soroka <[email protected] >>>>>>>>>>>>> > >>>>>>>>>>>>> >>>>>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Remove the old triple and add a new one with the new value. >>>>>>>>>>>>>> >>>>>>>>>>>>>>> --- >>>>>>>>>>>>>>> A. Soroka >>>>>>>>>>>>>>> The University of Virginia Library >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Sep 24, 2016, at 9:33 AM, kumar rohit < >>>>>>>>>>>>>>> >>>>>>>>>>>>>> [email protected] >>> >>>> wrote: >>>>>>>>>>> >>>>>>>>>>>> I want to save item price entered by users in file. Samsung >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Galaxy >>>>>>> >>>>>>>> hasPrice >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ?value. >>>>>>>>>>>>>>>> User enter some value and it is stored in the file. After >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> some >>> >>>> time, >>>>>>>>> >>>>>>>>>> another price for same Samsung Galaxy is entered and it is >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> stored. >>>>>>> >>>>>>>> But >>>>>>>>>>> >>>>>>>>>>>> the >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> problem is that the old price is also there. >>>>>>>>>>>>>>>> How can I overwrite the previous values with recently >>>>>>>>>>>>>>>> entered >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> value >>>>>>> >>>>>>>> so >>>>>>>>>>> >>>>>>>>>>>> that >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> my ontology save and shows one value at a time. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> -- >>>>>>>>>>> Lorenz Bühmann >>>>>>>>>>> AKSW group, University of Leipzig >>>>>>>>>>> Group: http://aksw.org - semantic web research center >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>> Lorenz Bühmann >>>>>>>>> AKSW group, University of Leipzig >>>>>>>>> Group: http://aksw.org - semantic web research center >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>> Lorenz Bühmann >>>>>>> AKSW group, University of Leipzig >>>>>>> Group: http://aksw.org - semantic web research center >>>>>>> >>>>>>> >>>>>>> -- >>>>> Lorenz Bühmann >>>>> AKSW group, University of Leipzig >>>>> Group: http://aksw.org - semantic web research center >>>>> >>>>> >>>>> >>> >>> >> >
