Skip to content

failure to retrieve FOAF profile information for friending due to invalid SPARQL #48

@neradis

Description

@neradis

Attempts to add a friend denoted by the 'person' IRI for another xodx instance currently
fails with the misleading error message 'WebID does not exist'.
However this error will occur irresepective of the existence of a WebID for the friending
target.

In the case documented by this screenshot, the target xodx identity http://fusionfactory.de/xodx_2/?c=person&id=bob exists. curlling for the Linked Data for Bobs profile reveals that there is instead a problem with the SPARQL query generated to obtain Bobs profile information (it contains a dublicated SELECT clause):

curl 'http://fusionfactory.de/xodx_2/?c=person&id=bob&a=rdf'

exception 'Erfurt_Store_Adapter_Exception' with message 'SPARQL Error: [unixODBC][OpenLink][Virtuoso iODBC Driver][Virtuoso Server]SQ074: Line 22: SP030: SPARQL compiler, line 3: syntax error at 'SELECT' before '?resourceUri' () in query: define output:format "JSON"
SELECT ?resourceUri ?p ?o
SELECT ?resourceUri ?p ?o

FROM <http://localhost/OntoWiki/Config/>
FROM <http://ns.ontowiki.net/SysOnt/>
FROM <http://localhost/Xodx>
WHERE {
    #WHERE part ommited for brevity
} LIMIT 1000
OFFSET 0    


in /var/www/libraries/Erfurt/library/Erfurt/Store/Adapter/Virtuoso.php:1060
Stack trace:
#0 /var/www/libraries/Erfurt/library/Erfurt/Store/Adapter/Virtuoso.php(679): Erfurt_Store_Adapter_Virtuoso->_execSparql('define output:f...')
#1 /var/www/libraries/Erfurt/library/Erfurt/Store.php(1690): Erfurt_Store_Adapter_Virtuoso->sparqlQuery('SELECT ?resourc...', Array)
#2 /var/www/libraries/Erfurt/library/Erfurt/Syntax/RdfSerializer/Adapter/Turtle.php(83): Erfurt_Store->sparqlQuery(Object(Erfurt_Sparql_SimpleQuery), Array)
#3 /var/www/libraries/Erfurt/library/Erfurt/Syntax/RdfSerializer.php(139): Erfurt_Syntax_RdfSerializer_Adapter_Turtle->serializeQueryResultToString(Object(Erfurt_Sparql_SimpleQuery), 'http://localhos...', false, true)
#4 /var/www/classes/Xodx/PersonController.php(165): Erfurt_Syntax_RdfSerializer->serializeQueryResultToString(Object(Erfurt_Sparql_SimpleQuery), 'http://localhos...')
#5 /var/www/classes/Xodx/Application.php(43): Xodx_PersonController->rdfAction(Object(Saft_Layout))
#6 /var/www/index.php(85): Xodx_Application->run()

Note: The instances http://fusionfactory.de/xodx_1 and http://fusionfactory.de/xodx_2 were simulated in Docker containers on my personal computer and I used port 80 the domain fusionfactory.de only temporarily to give instances URIs that are globally in the WAN. This setup will not be applicable anymore when you read this (usually other stuff is hosted there).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions