context.entities should be keyed based on the entity long name
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 45/100
Piste de recherche
Commencez par examiner le mapping du type de données vers la modalité dans context.py ainsi que les données schema.objects.entities mentionnées dans l’issue. Lisez l’approche BIDSSchemaAdapter de la PR #74 et examinez comment l’objet Dataset pourrait le contenir. Le travail est considéré comme terminé lorsque les clés des entités utilisent des noms longs tels que "subject" plutôt que des noms courts tels que "sub", avec le mapping du schéma réutilisé par l’intermédiaire des fonctions privées concernées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Noticed while reviewing #71: entities["sub"] is populated, rather than entities["subject"].
The schema consistently uses the long name, not the short name. This means we'll need to look up the mapping from schema.objects.entities, and we should probably do that once per schema.
I recently introduced https://github.com/childmindresearch/bids2table/pull/74 as a method for mapping schema specifiers onto an adapter class that extracts the bits the library actually needs. The basic idea is:
SchemaSpec: ty.TypeAlias = Namespace | os.PathLike[str] | str | None
def load_bids_schema(spec: SchemaSpec = None) -> BIDSSchemaAdapter: ...
def public_function(*args, schema: SchemaSpec = None) -> ReturnType:
return _private_function(*args, adapter=load_bids_schema(schema))
def _private_function(*args, adapter: BIDSSchemaAdapter) -> ReturnType: ...
BIDSSchemaAdapter is never exposed as a public API, but is able to be passed around cheaply throughout private functions.
We can start by replacing the datatype-to-modality map:
And a short-to-long entity name map would be good to have.
Need to consider how to actually thread this through. I suspect we attach the adapter to the Dataset object, so it's always available to the individual context.
- Langage dominant
- Python
- Étoiles
- 10
- Forks
- 7
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de bids-standard/python-validator
-
Add a structured issues model and emit findings from the filename validatorPeut-être pris @karellopez l’a pris il y a 81 jours. Ouverteenhancement
bids-standard/python-validator#85 · 1 commentaire · 1 personne assignée ·
-
Populate associations contextPeut-être à nouveau libre @ubdbra001 l’a pris il y a 115 jours, et aucune pull request n’est ouverte. Ouverte
bids-standard/python-validator#82 · 1 commentaire · 1 personne assignée ·
-
performance
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
-
Validate DerivativesPeut-être pris @bendhouseart l’a pris il y a 298 jours. Ouverteenhancement
bids-standard/python-validator#62 · 1 personne assignée ·
-
Populate tiff contextOuverte
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
Toutes les issues de bids-standard/python-validator
Issues similaires
-
bug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 86/100
awslabs/visual-asset-management-system#937 ·
Les mainteneurs répondent en général sous 1 jour
-
Admin member of a research group cannot see the HX2 allocation until they've been added to itOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
-
follow-up
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 83/100
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 2 jours