Hi

I understand that this is a high level discussion that involves changes to
the Fuseki interface.

However, my need is very basic: when sending a sparql command that breaks
an axiom of my ontology, I would like to receive a simple error indication.

Thankful.

Helio

On Wed, Nov 29, 2017 at 8:13 AM, Andy Seaborne <[email protected]> wrote:

>
>
> On 29/11/17 08:13, Dave Reynolds wrote:
>
>> With the Jena API there's a separate validate() call on InfModel (and
>> thus on OntModel) which will return a list of validation error reports.
>>
>> I don't think there's any way to invoke that from Fuseki.
>>
>
> Thread drift ....
>
> Pull request 316 [1] is an addition to Fuseki (service side) to allow
> extension services to be added - like an "invoke inference" service or
> "validation report" service.
>
> "/datasets/query" is the query service on /dataset - an extension service
> would be "/datasets/validation-report" and it can have an HTTP query string.
>
> PR#316 is not an implementation of any new services but it means code can
> be added and wired into Fuseki for features not in the core system.
>
> If there are customization features that don't fit into the "add a
> service" style, do please give a use case and describe what is required.
>
>     Andy
>
> [1] https://github.com/apache/jena/pull/316
>
>
> Whether the builtin rule reasoners would detect your specific issue I'm
>> not sure but probably. However, in general if you want complete DL level
>> validation you need to use a DL reasoner such as Pellet which is not
>> included in Jena.
>>
>> Dave
>>
>>
>> On 28/11/17 20:08, Hélio Azevedo wrote:
>>
>>> Hi
>>>
>>> I have an ontology that was elaborated with the support of the Protégé
>>> tool.
>>> In this ontology I use a data property, named "objectId". This property
>>> was
>>> flagged as "Functional". If I insert two "objectId" for the same concept
>>> and activate the Pellet reasoner the Protégé tool signals an error.
>>>
>>> When loading the same ontology in Fuseki environment and inserting two
>>> "objectId" for the same concept, Fuseki does not acknowledge an error!
>>> The new objectId is inserted with the use of a Sparql endpoint.
>>>
>>> How should I proceed ?
>>>
>>> The reasoner activation on Fuseki is done by the configuration below:
>>>
>>> @prefix :      <http://base/#> .
>>> @prefix tdb:   <http://jena.hpl.hp.com/2008/tdb#> .
>>> @prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>>> @prefix ja:    <http://jena.hpl.hp.com/2005/11/Assembler#> .
>>> @prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
>>> @prefix fuseki: <http://jena.apache.org/fuseki#> .
>>>
>>>
>>> @prefix ontsense: <http://example.org/sense#> .
>>> @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
>>> @prefix owl: <http://www.w3.org/2002/07/owl#> .
>>>
>>>
>>>
>>> :service1  a                          fuseki:Service ;
>>>          fuseki:dataset                :dataset ;
>>>          fuseki:name                   "ontsense" ;
>>>          fuseki:serviceQuery           "query" , "sparql" ;
>>>          fuseki:serviceReadGraphStore  "get" ;
>>>          fuseki:serviceReadWriteGraphStore
>>>                  "data" ;
>>>          fuseki:serviceUpdate          "update" ;
>>>          fuseki:serviceUpload          "upload" .
>>>
>>> :dataset  a     ja:DatasetTxnMem ;
>>>    ja:defaultGraph <#model_inf_1> ;
>>>    .
>>>
>>> <#model_inf_1> rdfs:label "Inf-1" ;
>>>   ja:reasoner
>>>   [ ja:reasonerURL
>>>   <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>];
>>>
>>>
>>>
>>>
>>>
>>>
>>>


-- 
PhD Student
Robot Learning Laboratory LAR
ICMC - USP São Carlos - Brazil

Reply via email to