Thanks Dave and Lorenz, what I actually did now is just changed the name of data property from Item to item, and now it works i-e saved it as data property. Thanks again sir for both of your kind suggestions.
On Mon, Sep 26, 2016 at 10:32 AM, Dave Reynolds <[email protected]> wrote: > On 26/09/16 18:26, kumar rohit wrote: > >> May I know why this occurs usually (save data as Annotations)? I wonder >> what mistake I have actually done to encounter this.? >> > > You would need to ask the protege folks why they put it there, protege is > nothing to do with Jena. > > However, one thing to check is whether you are using the correct URI. If > you have the wrong value in the "ns" variable then you might be adding a > different property than the one you have declared. > > Again, to get help you need to provide a complete, minimal example. > > In this case you need a single generated ontology file with the > DatatypeProperty declaration and the instance with the corresponding value > as generated by your Jena code. > > Then if the ontology files looks correct but doesn't show in protege how > you expect then you have something to talk to the protege folks about. > > If the file doesn't look correct then you know there's a problem in your > jena code. In which case, if need help then show a complete, minimal > example of the code that generated the file. > > Dave > > > 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 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>> >>>>>> >>>>> >>>> >>> >> >
