about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMunyoki Kilyungi2026-03-02 17:18:09 +0300
committerMunyoki Kilyungi2026-03-02 17:18:29 +0300
commit083a1fc995e906b8323e3b58d61f5a226e408cb9 (patch)
tree2a23abe2cf539785320cbb826b99a02c54ff2e9a
parent6fb74e2e1c59ed4934a1177816a717382c91e0cb (diff)
downloadgn-transform-databases-083a1fc995e906b8323e3b58d61f5a226e408cb9.tar.gz
examples: Align ontology with BFO and normalize snake_case terms
* examples/ontology.scm: Add BFO bridge classes and align GN classes
under material/information entities.  Define missing `gnt:'/`gnc:'
terms used across transformers.  Correct property kinds and
domains/ranges for dataset, phenotype, genotype, probeset, and gene
metadata.
* examples/genelist.scm: Replace gnc:ResourceLink and gnc:PantherLink
with snake_case terms.
* examples/probesets-experiment-metadata.scm: Rename gnt:SE -> gnt:se.

Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
-rwxr-xr-xexamples/genelist.scm22
-rwxr-xr-xexamples/ontology.scm164
-rwxr-xr-xexamples/probesets-experiment-metadata.scm2
3 files changed, 159 insertions, 29 deletions
diff --git a/examples/genelist.scm b/examples/genelist.scm
index 5048bf2..ecd5cad 100755
--- a/examples/genelist.scm
+++ b/examples/genelist.scm
@@ -30,34 +30,34 @@
    (gnc:transcript rdfs:domain gnc:gene_symbol)
    (gnt:transcript a owl:ObjectProperty)
    (gnc:transcript rdfs:comments "The gene transcript of this resource")
-   (gnc:ebi_gwas_link rdfs:Class gnc:ResourceLink)
+   (gnc:ebi_gwas_link rdfs:Class gnc:resource_link)
    (gnc:ebi_gwas_link rdfs:label "EBI GWAS")
    (gnc:ebi_gwas_link rdfs:comments "EBI GWAS")
-   (gnc:protein_atlas_link rdfs:Class gnc:ResourceLink)
+   (gnc:protein_atlas_link rdfs:Class gnc:resource_link)
    (gnc:protein_atlas_link rdfs:label "Protein Atlas")
    (gnc:protein_atlas_link rdfs:comments "Human Protein Atlas")
-   (gnc:genemania_link rdfs:Class gnc:ResourceLink)
+   (gnc:genemania_link rdfs:Class gnc:resource_link)
    (gnc:genemania_link rdfs:label "GeneMANIA")
    (gnc:genemania_link rdfs:comments "GeneMANIA")
-   (gnc:gemma_link rdfs:Class gnc:ResourceLink)
+   (gnc:gemma_link rdfs:Class gnc:resource_link)
    (gnc:gemma_link rdfs:label "Gemma")
    (gnc:gemma_link rdfs:comments "Meta-analysis of gene expression data")
-   (gnc:biogps_link rdfs:Class gnc:ResourceLink)
+   (gnc:biogps_link rdfs:Class gnc:resource_link)
    (gnc:biogps_link rdfs:label "BioGPS")
    (gnc:biogps_link rdfs:comments "Expression across many tissues and cell types")
-   (gnc:aba_link rdfs:Class gnc:ResourceLink)
+   (gnc:aba_link rdfs:Class gnc:resource_link)
    (gnc:aba_link rdfs:label "ABA")
    (gnc:aba_link rdfs:comments "Allen Brain Atlas")
-   (gnc:panther_link rdfs:Class gnc:ResourceLink)
+   (gnc:panther_link rdfs:Class gnc:resource_link)
    (gnc:panther_link rdfs:label "PANTHER")
    (gnc:panther_link rdfs:comments "Gene and protein data resources from Celera-ABI")
-   (gnc:panther_link rdfs:Class gnc:ResourceLink)
+   (gnc:panther_link rdfs:Class gnc:resource_link)
    (gnc:panther_link rdfs:label "STRING")
    (gnc:panther_link rdfs:comments "Protein interactions: known and inferred")
