about summary refs log tree commit diff
path: root/transform/strings.scm
diff options
context:
space:
mode:
Diffstat (limited to 'transform/strings.scm')
-rw-r--r--transform/strings.scm23
1 files changed, 11 insertions, 12 deletions
diff --git a/transform/strings.scm b/transform/strings.scm
index 7545f62..aba554a 100644
--- a/transform/strings.scm
+++ b/transform/strings.scm
@@ -11,11 +11,11 @@
             delete-substrings
             replace-substrings
             remove-duplicates
-            remap-species-identifiers str
             sanitize-rdf-string
             snake->lower-camel
             lower-case-and-replace-spaces
-            string-capitalize-first))
+            string-capitalize-first
+            normalize-string-field))
 
 (define (lower-case-and-replace-spaces str)
   (string-map
@@ -121,13 +121,12 @@ association list mapping substrings to their replacements."
       ((memq (car lst) result) (loop (cdr lst) result))
       (else (loop (cdr lst) (cons (car lst) result))))))
 
-
-(define (remap-species-identifiers str)
-  "This procedure remaps identifiers to standard binominal. Obviously this should
-   be sorted by correcting the database!"
-  (match str
-    ["Fly (Drosophila melanogaster dm6)" "Drosophila melanogaster"]
-    ["Oryzias latipes (Japanese medaka)" "Oryzias latipes"]
-    ["Macaca mulatta" "Macaca nemestrina"]
-    ["Bat (Glossophaga soricina)" "Glossophaga soricina"]
-    [str str]))
+(define (normalize-string-field field)
+  (let ((field (string-trim-both field)))
+    (match field
+      ((?  string? field)
+       (if (or (string-blank? field)
+               (string=? (string-downcase field) "none"))
+           ""
+           field))
+      (_ ""))))