From 136139333d34179b3677b950e6c213cb61f535d3 Mon Sep 17 00:00:00 2001 From: Munyoki Kilyungi Date: Wed, 23 Aug 2023 18:02:40 +0300 Subject: Update how NCBI genewiki entries are transformed Signed-off-by: Munyoki Kilyungi --- examples/generif.scm | 78 ++++++++++++++++++++++++++++++---------------------- 1 file changed, 45 insertions(+), 33 deletions(-) (limited to 'examples/generif.scm') diff --git a/examples/generif.scm b/examples/generif.scm index d6b8b25..cdb692a 100755 --- a/examples/generif.scm +++ b/examples/generif.scm @@ -77,39 +77,6 @@ (gnt:belongsToSpecies rdfs:domain gnc:GNWikiEntry) (gnt:symbol rdfs:domain gnc:GNWikiEntry)) (triples -(define-transformer ncbi-genewiki-entries - (tables (GeneRIF_BASIC) - "GROUP BY GeneId, comment, createtime") - (schema-triples - (gnt:geneWikiEntryofNCBI rdfs:domain gn:geneWikiEntry)) - (triples (ontology 'generif: - (field GeneRIF_BASIC GeneId)) - (set gnt:geneWikiEntryOfNCBI - (blank-node - (set gnt:geneWikiEntry - (annotate-field (field GeneRIF_BASIC comment) - '^^xsd:string)) - (multiset dct:source (map (lambda (el) (if (string-null? el) - "" - (ontology 'pubmed: el))) - (string-split (field ("GROUP_CONCAT(PubMed_ID)" pmids)) - #\,))) - (set dct:created (annotate-field (time-unix->string - (field GeneRIF_BASIC createtime) "~5") - '^^xsd:datetime)))))) - (string->identifier - "generif" - (make-version-3-uuid - (u8-list->bytevector - ;; URL namespace UUID is 6ba7b811-9dad-11d1-80b4-00c04fd430c8 - '(107 167 184 17 157 173 17 209 128 180 - 0 192 79 212 48 200)) - (format #f "~a~a~a~a" - (field Species FullName) - (field GeneRIF comment) - (field GeneRIF symbol) - (field GeneRIF createtime)) - "")) (string->identifier "generif" (make-version-3-uuid @@ -168,6 +135,51 @@ "")) (set foaf:homepage (field GeneRIF weburl)))) +(define-transformer ncbi-genewiki-entries + (tables (GeneRIF_BASIC) + "GROUP BY GeneId, comment, createtime") + (schema-triples + (gnc:NCBIWikiEntry rdfs:subClassOf gnc:GeneWikiEntry) + (gnc:NCBIWikiEntry rdfs:comment "Represents GeneRIF Entries obtained from NCBI")) + (triples + (string->identifier + "generif" + (make-version-3-uuid + (u8-list->bytevector + ;; URL namespace UUID is 6ba7b811-9dad-11d1-80b4-00c04fd430c8 + '(107 167 184 17 157 173 17 209 128 180 + 0 192 79 212 48 200)) + (format #f "~a~a~a~a~a" + (field GeneRIF_BASIC GeneId) + (field GeneRIF_BASIC VersionId) + (field GeneRIF_BASIC comment) + (field GeneRIF_BASIC symbol) + (field GeneRIF_BASIC createtime)) + "")) + (set rdf:type 'gnc:NCBIWikiEntry) + (set rdfs:label + (annotate-field (field GeneRIF_BASIC comment) + '^^xsd:string)) + (set gnt:symbol (field GeneRIF_BASIC symbol)) + (multiset dct:references + (map + (lambda (el) + (if (string-null? el) + "" + (ontology 'pubmed: el))) + (string-split (field ("GROUP_CONCAT(PubMed_ID)" pmids)) + #\,))) + (set gnt:hasVersion + (format #f "~a" (field GeneRIF_BASIC VersionId))) + (set dct:created + (let ((createtime (field GeneRIF_BASIC createtime))) + (if (string? createtime) + "" + (annotate-field + (time-unix->string + createtime "~5") + '^^xsd:datetime)))))) + (let* ((option-spec -- cgit v1.2.3