Skip to content

Establish at least 8 issues for specific groups of problems in converted linkml #388

Open
4 of 8 issues completed

Description

@yarikoptic

I see ATM

❯ git grep -h -A1 'pydantic2linkml:' dandischema/models.yaml | sed -e 's,^ *,,g' | tr '\n' ' ' | sed -e 's,--,\n,g' | sed -e 's,schemaKey field in the .*,schemaKey field,g' -e 's,fter validation function.*,fter validation function,g' -e 's,Impossible to generate slot usage entry for the.*,Impossible to generate slot usage entry for the,g' | sort | uniq -c | sort -n | nl
     1	      1 - 'pydantic2linkml: Unable to express the default factory, <function CommonModel.<lambda> at 0xADDRESS>, in LinkML.' - 'pydantic2linkml: Unable to translate the logic contained in the after validation function
(subissue created)     2	      2  - 'pydantic2linkml: LinkML does not have support for `''+inf''`, `''-inf''`, and `''NaN''` values. Support for these values is not translated.' 
     3	      2  - 'pydantic2linkml: Warning: LinkML does not support multiple inheritance. Publishable is not specified as a parent, through the `is_a` meta slot, but as a mixin.' 
(subissue created)     4	      4  - 'pydantic2linkml: LinkML does not have direct support for max length constraints. The max length constraint of 150 is incorporated into the pattern of the 
(subissue created)     5	      7  - 'pydantic2linkml: Unable to express the microseconds precision constraint of truncate. LinkML lacks direct support for this restriction.' 
     6	     11  - 'pydantic2linkml: Unable to translate the logic contained in the after validation function
     7	     17  - 'pydantic2linkml: Unable to translate the logic contained in the wrap validation function, <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val 
(subissue created)     8	     54  - 'pydantic2linkml: Impossible to generate slot usage entry for the

and we need an issue per each like

and to be added to https://github.com/orgs/dandi/projects/27/views/1 .

Ultimate goal: could we produce pydantic model such that would allow to load existing manifest files, in particular

those released recently as of 0.7.0 -- but also assets.jsonld not only the dandisets
dandi@drogon:/mnt/backup/dandi/dandiset-manifests$ for f in */0.*/dandiset.jsonld ; do echo -en "$f:\t"; jq -r  -r '"\(.schemaVersion) \(.doi)"' $f; done | grep '0\.7\.0' 
001688/0.251231.0329/dandiset.jsonld:	0.7.0 null
001689/0.251225.2239/dandiset.jsonld:	0.7.0 null
001692/0.260303.1724/dandiset.jsonld:	0.7.0 null
001695/0.260319.2023/dandiset.jsonld:	0.7.0 null
001701/0.260120.0303/dandiset.jsonld:	0.7.0 null
001702/0.260216.2323/dandiset.jsonld:	0.7.0 null
001710/0.260212.2225/dandiset.jsonld:	0.7.0 null
001710/0.260213.0329/dandiset.jsonld:	0.7.0 null
001748/0.260217.1916/dandiset.jsonld:	0.7.0 null
001749/0.260311.1727/dandiset.jsonld:	0.7.0 null
001753/0.260220.1838/dandiset.jsonld:	0.7.0 null
001754/0.260227.0029/dandiset.jsonld:	0.7.0 null
001754/0.260227.0031/dandiset.jsonld:	0.7.0 null
001767/0.260318.1448/dandiset.jsonld:	0.7.0 null

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions