Nothing is "saved as annotations". Without using explicit OWL types, the
OWL API - which is quite strict -

is not able to determine the type of a property, thus, it's treated as
annotation property. and according to the OWL 2 specs, entities have to
be typed explicitly.


On 26.09.2016 19: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.?
>
>
> On Mon, Sep 26, 2016 at 10:22 AM, kumar rohit <kumar.en...@gmail.com> 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 <dave.e.reyno...@gmail.com>
>> 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 <
>>>> buehm...@informatik.uni-leipzig.de> 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. <
>>>>>> buehm...@informatik.uni-leipzig.de> 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. <
>>>>>>>> buehm...@informatik.uni-leipzig.de> 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. <
>>>>>>>>>> buehm...@informatik.uni-leipzig.de> 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. <
>>>>>>>>>>>> buehm...@informatik.uni-leipzig.de> 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 <
>>>>>>>>>>>>>>
>>>>>>>>>>>>> dave.e.reyno...@gmail.com>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> 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 <
>>>>>>>>>>>>>>> aj...@virginia.edu>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> 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 <
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> kumar.en...@gmail.com
>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>

Reply via email to