-   (gnc:gtex_link rdfs:Class gnc:ResourceLink)
+   (gnc:gtex_link rdfs:Class gnc:resource_link)
    (gnc:gtex_link rdfs:label "GTEx Portal")
    (gnc:gtex_link rdfs:comments "GTEx Portal")
-   (gnc:rgd_link rdfs:Class gnc:ResourceLink)
+   (gnc:rgd_link rdfs:Class gnc:resource_link)
    (gnc:rgd_link rdfs:label "Rat Genome DB")
    (gnc:rgd_link rdfs:comments "Rat Genome DB")
    (gnc:has_kg_id rdfs:domain gnc:gene_symbol)
@@ -279,7 +279,7 @@
                         "<~0@*~a~1@*~a> .~%<~0@*~a~1@*~a> ~2@*~a"
                         "http://www.pantherdb.org/genes/geneList.do?searchType=basic&fieldName=all&organism=all&listType=1&fieldValue="
                         (string-trim-both symbol)
-                        "a gnc:PantherLink"))
+                        "a gnc:panther_link"))
                "")))
     (set dct:references
          (let ((symbol (string-trim-both (field GeneList_rn33 geneSymbol))))
diff --git a/examples/ontology.scm b/examples/ontology.scm
index f2b54cc..07e1759 100755
--- a/examples/ontology.scm
+++ b/examples/ontology.scm
@@ -25,6 +25,7 @@
       (prefix "gnc:" "<http://rdf.genenetwork.org/v1/category/>")
       (prefix "gnt:" "<http://rdf.genenetwork.org/v1/term/>")
       (prefix "obo:" "<http://purl.obolibrary.org/obo/>")
+      (prefix "bfo:" "<http://purl.obolibrary.org/obo/BFO_>")
       (prefix "sdmx-measure:" "<http://purl.org/linked-data/sdmx/2009/measure#>")
       (prefix "skos:" "<http://www.w3.org/2004/02/skos/core#>")
       (prefix "rdf:" "<http://www.w3.org/1999/02/22-rdf-syntax-ns#>")
@@ -35,6 +36,19 @@
       (prefix "pubmed:" "<http://rdf.ncbi.nlm.nih.gov/pubmed/>")
       (prefix "schema:" "<https://schema.org/>")
       (newline)
+      ;; Minimal BFO bridge for GN terms.
+      (triple 'gnc:resource_entity 'a 'owl:Class)
+      (triple 'gnc:resource_entity 'rdfs:label "GeneNetwork resource entity")
+      (triple 'gnc:resource_entity 'rdfs:subClassOf 'bfo:0000001)
+      (triple 'gnc:material_resource 'a 'owl:Class)
+      (triple 'gnc:material_resource 'rdfs:label "GeneNetwork material resource")
+      (triple 'gnc:material_resource 'rdfs:subClassOf 'bfo:0000040)
+      (triple 'gnc:material_resource 'rdfs:subClassOf 'gnc:resource_entity)
+      (triple 'gnc:information_resource 'a 'owl:Class)
+      (triple 'gnc:information_resource 'rdfs:label "GeneNetwork information resource")
+      (triple 'gnc:information_resource 'rdfs:subClassOf 'bfo:0000031)
+      (triple 'gnc:information_resource 'rdfs:subClassOf 'gnc:resource_entity)
+
       (triple 'gnc:population_category 'a 'xkos:ClassificationLevel)
       (triple 'gnc:population_category 'rdfs:label "Population Category")
       (triple 'gnc:population_category 'skos:inScheme 'gnc:resource_classification_scheme)
@@ -73,6 +87,10 @@
       (triple 'gnc:taxonomic_family 'skos:prefLabel "Family")
       (triple 'gnc:taxonomic_family 'xkos:depth "1")
       (triple 'gnc:taxonomic_family 'xkos:nextLevel 'gnc:species)
+      (triple 'gnc:strain 'a 'owl:Class)
+      (triple 'gnc:strain 'rdfs:subClassOf 'gnc:material_resource)
+      (triple 'gnc:mapping_method 'a 'skos:ConceptScheme)
+      (triple 'gnc:avg_method 'a 'skos:ConceptScheme)
       (triple 'gnt:assigned_species 'a 'owl:ObjectProperty)
       (triple 'gnt:assigned_species 'rdfs:domain 'gnc:set)
       (triple 'gnt:assigned_species 'rdfs:label "These families have been assigned to these species")
@@ -82,7 +100,6 @@
       (triple 'gnt:genetic_type 'rdfs:range 'xsd:string)
       (triple 'gnt:genetic_type 'skos:definition "Describes the genetic architecture of a resource set (e.g., intercross, riset).")
       (triple 'gnt:has_family_order_id 'a 'owl:DatatypeProperty)
-      (triple 'gnt:has_family_order_id 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_family_order_id 'rdfs:range 'xsd:integer)
       (triple 'gnt:has_set_code 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_set_code 'rdfs:domain 'gnc:set)
@@ -118,12 +135,27 @@
       (triple 'gnt:uses_mapping_method 'rdfs:domain 'gnc:set)
       (triple 'gnt:uses_mapping_method 'rdfs:label "mapping method")
       (triple 'gnt:uses_mapping_method 'rdfs:range 'gnc:mapping_method)
+      (triple 'gnt:has_reference_population 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_reference_population 'schema:domainIncludes 'gnc:set)
+      (triple 'gnt:has_reference_population 'schema:domainIncludes 'gnc:population_category)
+      (triple 'gnt:has_reference_population 'rdfs:range 'gnc:reference_population)
+      (triple 'gnt:has_population_order_id 'a 'owl:DatatypeProperty)
+      (triple 'gnt:has_population_order_id 'rdfs:domain 'gnc:reference_population)
+      (triple 'gnt:has_population_order_id 'rdfs:range 'xsd:integer)
+      (triple 'gnt:alias 'a 'owl:DatatypeProperty)
+      (triple 'gnt:alias 'rdfs:domain 'gnc:strain)
+      (triple 'gnt:gene 'a 'owl:DatatypeProperty)
+      (triple 'gnt:gene 'rdfs:domain 'gnc:gene_symbol)
 
       ;; Describing Datasets
       (triple 'gnc:molecular_trait 'a 'owl:Class)
       (triple 'gnc:molecular_trait 'a 'skos:Concept)
       (triple 'gnc:molecular_trait 'rdfs:label "Molecular Trait.   This describes a melecular trait of a given species.  We combine the species name and the tissue name in order to differentiate the traits across different inbredset groups.")
       (triple 'gnc:molecular_trait 'rdfs:subClassOf 'obo:UBERON_0000479)
+      (triple 'gnc:molecular_trait 'rdfs:subClassOf 'gnc:information_resource)
+      (triple 'gnc:molecular_trait_metadata 'a 'owl:Class)
+      (triple 'gnc:molecular_trait_metadata 'rdfs:subClassOf 'gnc:information_resource)
+      (triple 'gnc:gene_chip 'a 'skos:ConceptScheme)
       (triple 'gnt:has_case_info 'a 'owl:ObjectProperty)
       (triple 'gnt:has_case_info 'rdfs:comment "Information about the cases used in this platform")
       (triple 'gnt:has_case_info 'rdfs:domain 'dcat:Dataset)
@@ -163,6 +195,9 @@
       (triple 'gnt:has_phenotype_data 'rdfs:label "this resources has this phenotype data.")
       (triple 'gnt:has_phenotype_data 'rdfs:range 'dcat:Dataset)
       (triple 'gnt:has_phenotype_data 'rdfs:subPropertyOf 'dct:relation)
+      (triple 'gnt:has_phenotype_trait 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_phenotype_trait 'rdfs:domain 'dcat:Dataset)
+      (triple 'gnt:has_phenotype_trait 'rdfs:range 'gnc:phenotype_trait)
       (triple 'gnt:has_platform_info 'a 'owl:ObjectProperty)
       (triple 'gnt:has_platform_info 'rdfs:comment "Information about the platform that was used with this dataset")
       (triple 'gnt:has_platform_info 'rdfs:domain 'dcat:Dataset)
@@ -194,21 +229,32 @@
       (triple 'gnt:uses_normalization_method 'rdfs:domain 'dcat:Dataset)
       (triple 'gnt:uses_normalization_method 'rdfs:label "Averaging method used for the molecular traits in this dataset.")
       (triple 'gnt:uses_normalization_method 'rdfs:range 'gnc:avg_method)
+      (triple 'gnt:has_probeset 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_probeset 'rdfs:domain 'gnc:molecular_trait_metadata)
+      (triple 'gnt:has_probeset 'rdfs:range 'gnc:probeset)
 
       ;; Describing phenotypes
       (triple 'gnc:phenotype 'a 'owl:Class)
       (triple 'gnc:phenotype 'a 'skos:Concept)
       (triple 'gnc:phenotype 'rdfs:label "A phenotype.")
+      (triple 'gnc:phenotype 'rdfs:subClassOf 'gnc:information_resource)
       (triple 'gnc:phenotype_trait 'a 'owl:Class)
       (triple 'gnc:phenotype_trait 'a 'skos:Concept)
       (triple 'gnc:phenotype_trait 'rdfs:label "A phenotype trait.")
-      (triple 'gnt:abbreviation 'a 'owl:ObjectProperty)
+      (triple 'gnc:phenotype_trait 'rdfs:subClassOf 'gnc:information_resource)
+      (triple 'gnt:abbreviation 'a 'owl:DatatypeProperty)
       (triple 'gnt:abbreviation 'rdfs:domain 'gnc:phenotype)
       (triple 'gnt:abbreviation 'skos:definition "The abbreviation used for this resource")
+      (triple 'gnt:has_phenotype 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_phenotype 'rdfs:domain 'gnc:phenotype_trait)
+      (triple 'gnt:has_phenotype 'rdfs:range 'gnc:phenotype)
       (triple 'gnt:additive 'rdfs:domain 'gnc:phenotype)
       (triple 'gnt:additive 'rdfs:range 'xsd:double)
-      (triple 'gnt:lab_code 'a 'owl:ObjectProperty)
+      (triple 'gnt:lab_code 'a 'owl:DatatypeProperty)
       (triple 'gnt:lab_code 'rdfs:domain 'gnc:phenotype)
+      (triple 'gnt:has_lab_code 'a 'owl:DatatypeProperty)
+      (triple 'gnt:has_lab_code 'rdfs:domain 'gnc:phenotype)
+      (triple 'gnt:has_lab_code 'rdfs:subPropertyOf 'gnt:lab_code)
       (triple 'gnt:locus 'a 'qb:MeasureProperty)
       (triple 'gnt:locus 'a 'rdf:Property)
       (triple 'gnt:locus 'rdfs:domain 'gnc:phenotype)
@@ -226,9 +272,24 @@
       (triple 'gnt:mean 'rdfs:domain 'gnc:phenotype)
       (triple 'gnt:mean 'rdfs:range 'xsd:double)
       (triple 'gnt:mean 'rdfs:subPropertyOf 'sdmx-measure:obsValue)
+      (triple 'gnt:se 'a 'qb:MeasureProperty)
+      (triple 'gnt:se 'a 'rdf:Property)
+      (triple 'gnt:se 'rdfs:domain 'gnc:molecular_trait_metadata)
+      (triple 'gnt:se 'rdfs:range 'xsd:double)
+      (triple 'gnt:se 'rdfs:subPropertyOf 'sdmx-measure:obsValue)
+      (triple 'gnt:pvalue 'a 'qb:MeasureProperty)
+      (triple 'gnt:pvalue 'a 'rdf:Property)
+      (triple 'gnt:pvalue 'rdfs:domain 'gnc:molecular_trait_metadata)
+      (triple 'gnt:pvalue 'rdfs:range 'xsd:double)
+      (triple 'gnt:pvalue 'rdfs:subPropertyOf 'sdmx-measure:obsValue)
+      (triple 'gnt:h2 'a 'qb:MeasureProperty)
+      (triple 'gnt:h2 'a 'rdf:Property)
+      (triple 'gnt:h2 'rdfs:domain 'gnc:molecular_trait_metadata)
+      (triple 'gnt:h2 'rdfs:range 'xsd:double)
+      (triple 'gnt:h2 'rdfs:subPropertyOf 'sdmx-measure:obsValue)
       (triple 'gnt:sequence 'rdfs:domain 'gnc:phenotype)
       (triple 'gnt:sequence 'rdfs:range 'xsd:integer)
-      (triple 'gnt:submitter 'a 'owl:ObjectProperty)
+      (triple 'gnt:submitter 'a 'owl:DatatypeProperty)
       (triple 'gnt:submitter 'rdfs:domain 'gnc:phenotype)
       (triple 'gnt:submitter 'skos:definition "A person who submitted this resource to GN")
       (triple 'gnt:submitter 'skos:definition "A person who submitted this resource to GN")
@@ -240,6 +301,9 @@
       (triple 'gnc:dna_marker 'a 'owl:Class)
       (triple 'gnc:dna_marker 'a 'skos:Concept)
       (triple 'gnc:dna_marker 'rdfs:label "A DNA Marker or SNP")
+      (triple 'gnc:dna_marker 'rdfs:subClassOf 'gnc:material_resource)
+      (triple 'gnc:marker 'a 'owl:Class)
+      (triple 'gnc:marker 'rdfs:subClassOf 'gnc:dna_marker)
       (triple 'gnt:has_genotype_files 'rdfs:label "This resource has these genotype files")
       (triple 'gnt:has_genotype_files 'rdfs:domain 'dcat:Dataset)
       (triple 'gnt:has_genotype_data 'rdf:type 'owl:ObjectProperty)
@@ -248,16 +312,19 @@
       (triple 'gnt:has_genotype_data 'rdfs:domain 'gnc:set)
       (triple 'gnt:has_genotype_data 'rdfs:range 'dcat:Dataset)
       (triple 'gnt:has_genotype_data 'rdfs:subPropertyOf 'dct:relation)
-      (triple 'gnt:has_marker_count 'rdf:type 'owl:ObjectProperty)
+      (triple 'gnt:has_marker_count 'rdf:type 'owl:DatatypeProperty)
       (triple 'gnt:has_marker_count 'rdfs:label "this resources has N number of dna markers/SNPs.")
-      (triple 'gnt:has_marker_count 'rdfs:domain 'xsd:integer)
-      (triple 'gnt:has_marker_count 'rdfs:range 'dcat:Dataset)
+      (triple 'gnt:has_marker_count 'rdfs:domain 'dcat:Dataset)
+      (triple 'gnt:has_marker_count 'rdfs:range 'xsd:integer)
       (triple 'gnt:chr 'a 'qb:MeasureProperty)
       (triple 'gnt:chr 'a 'rdf:Property)
       (triple 'gnt:chr 'rdfs:label "Chromosome")
       (triple 'gnt:chr 'rdfs:domain 'gnc:marker)
       (triple 'gnt:chr 'rdfs:range 'rdfs:Literal)
       (triple 'gnt:chr 'rdfs:subPropertyOf 'sdmx-measure:obsValue)
+      (triple 'gnt:chromosome 'a 'owl:DatatypeProperty)
+      (triple 'gnt:chromosome 'rdfs:subPropertyOf 'gnt:chr)
+      (triple 'gnt:chromosome 'rdfs:range 'rdfs:Literal)
       (triple 'gnt:mb 'rdfs:label "Megabase")
       (triple 'gnt:mb 'rdfs:domain 'gnc:marker)
       (triple 'gnt:mb 'rdfs:range 'rdfs:Literal)
@@ -270,31 +337,39 @@
       (triple 'gnt:source 'rdfs:domain 'gnc:marker)
       (triple 'gnt:source 'rdfs:range 'rdfs:Literal)
       (triple 'gnt:source 'rdfs:subPropertyOf 'sdmx-measure:obsValue)
+      (triple 'gnc:nucleotide 'a 'owl:Class)
+      (triple 'gnc:nucleotide 'rdfs:subClassOf 'gnc:material_resource)
+      (triple 'gnt:has_sequence 'a 'owl:DatatypeProperty)
+      (triple 'gnt:has_sequence 'rdfs:domain 'gnc:nucleotide)
+      (triple 'gnt:has_sequence 'rdfs:range 'xsd:string)
 
       ;; Probesets
       (triple 'gnc:probeset 'a 'owl:Class)
       (triple 'gnc:probeset 'a 'skos:Concept)
       (triple 'gnc:probeset 'rdfs:label "A probeset")
+      (triple 'gnc:probeset 'rdfs:subClassOf 'gnc:material_resource)
       (triple 'gnt:has_target_id 'a 'owl:ObjectProperty)
       (triple 'gnt:has_target_id 'rdfs:label "The target id for this probeset")
       (triple 'gnt:has_target_id 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:symbol 'a 'owl:ObjectProperty)
+      (triple 'gnt:symbol 'a 'owl:DatatypeProperty)
       (triple 'gnt:symbol 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:targets_region 'a 'owl:ObjectProperty)
+      (triple 'gnt:targets_region 'a 'owl:DatatypeProperty)
       (triple 'gnt:targets_region 'rdfs:label "The target region")
       (triple 'gnt:targets_region 'rdfs:domain 'gnc:probeset)
+      (triple 'gnt:mb_mm8 'a 'owl:DatatypeProperty)
       (triple 'gnt:mb_mm8 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:has_specificity 'a 'owl:ObjectProperty)
+      (triple 'gnt:mb_mm8 'rdfs:range 'xsd:double)
+      (triple 'gnt:has_specificity 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_specificity 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:has_blat_score 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_blat_score 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_blat_score 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:has_blat_mb_start 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_blat_mb_start 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_blat_mb_start 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:has_blat_mb_end 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_blat_mb_end 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_blat_mb_end 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:has_blat_seq 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_blat_seq 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_blat_seq 'rdfs:domain 'gnc:probeset)
-      (triple 'gnt:has_target_seq 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_target_seq 'a 'owl:DatatypeProperty)
       (triple 'gnt:has_target_seq 'rdfs:domain 'gnc:probeset)
       (triple 'gnt:has_homologene_id 'a 'owl:ObjectProperty)
       (triple 'gnt:has_homologene_id 'rdfs:domain 'gnc:probeset)
@@ -310,15 +385,70 @@
       (triple 'gnt:has_chebi_id 'rdfs:domain 'gnc:probeset)
 
       ;; RIF
+      (triple 'gnc:gene 'a 'rdfs:Class)
+      (triple 'gnc:gene 'rdfs:subClassOf 'gnc:material_resource)
+      (triple 'gnc:gene_symbol 'a 'rdfs:Class)
+      (triple 'gnc:gene_symbol 'rdfs:subClassOf 'gnc:information_resource)
+      (triple 'gnc:transcript 'a 'rdfs:Class)
+      (triple 'gnc:transcript 'rdfs:subClassOf 'gnc:information_resource)
+      (triple 'gnc:resource_link 'a 'rdfs:Class)
+      (triple 'gnc:aba_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:biogps_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:ebi_gwas_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:gemma_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:genemania_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:gtex_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:panther_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:protein_atlas_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:rgd_link 'rdfs:subClassOf 'gnc:resource_link)
+      (triple 'gnc:has_kg_id 'a 'owl:DatatypeProperty)
+      (triple 'gnc:has_kg_id 'rdfs:domain 'gnc:gene)
+      (triple 'gnc:has_unigen_id 'a 'owl:DatatypeProperty)
+      (triple 'gnc:has_unigen_id 'rdfs:domain 'gnc:gene)
+      (triple 'gnc:has_protein_id 'a 'owl:DatatypeProperty)
+      (triple 'gnc:has_protein_id 'rdfs:domain 'gnc:gene)
+      (triple 'gnc:has_align_id 'a 'owl:DatatypeProperty)
+      (triple 'gnc:has_align_id 'rdfs:domain 'gnc:gene)
       (triple 'gnc:gene_wiki_entry 'a 'rdfs:Class)
+      (triple 'gnc:gene_wiki_entry 'rdfs:subClassOf 'gnc:information_resource)
       (triple 'gnc:gn_wiki_entry 'rdfs:subClassOf 'gnc:gene_wiki_entry)
-      (triple 'gnt:initial 'a 'owl:ObjectProperty)
+      (triple 'gnt:initial 'a 'owl:DatatypeProperty)
       (triple 'gnt:initial 'rdfs:domain 'gnc:gene_wiki_entry)
       (triple 'gnt:initial 'skos:definition "Optional user or project code or your initials")
-      (triple 'gnt:reason 'a 'owl:ObjectProperty)
+      (triple 'gnt:reason 'a 'owl:DatatypeProperty)
       (triple 'gnt:reason 'rdfs:domain 'gnc:gene_wiki_entry)
       (triple 'gnt:reason 'skos:definition "The reason why this resource was modified")
+      (triple 'gnt:belongs_to_category 'a 'owl:DatatypeProperty)
+      (triple 'gnt:belongs_to_category 'rdfs:domain 'gnc:gene_wiki_entry)
+      (triple 'gnt:has_gene_id 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_gene_id 'schema:domainIncludes 'gnc:gene)
+      (triple 'gnt:has_gene_id 'schema:domainIncludes 'gnc:ncbi_wiki_entry)
+      (triple 'gnt:gene_symbol 'a 'owl:DatatypeProperty)
+      (triple 'gnt:gene_symbol 'rdfs:domain 'gnc:gene)
       (triple 'gnc:gn_wiki_entry 'rdfs:comment "Represents GeneRIF Entries entered from GeneNetwork")
       (triple 'gnt:gene_symbol 'rdfs:domain 'gnc:gn_wiki_entry)
+      (triple 'gnt:transcript 'a 'owl:ObjectProperty)
+      (triple 'gnt:transcript 'rdfs:domain 'gnc:gene)
+      (triple 'gnt:transcript 'rdfs:range 'gnc:transcript)
+      (triple 'gnt:strand 'a 'owl:DatatypeProperty)
+      (triple 'gnt:strand 'rdfs:domain 'gnc:gene)
+      (triple 'gnt:strand 'rdfs:range 'xsd:string)
+      (triple 'gnt:tx_start 'a 'owl:DatatypeProperty)
+      (triple 'gnt:tx_start 'rdfs:domain 'gnc:gene)
+      (triple 'gnt:tx_start 'rdfs:range 'xsd:double)
+      (triple 'gnt:tx_end 'a 'owl:DatatypeProperty)
+      (triple 'gnt:tx_end 'rdfs:domain 'gnc:gene)
+      (triple 'gnt:tx_end 'rdfs:range 'xsd:double)
+      (triple 'gnt:has_align_id 'a 'owl:DatatypeProperty)
+      (triple 'gnt:has_align_id 'rdfs:domain 'gnc:gene)
+      (triple 'gnt:has_protein_id 'a 'owl:DatatypeProperty)
+      (triple 'gnt:has_protein_id 'rdfs:domain 'gnc:gene)
+      (triple 'gnt:has_rgd_id 'a 'owl:DatatypeProperty)
+      (triple 'gnt:has_rgd_id 'rdfs:domain 'gnc:gene)
+      (triple 'gnt:has_geo_series_id 'a 'owl:ObjectProperty)
+      (triple 'gnt:has_geo_series_id 'rdfs:domain 'skos:Concept)
+      (triple 'gnt:has_go_tree_value 'a 'owl:DatatypeProperty)
+      (triple 'gnt:has_go_tree_value 'rdfs:domain 'skos:Concept)
+      (triple 'gnt:has_go_tree_value 'rdfs:range 'xsd:string)
       (triple 'gnc:ncbi_wiki_entry 'rdfs:subClassOf 'gnc:gene_wiki_entry)
       (triple 'gnc:ncbi_wiki_entry 'rdfs:comment "Represents GeneRIF Entries obtained from NCBI"))))
diff --git a/examples/probesets-experiment-metadata.scm b/examples/probesets-experiment-metadata.scm
index 8706c3c..b2eb93e 100755
--- a/examples/probesets-experiment-metadata.scm
+++ b/examples/probesets-experiment-metadata.scm
@@ -34,7 +34,7 @@
                                            #:separator "_"))
     (set gnt:mean (annotate-field (field ("IFNULL(ProbeSetXRef.mean, '')" mean))
                                   '^^xsd:double))
-    (set gnt:SE (annotate-field (field ("IFNULL(ProbeSetXRef.se, '')" se))
+    (set gnt:se (annotate-field (field ("IFNULL(ProbeSetXRef.se, '')" se))
                                 '^^xsd:double))
     (set gnt:locus (sanitize-rdf-string (field ProbeSetXRef Locus)))
     (set gnt:lod_score (annotate-field