about summary refs log tree commit diff
path: root/examples/strains.scm
diff options
context:
space:
mode:
Diffstat (limited to 'examples/strains.scm')
-rwxr-xr-xexamples/strains.scm37
1 files changed, 26 insertions, 11 deletions
diff --git a/examples/strains.scm b/examples/strains.scm
index cb4978f..cc98d71 100755
--- a/examples/strains.scm
+++ b/examples/strains.scm
@@ -67,7 +67,7 @@ At this point it is not very clear how Name, Name2, Symbol and Alias are used.
             (field Strain Name)
             #:separator "_")
     (set rdf:type 'gnc:strain)
-    (set gnt:belongs_to_species (string->identifier "" (remap-species-identifiers (field Species Fullname))))
+    (set gnt:has_species (string->identifier "" (remap-species-identifiers (field Species Fullname))))
     ;; Name, and maybe a second name
     (set rdfs:label (sanitize-rdf-string (field Strain Name)))
     (set skos:altLabel (sanitize-rdf-string (field ("IF ((Strain.Name2 != Strain.Name), Strain.Name2, '')" Name2))))
@@ -77,23 +77,39 @@ At this point it is not very clear how Name, Name2, Symbol and Alias are used.
 (define-transformer mapping-method
   (tables (MappingMethod))
   (schema-triples
-   (gnc:mapping_method a skos:Concept)
-   (gnc:mapping_method skos:definition "Terms that decribe mapping methods used on this resource"))
+   (gnc:mapping_method a skos:ConceptScheme)
+   (gnc:mapping_method skos:prefLabel "Mapping Method Vocabulary")
+   (gnc:mapping_method skos:definition "Controlled vocabulary describing statistical/computational methods used for mapping in GeneNetwork."))
   (triples
       (string->identifier "mapping_method" (field MappingMethod Name) #:separator "_")
-    (set rdf:type 'gnc:mapping_method)
-    (set rdfs:label (field MappingMethod Name))))
+    (set rdf:type 'skos:Concept)
+    (set skos:inScheme 'gnc:mapping_method)
+    (set skos:prefLabel (field MappingMethod Name))))
+
+(define-transformer mapping-method-fan-out
+  (tables (MappingMethod))
+  (triples
+      'gnc:mapping_method
+    (set skos:member (string->identifier "mapping_method" (field MappingMethod Name) #:separator "_"))))
+
+(define-transformer avg-method-fan-out
+  (tables (AvgMethod))
+  (triples
+      'gnc:avg_method
+    (set skos:member (string->identifier "avg_method" (field AvgMethod Name AvgMethodName) #:separator "_"))))
 
 (define-transformer avg-method
   ;; The Name and Normalization fields seem to be the same. Dump only
   ;; the Name field.
   (tables (AvgMethod))
   (schema-triples
-   (gnc:avg_method a skos:Concept)
-   (gnc:avg_method skos:definition "Terms that decribe normalization methods used on this resource"))
+   (gnc:avg_method a skos:ConceptScheme)
+   (gnc:avg_method skos:prefLabel "Normalization and Averaging Method Vocabulary")
+   (gnc:avg_method skos:definition "Controlled vocabulary describing normalization, transformation, and summarization methods applied in GeneNetwork."))
   (triples (string->identifier "avg_method" (field AvgMethod Name AvgMethodName) #:separator "_")
-    (set rdf:type 'gnc:avg_method)
-    (set rdfs:label (field AvgMethod Normalization))))
+    (set rdf:type 'skos:Concept)
+    (set skos:inScheme 'gnc:avg_method)
+    (set skos:prefLabel (field AvgMethod Normalization))))
 
 
 
@@ -124,8 +140,7 @@ At this point it is not very clear how Name, Name2, Symbol and Alias are used.
       ("rdfs:" "<http://www.w3.org/2000/01/rdf-schema#>")
       ("taxon:" "<http://purl.uniprot.org/taxonomy/>")))
    (inputs
-    (list strain mapping-method avg-method))
+    (list strain mapping-method avg-method mapping-method-fan-out avg-method-fan-out))
    (outputs
     `(#:documentation ,documentation
       #:rdf ,output))))
-