M.Benno Blumenthal and John del Corral International Research Institute for Climate and Society IRI Data Library Dataset Function Ontology and Multiple Metadata Framework
RDF Standard Data Model Exchange Tools Users Datasets Standard Metadata Schema Tools Users Datasets Standard Metadata Schema Tools Users Datasets Standard Metadata Schema Tools Users Datasets Standard Metadata Schema Tools Users Datasets Standard Metadata Schema Standard metadata schema RDF
Example: Search Interface Search Interface Users Datasets Search Ontology Dataset Ontology Additional Semantics
Sample Tool: Faceted Search
CF attributes SWEET Ontologies (OWL) Search Terms CF Standard Names (RDF object) IRIDL Terms NC basic attributes IRIDL attributes/objects SWEET as Terms CF Standard Names As Terms Gazetteer Terms CF data objects Location
Dataset Function Classes
Function Classes with Properties
Diagram for svd
svd documentation page svd Computes singular value decomposition var {wghts} [ space... ] [ time... ] svd SOURCES.CAC.ssta { Y cosd } [ X Y ] [T] svd As a check of normalization, plot Ss dup mul Y cosd mul [X Y]average or Ts sv div dup mul [T]average Both should be a constant 1. See also EOF (Emprical Orthogonal Function): varimax
Data Servers Ontologies MMI JPL Standards Organizations Start Point RDF Crawler RDFS Semantics Owl Semantics SWRL Rules SeRQL CONSTRUCT Search Queries Location Canonicalizer Time Canonicalizer Sesame Search Interface bibliography IRI RDF Architecture
ActiveRDF Direct mapping from RDF to Ruby objects, so that code stays within the language. Much easier to write/maintain. Java versions include JRDF, Elmo (openrdf/sesame), Hibernate, … PHP has RAP
ActiveRDF Snippets adapt = ConnectionPool.add_data_source :type => :redland adapt.load '/beluga/data/benno/iri_html/extractfns.owl', 'rdfxml' Namespace.register :fns, ' Namespace.register :rdfs, ' ObjectManager.construct_classes class FNS::Indexterm < RDFS::Resource def termlabel if(fns::func_name)then fns::func_name elsif(rdfs::label)then rdfs::label else to_s end end def sortlabel if(termlabel)then termlabel.downcase.sub(':','') else termlabel end = FNS::Indexterm.find_all.sort_by {|x| x.sortlabel }
Conclusions RDF facilitates multiple representations of data (and other) objects RDF allows direct access of those objects in multiple languages. RDF provides a framework to crosswalk between these multiple representations