May I know why this occurs usually (save data as Annotations)? I wonder what mistake I have actually done to encounter this.?
On Mon, Sep 26, 2016 at 10:22 AM, kumar rohit <[email protected]> wrote: > 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 >>>>>> >>>>>> >>>>>> >>>> >>>> >>> >> >
