You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Django wirft einen AttributeError aus. Beispiel
Die Daten können damit nicht mehr abgefragt werden.
Traceback
Das Problem liegt in views.py.
Zeile 184: primary_resource = create_quad_by_predicate(resource.primary_resource, resource, result)
Zeile 219: "labels": get_labels_for(predicate_uri, result, resource),
Zeile 354: for _, label in result.preferredLabel(URI_or_literal, default=[(None, URI_or_literal)]):
Hinweis
Am besten schaut man es in der Revision b5ee5371b08c473c8f8b0c741a840e40b39e487d an.
Der Fehler liegt daran, dass SPARQLWrapper 2.0.0 auf rdflib 6.2.0 basiert. Ein Revert auf eine vorherige Version geht nicht mehr (sodass die Anwendung zwar veraltet ist aber stabil läuft).
In rdflib wurde ab Versioon 6.0.0. graph.preferredLabel() entfernt, worauf unsere Anwendung basiert. Siehe: rdflib/graph.py. Dies betrifft auch graph.label(), graph.comment(), graph.seq(), graph.load()`, diese Funktionen benutzen wir jedoch nicht.
Lösungsvorschlag
Wir brauchen eine Alternative um die Labels zu laden. get_labels_for muss umgeschrieben werden, sodass es .preferredLabel nicht mehr braucht und eine andere Funktion nutzt. Dafür müssen wir wahrscheinlich eine eigene Funktion schreiben. In der Dokumentation von RDFlib habe ich keine Alternative gefunden. Außerdem sollte überprüft werden ob es ein preferredLabel gibt.
The text was updated successfully, but these errors were encountered:
Einleitung
Django wirft einen AttributeError aus.
Beispiel
Die Daten können damit nicht mehr abgefragt werden.
Traceback
Das Problem liegt in
views.py
.Zeile 184:
primary_resource = create_quad_by_predicate(resource.primary_resource, resource, result)
Zeile 219:
"labels": get_labels_for(predicate_uri, result, resource),
Zeile 354:
for _, label in result.preferredLabel(URI_or_literal, default=[(None, URI_or_literal)]):
Hinweis
Am besten schaut man es in der Revision
b5ee5371b08c473c8f8b0c741a840e40b39e487d
an.Der Fehler liegt daran, dass SPARQLWrapper 2.0.0 auf rdflib 6.2.0 basiert. Ein Revert auf eine vorherige Version geht nicht mehr (sodass die Anwendung zwar veraltet ist aber stabil läuft).
In rdflib wurde ab Versioon 6.0.0.
graph.preferredLabel()
entfernt, worauf unsere Anwendung basiert. Siehe:rdflib/graph.py
. Dies betrifft auchgraph.label()
,graph.comment()
, graph.seq(),
graph.load()`, diese Funktionen benutzen wir jedoch nicht.Lösungsvorschlag
Wir brauchen eine Alternative um die Labels zu laden.
get_labels_for
muss umgeschrieben werden, sodass es.preferredLabel
nicht mehr braucht und eine andere Funktion nutzt. Dafür müssen wir wahrscheinlich eine eigene Funktion schreiben. In der Dokumentation von RDFlib habe ich keine Alternative gefunden. Außerdem sollte überprüft werden ob es ein preferredLabel gibt.The text was updated successfully, but these errors were encountered: