diff options
Diffstat (limited to 'examples/genotype.scm')
| -rwxr-xr-x | examples/genotype.scm | 88 |
1 files changed, 25 insertions, 63 deletions
diff --git a/examples/genotype.scm b/examples/genotype.scm index ac170be..f2ba75f 100755 --- a/examples/genotype.scm +++ b/examples/genotype.scm @@ -12,66 +12,22 @@ (transform sql) (transform triples) (transform special-forms)) - - -(define-transformer genotypes +(define-transformer gn:markers/snps->metadata (tables (Geno - (left-join Species "USING (SpeciesId)"))) - (schema-triples - (gnt:chr a owl:ObjectProperty) - (gnt:chr skos:description "This resource is located on a given chromosome") - (gnt:chr rdfs:domain gnc:genotype) - (gnt:mb a owl:ObjectProperty) - (gnt:mb skos:definition "The size of this resource in Mb") - (gnt:mb rdfs:domain gnc:genotype) - (gnt:mb_mm8 a owl:ObjectProperty) - (gnt:mb_mm8 skos:definition "TODO") - (gnt:mb_mm8 rdfs:domain gnc:genotype) - (gnt:mb2016 a owl:ObjectProperty) - (gnt:mb2016 skos:definition "TODO") - (gnt:mb2016 rdfs:domain gnc:genotype) - (gnt:has_sequence a owl:ObjectProperty) - (gnt:has_sequence skos:definition "This resource has a given sequence") - (gnt:has_sequence rdfs:domain gnc:genotype) - (gnt:has_source a owl:ObjectProperty) - (gnt:has_source rdfs:domain gnc:genotype) - (gnt:has_source skos:definition "This resource was obtained from this given source") - (gnt:has_alt_source_name a owl:ObjectProperty) - (gnt:has_alt_source_name rdfs:domain gnc:genotype) - (gnt:has_alt_source_name - skos:definition - "The alternative name this resource was obtained from") - (gnt:chr_num a owl:ObjectProperty) - (gnt:chr_num rdfs:domain gnc:genotype) - (gnt:chr_num skos:definition "The chromosome number for this resource")) - (triples - (string->identifier "" (field Geno Name)) - (set rdf:type 'gnc:genotype) - (set rdfs:label (sanitize-rdf-string (field Geno Name))) + (inner-join Species "ON Geno.SpeciesId = Species.Id")) + "WHERE Species.Name != 'monkey'") + (triples (string->identifier "marker" (field Geno Name) #:separator "_") + (set gnt:has_species + (string->identifier "" (remap-species-identifiers (field Species Fullname)))) + (set rdf:type 'gnc:dna_marker) + (set skos:prefLabel (field Geno Name)) + (set skos:altLabel (field Geno Marker_Name)) (set gnt:chr (field Geno Chr)) - (set gnt:mb (annotate-field - (field ("IFNULL(Geno.Mb, '')" Mb)) '^^xsd:double)) - (set gnt:mb_mm8 (annotate-field (field ("IFNULL(Geno.Mb_mm8, '')" Mb_mm8)) - '^^xsd:double)) - (set gnt:mb2016 - (annotate-field (field ("IFNULL(Geno.Mb_2016, '')" Mb_2016)) - '^^xsd:double)) - (set gnt:has_sequence (field Geno Sequence)) - (set gnt:has_source (field Geno Source)) - ;; Only transform Source2 if it differs from Source - (set gnt:has_alt_source_name - (field ("IF((Source2 = Source), NULL, Source2)" - Source2))) - (set gnt:belongs_to_species - (string->identifier "" (remap-species-identifiers (field Species Fullname)) - #:separator "_" - #:proc string-downcase)) - (set gnt:chr_num - (annotate-field - (field Geno chr_num) - '^^xsd:int)) - (set rdfs:comments (field Geno Comments)))) + (set gnt:mb (annotate-field (field Geno Mb) '^^xsd:double)) + (set gnt:sequence (field Geno Sequence)) + (set gnt:source (field Geno Source)) + (set rdfs:comment (field Geno Comments)))) @@ -87,22 +43,28 @@ (call-with-input-file settings read))) (with-documentation - (name "Genotype Metadata") + (name "Phenotypes Metadata") (connection %connection-settings) (table-metadata? #f) (prefixes - '(("dct:" "<http://purl.org/dc/terms/>") + '(("dcat:" "<http://www.w3.org/ns/dcat#>") + ("dct:" "<http://purl.org/dc/terms/>") ("gn:" "<http://rdf.genenetwork.org/v1/id/>") + ("owl:" "<http://www.w3.org/2002/07/owl#>") ("gnc:" "<http://rdf.genenetwork.org/v1/category/>") + ("gnd:" "<https://cd.genenetwork.org/lmdb/v1/data/traits/>") ("gnt:" "<http://rdf.genenetwork.org/v1/term/>") + ("sdmx-measure:" "<http://purl.org/linked-data/sdmx/2009/measure#>") + ("skos:" "<http://www.w3.org/2004/02/skos/core#>") ("rdf:" "<http://www.w3.org/1999/02/22-rdf-syntax-ns#>") ("rdfs:" "<http://www.w3.org/2000/01/rdf-schema#>") - ("owl:" "<http://www.w3.org/2002/07/owl#>") - ("skos:" "<http://www.w3.org/2004/02/skos/core#>") + ("xsd:" "<http://www.w3.org/2001/XMLSchema#>") + ("qb:" "<http://purl.org/linked-data/cube#>") ("xkos:" "<http://rdf-vocabulary.ddialliance.org/xkos#>") - ("xsd:" "<http://www.w3.org/2001/XMLSchema#>"))) + ("pubmed:" "<http://rdf.ncbi.nlm.nih.gov/pubmed/>"))) (inputs - (list genotypes)) + (list gn:markers/snps->metadata)) (outputs `(#:documentation ,documentation #:rdf ,output)))) + |
