BlueBrain / BlueBrain/nexus-forge

AttributeError: 'list' object has no attribute 'items' Error when using an array context

Open
#25 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
52
Forks
21
PR merge metrics
No merged PRs in 30d

Description

When running:

`resources = forge.search(p.type.id == "Person", limit=5)`

I got the following error:

rewrite_sparql
AttributeError: 'list' object has no attribute 'items'

Looks like the [forge.store.rewrite_sparql()](https://github.com/BlueBrain/nexus-forge/blob/f0863887e745435c9c90705a572c39a257c5f340/kgforge/core/archetypes/store.py#L288) function is expecting the forge._store.model_context.document to be a dict and not an array.

In my case, forge._store.model_context.document output is:
```
{'@context': [
{
'@vocab': 'https://neuroshapes.org/',
'Person': {'@id': 'schema:Person'},
'AcquisitionAnnotation': {'@id': 'nsg:AcquisitionAnnotation'},
'Activity': {'@id': 'prov:Activity'},
'AffineLinearTransform': {'@id': 'nsg:AffineLinearTransform'},
'Agent': {'@id': 'prov:Agent'},
'Analysis': {'@id': 'nsg:Analysis'},
'AnalysisConfiguration': {'@id': 'nsg:AnalysisConfiguration',
'@type': '@id'},
'AnalysisReport': {'@id': 'nsg:AnalysisReport', '@type': '@id'},
'AnalysisResult': {'@id': 'nsg:AnalysisResult'},
'AnnotatedSlice': {'@id': 'nsg:AnnotatedSlice'},
'Annotation': {'@id': 'nsg:Annotation'},
'AnnotationBody': {'@id': 'nsg:AnnotationBody'},
'ApicalAnnotation': {'@id': 'nsg:ApicalAnnotation'}
},
'https://bluebrain.github.io/nexus/contexts/resource.json'
]
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.