lipdjs
Version:
A JavaScript library for reading and writing LiPD (Linked Paleo Data) files
27,136 lines • 890 kB
JavaScript
// src/lipd.ts
import { Writer as Writer2 } from "n3";
import * as fs4 from "fs";
import * as path4 from "path";
import JSZip2 from "jszip";
// src/utils/env.ts
function isBrowser() {
return typeof window !== "undefined";
}
// src/utils/logger.ts
var LogLevel = /* @__PURE__ */ ((LogLevel2) => {
LogLevel2[LogLevel2["DEBUG"] = 0] = "DEBUG";
LogLevel2[LogLevel2["INFO"] = 1] = "INFO";
LogLevel2[LogLevel2["WARN"] = 2] = "WARN";
LogLevel2[LogLevel2["ERROR"] = 3] = "ERROR";
return LogLevel2;
})(LogLevel || {});
var Logger = class _Logger {
/**
* Private constructor to enforce singleton pattern
*/
constructor() {
this.outputChannel = null;
this.logLevel = 1 /* INFO */;
}
/**
* Get the singleton instance of Logger
*/
static getInstance() {
if (!_Logger.instance) {
_Logger.instance = new _Logger();
}
return _Logger.instance;
}
/**
* Initialize the logger with an output channel
* @param channel VS Code output channel
* @param level Initial log level
*/
initialize(channel = null, level = 1 /* INFO */) {
this.outputChannel = channel;
this.logLevel = level;
}
/**
* Set the current log level
* @param level Log level to set
*/
setLogLevel(level) {
this.logLevel = level;
}
/**
* Get the current log level
* @returns Current log level
*/
getLogLevel() {
return this.logLevel;
}
/**
* Log a debug message
* @param message Message to log
* @param args Additional arguments for formatting
*/
debug(message, ...args) {
if (this.logLevel <= 0 /* DEBUG */) {
this.log("DEBUG", message, ...args);
}
}
/**
* Log an info message
* @param message Message to log
* @param args Additional arguments for formatting
*/
info(message, ...args) {
if (this.logLevel <= 1 /* INFO */) {
this.log("INFO", message, ...args);
}
}
/**
* Log a warning message
* @param message Message to log
* @param args Additional arguments for formatting
*/
warn(message, ...args) {
if (this.logLevel <= 2 /* WARN */) {
this.log("WARN", message, ...args);
}
}
/**
* Log an error message
* @param message Message to log
* @param args Additional arguments for formatting
*/
error(message, ...args) {
if (this.logLevel <= 3 /* ERROR */) {
this.log("ERROR", message, ...args);
}
}
/**
* Show the output channel
*/
show() {
this.outputChannel?.show(true);
}
/**
* Internal log method
* @param level Log level as string
* @param message Message to log
* @param args Additional arguments for formatting
*/
log(level, message, ...args) {
const timestamp = (/* @__PURE__ */ new Date()).toISOString();
let formattedMessage = `[${timestamp}] [${level}] ${message}`;
if (args.length > 0) {
formattedMessage = this.formatMessage(formattedMessage, ...args);
}
if (this.outputChannel) {
this.outputChannel.appendLine(formattedMessage);
} else {
switch (level) {
case "DEBUG":
console.debug(formattedMessage);
break;
case "INFO":
console.info(formattedMessage);
break;
case "WARN":
console.warn(formattedMessage);
break;
case "ERROR":
console.error(formattedMessage);
break;
default:
console.log(formattedMessage);
}
}
}
/**
* Format a message with arguments (simple printf-like format)
* @param message Base message with placeholders
* @param args Arguments to insert
* @returns Formatted message
*/
formatMessage(message, ...args) {
let formatted = message;
let i = 0;
return formatted.replace(/%s|%d|%f|%j/g, (match) => {
if (i >= args.length) {
return match;
}
const arg = args[i++];
switch (match) {
case "%s":
return String(arg);
case "%d":
return Number(arg).toString();
case "%f":
return parseFloat(arg).toString();
case "%j":
return JSON.stringify(arg);
default:
return match;
}
});
}
};
// src/globals/urls.ts
var NSURL = "http://linked.earth/lipd";
var ONTONS = "http://linked.earth/ontology#";
var DATAURL = "https://data.mint.isi.edu/files/lipd";
var ARCHIVEURL = "http://linked.earth/ontology/archive";
var PROXYURL = "http://linked.earth/ontology/proxy";
var UNITSURL = "http://linked.earth/ontology/units";
var VARIABLEURL = "http://linked.earth/ontology/variables";
var DEFAULT_GRAPH_URI = "http://www.openrdf.org/schema/sesame#nil";
var NAMESPACES = {
"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"owl": "http://www.w3.org/2002/07/owl#",
"wgs84": "http://www.w3.org/2003/01/geo/wgs84_pos#",
"le_archive": ARCHIVEURL,
"le_proxy": PROXYURL,
"le_units": UNITSURL,
"le_variables": VARIABLEURL
};
// src/rdfGraph.ts
import { Store } from "n3";
import { QueryEngine } from "@comunica/query-sparql";
var logger = Logger.getInstance();
var RDFGraph = class _RDFGraph {
constructor(store, quiet = false, endpoint, auth) {
this.store = store || new Store();
this.quiet = quiet;
this.endpoint = endpoint;
this.remote = false;
this.engine = new QueryEngine();
this.auth = auth;
}
/**
* Set authentication credentials for SPARQL endpoint
* @param auth Authentication credentials containing username and password
*/
setAuth(auth) {
this.auth = auth;
}
/**
* Clear authentication credentials
*/
clearAuth() {
this.auth = void 0;
}
/**
* Execute a SPARQL query
* @param queryStr SPARQL query string
* @returns Array containing results and raw dataframe
*/
async query(queryStr) {
try {
logger.debug("Query: " + queryStr);
const bindingsStream = await this.engine.queryBindings(queryStr, this.getConfiguration());
const bindings = await bindingsStream.toArray();
const results = bindings.map((binding) => {
const result = {};
for (const variable of binding.keys()) {
const term = binding.get(variable);
if (term) {
result[variable.value] = term;
}
}
return result;
});
return [results, bindings];
} catch (error) {
logger.error("Error executing query: " + error);
throw error;
}
}
/**
* Execute a SPARQL ASK query
* @param queryStr SPARQL ASK query string
* @returns Boolean result of the ASK query
*/
async askQuery(queryStr) {
try {
logger.debug("ASK Query: " + queryStr);
return await this.engine.queryBoolean(queryStr, this.getConfiguration());
} catch (error) {
logger.error("Error executing ASK query: " + error);
throw error;
}
}
/**
* Execute a SPARQL Update query
* @param queryStr SPARQL Update query string
* @returns Boolean result of the Update query
*/
async updateQuery(queryStr) {
try {
logger.debug("Update Query: " + queryStr);
if (!this.remote || !this.endpoint) {
throw new Error("Remote endpoint must be set for update operations");
}
const updateEndpoint = this.endpoint.replace(/\/repositories\/([^/]+)$/, "/repositories/$1/statements");
console.log(`Using update endpoint: ${updateEndpoint}`);
const headers = {
"Content-Type": "application/sparql-update",
"Accept": "application/json"
};
if (this.auth) {
const authString = Buffer.from(`${this.auth.username}:${this.auth.password}`).toString("base64");
headers["Authorization"] = `Basic ${authString}`;
}
const response = await fetch(updateEndpoint, {
method: "POST",
headers,
body: queryStr
});
if (!response.ok) {
const errorText = await response.text();
throw new Error(`Error from update endpoint (${response.status}): ${errorText}`);
}
logger.debug("Update successful");
} catch (error) {
logger.error("Error executing Update query: " + error);
throw error;
}
}
/**
* Get the source configuration for queries
* @returns Array containing the store configuration
* @private
*/
getConfiguration(endpoint) {
let source;
if (!endpoint) {
endpoint = this.endpoint;
}
if (this.remote && endpoint) {
source = {
type: "sparql",
value: endpoint
};
} else {
source = this.store;
}
let configuration = {
sources: [source]
};
if (this.remote && endpoint && this.auth && this.auth.username) {
configuration.httpAuth = `${this.auth.username}:${this.auth.password}`;
}
return configuration;
}
getStore() {
return this.store;
}
/**
* Get id(s) from the graph and returns a new RDFGraph object
* @param ids Graph id(s) to get
* @returns RDFGraph object with the retrieved graph(s)
*/
get(ids) {
const newStore = new Store();
const idList = Array.isArray(ids) ? ids : [ids];
const quads = this.store.getQuads(null, null, null, null);
for (const quad of quads) {
if (quad.graph && idList.includes(quad.graph.value)) {
newStore.addQuad(quad);
}
}
return new _RDFGraph(newStore, this.quiet, this.endpoint, this.auth);
}
/**
* Removes id(s) from the graph
* @param ids Graph id(s) to be removed
*/
remove(ids) {
const idList = Array.isArray(ids) ? ids : [ids];
const quads = this.store.getQuads(null, null, null, null);
for (const quad of quads) {
if (quad.graph && idList.includes(quad.graph.value)) {
this.store.removeQuad(quad);
}
}
}
/**
* Pops graph(s) from the combined graph and returns the popped RDF Graph
* @param ids Graph id(s) to be popped
* @returns RDFGraph object with the popped graph(s)
*/
pop(ids) {
const popped = this.get(ids);
this.remove(ids);
return popped;
}
/**
* Sets a SPARQL endpoint for a remote Knowledge Base (example: GraphDB)
* @param endpoint URL for the SPARQL endpoint
*
* @example
* ```typescript
* // Fetch LiPD data from remote RDF Graph
* const rdf = new RDFGraph();
* rdf.setEndpoint("https://linkedearth.graphdb.mint.isi.edu/repositories/LiPDVerse-dynamic");
* rdf.setRemote(true);
* const [result, resultDf] = await rdf.query("SELECT ?s ?p ?o WHERE {?s ?p ?o} LIMIT 10");
* ```
*/
setEndpoint(endpoint) {
this.endpoint = endpoint;
}
getEndpoint() {
return this.endpoint;
}
setRemote(remote) {
this.remote = remote;
}
getRemote() {
return this.remote;
}
};
// src/utils/rdfToLipd.ts
import { DataFactory } from "n3";
import * as fs2 from "fs";
import * as path2 from "path";
import AdmZip from "adm-zip";
// src/globals/synonyms.ts
var SYNONYMS = {
"ARCHIVES": {
"ArchiveType": {
"borehole": {
"id": "http://linked.earth/ontology/archive#Borehole",
"label": "Borehole"
},
"coral": {
"id": "http://linked.earth/ontology/archive#Coral",
"label": "Coral"
},
"fluvial sediment": {
"id": "http://linked.earth/ontology/archive#FluvialSediment",
"label": "Fluvial sediment"
},
"fluvialsediment": {
"id": "http://linked.earth/ontology/archive#FluvialSediment",
"label": "Fluvial sediment"
},
"creek": {
"id": "http://linked.earth/ontology/archive#FluvialSediment",
"label": "Fluvial sediment"
},
"fluvial": {
"id": "http://linked.earth/ontology/archive#FluvialSediment",
"label": "Fluvial sediment"
},
"river": {
"id": "http://linked.earth/ontology/archive#FluvialSediment",
"label": "Fluvial sediment"
},
"stream": {
"id": "http://linked.earth/ontology/archive#FluvialSediment",
"label": "Fluvial sediment"
},
"glacier ice": {
"id": "http://linked.earth/ontology/archive#GlacierIce",
"label": "Glacier ice"
},
"glacierice": {
"id": "http://linked.earth/ontology/archive#GlacierIce",
"label": "Glacier ice"
},
"ice cores": {
"id": "http://linked.earth/ontology/archive#GlacierIce",
"label": "Glacier ice"
},
"ground ice": {
"id": "http://linked.earth/ontology/archive#GroundIce",
"label": "Ground ice"
},
"groundice": {
"id": "http://linked.earth/ontology/archive#GroundIce",
"label": "Ground ice"
},
"bulk ice": {
"id": "http://linked.earth/ontology/archive#GroundIce",
"label": "Ground ice"
},
"lake sediment": {
"id": "http://linked.earth/ontology/archive#LakeSediment",
"label": "Lake sediment"
},
"lakesediment": {
"id": "http://linked.earth/ontology/archive#LakeSediment",
"label": "Lake sediment"
},
"lagoon": {
"id": "http://linked.earth/ontology/archive#LakeSediment",
"label": "Lake sediment"
},
"lake": {
"id": "http://linked.earth/ontology/archive#LakeSediment",
"label": "Lake sediment"
},
"marine sediment": {
"id": "http://linked.earth/ontology/archive#MarineSediment",
"label": "Marine sediment"
},
"marinesediment": {
"id": "http://linked.earth/ontology/archive#MarineSediment",
"label": "Marine sediment"
},
"delta": {
"id": "http://linked.earth/ontology/archive#MarineSediment",
"label": "Marine sediment"
},
"marine": {
"id": "http://linked.earth/ontology/archive#MarineSediment",
"label": "Marine sediment"
},
"midden": {
"id": "http://linked.earth/ontology/archive#Midden",
"label": "Midden"
},
"mollusk shell": {
"id": "http://linked.earth/ontology/archive#MolluskShell",
"label": "Mollusk shell"
},
"molluskshell": {
"id": "http://linked.earth/ontology/archive#MolluskShell",
"label": "Mollusk shell"
},
"bivalve": {
"id": "http://linked.earth/ontology/archive#MolluskShell",
"label": "Mollusk shell"
},
"molluskshells": {
"id": "http://linked.earth/ontology/archive#MolluskShell",
"label": "Mollusk shell"
},
"peat": {
"id": "http://linked.earth/ontology/archive#Peat",
"label": "Peat"
},
"bog": {
"id": "http://linked.earth/ontology/archive#Peat",
"label": "Peat"
},
"fen": {
"id": "http://linked.earth/ontology/archive#Peat",
"label": "Peat"
},
"marsh": {
"id": "http://linked.earth/ontology/archive#Peat",
"label": "Peat"
},
"mire": {
"id": "http://linked.earth/ontology/archive#Peat",
"label": "Peat"
},
"swamp": {
"id": "http://linked.earth/ontology/archive#Peat",
"label": "Peat"
},
"sclerosponge": {
"id": "http://linked.earth/ontology/archive#Sclerosponge",
"label": "Sclerosponge"
},
"shoreline": {
"id": "http://linked.earth/ontology/archive#Shoreline",
"label": "Shoreline"
},
"lake levels": {
"id": "http://linked.earth/ontology/archive#Shoreline",
"label": "Shoreline"
},
"lakedeposit": {
"id": "http://linked.earth/ontology/archive#Shoreline",
"label": "Shoreline"
},
"lakedeposits": {
"id": "http://linked.earth/ontology/archive#Shoreline",
"label": "Shoreline"
},
"speleothem": {
"id": "http://linked.earth/ontology/archive#Speleothem",
"label": "Speleothem"
},
"speleothems": {
"id": "http://linked.earth/ontology/archive#Speleothem",
"label": "Speleothem"
},
"cave": {
"id": "http://linked.earth/ontology/archive#Speleothem",
"label": "Speleothem"
},
"terrestrial sediment": {
"id": "http://linked.earth/ontology/archive#TerrestrialSediment",
"label": "Terrestrial sediment"
},
"terrestrialsediment": {
"id": "http://linked.earth/ontology/archive#TerrestrialSediment",
"label": "Terrestrial sediment"
},
"dune": {
"id": "http://linked.earth/ontology/archive#TerrestrialSediment",
"label": "Terrestrial sediment"
},
"loess": {
"id": "http://linked.earth/ontology/archive#TerrestrialSediment",
"label": "Terrestrial sediment"
},
"wood": {
"id": "http://linked.earth/ontology/archive#Wood",
"label": "Wood"
},
"tree ring": {
"id": "http://linked.earth/ontology/archive#Wood",
"label": "Wood"
},
"tree": {
"id": "http://linked.earth/ontology/archive#Wood",
"label": "Wood"
},
"documents": {
"id": "http://linked.earth/ontology/archive#Documents",
"label": "Documents"
},
"other": {
"id": "http://linked.earth/ontology/archive#Other",
"label": "Other"
}
}
},
"INTERPRETATION": {
"InterpretationVariable": {
"c3c4ratio": {
"id": "http://linked.earth/ontology/interpretation#C3C4Ratio",
"label": "C3C4Ratio"
},
"composition c3-c4 plants": {
"id": "http://linked.earth/ontology/interpretation#C3C4Ratio",
"label": "C3C4Ratio"
},
"circulationindex": {
"id": "http://linked.earth/ontology/interpretation#circulationIndex",
"label": "circulationIndex"
},
"circulation index": {
"id": "http://linked.earth/ontology/interpretation#circulationIndex",
"label": "circulationIndex"
},
"mode": {
"id": "http://linked.earth/ontology/interpretation#circulationIndex",
"label": "circulationIndex"
},
"nao index": {
"id": "http://linked.earth/ontology/interpretation#circulationIndex",
"label": "circulationIndex"
},
"circulationvariable": {
"id": "http://linked.earth/ontology/interpretation#circulationVariable",
"label": "circulationVariable"
},
"circulation variable": {
"id": "http://linked.earth/ontology/interpretation#circulationVariable",
"label": "circulationVariable"
},
"changes in monsoon intensity.": {
"id": "http://linked.earth/ontology/interpretation#circulationVariable",
"label": "circulationVariable"
},
"circulation": {
"id": "http://linked.earth/ontology/interpretation#circulationVariable",
"label": "circulationVariable"
},
"dissolvedoxygen": {
"id": "http://linked.earth/ontology/interpretation#dissolvedOxygen",
"label": "dissolvedOxygen"
},
"dissolved oxygen": {
"id": "http://linked.earth/ontology/interpretation#dissolvedOxygen",
"label": "dissolvedOxygen"
},
"suboxia": {
"id": "http://linked.earth/ontology/interpretation#dissolvedOxygen",
"label": "dissolvedOxygen"
},
"dust": {
"id": "http://linked.earth/ontology/interpretation#dust",
"label": "dust"
},
"ela": {
"id": "http://linked.earth/ontology/interpretation#ELA",
"label": "ELA"
},
"equilibrium line altitude": {
"id": "http://linked.earth/ontology/interpretation#ELA",
"label": "ELA"
},
"evaporation": {
"id": "http://linked.earth/ontology/interpretation#evaporation",
"label": "evaporation"
},
"fire": {
"id": "http://linked.earth/ontology/interpretation#fire",
"label": "fire"
},
"fire history": {
"id": "http://linked.earth/ontology/interpretation#fire",
"label": "fire"
},
"growingdegreedays": {
"id": "http://linked.earth/ontology/interpretation#growingDegreeDays",
"label": "growingDegreeDays"
},
"growing degree days": {
"id": "http://linked.earth/ontology/interpretation#growingDegreeDays",
"label": "growingDegreeDays"
},
"gdd": {
"id": "http://linked.earth/ontology/interpretation#growingDegreeDays",
"label": "growingDegreeDays"
},
"hydrologicbalance": {
"id": "http://linked.earth/ontology/interpretation#hydrologicBalance",
"label": "hydrologicBalance"
},
"gw-e": {
"id": "http://linked.earth/ontology/interpretation#hydrologicBalance",
"label": "hydrologicBalance"
},
"i_e": {
"id": "http://linked.earth/ontology/interpretation#hydrologicBalance",
"label": "hydrologicBalance"
},
"hydrology": {
"id": "http://linked.earth/ontology/interpretation#hydrologicBalance",
"label": "hydrologicBalance"
},
"lakewaterisotope": {
"id": "http://linked.earth/ontology/interpretation#lakeWaterIsotope",
"label": "lakeWaterIsotope"
},
"lake water and precipitation d2h": {
"id": "http://linked.earth/ontology/interpretation#lakeWaterIsotope",
"label": "lakeWaterIsotope"
},
"lake water d18o": {
"id": "http://linked.earth/ontology/interpretation#lakeWaterIsotope",
"label": "lakeWaterIsotope"
},
"lake water d2h": {
"id": "http://linked.earth/ontology/interpretation#lakeWaterIsotope",
"label": "lakeWaterIsotope"
},
"liso": {
"id": "http://linked.earth/ontology/interpretation#lakeWaterIsotope",
"label": "lakeWaterIsotope"
},
"meltwater": {
"id": "http://linked.earth/ontology/interpretation#meltwater",
"label": "meltwater"
},
"ice melt": {
"id": "http://linked.earth/ontology/interpretation#meltwater",
"label": "meltwater"
},
"needstobereplaced": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"anoxia": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"carbonate_ion_concentration": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"export-productivity": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"gdgt": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"mixed": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"precipitation d2h + evap": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"t+ela": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"plant community composition": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"liso/p-e": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"organic matter source": {
"id": "http://linked.earth/ontology/interpretation#needsToBeReplaced",
"label": "needsToBeReplaced"
},
"p-e": {
"id": "http://linked.earth/ontology/interpretation#P-E",
"label": "P-E"
},
"precipitation minus evaporation": {
"id": "http://linked.earth/ontology/interpretation#P-E",
"label": "P-E"
},
"effective moisture": {
"id": "http://linked.earth/ontology/interpretation#P-E",
"label": "P-E"
},
"m": {
"id": "http://linked.earth/ontology/interpretation#P-E",
"label": "P-E"
},
"p_e": {
"id": "http://linked.earth/ontology/interpretation#P-E",
"label": "P-E"
},
"p=e": {
"id": "http://linked.earth/ontology/interpretation#P-E",
"label": "P-E"
},
"precipitation": {
"id": "http://linked.earth/ontology/interpretation#precipitation",
"label": "precipitation"
},
"pmax": {
"id": "http://linked.earth/ontology/interpretation#precipitation",
"label": "precipitation"
},
"pmin": {
"id": "http://linked.earth/ontology/interpretation#precipitation",
"label": "precipitation"
},
"p": {
"id": "http://linked.earth/ontology/interpretation#precipitation",
"label": "precipitation"
},
"p_amount": {
"id": "http://linked.earth/ontology/interpretation#precipitation",
"label": "precipitation"
},
"precipitationdeuteriumexcess": {
"id": "http://linked.earth/ontology/interpretation#precipitationDeuteriumExcess",
"label": "precipitationDeuteriumExcess"
},
"precipitation d-excess": {
"id": "http://linked.earth/ontology/interpretation#precipitationDeuteriumExcess",
"label": "precipitationDeuteriumExcess"
},
"precipitationisotope": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"dd": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"d18o of precipitation": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"p_isotope": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"piso": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"precipitation d18o": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"precipitation d2h": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"precipitation isotope": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"source": {
"id": "http://linked.earth/ontology/interpretation#precipitationIsotope",
"label": "precipitationIsotope"
},
"productivity": {
"id": "http://linked.earth/ontology/interpretation#productivity",
"label": "productivity"
},
"algal productivity": {
"id": "http://linked.earth/ontology/interpretation#productivity",
"label": "productivity"
},
"relativehumidity": {
"id": "http://linked.earth/ontology/interpretation#relativeHumidity",
"label": "relativeHumidity"
},
"relative humidity": {
"id": "http://linked.earth/ontology/interpretation#relativeHumidity",
"label": "relativeHumidity"
},
"rh": {
"id": "http://linked.earth/ontology/interpretation#relativeHumidity",
"label": "relativeHumidity"
},
"salinity": {
"id": "http://linked.earth/ontology/interpretation#salinity",
"label": "salinity"
},
"s": {
"id": "http://linked.earth/ontology/interpretation#salinity",
"label": "salinity"
},
"sss": {
"id": "http://linked.earth/ontology/interpretation#salinity",
"label": "salinity"
},
"seaice": {
"id": "http://linked.earth/ontology/interpretation#seaIce",
"label": "seaIce"
},
"sea ice cover": {
"id": "http://linked.earth/ontology/interpretation#seaIce",
"label": "seaIce"
},
"ice": {
"id": "http://linked.earth/ontology/interpretation#seaIce",
"label": "seaIce"
},
"seasonality": {
"id": "http://linked.earth/ontology/interpretation#seasonality",
"label": "seasonality"
},
"seawaterisotope": {
"id": "http://linked.earth/ontology/interpretation#seawaterIsotope",
"label": "seawaterIsotope"
},
"seawater_isotope": {
"id": "http://linked.earth/ontology/interpretation#seawaterIsotope",
"label": "seawaterIsotope"
},
"streamflow": {
"id": "http://linked.earth/ontology/interpretation#streamflow",
"label": "streamflow"
},
"q": {
"id": "http://linked.earth/ontology/interpretation#streamflow",
"label": "streamflow"
},
"sunlight": {
"id": "http://linked.earth/ontology/interpretation#sunlight",
"label": "sunlight"
},
"solar irradiance": {
"id": "http://linked.earth/ontology/interpretation#sunlight",
"label": "sunlight"
},
"sun": {
"id": "http://linked.earth/ontology/interpretation#sunlight",
"label": "sunlight"
},
"surfacepressure": {
"id": "http://linked.earth/ontology/interpretation#surfacePressure",
"label": "surfacePressure"
},
"surface pressure": {
"id": "http://linked.earth/ontology/interpretation#surfacePressure",
"label": "surfacePressure"
},
"temperature": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"sst": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"subt": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"surface water temp": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"t": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"t_air": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"t_water": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"temperature_water": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"lake water temperature": {
"id": "http://linked.earth/ontology/interpretation#temperature",
"label": "temperature"
},
"upwelling": {
"id": "http://linked.earth/ontology/interpretation#upwelling",
"label": "upwelling"
},
"upwelling index": {
"id": "http://linked.earth/ontology/interpretation#upwelling",
"label": "upwelling"
},
"windspeed": {
"id": "http://linked.earth/ontology/interpretation#windSpeed",
"label": "windSpeed"
},
"wind speed": {
"id": "http://linked.earth/ontology/interpretation#windSpeed",
"label": "windSpeed"
},
"w": {
"id": "http://linked.earth/ontology/interpretation#windSpeed",
"label": "windSpeed"
}
},
"InterpretationSeasonality": {
"annual": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,12": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1 2 3 4 5 6 7 8 9 10 11 12": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"warmest + coldest months": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"not applicable (always)": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"annual mean": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"annual calendar year (but 80% of precipitation from nov to may)": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"coldest + warmest month": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"warmest + coldest month": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"year round": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"year-round": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"years": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,117": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,122": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,138": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,158": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,190": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,229": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,291": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,434": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,464": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,588": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,646": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"1,2,3,4,5,6,7,8,9,10,11,706": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"12 1 2; 6 7 8": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"annual (*but recently would prob be interpreted as summer-biased)": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"coldest month + summer": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"late summer/winter lake water (summer-biased mean annual precip)": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"mean annual (weighted toward ond and mam)": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"multi-annual": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"summer + winter": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"summer-biased/annual?": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"warmest + coldest": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"warmest month + winter": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"warmest month; coldest month": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"winter": {
"id": "http://linked.earth/ontology/interpretation#Winter",
"label": "Winter"
},
"summer temperature": {
"id": "http://linked.earth/ontology/interpretation#Annual",
"label": "Annual"
},
"apr": {
"id": "http://linked.earth/ontology/interpretation#Apr",
"label": "Apr"
},
"4": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"apr-aug": {
"id": "http://linked.earth/ontology/interpretation#Apr-Aug",
"label": "Apr-Aug"
},
"april-may": {
"id": "http://linked.earth/ontology/interpretation#Apr-Aug",
"label": "Apr-Aug"
},
"june-august": {
"id": "http://linked.earth/ontology/interpretation#Apr-Aug",
"label": "Apr-Aug"
},
"apr-dec": {
"id": "http://linked.earth/ontology/interpretation#Apr-Dec",
"label": "Apr-Dec"
},
"4 5 6 7 8 9 10 12": {
"id": "http://linked.earth/ontology/interpretation#Apr-Dec",
"label": "Apr-Dec"
},
"apr-feb": {
"id": "http://linked.earth/ontology/interpretation#Apr-Feb",
"label": "Apr-Feb"
},
"apr-jan": {
"id": "http://linked.earth/ontology/interpretation#Apr-Jan",
"label": "Apr-Jan"
},
"apr-jul": {
"id": "http://linked.earth/ontology/interpretation#Apr-Jul",
"label": "Apr-Jul"
},
"4 5 6 7": {
"id": "http://linked.earth/ontology/interpretation#Apr-Jul",
"label": "Apr-Jul"
},
"amjj": {
"id": "http://linked.earth/ontology/interpretation#Apr-Jul",
"label": "Apr-Jul"
},
"spring-summer (april-july)": {
"id": "http://linked.earth/ontology/interpretation#Apr-Jul",
"label": "Apr-Jul"
},
"apr-jun": {
"id": "http://linked.earth/ontology/interpretation#Apr-Jun",
"label": "Apr-Jun"
},
"4 5 2006": {
"id": "http://linked.earth/ontology/interpretation#Apr-Jun",
"label": "Apr-Jun"
},
"apr-mar": {
"id": "http://linked.earth/ontology/interpretation#Apr-Mar",
"label": "Apr-Mar"
},
"april/june to april/march": {
"id": "http://linked.earth/ontology/interpretation#Apr-Mar",
"label": "Apr-Mar"
},
"apr-may": {
"id": "http://linked.earth/ontology/interpretation#Apr-May",
"label": "Apr-May"
},
"apr-nov": {
"id": "http://linked.earth/ontology/interpretation#Apr-Nov",
"label": "Apr-Nov"
},
"apr-oct": {
"id": "http://linked.earth/ontology/interpretation#Apr-Oct",
"label": "Apr-Oct"
},
"4,5,6,7,8,9,10": {
"id": "http://linked.earth/ontology/interpretation#Apr-Oct",
"label": "Apr-Oct"
},
"amjjaso": {
"id": "http://linked.earth/ontology/interpretation#Apr-Oct",
"label": "Apr-Oct"
},
"apr-sep": {
"id": "http://linked.earth/ontology/interpretation#Apr-Sep",
"label": "Apr-Sep"
},
"4,5,6,7,8,9": {
"id": "http://linked.earth/ontology/interpretation#Apr-Sep",
"label": "Apr-Sep"
},
"amjjas": {
"id": "http://linked.earth/ontology/interpretation#Apr-Sep",
"label": "Apr-Sep"
},
"4 5 6 7 8 9": {
"id": "http://linked.earth/ontology/interpretation#Apr-Sep",
"label": "Apr-Sep"
},
"aug": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"8": {
"id": "http://linked.earth/ontology/interpretation#Aug",
"label": "Aug"
},
"aug-apr": {
"id": "http://linked.earth/ontology/interpretation#Aug-Apr",
"label": "Aug-Apr"
},
"aug-dec": {
"id": "http://linked.earth/ontology/interpretation#Aug-Dec",
"label": "Aug-Dec"
},
"aug-feb": {
"id": "http://linked.earth/ontology/interpretation#Aug-Feb",
"label": "Aug-Feb"
},
"aug-jan": {
"id": "http://linked.earth/ontology/interpretation#Aug-Jan",
"label": "Aug-Jan"
},
"aug-jul": {
"id": "http://linked.earth/ontology/interpretation#Aug-Jul",
"label": "Aug-Jul"
},
"-12 -11 -10 -9 -8 1 2 3 4 5 6 7": {
"id": "http://linked.earth/ontology/interpretation#Aug-Jul",
"label": "Aug-Jul"
},
"thermal year (aug-jul) (but 80% of precipitation from nov to may)": {
"id": "http://linked.earth/ontology/interpretation#Aug-Jul",
"label": "Aug-Jul"
},
"aug-jun": {
"id": "http://linked.earth/ontology/interpretation#Aug-Jun",
"label": "Aug-Jun"
},
"aug-mar": {
"id": "http://linked.earth/ontology/interpretation#Aug-Mar",
"label": "Aug-Mar"
},
"aug-may": {
"id": "http://linked.earth/ontology/interpretation#Aug-May",
"label": "Aug-May"
},
"aug-nov": {
"id": "http://linked.earth/ontology/interpretation#Aug-Nov",
"label": "Aug-Nov"
},
"aug-oct": {
"id": "http://linked.earth/ontology/interpretation#Aug-Oct",
"label": "Aug-Oct"
},
"aug-sep": {
"id": "http://linked.earth/ontology/interpretation#Aug-Sep",
"label": "Aug-Sep"
},
"coldest month": {
"id": "http://linked.earth/ontology/interpretation#Growing_Season",
"label": "Growing Season"
},
"coldest_month": {
"id": "http://linked.earth/ontology/interpretation#Coldest_Month",
"label": "Coldest Month"
},
"growing season": {
"id": "http://linked.earth/ontology/interpretation#Growing_Season",
"label": "Growing Season"
},
"coldest": {
"id": "http://linked.earth/ontology/interpretation#Coldest_Month",
"label": "Coldest Month"
},
"dec-apr": {
"id": "http://linked.earth/ontology/interpretation#Dec-Apr",
"label": "Dec-Apr"
},
"12,1,2,3,4": {
"id": "http://linked.earth/ontology/interpretation#Dec-Apr",
"label": "Dec-Apr"
},
"dec-aug": {
"id": "http://linked.earth/ontology/interpretation#Dec-Aug",
"label": "Dec-Aug"
},
"dec-feb": {
"id": "http://linked.earth/ontology/interpretation#Dec-Feb",
"label": "Dec-Feb"
},
"12,1,2": {
"id": "http://linked.earth/ontology/interpretation#Dec-Feb",
"label": "Dec-Feb"
},
"djf": {
"id": "http://linked.earth/ontology/interpretation#Dec-Feb",
"label": "Dec-Feb"
},
"-12 1 2": {
"id": "http://linked.earth/ontology/interpretation#Dec-Feb",
"label": "Dec-Feb"
},
"1,2,12": {
"id": "http://linked.earth/ontology/interpretation#Dec-Feb",
"label": "Dec-Feb"
},
"dec-jan": {
"id": "http://linked.earth/ontology/interpretation#Dec-Jan",
"label": "Dec-Jan"
},
"dec-jul": {
"id": "http://linked.earth/ontology/interpretation#Dec-Jul",
"label": "Dec-Jul"
},
"dec-jun": {
"id": "http://linked.earth/ontology/interpretation#Dec-Jun",
"label": "Dec-Jun"
},
"dec-mar": {
"id": "http://linked.earth/ontology/interpretation#Dec-Mar",
"label": "Dec-Mar"
},
"12,1,2,3": {
"id": "http://linked.earth/ontology/interpretation#Dec-Mar",
"label": "Dec-Mar"
},
"-12 1 2 3": {
"id": "http://linked.earth/ontology/interpretation#Dec-Mar",
"label": "Dec-Mar"
},
"december - march (monsoon season)": {
"id": "http://linked.earth/ontology/interpretation#Dec-Mar",
"label": "Dec-Mar"
},
"dec-may": {
"id": "http://linked.earth/ontology/interpretation#Dec-May",
"label": "Dec-May"
},
"djfmam": {
"id": "http://linked.earth/ontology/interpretation#Dec-May",
"label": "Dec-May"
},
"dec-oct": {
"id": "http://linked.earth/ontology/interpretation#Dec-Oct",
"label": "Dec-Oct"
},
"dec-sep": {
"id": "http://linked.earth/ontology/interpretation#Dec-Sep",
"label": "Dec-Sep"
},
"fall": {
"id": "http://linked.earth/ontology/interpretation#Fall",
"label": "Fall"
},
"autumn": {
"id": "http://linked.earth/ontology/interpretation#Fall",
"label": "Fall"
},
"feb": {
"id": "http://linked.earth/ontology/interpretation#Feb-Aug",
"label": "Feb-Aug"
},
"2": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"feb-apr": {
"id": "http://linked.earth/ontology/interpretation#Feb-Apr",
"label": "Feb-Apr"
},
"feb-aug": {
"id": "http://linked.earth/ontology/interpretation#Feb-Aug",
"label": "Feb-Aug"
},
"2 3 4 5 6 7 8": {
"id": "http://linked.earth/ontology/interpretation#Feb-Aug",
"label": "Feb-Aug"
},
"feb-dec": {
"id": "http://linked.earth/ontology/interpretation#Feb-Dec",
"label": "Feb-Dec"
},
"feb-jul": {
"id": "http://linked.earth/ontology/interpretation#Feb-Jul",
"label": "Feb-Jul"
},
"feb-jun": {
"id": "http://linked.earth/ontology/interpretation#Feb-Jun",
"label": "Feb-Jun"
},
"feb-mar": {
"id": "http://linked.earth/ontology/interpretation#Feb-Mar",
"label": "Feb-Mar"
},
"feb-may": {
"id": "http://linked.earth/ontology/interpretation#Feb-May",
"label": "Feb-May"
},
"feb-nov": {
"id": "http://linked.earth/ontology/interpretation#Feb-Nov",
"label": "Feb-Nov"
},
"feb-oct": {
"id": "http://linked.earth/ontology/interpretation#Feb-Oct",
"label": "Feb-Oct"
},
"feb-sep": {
"id": "http://linked.earth/ontology/interpretation#Feb-Sep",
"label": "Feb-Sep"
},
"growing_season": {
"id": "http://linked.earth/ontology/interpretation#Growing_Season",
"label": "Growing Season"
},
"growing season? (not stated)": {
"id": "http://linked.earth/ontology/interpretation#Growing_Season",
"label": "Growing Season"
},
"growth season": {
"id": "http://linked.earth/ontology/interpretation#Growing_Season",
"label": "Growing Season"
},
"mainly growing season": {
"id": "http://linked.earth/ontology/interpretation#Growing_Season",
"label": "Growing Season"
},
"with potential addition effects of snowmelt following wet winters": {
"id": "http://linked.earth/ontology/interpretation#Growing_Season",
"label": "Growing Season"
},
"jan": {
"id": "http://linked.earth/ontology/interpretation#Jan",
"label": "Jan"
},
"1": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"jan-apr": {
"id": "http://linked.earth/ontology/interpretation#Jan-Apr",
"label": "Jan-Apr"
},
"january": {
"id": "http://linked.earth/ontology/interpretation#Jan-Apr",
"label": "Jan-Apr"
},
"february": {
"id": "http://linked.earth/ontology/interpretation#Jan-Apr",
"label": "Jan-Apr"
},
"march": {
"id": "http://linked.earth/ontology/interpretation#Jan-Apr",
"label": "Jan-Apr"
},
"april": {
"id": "http://linked.earth/ontology/interpretation#Jan-Apr",
"label": "Jan-Apr"
},
"jfma": {
"id": "http://linked.earth/ontology/interpretation#Jan-Apr",
"label": "Jan-Apr"
},
"jan-aug": {
"id": "http://linked.earth/ontology/interpretation#Jan-Aug",
"label": "Jan-Aug"
},
"jan-feb": {
"id": "http://linked.earth/ontology/interpretation#Jan-Feb",
"label": "Jan-Feb"
},
"jan-jul": {
"id": "http://linked.earth/ontology/interpretation#Jan-Jul",
"label": "Jan-Jul"
},
"jfmamjj": {
"id": "http://linked.earth/ontology/interpretation#Jan-Jul",
"label": "Jan-Jul"
},
"jan-jun": {
"id": "http://linked.earth/ontology/interpretation#Jan-Jun",
"label": "Jan-Jun"
},
"january-june (spring)": {
"id": "http://linked.earth/ontology/interpretation#Jan-Jun",
"label": "Jan-Jun"
},
"jan-mar": {
"id": "http://linked.earth/ontology/interpretation#Jan-Mar",
"label": "Jan-Mar"
},
"1 2 2003": {
"id": "http://linked.earth/ontology/interpretation#Jan-Mar",
"label": "Jan-Mar"
},
"jan-may": {
"id": "http://linked.earth/ontology/interpretation#Jan-May",
"label": "Jan-May"
},
"jan-nov": {
"id": "http://linked.earth/ontology/interpretation#Jan-Nov",
"label": "Jan-Nov"
},
"jan-oct": {
"id": "http://linked.earth/ontology/interpretation#Jan-Oct",
"label": "Jan-Oct"
},
"jan-sep": {
"id": "http://linked.earth/ontology/interpretation#Jan-Sep",
"label": "Jan-Sep"
},
"jul": {
"id": "http://linked.earth/ontology/interpretation#Jul",
"label": "Jul"
},
"july": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"7": {
"id": "http://linked.earth/ontology/interpretation#Jul",
"label": "Jul"
},
"jul-apr": {
"id": "http://linked.earth/ontology/interpretation#Jul-Apr",
"label": "Jul-Apr"
},
"jul-aug": {
"id": "http://linked.earth/ontology/interpretation#Jul-Aug",
"label": "Jul-Aug"
},
"jul-dec": {
"id": "http://linked.earth/ontology/interpretation#Jul-Dec",
"label": "Jul-Dec"
},
"7 8 9 10 11 12": {
"id": "http://linked.earth/ontology/interpretation#Jul-Dec",
"label": "Jul-Dec"
},
"jul-feb": {
"id": "http://linked.earth/ontology/interpretation#Jul-Feb",
"label": "Jul-Feb"
},
"jul-jan": {
"id": "http://linked.earth/ontology/interpretation#Jul-Jan",
"label": "Jul-Jan"
},
"jul-jun": {
"id": "http://linked.earth/ontology/interpretation#Jul-Jun",
"label": "Jul-Jun"
},
"-12 -11 -10 -9 -8 -7 1 2 3 4 5 6": {
"id": "http://linked.earth/ontology/interpretation#Jul-Jun",
"label": "Jul-Jun"
},
"jul-mar": {
"id": "http://linked.earth/ontology/interpretation#Jul-Mar",
"label": "Jul-Mar"
},
"jul-may": {
"id": "http://linked.earth/ontology/interpretation#Jul-May",
"label": "Jul-May"
},
"jul-nov": {
"id": "http://linked.earth/ontology/interpretation#Jul-Nov",
"label": "Jul-Nov"
},
"jul-oct": {
"id": "http://linked.earth/ontology/interpretation#Jul-Oct",
"label": "Jul-Oct"
},
"7,8,9,10": {
"id": "http://linked.earth/ontology/interpretation#Jul-Oct",
"label": "Jul-Oct"
},
"jul-sep": {
"id": "http://linked.earth/ontology/interpretation#Jul-Sep",
"label": "Jul-Sep"
},
"7 8 2009": {
"id": "http://linked.earth/ontology/interpretation#Jul-Sep",
"label": "Jul-Sep"
},
"7,8,9": {
"id": "http://linked.earth/ontology/interpretation#Jul-Sep",
"label": "Jul-Sep"
},
"((( 7 8 2009 ))) null /// 7 8 9": {
"id": "http://linked.earth/ontology/interpretation#Jul-Sep",
"label": "Jul-Sep"
},
"jas": {
"id": "http://linked.earth/ontology/interpretation#Jul-Sep",
"label": "Jul-Sep"
},
"summer (jas)": {
"id": "http://linked.earth/ontology/interpretation#Jul-Sep",
"label": "Jul-Sep"
},
"jun": {
"id": "http://linked.earth/ontology/interpretation#Jun",
"label": "Jun"
},
"6": {
"id": "http://linked.earth/ontology/interpretation#Jun",
"label": "Jun"
},
"jun-apr": {
"id": "http://linked.earth/ontology/interpretation#Jun-Apr",
"label": "Jun-Apr"
},
"jun-aug": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"jja": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"6,7,8": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"6 7 2008": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"((( 6 7 2008 ))) null /// 6 7 8": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"summer (june-august)": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"((( 6 7 2008 ))) 39606 /// 6 7 8": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"june,july": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"august": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"summer (jja)": {
"id": "http://linked.earth/ontology/interpretation#Jun-Aug",
"label": "Jun-Aug"
},
"jun-dec": {
"id": "http://linked.earth/ontology/interpretation#Jun-Dec",
"label": "Jun-Dec"
},
"jun-feb": {
"id": "http://linked.earth/ontology/interpretation#Jun-Feb",
"label": "Jun-Feb"
},
"jun-jan": {
"id": "http://linked.earth/ontology/interpretation#Jun-Jan",
"label": "Jun-Jan"
},
"jun-jul": {
"id": "http://linked.earth/ontology/interpretation#Jun-Jul",
"label": "Jun-Jul"
},
"6 7": {
"id": "http://linked.earth/ontology/interpretation#Jun-Jul",
"label": "Jun-Jul"
},
"6,7": {
"id": "http://linked.earth/ontology/interpretation#Jun-Jul",
"label": "Jun-Jul"
},
"june-july minimum": {
"id": "http://linked.earth/ontology/interpretation#Jun-Jul",
"label": "Jun-Jul"
},
"jun-mar": {
"id": "http://linked.earth/ontology/interpretation#Jun-Mar",
"label": "Jun-Mar"
},
"jun-nov": {
"id": "http://linked.earth/ontology/interpretation#Jun-Nov",
"label": "Jun-Nov"
},
"jjason": {
"id": "http://linked.earth/ontology/interpretation#Jun-Nov",
"label": "Jun-Nov"
},
"jun-oct": {
"id": "http://linked.earth/ontology/interpretation#Jun-Oct",
"label": "Jun-Oct"
},
"6,7,8,9,10": {
"id": "http://linked.earth/ontology/interpretation#Jun-Oct",
"label": "Jun-Oct"
},
"jjaso": {
"id": "http://linked.earth/ontology/interpretation#Jun-Oct",
"label": "Jun-Oct"
},
"jun-sep": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"jjas": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"6,7,8,9": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"6 7 8 9": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"summer (june to september)": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"growing season/jjas": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"june": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"september": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"summer (jjas)": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"((( warm season (june-sept) ))) jjas /// jjas": {
"id": "http://linked.earth/ontology/interpretation#Jun-Sep",
"label": "Jun-Sep"
},
"mar": {
"id": "http://linked.earth/ontology/interpretation#Mar",
"label": "Mar"
},
"mar-apr": {
"id": "http://linked.earth/ontology/interpretation#Mar-Apr",
"label": "Mar-Apr"
},
"mar-aug": {
"id": "http://linked.earth/ontology/interpretation#Mar-Aug",
"label": "Mar-Aug"
},
"3 4 5 6 7 8": {
"id": "http://linked.earth/ontology/interpretation#Mar-Aug",
"label": "Mar-Aug"
},
"3,4,5,6,7,8": {
"id": "http://linked.earth/ontology/interpretation#Mar-Aug",
"label": "Mar-Aug"
},
"mar-dec": {
"id": "http://linked.earth/ontology/interpretation#Mar-Dec",
"label": "Mar-Dec"
},
"mar-jan": {
"id": "http://linked.earth/ontology/interpretation#Mar-Jan",
"label": "Mar-Jan"
},
"mar-jul": {
"id": "http://linked.earth/ontology/interpretation#Mar-Jul",
"label": "Mar-Jul"
},
"mar-jun": {
"id": "http://linked.earth/ontology/interpretation#Mar-Jun",
"label": "Mar-Jun"
},
"mar-may": {
"id": "http://linked.earth/ontology/interpretation#Mar-May",
"label": "Mar-May"
},
"3 4 2005": {
"id": "http://linked.earth/ontology/interpretation#Mar-May",
"label": "Mar-May"
},
"mam": {
"id": "http://linked.earth/ontology/interpretation#Mar-May",
"label": "Mar-May"
},
"mar-nov": {
"id": "http://linked.earth/ontology/interpretation#Mar-Nov",
"label": "Mar-Nov"
},
"march to november": {
"id": "http://linked.earth/ontology/interpretation#Mar-Nov",
"label": "Mar-Nov"
},
"mar-oct": {
"id": "http://linked.earth/ontology/interpretation#Mar-Oct",
"label": "Mar-Oct"
},
"3 4 5 6 7 8 9 10 11 12 13 14": {
"id": "http://linked.earth/ontology/interpretation#Mar-Oct",
"label": "Mar-Oct"
},
"3 4 5 6 7 8 9 10": {
"id": "http://linked.earth/ontology/interpretation#Mar-Oct",
"label": "Mar-Oct"
},
"mar-sep": {
"id": "http://linked.earth/ontology/interpretation#Mar-Sep",
"label": "Mar-Sep"
},
"may": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"5": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"may-apr": {
"id": "http://linked.earth/ontology/interpretation#May-Apr",
"label": "May-Apr"
},
"-5 -6 -7 -8 -9 -10 -11 -12 1 2 3 4": {
"id": "http://linked.earth/ontology/interpretation#May-Apr",
"label": "May-Apr"
},
"may-aug": {
"id": "http://linked.earth/ontology/interpretation#May-Aug",
"label": "May-Aug"
},
"mjja": {
"id": "http://linked.earth/ontology/interpretation#May-Aug",
"label": "May-Aug"
},
"5,6,7,8": {
"id": "http://linked.earth/ontology/interpretation#May-Aug",
"label": "May-Aug"
},
"may-dec": {
"id": "http://linked.earth/ontology/interpretation#May-Dec",
"label": "May-Dec"
},
"october": {
"id": "http://linked.earth/ontology/interpretation#May-Oct",
"label": "May-Oct"
},
"november": {
"id": "http://linked.earth/ontology/interpretation#May-Dec",
"label": "May-Dec"
},
"december": {
"id": "http://linked.earth/ontology/interpretation#May-Dec",
"label": "May-Dec"
},
"mjjasond": {
"id": "http://linked.earth/ontology/interpretation#May-Dec",
"label": "May-Dec"
},
"5 6 7 8 9 10 11 12": {
"id": "http://linked.earth/ontology/interpretation#May-Dec",
"label": "May-Dec"
},
"may-feb": {
"id": "http://linked.earth/ontology/interpretation#May-Feb",
"label": "May-Feb"
},
"may-jan": {
"id": "http://linked.earth/ontology/interpretation#May-Jan",
"label": "May-Jan"
},
"may-jul": {
"id": "http://linked.earth/ontology/interpretation#May-Jul",
"label": "May-Jul"
},
"5 6 2007": {
"id": "http://linked.earth/ontology/interpretation#May-Jul",
"label": "May-Jul"
},
"may-jun": {
"id": "http://linked.earth/ontology/interpretation#May-Jun",
"label": "May-Jun"
},
"mj": {
"id": "http://linked.earth/ontology/interpretation#May-Jun",
"label": "May-Jun"
},
"may-mar": {
"id": "http://linked.earth/ontology/interpretation#May-Mar",
"label": "May-Mar"
},
"may-nov": {
"id": "http://linked.earth/ontology/interpretation#May-Nov",
"label": "May-Nov"
},
"may-oct": {
"id": "http://linked.earth/ontology/interpretation#May-Oct",
"label": "May-Oct"
},
"mjjaso": {
"id": "http://linked.earth/ontology/interpretation#May-Oct",
"label": "May-Oct"
},
"5,6,7,8,9,10": {
"id": "http://linked.earth/ontology/interpretation#May-Oct",
"label": "May-Oct"
},
"may to october": {
"id": "http://linked.earth/ontology/interpretation#May-Oct",
"label": "May-Oct"
},
"may-sep": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"mjjas": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"may to sept": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"5,6,7,8,9": {
"id": "http://linked.earth/ontology/interpretation#May-Sep",
"label": "May-Sep"
},
"needstobechanged": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"upwelling": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"unknown": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"n/a": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"1,10": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"1,11": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"changes depending on which season provides source moisture for plants": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"depends": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"inflow@surface": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"not indicated": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"under present conditions": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"wet years often have higehr amount of winter rain": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"but d18o may reflect high summer rain": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"winter rain": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"or both": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"upwelling season": {
"id": "http://linked.earth/ontology/interpretation#needsToBeChanged",
"label": "needsToBeChanged"
},
"nov-apr": {
"id": "http://linked.earth/ontology/interpretation#Nov-Apr",
"label": "Nov-Apr"
},
"11,12,1,2,3,4": {
"id": "http://linked.earth/ontology/interpretation#Nov-Apr",
"label": "Nov-Apr"
},
"winter (nov-april)": {
"id": "http://linked.earth/ontology/interpretation#Nov-Apr",
"label": "Nov-Apr"
},
"-11 -12 1 2 3 4": {
"id": "http://linked.earth/ontology/interpretation#Nov-Apr",
"label": "Nov-Apr"
},
"ndjfma": {
"id": "http://linked.earth/ontology/interpretation#Nov-Apr",
"label": "Nov-Apr"
},
"nov-aug": {
"id": "http://linked.earth/ontology/interpretation#Nov-Aug",
"label": "Nov-Aug"
},
"nov-dec": {
"id": "http://linked.earth/ontology/interpretation#Nov-Dec",
"label": "Nov-Dec"
},
"nov-feb": {
"id": "http://linked.earth/ontology/interpretation#Nov-Feb",
"label": "Nov-Feb"
},
"-11 -12 1 2": {
"id": "http://linked.earth/ontology/interpretation#Nov-Feb",
"label": "Nov-Feb"
},
"11,12,1,2": {
"id": "http://linked.earth/ontology/interpretation#Nov-Feb",
"label": "Nov-Feb"
},
"ndjf": {
"id": "http://linked.earth/ontology/interpretation#Nov-Feb",
"label": "Nov-Feb"
},
"november (previous year) to february (current year)": {
"id": "http://linked.earth/ontology/interpretation#Nov-Feb",
"label": "Nov-Feb"
},
"nov-jan": {
"id": "http://linked.earth/ontology/interpretation#Nov-Jan",
"label": "Nov-Jan"
},
"summer (ndj)": {
"id": "http://linked.earth/ontology/interpretation#Nov-Jan",
"label": "Nov-Jan"
},
"nov-jul": {
"id": "http://linked.earth/ontology/interpretation#Nov-Jul",
"label": "Nov-Jul"
},
"nov-jun": {
"id": "http://linked.earth/ontology/interpretation#Nov-Jun",
"label": "Nov-Jun"
},
"11,12,1,2,3,4,5,6": {
"id": "http://linked.earth/ontology/interpretation#Nov-Jun",
"label": "Nov-Jun"
},
"nov-mar": {
"id": "http://linked.earth/ontology/interpretation#Nov-Mar",
"label": "Nov-Mar"
},
"11,12,1,2,3": {
"id": "http://linked.earth/ontology/interpretation#Nov-Mar",
"label": "Nov-Mar"
},
"nov-may": {
"id": "http://linked.earth/ontology/interpretation#Nov-May",
"label": "Nov-May"
},
"11,12,1,2,3,4,5": {
"id": "http://linked.earth/ontology/interpretation#Nov-May",
"label": "Nov-May"
},
"winter (11,12,1,2,3,4,5)": {
"id": "http://linked.earth/ontology/interpretation#Nov-May",
"label": "Nov-May"
},
"nov-oct": {
"id": "http://linked.earth/ontology/interpretation#Nov-Oct",
"label": "Nov-Oct"
},
"-12 -11 1 2 3 4 5 6 7 8 9 10": {
"id": "http://linked.earth/ontology/interpretation#Nov-Oct",
"label": "Nov-Oct"
},
"nov-sep": {
"id": "http://linked.earth/ontology/interpretation#Nov-Sep",
"label": "Nov-Sep"
},
"oct-apr": {
"id": "http://linked.earth/ontology/interpretation#Oct-Apr",
"label": "Oct-Apr"
},
"10,11,12,1,2,3,4": {
"id": "http://linked.earth/ontology/interpretation#Oct-Apr",
"label": "Oct-Apr"
},
"-10 -11 -12 1 2 3 4": {
"id": "http://linked.earth/ontology/interpretation#Oct-Apr",
"label": "Oct-Apr"
},
"october-april (wet season)": {
"id": "http://linked.earth/ontology/interpretation#Oct-Apr",
"label": "Oct-Apr"
},
"ondjfma": {
"id": "http://linked.earth/ontology/interpretation#Oct-Apr",
"label": "Oct-Apr"
},
"oct-aug": {
"id": "http://linked.earth/ontology/interpretation#Oct-Aug",
"label": "Oct-Aug"
},
"oct-dec": {
"id": "http://linked.earth/ontology/interpretation#Oct-Dec",
"label": "Oct-Dec"
},
"ond": {
"id": "http://linked.earth/ontology/interpretation#Oct-Dec",
"label": "Oct-Dec"
},
"oct-feb": {
"id": "http://linked.earth/ontology/interpretation#Oct-Feb",
"label": "Oct-Feb"
},
"oct-jan": {
"id": "http://linked.earth/ontology/interpretation#Oct-Jan",
"label": "Oct-Jan"
},
"10,11,12,1": {
"id": "http://linked.earth/ontology/interpretation#Oct-Jan",
"label": "Oct-Jan"
},
"ondj": {
"id": "http://linked.earth/ontology/interpretation#Oct-Jan",
"label": "Oct-Jan"
},
"oct-jul": {
"id": "http://linked.earth/ontology/interpretation#Oct-Jul",
"label": "Oct-Jul"
},
"oct-jun": {
"id": "http://linked.earth/ontology/interpretation#Oct-Jun",
"label": "Oct-Jun"
},
"oct-mar": {
"id": "http://linked.earth/ontology/interpretation#Oct-Mar",
"label": "Oct-Mar"
},
"ondjfm": {
"id": "http://linked.earth/ontology/interpretation#Oct-Mar",
"label": "Oct-Mar"
},
"10,11,12,1,2,3": {
"id": "http://linked.earth/ontology/interpretation#Oct-Mar",
"label": "Oct-Mar"
},
"oct-may": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"10": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"11": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"12": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"3": {
"id": "http://linked.earth/ontology/interpretation#Oct-May",
"label": "Oct-May"
},
"oct-nov": {
"id": "http://linked.earth/ontology/interpretation#Oct-Nov",
"label": "Oct-Nov"
},
"oct-sep": {
"id": "http://linked.earth/ontology/interpretation#Oct-Sep",
"label": "Oct-Sep"
},
"oct (previous year) to sept (current year)": {
"id": "http://linked.earth/ontology/interpretation#Oct-Sep",
"label": "Oct-Sep"
},
"sep-apr": {
"id": "http://linked.earth/ontology/interpretation#Sep-Apr",
"label": "Sep-Apr"
},
"-9 -10 -11 -12 1 2 3 4": {
"id": "http://linked.earth/ontology/interpretation#Sep-Apr",
"label": "Sep-Apr"
},
"sep-aug": {
"id": "http://linked.earth/ontology/interpretation#Sep-Aug",
"label": "Sep-Aug"
},
"-12 -11 -10 -9 1 2 3 4 5 6 7 8": {
"id": "http://linked.earth/ontology/interpretation#Sep-Aug",
"label": "Sep-Aug"
},
"sep-dec": {
"id": "http://linked.earth/ontology/interpretation#Sep-Dec",
"label": "Sep-Dec"
},
"sep-feb": {
"id": "http://linked.earth/ontology/interpretation#Sep-Feb",
"label": "Sep-Feb"
},
"-9 -10 -11 -12 1 2 2": {
"id": "http://linked.earth/ontology/interpretation#Sep-Feb",
"label": "Sep-Feb"
},
"sondjf": {
"id": "http://linked.earth/ontology/interpretation#Sep-Feb",
"label": "Sep-Feb"
},
"sep-jan": {
"id": "http://linked.earth/ontology/interpretation#Sep-Jan",
"label": "Sep-Jan"
},
"sep-jul": {
"id": "http://linked.earth/ontology/interpretation#Sep-Jul",
"label": "Sep-Jul"
},
"sep-jun": {
"id": "http://linked.earth/ontology/interpretation#Sep-Jun",
"label": "Sep-Jun"
},
"sep-mar": {
"id": "http://linked.earth/ontology/interpretation#Sep-Mar",
"label": "Sep-Mar"
},
"sep-may": {
"id": "http://linked.earth/ontology/interpretation#Sep-May",
"label": "Sep-May"
},
"sep-nov": {
"id": "http://linked.earth/ontology/interpretation#Sep-Nov",
"label": "Sep-Nov"
},
"9 10 11": {
"id": "http://linked.earth/ontology/interpretation#Sep-Nov",
"label": "Sep-Nov"
},
"sep-oct": {
"id": "http://linked.earth/ontology/interpretation#Sep-Oct",
"label": "Sep-Oct"
},
"9 10": {
"id": "http://linked.earth/ontology/interpretation#Sep-Oct",
"label": "Sep-Oct"
},
"spr-sum": {
"id": "http://linked.earth/ontology/interpretation#Spr-Sum",
"label": "Spr-Sum"
},
"variable": {
"id": "http://linked.earth/ontology/interpretation#Spr-Sum",
"label": "Spr-Sum"
},
"probably spring/summer": {
"id": "http://linked.earth/ontology/interpretation#Spr-Sum",
"label": "Spr-Sum"
},
"spring summer": {
"id": "http://linked.earth/ontology/interpretation#Spr-Sum",
"label": "Spr-Sum"
},
"spring-summer": {
"id": "http://linked.earth/ontology/interpretation#Spr-Sum",
"label": "Spr-Sum"
},
"spring": {
"id": "http://linked.earth/ontology/interpretation#Spring",
"label": "Spring"
},
"subannual": {
"id": "http://linked.earth/ontology/interpretation#subannual",
"label": "subannual"
},
"n/a (subannually resolved)": {
"id": "http://linked.earth/ontology/interpretation#subannual",
"label": "subannual"
},
"not applicable (subannually resolved)": {
"id": "http://linked.earth/ontology/interpretation#subannual",
"label": "subannual"
},
"summer": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"warm season": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"mostly summer": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"summer+": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"summer-bias": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"ice-free season": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"nh summer": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"((( summeronly ))) summeronly /// null": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"am&ja": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"austral summer (oct-jan)": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"early summer": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"mean summer": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"p_amount (june)": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"temperature (july": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"aug)": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"temperature (may": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"oct)": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"summer?": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"t_air (july": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"august)": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"p_amount (july)": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"warmest quarter yr": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"mar&jul": {
"id": "http://linked.earth/ontology/interpretation#Summer",
"label": "Summer"
},
"warmest month": {
"id": "http://linked.earth/ontology/interpretation#Warmest_Month",
"label": "Warmest Month"
},
"warmest_month": {
"id": "http://linked.earth/ontology/interpretation#Warmest_Month",
"label": "Warmest Month"
},
"231pa excess": {
"id": "http://linked.earth/ontology/interpretation#Warmest_Month",
"label": "Warmest Month"
},
"warmest": {
"id": "http://linked.earth/ontology/interpretation#Warmest_Month",
"label": "Warmest Month"
},
"wet season": {
"id": "http://linked.earth/ontology/interpretation#Wet_Season",
"label": "Wet Season"
},
"wet_season": {
"id": "http://linked.earth/ontology/interpretation#Wet_Season",
"label": "Wet Season"
},
"monsoon": {
"id": "http://linked.earth/ontology/interpretation#Wet_Season",
"label": "Wet Season"
},
"andean wet season": {
"id": "http://linked.earth/ontology/interpretation#Wet_Season",
"label": "Wet Season"
},
"monsoon season": {
"id": "http://linked.earth/ontology/interpretation#Wet_Season",
"label": "Wet Season"
},
"win-spr": {
"id": "http://linked.earth/ontology/interpretation#Win-Spr",
"label": "Win-Spr"
},
"winter/spring": {
"id": "http://linked.earth/ontology/interpretation#Win-Spr",
"label": "Win-Spr"
},
"winter+": {
"id": "http://linked.earth/ontology/interpretation#Winter",
"label": "Winter"
},
"mostly winter": {
"id": "http://linked.earth/ontology/interpretation#Winter",
"label": "Winter"
}
}
},
"PROXIES": {
"PaleoProxy": {
"accumulation rate": {
"id": "http://linked.earth/ontology/paleo_proxy#accumulation_rate",
"label": "accumulation rate"
},
"accumulation_rate": {
"id": "http://linked.earth/ontology/paleo_proxy#accumulation_rate",
"label": "accumulation rate"
},
"sed accumulation": {
"id": "http://linked.earth/ontology/paleo_proxy#accumulation_rate",
"label": "accumulation rate"
},
"acl": {
"id": "http://linked.earth/ontology/paleo_proxy#ACL",
"label": "ACL"
},
"average chain length": {
"id": "http://linked.earth/ontology/paleo_proxy#ACL",
"label": "ACL"
},
"al2o3": {
"id": "http://linked.earth/ontology/paleo_proxy#Al2O3",
"label": "Al2O3"
},
"aluminum oxide": {
"id": "http://linked.earth/ontology/paleo_proxy#Al2O3",
"label": "Al2O3"
},
"alkenone": {
"id": "http://linked.earth/ontology/paleo_proxy#alkenone",
"label": "alkenone"
},
"amoeba": {
"id": "http://linked.earth/ontology/paleo_proxy#amoeba",
"label": "amoeba"
},
"testate amoeba": {
"id": "http://linked.earth/ontology/paleo_proxy#amoeba",
"label": "amoeba"
},
"ba/al": {
"id": "http://linked.earth/ontology/paleo_proxy#Ba_Al",
"label": "Ba/Al"
},
"ba_al": {
"id": "http://linked.earth/ontology/paleo_proxy#Ba_Al",
"label": "Ba/Al"
},
"barium/aluminum": {
"id": "http://linked.earth/ontology/paleo_proxy#Ba_Al",
"label": "Ba/Al"
},
"ba/ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Ba_Ca",
"label": "Ba/Ca"
},
"ba_ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Ba_Ca",
"label": "Ba/Ca"
},
"barium/calcium": {
"id": "http://linked.earth/ontology/paleo_proxy#Ba_Ca",
"label": "Ba/Ca"
},
"baca": {
"id": "http://linked.earth/ontology/paleo_proxy#Ba_Ca",
"label": "Ba/Ca"
},
"biomarker": {
"id": "http://linked.earth/ontology/paleo_proxy#biomarker",
"label": "biomarker"
},
"organic compound": {
"id": "http://linked.earth/ontology/paleo_proxy#biomarker",
"label": "biomarker"
},
"c15 fatty alcohols": {
"id": "http://linked.earth/ontology/paleo_proxy#biomarker",
"label": "biomarker"
},
"c37.concentration": {
"id": "http://linked.earth/ontology/paleo_proxy#biomarker",
"label": "biomarker"
},
"bit": {
"id": "http://linked.earth/ontology/paleo_proxy#BIT",
"label": "BIT"
},
"branched and isoprenoid tetraether index": {
"id": "http://linked.earth/ontology/paleo_proxy#BIT",
"label": "BIT"
},
"bitindex": {
"id": "http://linked.earth/ontology/paleo_proxy#BIT",
"label": "BIT"
},
"borehole": {
"id": "http://linked.earth/ontology/paleo_proxy#borehole",
"label": "borehole"
},
"bsi": {
"id": "http://linked.earth/ontology/paleo_proxy#BSi",
"label": "BSi"
},
"biogenic silica": {
"id": "http://linked.earth/ontology/paleo_proxy#BSi",
"label": "BSi"
},
"bubble frequency": {
"id": "http://linked.earth/ontology/paleo_proxy#bubble_frequency",
"label": "bubble frequency"
},
"bubble_frequency": {
"id": "http://linked.earth/ontology/paleo_proxy#bubble_frequency",
"label": "bubble frequency"
},
"bulk density": {
"id": "http://linked.earth/ontology/paleo_proxy#bulk_density",
"label": "bulk density"
},
"bulk_density": {
"id": "http://linked.earth/ontology/paleo_proxy#bulk_density",
"label": "bulk density"
},
"gamma": {
"id": "http://linked.earth/ontology/paleo_proxy#bulk_density",
"label": "bulk density"
},
"bulk sediment": {
"id": "http://linked.earth/ontology/paleo_proxy#bulk_sediment",
"label": "bulk sediment"
},
"bulk_sediment": {
"id": "http://linked.earth/ontology/paleo_proxy#bulk_sediment",
"label": "bulk sediment"
},
"dry sediment": {
"id": "http://linked.earth/ontology/paleo_proxy#bulk_sediment",
"label": "bulk sediment"
},
"bulksed": {
"id": "http://linked.earth/ontology/paleo_proxy#bulk_sediment",
"label": "bulk sediment"
},
"c/n": {
"id": "http://linked.earth/ontology/paleo_proxy#C_N",
"label": "C/N"
},
"c_n": {
"id": "http://linked.earth/ontology/paleo_proxy#C_N",
"label": "C/N"
},
"carbon/nitrogen": {
"id": "http://linked.earth/ontology/paleo_proxy#C_N",
"label": "C/N"
},
"ca/k": {
"id": "http://linked.earth/ontology/paleo_proxy#Ca_K",
"label": "Ca/K"
},
"ca_k": {
"id": "http://linked.earth/ontology/paleo_proxy#Ca_K",
"label": "Ca/K"
},
"calcium/potassium": {
"id": "http://linked.earth/ontology/paleo_proxy#Ca_K",
"label": "Ca/K"
},
"ca/ti": {
"id": "http://linked.earth/ontology/paleo_proxy#Ca_Ti",
"label": "Ca/Ti"
},
"ca_ti": {
"id": "http://linked.earth/ontology/paleo_proxy#Ca_Ti",
"label": "Ca/Ti"
},
"calcium/titanium": {
"id": "http://linked.earth/ontology/paleo_proxy#Ca_Ti",
"label": "Ca/Ti"
},
"caco3": {
"id": "http://linked.earth/ontology/paleo_proxy#CaCO3",
"label": "CaCO3"
},
"calcium carbonate": {
"id": "http://linked.earth/ontology/paleo_proxy#CaCO3",
"label": "CaCO3"
},
"calcification rate": {
"id": "http://linked.earth/ontology/paleo_proxy#calcification_rate",
"label": "calcification rate"
},
"calcification_rate": {
"id": "http://linked.earth/ontology/paleo_proxy#calcification_rate",
"label": "calcification rate"
},
"calcification": {
"id": "http://linked.earth/ontology/paleo_proxy#calcification_rate",
"label": "calcification rate"
},
"calcite": {
"id": "http://linked.earth/ontology/paleo_proxy#calcite",
"label": "calcite"
},
"carbonate": {
"id": "http://linked.earth/ontology/paleo_proxy#carbonate",
"label": "carbonate"
},
"authigenic carbonate": {
"id": "http://linked.earth/ontology/paleo_proxy#carbonate",
"label": "carbonate"
},
"carbonate content": {
"id": "http://linked.earth/ontology/paleo_proxy#carbonate",
"label": "carbonate"
},
"cellulose": {
"id": "http://linked.earth/ontology/paleo_proxy#cellulose",
"label": "cellulose"
},
"charcoal": {
"id": "http://linked.earth/ontology/paleo_proxy#charcoal",
"label": "charcoal"
},
"chironomid": {
"id": "http://linked.earth/ontology/paleo_proxy#chironomid",
"label": "chironomid"
},
"midge": {
"id": "http://linked.earth/ontology/paleo_proxy#chironomid",
"label": "chironomid"
},
"chlorophyll": {
"id": "http://linked.earth/ontology/paleo_proxy#chlorophyll",
"label": "chlorophyll"
},
"chrysophyte assemblage": {
"id": "http://linked.earth/ontology/paleo_proxy#chrysophyte_assemblage",
"label": "chrysophyte assemblage"
},
"chrysophyte_assemblage": {
"id": "http://linked.earth/ontology/paleo_proxy#chrysophyte_assemblage",
"label": "chrysophyte assemblage"
},
"chrysophyte": {
"id": "http://linked.earth/ontology/paleo_proxy#chrysophyte_assemblage",
"label": "chrysophyte assemblage"
},
"cladoceran": {
"id": "http://linked.earth/ontology/paleo_proxy#cladoceran",
"label": "cladoceran"
},
"cladocera": {
"id": "http://linked.earth/ontology/paleo_proxy#cladoceran",
"label": "cladoceran"
},
"coccolithophore": {
"id": "http://linked.earth/ontology/paleo_proxy#coccolithophore",
"label": "coccolithophore"
},
"coccolith": {
"id": "http://linked.earth/ontology/paleo_proxy#coccolithophore",
"label": "coccolithophore"
},
"d13c": {
"id": "http://linked.earth/ontology/paleo_proxy#d13C",
"label": "d13C"
},
"delta 13c": {
"id": "http://linked.earth/ontology/paleo_proxy#d13C",
"label": "d13C"
},
"d13cwax": {
"id": "http://linked.earth/ontology/paleo_proxy#d13C",
"label": "d13C"
},
"d15n": {
"id": "http://linked.earth/ontology/paleo_proxy#d15N",
"label": "d15N"
},
"delta 15n": {
"id": "http://linked.earth/ontology/paleo_proxy#d15N",
"label": "d15N"
},
"d15n/d40ar": {
"id": "http://linked.earth/ontology/paleo_proxy#d15N_d40Ar",
"label": "d15N/d40Ar"
},
"d15n_d40ar": {
"id": "http://linked.earth/ontology/paleo_proxy#d15N_d40Ar",
"label": "d15N/d40Ar"
},
"15n/40ar fractionation": {
"id": "http://linked.earth/ontology/paleo_proxy#d15N_d40Ar",
"label": "d15N/d40Ar"
},
"d15nd40ar": {
"id": "http://linked.earth/ontology/paleo_proxy#d15N_d40Ar",
"label": "d15N/d40Ar"
},
"d18o": {
"id": "http://linked.earth/ontology/paleo_proxy#d18O",
"label": "d18O"
},
"delta 18o": {
"id": "http://linked.earth/ontology/paleo_proxy#d18O",
"label": "d18O"
},
"cellulose d18o": {
"id": "http://linked.earth/ontology/paleo_proxy#d18O",
"label": "d18O"
},
"delta18o": {
"id": "http://linked.earth/ontology/paleo_proxy#d18O",
"label": "d18O"
},
"foram d18o": {
"id": "http://linked.earth/ontology/paleo_proxy#d18O",
"label": "d18O"
},
"dd": {
"id": "http://linked.earth/ontology/paleo_proxy#dD",
"label": "dD"
},
"delta 2h": {
"id": "http://linked.earth/ontology/paleo_proxy#dD",
"label": "dD"
},
"d2h": {
"id": "http://linked.earth/ontology/paleo_proxy#dD",
"label": "dD"
},
"ddwax": {
"id": "http://linked.earth/ontology/paleo_proxy#dD",
"label": "dD"
},
"leaf wax": {
"id": "http://linked.earth/ontology/paleo_proxy#dD",
"label": "dD"
},
"leafwax": {
"id": "http://linked.earth/ontology/paleo_proxy#dD",
"label": "dD"
},
"deuterium excess": {
"id": "http://linked.earth/ontology/paleo_proxy#deuterium_excess",
"label": "deuterium excess"
},
"deuterium_excess": {
"id": "http://linked.earth/ontology/paleo_proxy#deuterium_excess",
"label": "deuterium excess"
},
"deterium excess": {
"id": "http://linked.earth/ontology/paleo_proxy#deuterium_excess",
"label": "deuterium excess"
},
"dx": {
"id": "http://linked.earth/ontology/paleo_proxy#deuterium_excess",
"label": "deuterium excess"
},
"diatom": {
"id": "http://linked.earth/ontology/paleo_proxy#diatom",
"label": "diatom"
},
"dinocyst": {
"id": "http://linked.earth/ontology/paleo_proxy#dinocyst",
"label": "dinocyst"
},
"dinoflagellate": {
"id": "http://linked.earth/ontology/paleo_proxy#dinocyst",
"label": "dinocyst"
},
"dynocist mat": {
"id": "http://linked.earth/ontology/paleo_proxy#dinocyst",
"label": "dinocyst"
},
"dry bulk density": {
"id": "http://linked.earth/ontology/paleo_proxy#dry_bulk_density",
"label": "dry bulk density"
},
"dry_bulk_density": {
"id": "http://linked.earth/ontology/paleo_proxy#dry_bulk_density",
"label": "dry bulk density"
},
"dbd": {
"id": "http://linked.earth/ontology/paleo_proxy#dry_bulk_density",
"label": "dry bulk density"
},
"eu/zr": {
"id": "http://linked.earth/ontology/paleo_proxy#Eu_Zr",
"label": "Eu/Zr"
},
"eu_zr": {
"id": "http://linked.earth/ontology/paleo_proxy#Eu_Zr",
"label": "Eu/Zr"
},
"fe": {
"id": "http://linked.earth/ontology/paleo_proxy#Fe",
"label": "Fe"
},
"iron": {
"id": "http://linked.earth/ontology/paleo_proxy#Fe",
"label": "Fe"
},
"fe/al": {
"id": "http://linked.earth/ontology/paleo_proxy#Fe_Al",
"label": "Fe/Al"
},
"fe_al": {
"id": "http://linked.earth/ontology/paleo_proxy#Fe_Al",
"label": "Fe/Al"
},
"iron/aluminum": {
"id": "http://linked.earth/ontology/paleo_proxy#Fe_Al",
"label": "Fe/Al"
},
"foraminifera": {
"id": "http://linked.earth/ontology/paleo_proxy#foraminifera",
"label": "foraminifera"
},
"foraminifer": {
"id": "http://linked.earth/ontology/paleo_proxy#foraminifera",
"label": "foraminifera"
},
"benthic foraminifers": {
"id": "http://linked.earth/ontology/paleo_proxy#foraminifera",
"label": "foraminifera"
},
"n. dutertrei": {
"id": "http://linked.earth/ontology/paleo_proxy#foraminifera",
"label": "foraminifera"
},
"planktonic foraminifera": {
"id": "http://linked.earth/ontology/paleo_proxy#foraminifera",
"label": "foraminifera"
},
"transfer function": {
"id": "http://linked.earth/ontology/paleo_proxy#foraminifera",
"label": "foraminifera"
},
"uvigerina mediterranea": {
"id": "http://linked.earth/ontology/paleo_proxy#foraminifera",
"label": "foraminifera"
},
"gdgt": {
"id": "http://linked.earth/ontology/paleo_proxy#GDGT",
"label": "GDGT"
},
"glycerol dialkyl glycerol tetraether": {
"id": "http://linked.earth/ontology/paleo_proxy#GDGT",
"label": "GDGT"
},
"brgdgt": {
"id": "http://linked.earth/ontology/paleo_proxy#GDGT",
"label": "GDGT"
},
"grain size": {
"id": "http://linked.earth/ontology/paleo_proxy#grain_size",
"label": "grain size"
},
"grain_size": {
"id": "http://linked.earth/ontology/paleo_proxy#grain_size",
"label": "grain size"
},
"particle size": {
"id": "http://linked.earth/ontology/paleo_proxy#grain_size",
"label": "grain size"
},
"hbi": {
"id": "http://linked.earth/ontology/paleo_proxy#HBI",
"label": "HBI"
},
"highly-branched isoprenoid alkene": {
"id": "http://linked.earth/ontology/paleo_proxy#HBI",
"label": "HBI"
},
"historical": {
"id": "http://linked.earth/ontology/paleo_proxy#historical",
"label": "historical"
},
"documentary": {
"id": "http://linked.earth/ontology/paleo_proxy#historical",
"label": "historical"
},
"historic": {
"id": "http://linked.earth/ontology/paleo_proxy#historical",
"label": "historical"
},
"humification": {
"id": "http://linked.earth/ontology/paleo_proxy#humification",
"label": "humification"
},
"humification index": {
"id": "http://linked.earth/ontology/paleo_proxy#humification",
"label": "humification"
},
"ice accumulation": {
"id": "http://linked.earth/ontology/paleo_proxy#ice_accumulation",
"label": "ice accumulation"
},
"ice_accumulation": {
"id": "http://linked.earth/ontology/paleo_proxy#ice_accumulation",
"label": "ice accumulation"
},
"ice melt": {
"id": "http://linked.earth/ontology/paleo_proxy#ice_melt",
"label": "ice melt"
},
"ice_melt": {
"id": "http://linked.earth/ontology/paleo_proxy#ice_melt",
"label": "ice melt"
},
"melt": {
"id": "http://linked.earth/ontology/paleo_proxy#ice_melt",
"label": "ice melt"
},
"melt layer": {
"id": "http://linked.earth/ontology/paleo_proxy#ice_melt",
"label": "ice melt"
},
"inorganic carbon": {
"id": "http://linked.earth/ontology/paleo_proxy#inorganic_carbon",
"label": "inorganic carbon"
},
"inorganic_carbon": {
"id": "http://linked.earth/ontology/paleo_proxy#inorganic_carbon",
"label": "inorganic carbon"
},
"tic": {
"id": "http://linked.earth/ontology/paleo_proxy#inorganic_carbon",
"label": "inorganic carbon"
},
"ip25": {
"id": "http://linked.earth/ontology/paleo_proxy#IP25",
"label": "IP25"
},
"ice proxy with 25 carbon atoms": {
"id": "http://linked.earth/ontology/paleo_proxy#IP25",
"label": "IP25"
},
"lake level": {
"id": "http://linked.earth/ontology/paleo_proxy#lake_level",
"label": "lake level"
},
"lake_level": {
"id": "http://linked.earth/ontology/paleo_proxy#lake_level",
"label": "lake level"
},
"lake stratigraphy and radiocarbon dating of macrofossils": {
"id": "http://linked.earth/ontology/paleo_proxy#lake_level",
"label": "lake level"
},
"lakelevel": {
"id": "http://linked.earth/ontology/paleo_proxy#lake_level",
"label": "lake level"
},
"lakestatus": {
"id": "http://linked.earth/ontology/paleo_proxy#lake_level",
"label": "lake level"
},
"latewood cellulose": {
"id": "http://linked.earth/ontology/paleo_proxy#latewood_cellulose",
"label": "latewood cellulose"
},
"latewood_cellulose": {
"id": "http://linked.earth/ontology/paleo_proxy#latewood_cellulose",
"label": "latewood cellulose"
},
"late-wood cellulose": {
"id": "http://linked.earth/ontology/paleo_proxy#latewood_cellulose",
"label": "latewood cellulose"
},
"ldi": {
"id": "http://linked.earth/ontology/paleo_proxy#LDI",
"label": "LDI"
},
"long-chain diol index": {
"id": "http://linked.earth/ontology/paleo_proxy#LDI",
"label": "LDI"
},
"long chain diol": {
"id": "http://linked.earth/ontology/paleo_proxy#LDI",
"label": "LDI"
},
"macrofossils": {
"id": "http://linked.earth/ontology/paleo_proxy#macrofossils",
"label": "macrofossils"
},
"plant macrofossils": {
"id": "http://linked.earth/ontology/paleo_proxy#macrofossils",
"label": "macrofossils"
},
"magnetic": {
"id": "http://linked.earth/ontology/paleo_proxy#magnetic",
"label": "magnetic"
},
"arm/irm": {
"id": "http://linked.earth/ontology/paleo_proxy#magnetic",
"label": "magnetic"
},
"irm": {
"id": "http://linked.earth/ontology/paleo_proxy#magnetic",
"label": "magnetic"
},
"magnetic susceptibility": {
"id": "http://linked.earth/ontology/paleo_proxy#magnetic_susceptibility",
"label": "magnetic susceptibility"
},
"magnetic_susceptibility": {
"id": "http://linked.earth/ontology/paleo_proxy#magnetic_susceptibility",
"label": "magnetic susceptibility"
},
"ms": {
"id": "http://linked.earth/ontology/paleo_proxy#magnetic_susceptibility",
"label": "magnetic susceptibility"
},
"mass accumulation rate": {
"id": "http://linked.earth/ontology/paleo_proxy#mass_accumulation_rate",
"label": "mass accumulation rate"
},
"mass_accumulation_rate": {
"id": "http://linked.earth/ontology/paleo_proxy#mass_accumulation_rate",
"label": "mass accumulation rate"
},
"mass per area per time unit": {
"id": "http://linked.earth/ontology/paleo_proxy#mass_accumulation_rate",
"label": "mass accumulation rate"
},
"mar": {
"id": "http://linked.earth/ontology/paleo_proxy#mass_accumulation_rate",
"label": "mass accumulation rate"
},
"maximum latewood density": {
"id": "http://linked.earth/ontology/paleo_proxy#maximum_latewood_density",
"label": "maximum latewood density"
},
"maximum_latewood_density": {
"id": "http://linked.earth/ontology/paleo_proxy#maximum_latewood_density",
"label": "maximum latewood density"
},
"latewood density": {
"id": "http://linked.earth/ontology/paleo_proxy#maximum_latewood_density",
"label": "maximum latewood density"
},
"delta density": {
"id": "http://linked.earth/ontology/paleo_proxy#maximum_latewood_density",
"label": "maximum latewood density"
},
"mxd": {
"id": "http://linked.earth/ontology/paleo_proxy#maximum_latewood_density",
"label": "maximum latewood density"
},
"mg": {
"id": "http://linked.earth/ontology/paleo_proxy#Mg",
"label": "Mg"
},
"magnesium": {
"id": "http://linked.earth/ontology/paleo_proxy#Mg",
"label": "Mg"
},
"mg/ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Mg_Ca",
"label": "Mg/Ca"
},
"mg_ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Mg_Ca",
"label": "Mg/Ca"
},
"magnesium/calcium": {
"id": "http://linked.earth/ontology/paleo_proxy#Mg_Ca",
"label": "Mg/Ca"
},
"foram mg/ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Mg_Ca",
"label": "Mg/Ca"
},
"mgca": {
"id": "http://linked.earth/ontology/paleo_proxy#Mg_Ca",
"label": "Mg/Ca"
},
"multiproxy": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"multiple proxies": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"hybrid": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"hybrid grain size": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"hybrid-ice": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"hybrid-lake": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"pore ice d2h and d18o": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"ti": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti",
"label": "Ti"
},
"ca": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"k": {
"id": "http://linked.earth/ontology/paleo_proxy#multiproxy",
"label": "multiproxy"
},
"needs to be changed": {
"id": "http://linked.earth/ontology/paleo_proxy#needs_to_be_changed",
"label": "needs to be changed"
},
"needs_to_be_changed": {
"id": "http://linked.earth/ontology/paleo_proxy#needs_to_be_changed",
"label": "needs to be changed"
},
"pca": {
"id": "http://linked.earth/ontology/paleo_proxy#needs_to_be_changed",
"label": "needs to be changed"
},
"needstobechanged": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"((( calcium carbonate ))) accumulation /// null": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"3-oh-fatty acids": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"age": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"cas": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"cia": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"coral": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"element": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"element ratio": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"ice": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"isotope": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"isotope diffusion": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"mg0": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"middle-wood cellulose": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"mineral": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"mineralogy": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"percent": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"sediment": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"tds": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"trace element / ca": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"traceelement": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"u cluster 2": {
"id": "http://linked.earth/ontology/paleo_proxy#needsToBeChanged",
"label": "needsToBeChanged"
},
"ostracod": {
"id": "http://linked.earth/ontology/paleo_proxy#ostracod",
"label": "ostracod"
},
"p-aqueous": {
"id": "http://linked.earth/ontology/paleo_proxy#P-aqueous",
"label": "P-aqueous"
},
"paq": {
"id": "http://linked.earth/ontology/paleo_proxy#P-aqueous",
"label": "P-aqueous"
},
"peat ash": {
"id": "http://linked.earth/ontology/paleo_proxy#peat_ash",
"label": "peat ash"
},
"peat_ash": {
"id": "http://linked.earth/ontology/paleo_proxy#peat_ash",
"label": "peat ash"
},
"ph": {
"id": "http://linked.earth/ontology/paleo_proxy#pH",
"label": "pH"
},
"pollen": {
"id": "http://linked.earth/ontology/paleo_proxy#pollen",
"label": "pollen"
},
"aquatic palynomorphs": {
"id": "http://linked.earth/ontology/paleo_proxy#pollen",
"label": "pollen"
},
"radiolaria": {
"id": "http://linked.earth/ontology/paleo_proxy#radiolaria",
"label": "radiolaria"
},
"radiolarian": {
"id": "http://linked.earth/ontology/paleo_proxy#radiolaria",
"label": "radiolaria"
},
"rb": {
"id": "http://linked.earth/ontology/paleo_proxy#Rb",
"label": "Rb"
},
"rubidium": {
"id": "http://linked.earth/ontology/paleo_proxy#Rb",
"label": "Rb"
},
"rb/sr": {
"id": "http://linked.earth/ontology/paleo_proxy#Rb_Sr",
"label": "Rb/Sr"
},
"rb_sr": {
"id": "http://linked.earth/ontology/paleo_proxy#Rb_Sr",
"label": "Rb/Sr"
},
"reflectance": {
"id": "http://linked.earth/ontology/paleo_proxy#reflectance",
"label": "reflectance"
},
"ring width": {
"id": "http://linked.earth/ontology/paleo_proxy#ring_width",
"label": "ring width"
},
"ring_width": {
"id": "http://linked.earth/ontology/paleo_proxy#ring_width",
"label": "ring width"
},
"trw": {
"id": "http://linked.earth/ontology/paleo_proxy#ring_width",
"label": "ring width"
},
"sr": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr",
"label": "Sr"
},
"strontium": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr",
"label": "Sr"
},
"sr/ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr_Ca",
"label": "Sr/Ca"
},
"sr_ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr_Ca",
"label": "Sr/Ca"
},
"strontium/calcium": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr_Ca",
"label": "Sr/Ca"
},
"ca/sr": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr_Ca",
"label": "Sr/Ca"
},
"coral sr/ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr_Ca",
"label": "Sr/Ca"
},
"srca": {
"id": "http://linked.earth/ontology/paleo_proxy#Sr_Ca",
"label": "Sr/Ca"
},
"stratigraphy": {
"id": "http://linked.earth/ontology/paleo_proxy#stratigraphy",
"label": "stratigraphy"
},
"minerogenic layers": {
"id": "http://linked.earth/ontology/paleo_proxy#stratigraphy",
"label": "stratigraphy"
},
"plant detrital layers": {
"id": "http://linked.earth/ontology/paleo_proxy#stratigraphy",
"label": "stratigraphy"
},
"sulfur": {
"id": "http://linked.earth/ontology/paleo_proxy#sulfur",
"label": "sulfur"
},
"s": {
"id": "http://linked.earth/ontology/paleo_proxy#sulfur",
"label": "sulfur"
},
"tex86": {
"id": "http://linked.earth/ontology/paleo_proxy#TEX86",
"label": "TEX86"
},
"tetraether index of 86 carbon atoms": {
"id": "http://linked.earth/ontology/paleo_proxy#TEX86",
"label": "TEX86"
},
"titanium": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti",
"label": "Ti"
},
"ti/al": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti_Al",
"label": "Ti/Al"
},
"ti_al": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti_Al",
"label": "Ti/Al"
},
"titanium/aluminum": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti_Al",
"label": "Ti/Al"
},
"ti/ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti_Ca",
"label": "Ti/Ca"
},
"ti_ca": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti_Ca",
"label": "Ti/Ca"
},
"titanium/calcium": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti_Ca",
"label": "Ti/Ca"
},
"ln(ti/ca)": {
"id": "http://linked.earth/ontology/paleo_proxy#Ti_Ca",
"label": "Ti/Ca"
},
"toc": {
"id": "http://linked.earth/ontology/paleo_proxy#TOC",
"label": "TOC"
},
"organic carbon": {
"id": "http://linked.earth/ontology/paleo_proxy#TOC",
"label": "TOC"
},
"total nitrogen": {
"id": "http://linked.earth/ontology/paleo_proxy#total_nitrogen",
"label": "total nitrogen"
},
"total_nitrogen": {
"id": "http://linked.earth/ontology/paleo_proxy#total_nitrogen",
"label": "total nitrogen"
},
"tn": {
"id": "http://linked.earth/ontology/paleo_proxy#total_nitrogen",
"label": "total nitrogen"
},
"varve thickness": {
"id": "http://linked.earth/ontology/paleo_proxy#varve_thickness",
"label": "varve thickness"
},
"varve_thickness": {
"id": "http://linked.earth/ontology/paleo_proxy#varve_thickness",
"label": "varve thickness"
},
"varve": {
"id": "http://linked.earth/ontology/paleo_proxy#varve_thickness",
"label": "varve thickness"
},
"varve property": {
"id": "http://linked.earth/ontology/paleo_proxy#varve_thickness",
"label": "varve thickness"
},
"varves": {
"id": "http://linked.earth/ontology/paleo_proxy#varve_thickness",
"label": "varve thickness"
}
},
"PaleoProxyGeneral": {
"biogenic": {
"id": "http://linked.earth/ontology/paleo_proxy#biogenic",
"label": "biogenic"
},
"biological material": {
"id": "http://linked.earth/ontology/paleo_proxy#biogenic",
"label": "biogenic"
},
"cryophysical": {
"id": "http://linked.earth/ontology/paleo_proxy#cryophysical",
"label": "cryophysical"
},
"dendrophysical": {
"id": "http://linked.earth/ontology/paleo_proxy#dendrophysical",
"label": "dendrophysical"
},
"elemental": {
"id": "http://linked.earth/ontology/paleo_proxy#elemental",
"label": "elemental"
},
"faunal assemblage": {
"id": "http://linked.earth/ontology/paleo_proxy#faunal_assemblage",
"label": "faunal assemblage"
},
"faunal_assemblage": {
"id": "http://linked.earth/ontology/paleo_proxy#faunal_assemblage",
"label": "faunal assemblage"
},
"floral assemblage": {
"id": "http://linked.earth/ontology/paleo_proxy#floral_assemblage",
"label": "floral assemblage"
},
"floral_assemblage": {
"id": "http://linked.earth/ontology/paleo_proxy#floral_assemblage",
"label": "floral assemblage"
},
"isotopic": {
"id": "http://linked.earth/ontology/paleo_proxy#isotopic",
"label": "isotopic"
},
"isotope": {
"id": "http://linked.earth/ontology/paleo_proxy#isotopic",
"label": "isotopic"
},
"mineral": {
"id": "http://linked.earth/ontology/paleo_proxy#mineral",
"label": "mineral"
},
"pyrogenic": {
"id": "http://linked.earth/ontology/paleo_proxy#pyrogenic",
"label": "pyrogenic"
},
"fire history": {
"id": "http://linked.earth/ontology/paleo_proxy#pyrogenic",
"label": "pyrogenic"
},
"sedimentology": {
"id": "http://linked.earth/ontology/paleo_proxy#sedimentology",
"label": "sedimentology"
}
}
},
"UNITS": {
"PaleoUnit": {
"atomic ratio": {
"id": "http://linked.earth/ontology/paleo_units#atomic_ratio",
"label": "atomic ratio"
},
"atomic_ratio": {
"id": "http://linked.earth/ontology/paleo_units#atomic_ratio",
"label": "atomic ratio"
},
"cgs": {
"id": "http://linked.earth/ontology/paleo_units#cgs",
"label": "cgs"
},
"dimensionless (cgs system)": {
"id": "http://linked.earth/ontology/paleo_units#cgs",
"label": "cgs"
},
"cm": {
"id": "http://linked.earth/ontology/paleo_units#cm",
"label": "cm"
},
"centimeter": {
"id": "http://linked.earth/ontology/paleo_units#cm",
"label": "cm"
},
"cmblf": {
"id": "http://linked.earth/ontology/paleo_units#cm",
"label": "cm"
},
"cm/kyr": {
"id": "http://linked.earth/ontology/paleo_units#cm_kyr",
"label": "cm/kyr"
},
"cm_kyr": {
"id": "http://linked.earth/ontology/paleo_units#cm_kyr",
"label": "cm/kyr"
},
"centimeter per kiloyear": {
"id": "http://linked.earth/ontology/paleo_units#cm_kyr",
"label": "cm/kyr"
},
"cm/yr": {
"id": "http://linked.earth/ontology/paleo_units#cm_yr",
"label": "cm/yr"
},
"cm_yr": {
"id": "http://linked.earth/ontology/paleo_units#cm_yr",
"label": "cm/yr"
},
"centimeter per year": {
"id": "http://linked.earth/ontology/paleo_units#cm_yr",
"label": "cm/yr"
},
"cm/a": {
"id": "http://linked.earth/ontology/paleo_units#cm_yr",
"label": "cm/yr"
},
"cm yr-1": {
"id": "http://linked.earth/ontology/paleo_units#cm_yr",
"label": "cm/yr"
},
"cm3": {
"id": "http://linked.earth/ontology/paleo_units#cm3",
"label": "cm3"
},
"cubic centimeter": {
"id": "http://linked.earth/ontology/paleo_units#cm3",
"label": "cm3"
},
"count": {
"id": "http://linked.earth/ontology/paleo_units#count",
"label": "count"
},
"number": {
"id": "http://linked.earth/ontology/paleo_units#count",
"label": "count"
},
"#": {
"id": "http://linked.earth/ontology/paleo_units#count",
"label": "count"
},
"counts": {
"id": "http://linked.earth/ontology/paleo_units#count",
"label": "count"
},
"dark_sum": {
"id": "http://linked.earth/ontology/paleo_units#count",
"label": "count"
},
"cts": {
"id": "http://linked.earth/ontology/paleo_units#count",
"label": "count"
},
"count/century": {
"id": "http://linked.earth/ontology/paleo_units#count_century",
"label": "count/century"
},
"count_century": {
"id": "http://linked.earth/ontology/paleo_units#count_century",
"label": "count/century"
},
"count per century": {
"id": "http://linked.earth/ontology/paleo_units#count_century",
"label": "count/century"
},
"envents/100yrs": {
"id": "http://linked.earth/ontology/paleo_units#count_century",
"label": "count/century"
},
"count/cm2": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2",
"label": "count/cm2"
},
"count_cm2": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2",
"label": "count/cm2"
},
"count per square centimeter": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2",
"label": "count/cm2"
},
"number/cm2": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2",
"label": "count/cm2"
},
"count/cm2/yr": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2_yr",
"label": "count/cm2/yr"
},
"count_cm2_yr": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2_yr",
"label": "count/cm2/yr"
},
"count per square centimeter per year": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2_yr",
"label": "count/cm2/yr"
},
"grains>255 micron/cm2/yr": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2_yr",
"label": "count/cm2/yr"
},
"no/cm2/yr": {
"id": "http://linked.earth/ontology/paleo_units#count_cm2_yr",
"label": "count/cm2/yr"
},
"count/cm3": {
"id": "http://linked.earth/ontology/paleo_units#count_cm3",
"label": "count/cm3"
},
"count_cm3": {
"id": "http://linked.earth/ontology/paleo_units#count_cm3",
"label": "count/cm3"
},
"count per cubic centimeter": {
"id": "http://linked.earth/ontology/paleo_units#count_cm3",
"label": "count/cm3"
},
"bubbles/cm3": {
"id": "http://linked.earth/ontology/paleo_units#count_cm3",
"label": "count/cm3"
},
"#/cm3": {
"id": "http://linked.earth/ontology/paleo_units#count_cm3",
"label": "count/cm3"
},
"count/g": {
"id": "http://linked.earth/ontology/paleo_units#count_g",
"label": "count/g"
},
"count_g": {
"id": "http://linked.earth/ontology/paleo_units#count_g",
"label": "count/g"
},
"count per gram": {
"id": "http://linked.earth/ontology/paleo_units#count_g",
"label": "count/g"
},
"grains/g": {
"id": "http://linked.earth/ontology/paleo_units#count_g",
"label": "count/g"
},
"millions of valves/g dry sed": {
"id": "http://linked.earth/ontology/paleo_units#count_g",
"label": "count/g"
},
"count/kyr": {
"id": "http://linked.earth/ontology/paleo_units#count_kyr",
"label": "count/kyr"
},
"count_kyr": {
"id": "http://linked.earth/ontology/paleo_units#count_kyr",
"label": "count/kyr"
},
"count per kiloyear": {
"id": "http://linked.earth/ontology/paleo_units#count_kyr",
"label": "count/kyr"
},
"frequency/1000yrs": {
"id": "http://linked.earth/ontology/paleo_units#count_kyr",
"label": "count/kyr"
},
"count/ml": {
"id": "http://linked.earth/ontology/paleo_units#count_mL",
"label": "count/mL"
},
"count_ml": {
"id": "http://linked.earth/ontology/paleo_units#count_mL",
"label": "count/mL"
},
"count per milliliter": {
"id": "http://linked.earth/ontology/paleo_units#count_mL",
"label": "count/mL"
},
"count/yr": {
"id": "http://linked.earth/ontology/paleo_units#count_yr",
"label": "count/yr"
},
"count_yr": {
"id": "http://linked.earth/ontology/paleo_units#count_yr",
"label": "count/yr"
},
"count per year": {
"id": "http://linked.earth/ontology/paleo_units#count_yr",
"label": "count/yr"
},
"floods per year": {
"id": "http://linked.earth/ontology/paleo_units#count_yr",
"label": "count/yr"
},
"floods per yr": {
"id": "http://linked.earth/ontology/paleo_units#count_yr",
"label": "count/yr"
},
"floods/yr": {
"id": "http://linked.earth/ontology/paleo_units#count_yr",
"label": "count/yr"
},
"cps": {
"id": "http://linked.earth/ontology/paleo_units#cps",
"label": "cps"
},
"count per second": {
"id": "http://linked.earth/ontology/paleo_units#cps",
"label": "cps"
},
"day": {
"id": "http://linked.earth/ontology/paleo_units#day",
"label": "day"
},
"days": {
"id": "http://linked.earth/ontology/paleo_units#day",
"label": "day"
},
"degc": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"degree celsius": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"gdd5": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"((( null ))) deg c /// degc": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"degrees": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"\xBAc": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"deg": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"gdd": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"kelvin": {
"id": "http://linked.earth/ontology/paleo_units#degC",
"label": "degC"
},
"degree": {
"id": "http://linked.earth/ontology/paleo_units#degree",
"label": "degree"
},
"decimal degrees": {
"id": "http://linked.earth/ontology/paleo_units#degree",
"label": "degree"
},
"fraction": {
"id": "http://linked.earth/ontology/paleo_units#fraction",
"label": "fraction"
},
"fractional abundance": {
"id": "http://linked.earth/ontology/paleo_units#fraction",
"label": "fraction"
},
"fraction 0 to 1": {
"id": "http://linked.earth/ontology/paleo_units#fraction",
"label": "fraction"
},
"relative abundance": {
"id": "http://linked.earth/ontology/paleo_units#fraction",
"label": "fraction"
},
"g": {
"id": "http://linked.earth/ontology/paleo_units#g",
"label": "g"
},
"gram": {
"id": "http://linked.earth/ontology/paleo_units#g",
"label": "g"
},
"g/cm/yr": {
"id": "http://linked.earth/ontology/paleo_units#g_cm_yr",
"label": "g/cm/yr"
},
"g_cm_yr": {
"id": "http://linked.earth/ontology/paleo_units#g_cm_yr",
"label": "g/cm/yr"
},
"gram per centimeter per year": {
"id": "http://linked.earth/ontology/paleo_units#g_cm_yr",
"label": "g/cm/yr"
},
"g/cm2": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2",
"label": "g/cm2"
},
"g_cm2": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2",
"label": "g/cm2"
},
"gram per square centimeter": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2",
"label": "g/cm2"
},
"gcm2": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2",
"label": "g/cm2"
},
"g cm-1": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2",
"label": "g/cm2"
},
"g/cm2/kyr": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_kyr",
"label": "g/cm2/kyr"
},
"g_cm2_kyr": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_kyr",
"label": "g/cm2/kyr"
},
"gram per square centimeter per kiloyear": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_kyr",
"label": "g/cm2/kyr"
},
"g/cm2/ka": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_kyr",
"label": "g/cm2/kyr"
},
"g/cm2/yr": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"g_cm2_yr": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"gram per square centimeter per year": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"g/m^2/a": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"gcm-2yr-1": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"g.cm-2.a-1": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"g/cm^2/y": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"gcm-2a-1": {
"id": "http://linked.earth/ontology/paleo_units#g_cm2_yr",
"label": "g/cm2/yr"
},
"g/cm3": {
"id": "http://linked.earth/ontology/paleo_units#g_cm3",
"label": "g/cm3"
},
"g_cm3": {
"id": "http://linked.earth/ontology/paleo_units#g_cm3",
"label": "g/cm3"
},
"gram per cubic centimeter": {
"id": "http://linked.earth/ontology/paleo_units#g_cm3",
"label": "g/cm3"
},
"g/cc": {
"id": "http://linked.earth/ontology/paleo_units#g_cm3",
"label": "g/cm3"
},
"grams/cubic cm": {
"id": "http://linked.earth/ontology/paleo_units#g_cm3",
"label": "g/cm3"
},
"g/l": {
"id": "http://linked.earth/ontology/paleo_units#g_L",
"label": "g/L"
},
"g_l": {
"id": "http://linked.earth/ontology/paleo_units#g_L",
"label": "g/L"
},
"gram per liter": {
"id": "http://linked.earth/ontology/paleo_units#g_L",
"label": "g/L"
},
"g/m2": {
"id": "http://linked.earth/ontology/paleo_units#g_m2",
"label": "g/m2"
},
"g_m2": {
"id": "http://linked.earth/ontology/paleo_units#g_m2",
"label": "g/m2"
},
"gram per square meter": {
"id": "http://linked.earth/ontology/paleo_units#g_m2",
"label": "g/m2"
},
"g/m": {
"id": "http://linked.earth/ontology/paleo_units#g_m2",
"label": "g/m2"
},
"g/m2/yr": {
"id": "http://linked.earth/ontology/paleo_units#g_m2_yr",
"label": "g/m2/yr"
},
"g_m2_yr": {
"id": "http://linked.earth/ontology/paleo_units#g_m2_yr",
"label": "g/m2/yr"
},
"gram per square meter per year": {
"id": "http://linked.earth/ontology/paleo_units#g_m2_yr",
"label": "g/m2/yr"
},
"gm2yr-1": {
"id": "http://linked.earth/ontology/paleo_units#g_m2_yr",
"label": "g/m2/yr"
},
"grayscale": {
"id": "http://linked.earth/ontology/paleo_units#grayscale",
"label": "grayscale"
},
"kg/m2/yr": {
"id": "http://linked.earth/ontology/paleo_units#kg_m2_yr",
"label": "kg/m2/yr"
},
"kg_m2_yr": {
"id": "http://linked.earth/ontology/paleo_units#kg_m2_yr",
"label": "kg/m2/yr"
},
"kilogram per square meter per year": {
"id": "http://linked.earth/ontology/paleo_units#kg_m2_yr",
"label": "kg/m2/yr"
},
"kg/m3": {
"id": "http://linked.earth/ontology/paleo_units#kg_m3",
"label": "kg/m3"
},
"kg_m3": {
"id": "http://linked.earth/ontology/paleo_units#kg_m3",
"label": "kg/m3"
},
"kilogram per square meter": {
"id": "http://linked.earth/ontology/paleo_units#kg_m3",
"label": "kg/m3"
},
"km2": {
"id": "http://linked.earth/ontology/paleo_units#km2",
"label": "km2"
},
"square kilometer": {
"id": "http://linked.earth/ontology/paleo_units#km2",
"label": "km2"
},
"km3": {
"id": "http://linked.earth/ontology/paleo_units#km3",
"label": "km3"
},
"cubic kilometer": {
"id": "http://linked.earth/ontology/paleo_units#km3",
"label": "km3"
},
"log(mg/l)": {
"id": "http://linked.earth/ontology/paleo_units#log_mg_L_",
"label": "log(mg/L)"
},
"log_mg_l_": {
"id": "http://linked.earth/ontology/paleo_units#log_mg_L_",
"label": "log(mg/L)"
},
"log mg/l": {
"id": "http://linked.earth/ontology/paleo_units#log_mg_L_",
"label": "log(mg/L)"
},
"m": {
"id": "http://linked.earth/ontology/paleo_units#m",
"label": "m"
},
"meter": {
"id": "http://linked.earth/ontology/paleo_units#m",
"label": "m"
},
"m3/kg": {
"id": "http://linked.earth/ontology/paleo_units#m3_kg",
"label": "m3/kg"
},
"m3_kg": {
"id": "http://linked.earth/ontology/paleo_units#m3_kg",
"label": "m3/kg"
},
"cubic meter per kilogram": {
"id": "http://linked.earth/ontology/paleo_units#m3_kg",
"label": "m3/kg"
},
"m^3 kg^-1": {
"id": "http://linked.earth/ontology/paleo_units#m3_kg",
"label": "m3/kg"
},
"m3kg-1": {
"id": "http://linked.earth/ontology/paleo_units#m3_kg",
"label": "m3/kg"
},
"m3kg1": {
"id": "http://linked.earth/ontology/paleo_units#m3_kg",
"label": "m3/kg"
},
"mg": {
"id": "http://linked.earth/ontology/paleo_units#mg",
"label": "mg"
},
"milligram": {
"id": "http://linked.earth/ontology/paleo_units#mg",
"label": "mg"
},
"mg/cm2/yr": {
"id": "http://linked.earth/ontology/paleo_units#mg_cm2_yr",
"label": "mg/cm2/yr"
},
"mg_cm2_yr": {
"id": "http://linked.earth/ontology/paleo_units#mg_cm2_yr",
"label": "mg/cm2/yr"
},
"milligram per square centimeter per year": {
"id": "http://linked.earth/ontology/paleo_units#mg_cm2_yr",
"label": "mg/cm2/yr"
},
"mg/g": {
"id": "http://linked.earth/ontology/paleo_units#mg_g",
"label": "mg/g"
},
"mg_g": {
"id": "http://linked.earth/ontology/paleo_units#mg_g",
"label": "mg/g"
},
"milligram per gram": {
"id": "http://linked.earth/ontology/paleo_units#mg_g",
"label": "mg/g"
},
"mg g-1": {
"id": "http://linked.earth/ontology/paleo_units#mg_g",
"label": "mg/g"
},
"mill/g": {
"id": "http://linked.earth/ontology/paleo_units#mg_g",
"label": "mg/g"
},
"mg/kg": {
"id": "http://linked.earth/ontology/paleo_units#mg_kg",
"label": "mg/kg"
},
"mg_kg": {
"id": "http://linked.earth/ontology/paleo_units#mg_kg",
"label": "mg/kg"
},
"milligram per kilogram": {
"id": "http://linked.earth/ontology/paleo_units#mg_kg",
"label": "mg/kg"
},
"mg/l": {
"id": "http://linked.earth/ontology/paleo_units#mg_L",
"label": "mg/L"
},
"mg_l": {
"id": "http://linked.earth/ontology/paleo_units#mg_L",
"label": "mg/L"
},
"milligram per liter": {
"id": "http://linked.earth/ontology/paleo_units#mg_L",
"label": "mg/L"
},
"mm": {
"id": "http://linked.earth/ontology/paleo_units#mm",
"label": "mm"
},
"millimeter": {
"id": "http://linked.earth/ontology/paleo_units#mm",
"label": "mm"
},
"depth_sample": {
"id": "http://linked.earth/ontology/paleo_units#mm",
"label": "mm"
},
"mm/day": {
"id": "http://linked.earth/ontology/paleo_units#mm_day",
"label": "mm/day"
},
"mm_day": {
"id": "http://linked.earth/ontology/paleo_units#mm_day",
"label": "mm/day"
},
"millimeter per day": {
"id": "http://linked.earth/ontology/paleo_units#mm_day",
"label": "mm/day"
},
"mm/season": {
"id": "http://linked.earth/ontology/paleo_units#mm_season",
"label": "mm/season"
},
"mm_season": {
"id": "http://linked.earth/ontology/paleo_units#mm_season",
"label": "mm/season"
},
"mm/yr": {
"id": "http://linked.earth/ontology/paleo_units#mm_yr",
"label": "mm/yr"
},
"mm_yr": {
"id": "http://linked.earth/ontology/paleo_units#mm_yr",
"label": "mm/yr"
},
"millimeter per year": {
"id": "http://linked.earth/ontology/paleo_units#mm_yr",
"label": "mm/yr"
},
"mm/a": {
"id": "http://linked.earth/ontology/paleo_units#mm_yr",
"label": "mm/yr"
},
"((( null ))) mm /// mm/a": {
"id": "http://linked.earth/ontology/paleo_units#mm_yr",
"label": "mm/yr"
},
"mmol/mol": {
"id": "http://linked.earth/ontology/paleo_units#mmol_mol",
"label": "mmol/mol"
},
"mmol_mol": {
"id": "http://linked.earth/ontology/paleo_units#mmol_mol",
"label": "mmol/mol"
},
"millimole per mole": {
"id": "http://linked.earth/ontology/paleo_units#mmol_mol",
"label": "mmol/mol"
},
"months/year": {
"id": "http://linked.earth/ontology/paleo_units#months_year",
"label": "months/year"
},
"months_year": {
"id": "http://linked.earth/ontology/paleo_units#months_year",
"label": "months/year"
},
"needstobechanged": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"1s": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"a\u20AC\xB0": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"floods per 30 years": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"floods per 30 yrs (200 yr running average)": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"hu": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"layers/200yrs": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"[\xB1]": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"0.5s": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"1 sigma": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"10-5": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"10^-9 am2/yr": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"1sigma": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"a\x80\xB0": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"afae\u2019a\u2020a\u20AC\u2122afa\xA2a\xA2a\u20ACsa\xACa\u2026a\xA1afae\u2019a\xA2a\u201A\xACa\xA1afa\u20ACsa\u201Aaug/g": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"unknown": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"mcm": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"mwe": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"1041 m3/kg": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"am2kg-1": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"area": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"aug/cm2/ka": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"gomcm2yr-1": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"sum": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"total": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"cm2yr-1": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"square mm/cubic cm": {
"id": "http://linked.earth/ontology/paleo_units#needsToBeChanged",
"label": "needsToBeChanged"
},
"ng": {
"id": "http://linked.earth/ontology/paleo_units#ng",
"label": "ng"
},
"nanogram": {
"id": "http://linked.earth/ontology/paleo_units#ng",
"label": "ng"
},
"ng/sample": {
"id": "http://linked.earth/ontology/paleo_units#ng",
"label": "ng"
},
"ng/g": {
"id": "http://linked.earth/ontology/paleo_units#ng_g",
"label": "ng/g"
},
"ng_g": {
"id": "http://linked.earth/ontology/paleo_units#ng_g",
"label": "ng/g"
},
"nanogram per gram": {
"id": "http://linked.earth/ontology/paleo_units#ng_g",
"label": "ng/g"
},
"ng/g sed": {
"id": "http://linked.earth/ontology/paleo_units#ng_g",
"label": "ng/g"
},
"peak area": {
"id": "http://linked.earth/ontology/paleo_units#peak_area",
"label": "peak area"
},
"peak_area": {
"id": "http://linked.earth/ontology/paleo_units#peak_area",
"label": "peak area"
},
"peak area integral": {
"id": "http://linked.earth/ontology/paleo_units#peak_area",
"label": "peak area"
},
"pa/kcps": {
"id": "http://linked.earth/ontology/paleo_units#peak_area",
"label": "peak area"
},
"percent": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"%": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"((( null ))) % /// percent": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"wt %": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"% abs": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"mol%": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"mole per mole * 100": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"percentbyweight": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"precent": {
"id": "http://linked.earth/ontology/paleo_units#percent",
"label": "percent"
},
"permil": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"per mil": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"((( null ))) per mil /// permil": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"per mil vs pdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"((( null ))) per mil /// unitless": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"per mil (vpdb)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"per mil vs vpdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil (vsmow)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"per mil (pdb)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil vs pdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil (pdb)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil (smow)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil smow": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil vsmow": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil (vpdb)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil vpdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil vs vpdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil pdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil vpdb 1sig": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"\u2030 pdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"per mil vsmow": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"((( null ))) permil /// unitless": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"+/- permil pdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"+/- permil smow": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"\xB1 permil": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"per mil vsmow 1sig": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"((( null ))) permil /// per mil": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"\u2030 smow": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"1000*counts/counts": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"d18o": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"pdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"pemil": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil (pbd)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil (smow": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"not pdb!)": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil v pdb": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil vmow": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permil vsmow 1sig": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"permit": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"perml": {
"id": "http://linked.earth/ontology/paleo_units#permil",
"label": "permil"
},
"ph": {
"id": "http://linked.earth/ontology/paleo_units#pH",
"label": "pH"
},
"acidity": {
"id": "http://linked.earth/ontology/paleo_units#pH",
"label": "pH"
},
"ppb": {
"id": "http://linked.earth/ontology/paleo_units#ppb",
"label": "ppb"
},
"parts per billion": {
"id": "http://linked.earth/ontology/paleo_units#ppb",
"label": "ppb"
},
"ppm": {
"id": "http://linked.earth/ontology/paleo_units#ppm",
"label": "ppm"
},
"parts per million": {
"id": "http://linked.earth/ontology/paleo_units#ppm",
"label": "ppm"
},
"practical salinity unit": {
"id": "http://linked.earth/ontology/paleo_units#practical_salinity_unit",
"label": "practical salinity unit"
},
"practical_salinity_unit": {
"id": "http://linked.earth/ontology/paleo_units#practical_salinity_unit",
"label": "practical salinity unit"
},
"psu": {
"id": "http://linked.earth/ontology/paleo_units#practical_salinity_unit",
"label": "practical salinity unit"
},
"ratio": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"relative unit": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"ratio cps": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"g/g": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"(mg/kg)/(mg/kg)": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"cps/cps": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"grams/dry weight": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"sediment 130um": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"((( null ))) ratio /// unitless": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"mm/m": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"mol_mol": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"mol/mol": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"r660_670": {
"id": "http://linked.earth/ontology/paleo_units#ratio",
"label": "ratio"
},
"si": {
"id": "http://linked.earth/ontology/paleo_units#SI",
"label": "SI"
},
"dimensionless (si system)": {
"id": "http://linked.earth/ontology/paleo_units#SI",
"label": "SI"
},
"10^-6si": {
"id": "http://linked.earth/ontology/paleo_units#SI",
"label": "SI"
},
"dimensionless (si)": {
"id": "http://linked.earth/ontology/paleo_units#SI",
"label": "SI"
},
"si 10^-5": {
"id": "http://linked.earth/ontology/paleo_units#SI",
"label": "SI"
},
"ug/cm2/yr": {
"id": "http://linked.earth/ontology/paleo_units#ug_cm2_yr",
"label": "ug/cm2/yr"
},
"ug_cm2_yr": {
"id": "http://linked.earth/ontology/paleo_units#ug_cm2_yr",
"label": "ug/cm2/yr"
},
"microgram per square centimeter per year": {
"id": "http://linked.earth/ontology/paleo_units#ug_cm2_yr",
"label": "ug/cm2/yr"
},
"ugcm-2yr-1": {
"id": "http://linked.earth/ontology/paleo_units#ug_cm2_yr",
"label": "ug/cm2/yr"
},
"ug/g": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"ug_g": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"microgram per gram": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"ug/g dry sediment": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"ug/g dry sed": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"ug g-1 dw": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"microg_g": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"[ug/g]": {
"id": "http://linked.earth/ontology/paleo_units#ug_g",
"label": "ug/g"
},
"um": {
"id": "http://linked.earth/ontology/paleo_units#um",
"label": "um"
},
"micrometer": {
"id": "http://linked.earth/ontology/paleo_units#um",
"label": "um"
},
"umol/mol": {
"id": "http://linked.earth/ontology/paleo_units#umol_mol",
"label": "umol/mol"
},
"umol_mol": {
"id": "http://linked.earth/ontology/paleo_units#umol_mol",
"label": "umol/mol"
},
"micromole per mole": {
"id": "http://linked.earth/ontology/paleo_units#umol_mol",
"label": "umol/mol"
},
"unitless": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"dimensionless": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"unitless index": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"index": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"type": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"absorbance units": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"ftirs absorbance units": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"name": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"uk37": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"unitless (anomalies)": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"pc": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"standardized": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"0-10": {
"id": "http://linked.earth/ontology/paleo_units#unitless",
"label": "unitless"
},
"yr 14c bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"yr_14c_bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"radiocarbon year before present": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"radiocarbon years bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"14c yr bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"yr 14c yr bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"bp14c": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"c14yr bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_14C_BP",
"label": "yr 14C BP"
},
"yr ad": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"yr_ad": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"year common era": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"yr": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"ce": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"ad": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"year ce": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"ad/bc": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"cal yr ad": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"year a.d.": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"year c.e.": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"yr ce": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"yrad/bc": {
"id": "http://linked.earth/ontology/paleo_units#yr_AD",
"label": "yr AD"
},
"yr b2k": {
"id": "http://linked.earth/ontology/paleo_units#yr_b2k",
"label": "yr b2k"
},
"yr_b2k": {
"id": "http://linked.earth/ontology/paleo_units#yr_b2k",
"label": "yr b2k"
},
"b2000": {
"id": "http://linked.earth/ontology/paleo_units#yr_b2k",
"label": "yr b2k"
},
"cal. bp2000": {
"id": "http://linked.earth/ontology/paleo_units#yr_b2k",
"label": "yr b2k"
},
"years before 2k": {
"id": "http://linked.earth/ontology/paleo_units#yr_b2k",
"label": "yr b2k"
},
"yr bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"yr_bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"calendar year before present": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"cal years bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"cal year bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"cal yr bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"year bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"years bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"yr b.p.": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"yrs bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"cal yr b.p.": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"age=1950-year": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"cal age bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"cal bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"cal yrs bp": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"yr bo": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"yr p": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"calibrated": {
"id": "http://linked.earth/ontology/paleo_units#yr_BP",
"label": "yr BP"
},
"yr ka": {
"id": "http://linked.earth/ontology/paleo_units#yr_ka",
"label": "yr ka"
},
"yr_ka": {
"id": "http://linked.earth/ontology/paleo_units#yr_ka",
"label": "yr ka"
},
"calendar kiloyear before present": {
"id": "http://linked.earth/ontology/paleo_units#yr_ka",
"label": "yr ka"
},
"ka": {
"id": "http://linked.earth/ontology/paleo_units#yr_ka",
"label": "yr ka"
},
"z score": {
"id": "http://linked.earth/ontology/paleo_units#z_score",
"label": "z score"
},
"z_score": {
"id": "http://linked.earth/ontology/paleo_units#z_score",
"label": "z score"
},
"standard deviation unit": {
"id": "http://linked.earth/ontology/paleo_units#z_score",
"label": "z score"
},
"zscore": {
"id": "http://linked.earth/ontology/paleo_units#z_score",
"label": "z score"
},
"sd units": {
"id": "http://linked.earth/ontology/paleo_units#z_score",
"label": "z score"
},
"std dev": {
"id": "http://linked.earth/ontology/paleo_units#z_score",
"label": "z score"
},
"sd": {
"id": "http://linked.earth/ontology/paleo_units#z_score",
"label": "z score"
}
}
},
"VARIABLES": {
"PaleoVariable": {
"acl": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"average chain length": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"acl (27-33)": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"acl25-35": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"acl27-31": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"aclc22-30": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"averagechainlength20to30": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"averagechainlength20to32": {
"id": "http://linked.earth/ontology/paleo_variables#ACL",
"label": "ACL"
},
"aet/pet": {
"id": "http://linked.earth/ontology/paleo_variables#AET_PET",
"label": "AET/PET"
},
"aet_pet": {
"id": "http://linked.earth/ontology/paleo_variables#AET_PET",
"label": "AET/PET"
},
"arm/irm": {
"id": "http://linked.earth/ontology/paleo_variables#ARM_IRM",
"label": "ARM/IRM"
},
"arm_irm": {
"id": "http://linked.earth/ontology/paleo_variables#ARM_IRM",
"label": "ARM/IRM"
},
"anhysteretic remanent magnetization/isothermal remanent magnetization": {
"id": "http://linked.earth/ontology/paleo_variables#ARM_IRM",
"label": "ARM/IRM"
},
"arstan": {
"id": "http://linked.earth/ontology/paleo_variables#ARSTAN",
"label": "ARSTAN"
},
"arstan chronology method": {
"id": "http://linked.earth/ontology/paleo_variables#ARSTAN",
"label": "ARSTAN"
},
"ars": {
"id": "http://linked.earth/ontology/paleo_variables#ARSTAN",
"label": "ARSTAN"
},
"al": {
"id": "http://linked.earth/ontology/paleo_variables#Al",
"label": "Al"
},
"aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#Al",
"label": "Al"
},
"al peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Al",
"label": "Al"
},
"alprop": {
"id": "http://linked.earth/ontology/paleo_variables#Al",
"label": "Al"
},
"al2o3": {
"id": "http://linked.earth/ontology/paleo_variables#Al2O3",
"label": "Al2O3"
},
"aluminum oxide": {
"id": "http://linked.earth/ontology/paleo_variables#Al2O3",
"label": "Al2O3"
},
"as": {
"id": "http://linked.earth/ontology/paleo_variables#As",
"label": "As"
},
"arsenic": {
"id": "http://linked.earth/ontology/paleo_variables#As",
"label": "As"
},
"ppm as": {
"id": "http://linked.earth/ontology/paleo_variables#As",
"label": "As"
},
"bit": {
"id": "http://linked.earth/ontology/paleo_variables#BIT",
"label": "BIT"
},
"branched and isoprenoid tetraether index": {
"id": "http://linked.earth/ontology/paleo_variables#BIT",
"label": "BIT"
},
"bitindex": {
"id": "http://linked.earth/ontology/paleo_variables#BIT",
"label": "BIT"
},
"bitindex-3pt": {
"id": "http://linked.earth/ontology/paleo_variables#BIT",
"label": "BIT"
},
"bsi": {
"id": "http://linked.earth/ontology/paleo_variables#BSi",
"label": "BSi"
},
"biogenic silica": {
"id": "http://linked.earth/ontology/paleo_variables#BSi",
"label": "BSi"
},
"biosi": {
"id": "http://linked.earth/ontology/paleo_variables#BSi",
"label": "BSi"
},
"bsi_3pt": {
"id": "http://linked.earth/ontology/paleo_variables#BSi",
"label": "BSi"
},
"bsi_raw": {
"id": "http://linked.earth/ontology/paleo_variables#BSi",
"label": "BSi"
},
"inferred bsi": {
"id": "http://linked.earth/ontology/paleo_variables#BSi",
"label": "BSi"
},
"ba": {
"id": "http://linked.earth/ontology/paleo_variables#Ba",
"label": "Ba"
},
"barium": {
"id": "http://linked.earth/ontology/paleo_variables#Ba",
"label": "Ba"
},
"ba (ppm)": {
"id": "http://linked.earth/ontology/paleo_variables#Ba",
"label": "Ba"
},
"ba peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Ba",
"label": "Ba"
},
"ppm ba": {
"id": "http://linked.earth/ontology/paleo_variables#Ba",
"label": "Ba"
},
"ba/al": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Al",
"label": "Ba/Al"
},
"ba_al": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Al",
"label": "Ba/Al"
},
"barium/aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Al",
"label": "Ba/Al"
},
"ppmba/%al": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Al",
"label": "Ba/Al"
},
"ba/ca": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Ca",
"label": "Ba/Ca"
},
"ba_ca": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Ca",
"label": "Ba/Ca"
},
"barium/calcium": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Ca",
"label": "Ba/Ca"
},
"baca": {
"id": "http://linked.earth/ontology/paleo_variables#Ba_Ca",
"label": "Ba/Ca"
},
"be": {
"id": "http://linked.earth/ontology/paleo_variables#Be",
"label": "Be"
},
"beryllium": {
"id": "http://linked.earth/ontology/paleo_variables#Be",
"label": "Be"
},
"ppm be": {
"id": "http://linked.earth/ontology/paleo_variables#Be",
"label": "Be"
},
"br": {
"id": "http://linked.earth/ontology/paleo_variables#Br",
"label": "Br"
},
"bromine": {
"id": "http://linked.earth/ontology/paleo_variables#Br",
"label": "Br"
},
"c20n-alkenoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20 sem": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20 n": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20sem": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c20n": {
"id": "http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid",
"label": "C20n-alkenoicAcid"
},
"c21n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C21n-alkanoicAcid",
"label": "C21n-alkanoicAcid"
},
"c21 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C21n-alkanoicAcid",
"label": "C21n-alkanoicAcid"
},
"c21 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C21n-alkanoicAcid",
"label": "C21n-alkanoicAcid"
},
"c21 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C21n-alkanoicAcid",
"label": "C21n-alkanoicAcid"
},
"c21fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C21n-alkanoicAcid",
"label": "C21n-alkanoicAcid"
},
"c22n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22 sem": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22 n": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22sem": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c22n": {
"id": "http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid",
"label": "C22n-alkanoicAcid"
},
"c23n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid",
"label": "C23n-alkanoicAcid"
},
"c23 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid",
"label": "C23n-alkanoicAcid"
},
"c23 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid",
"label": "C23n-alkanoicAcid"
},
"c23 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid",
"label": "C23n-alkanoicAcid"
},
"c23 n": {
"id": "http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid",
"label": "C23n-alkanoicAcid"
},
"c23c31": {
"id": "http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid",
"label": "C23n-alkanoicAcid"
},
"c23fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid",
"label": "C23n-alkanoicAcid"
},
"c24n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24 sem": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24 n": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24sem": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c24n": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"n c24": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"nc24": {
"id": "http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid",
"label": "C24n-alkanoicAcid"
},
"c25_2n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C25_2n-alkanoicAcid",
"label": "C25_2n-alkanoicAcid"
},
"c25:2 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C25_2n-alkanoicAcid",
"label": "C25_2n-alkanoicAcid"
},
"c25n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C25n-alkanoicAcid",
"label": "C25n-alkanoicAcid"
},
"c25 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C25n-alkanoicAcid",
"label": "C25n-alkanoicAcid"
},
"c25 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C25n-alkanoicAcid",
"label": "C25n-alkanoicAcid"
},
"c25 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C25n-alkanoicAcid",
"label": "C25n-alkanoicAcid"
},
"c25 n": {
"id": "http://linked.earth/ontology/paleo_variables#C25n-alkanoicAcid",
"label": "C25n-alkanoicAcid"
},
"c25fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C25n-alkanoicAcid",
"label": "C25n-alkanoicAcid"
},
"c26n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26 sem": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26 n": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26oh0x2f0x28c26oh0x2bc290x29": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26sem": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c26n": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"n c26": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"nc26": {
"id": "http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid",
"label": "C26n-alkanoicAcid"
},
"c27n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C27n-alkanoicAcid",
"label": "C27n-alkanoicAcid"
},
"c27 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C27n-alkanoicAcid",
"label": "C27n-alkanoicAcid"
},
"c27 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C27n-alkanoicAcid",
"label": "C27n-alkanoicAcid"
},
"c27 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C27n-alkanoicAcid",
"label": "C27n-alkanoicAcid"
},
"c27 n": {
"id": "http://linked.earth/ontology/paleo_variables#C27n-alkanoicAcid",
"label": "C27n-alkanoicAcid"
},
"c27fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C27n-alkanoicAcid",
"label": "C27n-alkanoicAcid"
},
"c28n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28 sem": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28 n": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28sem": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c28n": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"n c28": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"n-c28": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"nc28": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"nc28_err": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"nc28_rep": {
"id": "http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid",
"label": "C28n-alkanoicAcid"
},
"c29n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C29n-alkanoicAcid",
"label": "C29n-alkanoicAcid"
},
"c29 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C29n-alkanoicAcid",
"label": "C29n-alkanoicAcid"
},
"c29 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C29n-alkanoicAcid",
"label": "C29n-alkanoicAcid"
},
"c29 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C29n-alkanoicAcid",
"label": "C29n-alkanoicAcid"
},
"c29 n": {
"id": "http://linked.earth/ontology/paleo_variables#C29n-alkanoicAcid",
"label": "C29n-alkanoicAcid"
},
"c29fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C29n-alkanoicAcid",
"label": "C29n-alkanoicAcid"
},
"c30n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30 fame concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30 sem": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30 n": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30sem": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c30n": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"nc30_rep": {
"id": "http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid",
"label": "C30n-alkanoicAcid"
},
"c31n-alkanoicacid": {
"id": "http://linked.earth/ontology/paleo_variables#C31n-alkanoicAcid",
"label": "C31n-alkanoicAcid"
},
"c31 n-alkanoic acid": {
"id": "http://linked.earth/ontology/paleo_variables#C31n-alkanoicAcid",
"label": "C31n-alkanoicAcid"
},
"c31 concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C31n-alkanoicAcid",
"label": "C31n-alkanoicAcid"
},
"c31fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C31n-alkanoicAcid",
"label": "C31n-alkanoicAcid"
},
"c32fameconcentration": {
"id": "http://linked.earth/ontology/paleo_variables#C31n-alkanoicAcid",
"label": "C31n-alkanoicAcid"
},
"c37alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37Alkenone",
"label": "C37Alkenone"
},
"c37 alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37Alkenone",
"label": "C37Alkenone"
},
"c37.concentration": {
"id": "http://linked.earth/ontology/paleo_variables#C37Alkenone",
"label": "C37Alkenone"
},
"totalc37": {
"id": "http://linked.earth/ontology/paleo_variables#C37Alkenone",
"label": "C37Alkenone"
},
"c37:2alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_2Alkenone",
"label": "C37:2Alkenone"
},
"c37_2alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_2Alkenone",
"label": "C37:2Alkenone"
},
"c37:2 alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_2Alkenone",
"label": "C37:2Alkenone"
},
"c37:2": {
"id": "http://linked.earth/ontology/paleo_variables#C37_2Alkenone",
"label": "C37:2Alkenone"
},
"c37:3aalkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_3aAlkenone",
"label": "C37:3aAlkenone"
},
"c37_3aalkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_3aAlkenone",
"label": "C37:3aAlkenone"
},
"c37:3 alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_3bAlkenone",
"label": "C37:3bAlkenone"
},
"c37:3a": {
"id": "http://linked.earth/ontology/paleo_variables#C37_3aAlkenone",
"label": "C37:3aAlkenone"
},
"c37:3balkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_3bAlkenone",
"label": "C37:3bAlkenone"
},
"c37_3balkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_3bAlkenone",
"label": "C37:3bAlkenone"
},
"c37:3b": {
"id": "http://linked.earth/ontology/paleo_variables#C37_3bAlkenone",
"label": "C37:3bAlkenone"
},
"c37:4alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_4Alkenone",
"label": "C37:4Alkenone"
},
"c37_4alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_4Alkenone",
"label": "C37:4Alkenone"
},
"c37:4 alkenone": {
"id": "http://linked.earth/ontology/paleo_variables#C37_4Alkenone",
"label": "C37:4Alkenone"
},
"c34:4": {
"id": "http://linked.earth/ontology/paleo_variables#C37_4Alkenone",
"label": "C37:4Alkenone"
},
"c370x3a4": {
"id": "http://linked.earth/ontology/paleo_variables#C37_4Alkenone",
"label": "C37:4Alkenone"
},
"cbt": {
"id": "http://linked.earth/ontology/paleo_variables#CBT",
"label": "CBT"
},
"cyclization index of branched tetraethers": {
"id": "http://linked.earth/ontology/paleo_variables#CBT",
"label": "CBT"
},
"cca1": {
"id": "http://linked.earth/ontology/paleo_variables#CCA1",
"label": "CCA1"
},
"multivariate eigenvector-based variable": {
"id": "http://linked.earth/ontology/paleo_variables#CCA2",
"label": "CCA2"
},
"caaxis1": {
"id": "http://linked.earth/ontology/paleo_variables#CCA1",
"label": "CCA1"
},
"cca2": {
"id": "http://linked.earth/ontology/paleo_variables#CCA2",
"label": "CCA2"
},
"caaxis2": {
"id": "http://linked.earth/ontology/paleo_variables#CCA2",
"label": "CCA2"
},
"cpi": {
"id": "http://linked.earth/ontology/paleo_variables#CPI",
"label": "CPI"
},
"carbon preference index": {
"id": "http://linked.earth/ontology/paleo_variables#CPI",
"label": "CPI"
},
"cpi (27-33)": {
"id": "http://linked.earth/ontology/paleo_variables#CPI",
"label": "CPI"
},
"cpi22-30": {
"id": "http://linked.earth/ontology/paleo_variables#CPI",
"label": "CPI"
},
"cpi_25-33": {
"id": "http://linked.earth/ontology/paleo_variables#CPI",
"label": "CPI"
},
"carbonpreferenceindex20to30": {
"id": "http://linked.earth/ontology/paleo_variables#CPI",
"label": "CPI"
},
"carbonpreferenceindex20to32": {
"id": "http://linked.earth/ontology/paleo_variables#CPI",
"label": "CPI"
},
"c/n": {
"id": "http://linked.earth/ontology/paleo_variables#C_N",
"label": "C/N"
},
"c_n": {
"id": "http://linked.earth/ontology/paleo_variables#C_N",
"label": "C/N"
},
"carbon/nitrogen": {
"id": "http://linked.earth/ontology/paleo_variables#C_N",
"label": "C/N"
},
"c/n organic": {
"id": "http://linked.earth/ontology/paleo_variables#C_N",
"label": "C/N"
},
"molarcn": {
"id": "http://linked.earth/ontology/paleo_variables#C_N",
"label": "C/N"
},
"ca": {
"id": "http://linked.earth/ontology/paleo_variables#Ca",
"label": "Ca"
},
"calcium": {
"id": "http://linked.earth/ontology/paleo_variables#Ca",
"label": "Ca"
},
"% ca-detr": {
"id": "http://linked.earth/ontology/paleo_variables#Ca",
"label": "Ca"
},
"% ca-ex": {
"id": "http://linked.earth/ontology/paleo_variables#Ca",
"label": "Ca"
},
"ca peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Ca",
"label": "Ca"
},
"caprop": {
"id": "http://linked.earth/ontology/paleo_variables#Ca",
"label": "Ca"
},
"ca__": {
"id": "http://linked.earth/ontology/paleo_variables#Ca",
"label": "Ca"
},
"caco3": {
"id": "http://linked.earth/ontology/paleo_variables#CaCO3",
"label": "CaCO3"
},
"calcium carbonate": {
"id": "http://linked.earth/ontology/paleo_variables#CaCO3",
"label": "CaCO3"
},
"% caco3-ex": {
"id": "http://linked.earth/ontology/paleo_variables#CaCO3",
"label": "CaCO3"
},
"caco3-ic": {
"id": "http://linked.earth/ontology/paleo_variables#CaCO3",
"label": "CaCO3"
},
"cao": {
"id": "http://linked.earth/ontology/paleo_variables#CaO",
"label": "CaO"
},
"calcium oxide": {
"id": "http://linked.earth/ontology/paleo_variables#CaO",
"label": "CaO"
},
"ca/k": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_K",
"label": "Ca/K"
},
"ca_k": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_K",
"label": "Ca/K"
},
"calcium/potassium": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_K",
"label": "Ca/K"
},
"ca/sr": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_Sr",
"label": "Ca/Sr"
},
"ca_sr": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_Sr",
"label": "Ca/Sr"
},
"calcium/strontium": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_Sr",
"label": "Ca/Sr"
},
"ca/ti": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_Ti",
"label": "Ca/Ti"
},
"ca_ti": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_Ti",
"label": "Ca/Ti"
},
"calcium/titanium": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_Ti",
"label": "Ca/Ti"
},
"ca/ti-z": {
"id": "http://linked.earth/ontology/paleo_variables#Ca_Ti",
"label": "Ca/Ti"
},
"ti/ca": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Ca",
"label": "Ti/Ca"
},
"cd": {
"id": "http://linked.earth/ontology/paleo_variables#Cd",
"label": "Cd"
},
"cadmium": {
"id": "http://linked.earth/ontology/paleo_variables#Cd",
"label": "Cd"
},
"cd mar (ug/cm2/ky)": {
"id": "http://linked.earth/ontology/paleo_variables#Cd",
"label": "Cd"
},
"ppm cd": {
"id": "http://linked.earth/ontology/paleo_variables#Cd",
"label": "Cd"
},
"cd/mn": {
"id": "http://linked.earth/ontology/paleo_variables#Cd_Mn",
"label": "Cd/Mn"
},
"cd_mn": {
"id": "http://linked.earth/ontology/paleo_variables#Cd_Mn",
"label": "Cd/Mn"
},
"ppm cd/% mn": {
"id": "http://linked.earth/ontology/paleo_variables#Cd_Mn",
"label": "Cd/Mn"
},
"cl": {
"id": "http://linked.earth/ontology/paleo_variables#Cl",
"label": "Cl"
},
"chlorine": {
"id": "http://linked.earth/ontology/paleo_variables#Cl",
"label": "Cl"
},
"cl_": {
"id": "http://linked.earth/ontology/paleo_variables#Cl",
"label": "Cl"
},
"co": {
"id": "http://linked.earth/ontology/paleo_variables#Co",
"label": "Co"
},
"cobalt": {
"id": "http://linked.earth/ontology/paleo_variables#Co",
"label": "Co"
},
"ppm co": {
"id": "http://linked.earth/ontology/paleo_variables#Co",
"label": "Co"
},
"cr": {
"id": "http://linked.earth/ontology/paleo_variables#Cr",
"label": "Cr"
},
"chromium": {
"id": "http://linked.earth/ontology/paleo_variables#Cr",
"label": "Cr"
},
"ppm cr": {
"id": "http://linked.earth/ontology/paleo_variables#Cr",
"label": "Cr"
},
"cu": {
"id": "http://linked.earth/ontology/paleo_variables#Cu",
"label": "Cu"
},
"copper": {
"id": "http://linked.earth/ontology/paleo_variables#Cu",
"label": "Cu"
},
"ppm cu": {
"id": "http://linked.earth/ontology/paleo_variables#Cu",
"label": "Cu"
},
"dwhi": {
"id": "http://linked.earth/ontology/paleo_variables#DWHI",
"label": "DWHI"
},
"ecosystem index": {
"id": "http://linked.earth/ontology/paleo_variables#DWHI",
"label": "DWHI"
},
"dd2h": {
"id": "http://linked.earth/ontology/paleo_variables#Dd2H",
"label": "Dd2H"
},
"\u03B4\u03B4dterr-aq": {
"id": "http://linked.earth/ontology/paleo_variables#Dd2H",
"label": "Dd2H"
},
"eps": {
"id": "http://linked.earth/ontology/paleo_variables#EPS",
"label": "EPS"
},
"expressed population signal": {
"id": "http://linked.earth/ontology/paleo_variables#EPS",
"label": "EPS"
},
"elninoevent": {
"id": "http://linked.earth/ontology/paleo_variables#ElNinoEvent",
"label": "ElNinoEvent"
},
"el ni\xF1o event": {
"id": "http://linked.earth/ontology/paleo_variables#ElNinoEvent",
"label": "ElNinoEvent"
},
"enso_events": {
"id": "http://linked.earth/ontology/paleo_variables#ElNinoEvent",
"label": "ElNinoEvent"
},
"eu/zr": {
"id": "http://linked.earth/ontology/paleo_variables#Eu_Zr",
"label": "Eu/Zr"
},
"eu_zr": {
"id": "http://linked.earth/ontology/paleo_variables#Eu_Zr",
"label": "Eu/Zr"
},
"eu/zr-z": {
"id": "http://linked.earth/ontology/paleo_variables#Eu_Zr",
"label": "Eu/Zr"
},
"fe": {
"id": "http://linked.earth/ontology/paleo_variables#Fe",
"label": "Fe"
},
"iron": {
"id": "http://linked.earth/ontology/paleo_variables#Fe",
"label": "Fe"
},
"fe peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Fe",
"label": "Fe"
},
"feprop": {
"id": "http://linked.earth/ontology/paleo_variables#Fe",
"label": "Fe"
},
"fe2o3": {
"id": "http://linked.earth/ontology/paleo_variables#Fe2O3",
"label": "Fe2O3"
},
"iron(iii) oxide": {
"id": "http://linked.earth/ontology/paleo_variables#Fe2O3",
"label": "Fe2O3"
},
"fe/al": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Al",
"label": "Fe/Al"
},
"fe_al": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Al",
"label": "Fe/Al"
},
"iron/aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Al",
"label": "Fe/Al"
},
"fe/ca": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Ca",
"label": "Fe/Ca"
},
"fe_ca": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Ca",
"label": "Fe/Ca"
},
"iron/calcium": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Ca",
"label": "Fe/Ca"
},
"ln(fe/ca)": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Ca",
"label": "Fe/Ca"
},
"fe/k": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_K",
"label": "Fe/K"
},
"fe_k": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_K",
"label": "Fe/K"
},
"iron/potassium": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_K",
"label": "Fe/K"
},
"fe/mn": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Mn",
"label": "Fe/Mn"
},
"fe_mn": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Mn",
"label": "Fe/Mn"
},
"iron/manganese": {
"id": "http://linked.earth/ontology/paleo_variables#Fe_Mn",
"label": "Fe/Mn"
},
"gdgt": {
"id": "http://linked.earth/ontology/paleo_variables#GDGT",
"label": "GDGT"
},
"glycerol dialkyl glycerol tetraether": {
"id": "http://linked.earth/ontology/paleo_variables#GDGT",
"label": "GDGT"
},
"brgdgt": {
"id": "http://linked.earth/ontology/paleo_variables#GDGT",
"label": "GDGT"
},
"gdgt-0/cren": {
"id": "http://linked.earth/ontology/paleo_variables#GDGT-0_Cren",
"label": "GDGT-0/Cren"
},
"gdgt-0_cren": {
"id": "http://linked.earth/ontology/paleo_variables#GDGT-0_Cren",
"label": "GDGT-0/Cren"
},
"ip25": {
"id": "http://linked.earth/ontology/paleo_variables#IP25",
"label": "IP25"
},
"ice proxy with 25 carbon atoms": {
"id": "http://linked.earth/ontology/paleo_variables#IP25",
"label": "IP25"
},
"ip25_flux": {
"id": "http://linked.earth/ontology/paleo_variables#IP25",
"label": "IP25"
},
"irm": {
"id": "http://linked.earth/ontology/paleo_variables#IRM",
"label": "IRM"
},
"isothermal remanent magnetization": {
"id": "http://linked.earth/ontology/paleo_variables#IRM",
"label": "IRM"
},
"irm_softflux": {
"id": "http://linked.earth/ontology/paleo_variables#IRM",
"label": "IRM"
},
"itcz": {
"id": "http://linked.earth/ontology/paleo_variables#ITCZ",
"label": "ITCZ"
},
"intertropical convergence zone index": {
"id": "http://linked.earth/ontology/paleo_variables#ITCZ",
"label": "ITCZ"
},
"itcz_index": {
"id": "http://linked.earth/ontology/paleo_variables#ITCZ",
"label": "ITCZ"
},
"julianday": {
"id": "http://linked.earth/ontology/paleo_variables#JulianDay",
"label": "JulianDay"
},
"k2o": {
"id": "http://linked.earth/ontology/paleo_variables#K2O",
"label": "K2O"
},
"potassium oxide": {
"id": "http://linked.earth/ontology/paleo_variables#K2O",
"label": "K2O"
},
"k37": {
"id": "http://linked.earth/ontology/paleo_variables#K37",
"label": "K37"
},
"k37s": {
"id": "http://linked.earth/ontology/paleo_variables#K37",
"label": "K37"
},
"k/al": {
"id": "http://linked.earth/ontology/paleo_variables#K_Al",
"label": "K/Al"
},
"k_al": {
"id": "http://linked.earth/ontology/paleo_variables#K_Al",
"label": "K/Al"
},
"potassium/aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#K_Al",
"label": "K/Al"
},
"ln(k/al)": {
"id": "http://linked.earth/ontology/paleo_variables#K_Al",
"label": "K/Al"
},
"ldi": {
"id": "http://linked.earth/ontology/paleo_variables#LDI",
"label": "LDI"
},
"long-chain diol index": {
"id": "http://linked.earth/ontology/paleo_variables#LDI",
"label": "LDI"
},
"loi": {
"id": "http://linked.earth/ontology/paleo_variables#LOI",
"label": "LOI"
},
"loss on ignition": {
"id": "http://linked.earth/ontology/paleo_variables#LOI",
"label": "LOI"
},
"la": {
"id": "http://linked.earth/ontology/paleo_variables#La",
"label": "La"
},
"lanthanum": {
"id": "http://linked.earth/ontology/paleo_variables#La",
"label": "La"
},
"ppm la": {
"id": "http://linked.earth/ontology/paleo_variables#La",
"label": "La"
},
"mar": {
"id": "http://linked.earth/ontology/paleo_variables#MAR",
"label": "MAR"
},
"mass per area per time unit": {
"id": "http://linked.earth/ontology/paleo_variables#MAR",
"label": "MAR"
},
"bulk mar": {
"id": "http://linked.earth/ontology/paleo_variables#MAR",
"label": "MAR"
},
"cordmar": {
"id": "http://linked.earth/ontology/paleo_variables#MAR",
"label": "MAR"
},
"mo mar (ug/cm2/ky)": {
"id": "http://linked.earth/ontology/paleo_variables#MAR",
"label": "MAR"
},
"bulkmar": {
"id": "http://linked.earth/ontology/paleo_variables#MAR",
"label": "MAR"
},
"massacum": {
"id": "http://linked.earth/ontology/paleo_variables#MAR",
"label": "MAR"
},
"mbt": {
"id": "http://linked.earth/ontology/paleo_variables#MBT",
"label": "MBT"
},
"methylation index of branched tetraethers": {
"id": "http://linked.earth/ontology/paleo_variables#MBT",
"label": "MBT"
},
"mbt\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#MBT",
"label": "MBT"
},
"mbt\u20195me": {
"id": "http://linked.earth/ontology/paleo_variables#MBT",
"label": "MBT"
},
"ms": {
"id": "http://linked.earth/ontology/paleo_variables#MS",
"label": "MS"
},
"magnetic susceptibility": {
"id": "http://linked.earth/ontology/paleo_variables#MS",
"label": "MS"
},
"avg_ms_drs1_2a_3_2b_4": {
"id": "http://linked.earth/ontology/paleo_variables#MS",
"label": "MS"
},
"avg_ms": {
"id": "http://linked.earth/ontology/paleo_variables#MS",
"label": "MS"
},
"massmagsus": {
"id": "http://linked.earth/ontology/paleo_variables#MS",
"label": "MS"
},
"si": {
"id": "http://linked.earth/ontology/paleo_variables#Si",
"label": "Si"
},
"mxd": {
"id": "http://linked.earth/ontology/paleo_variables#MXD",
"label": "MXD"
},
"latewood density": {
"id": "http://linked.earth/ontology/paleo_variables#MXD",
"label": "MXD"
},
"mg": {
"id": "http://linked.earth/ontology/paleo_variables#Mg",
"label": "Mg"
},
"magnesium": {
"id": "http://linked.earth/ontology/paleo_variables#Mg",
"label": "Mg"
},
"% mg": {
"id": "http://linked.earth/ontology/paleo_variables#Mg",
"label": "Mg"
},
"%mg": {
"id": "http://linked.earth/ontology/paleo_variables#Mg",
"label": "Mg"
},
"mgdetrended": {
"id": "http://linked.earth/ontology/paleo_variables#Mg",
"label": "Mg"
},
"mg__": {
"id": "http://linked.earth/ontology/paleo_variables#Mg",
"label": "Mg"
},
"detrendmg": {
"id": "http://linked.earth/ontology/paleo_variables#Mg",
"label": "Mg"
},
"mgo": {
"id": "http://linked.earth/ontology/paleo_variables#MgO",
"label": "MgO"
},
"magnesium oxide": {
"id": "http://linked.earth/ontology/paleo_variables#MgO",
"label": "MgO"
},
"mg/ca": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mg_ca": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"magnesium/calcium": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"cdr3_mgca": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mg/ca raw": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"ndutertreimg/ca": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_bulloides": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_crassaformis": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_dutertrei": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_inflata": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_obliquiloculata": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_pachyderma": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_pachyderma_d": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_ruber": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_ruber_lato": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_ruber_pink": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_ruber_stricto": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_sacculifer": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mgca_truncatulinoides": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"planktic.mgca": {
"id": "http://linked.earth/ontology/paleo_variables#Mg_Ca",
"label": "Mg/Ca"
},
"mn": {
"id": "http://linked.earth/ontology/paleo_variables#Mn",
"label": "Mn"
},
"manganese": {
"id": "http://linked.earth/ontology/paleo_variables#Mn",
"label": "Mn"
},
"% mn": {
"id": "http://linked.earth/ontology/paleo_variables#Mn",
"label": "Mn"
},
"ppm mn": {
"id": "http://linked.earth/ontology/paleo_variables#Mn",
"label": "Mn"
},
"mno": {
"id": "http://linked.earth/ontology/paleo_variables#MnO",
"label": "MnO"
},
"manganese oxide": {
"id": "http://linked.earth/ontology/paleo_variables#MnO",
"label": "MnO"
},
"mn/fe": {
"id": "http://linked.earth/ontology/paleo_variables#Mn_Fe",
"label": "Mn/Fe"
},
"mn_fe": {
"id": "http://linked.earth/ontology/paleo_variables#Mn_Fe",
"label": "Mn/Fe"
},
"manganese/iron": {
"id": "http://linked.earth/ontology/paleo_variables#Mn_Fe",
"label": "Mn/Fe"
},
"mn/mo": {
"id": "http://linked.earth/ontology/paleo_variables#Mn_Mo",
"label": "Mn/Mo"
},
"mn_mo": {
"id": "http://linked.earth/ontology/paleo_variables#Mn_Mo",
"label": "Mn/Mo"
},
"mo": {
"id": "http://linked.earth/ontology/paleo_variables#Mo",
"label": "Mo"
},
"molybdenum": {
"id": "http://linked.earth/ontology/paleo_variables#Mo",
"label": "Mo"
},
"mo_xs": {
"id": "http://linked.earth/ontology/paleo_variables#Mo",
"label": "Mo"
},
"ppm mo": {
"id": "http://linked.earth/ontology/paleo_variables#Mo",
"label": "Mo"
},
"no3": {
"id": "http://linked.earth/ontology/paleo_variables#NO3",
"label": "NO3"
},
"nitrate": {
"id": "http://linked.earth/ontology/paleo_variables#nitrate",
"label": "nitrate"
},
"no3_": {
"id": "http://linked.earth/ontology/paleo_variables#NO3",
"label": "NO3"
},
"n/c": {
"id": "http://linked.earth/ontology/paleo_variables#N_C",
"label": "N/C"
},
"n_c": {
"id": "http://linked.earth/ontology/paleo_variables#N_C",
"label": "N/C"
},
"nc": {
"id": "http://linked.earth/ontology/paleo_variables#N_C",
"label": "N/C"
},
"na2o": {
"id": "http://linked.earth/ontology/paleo_variables#Na2O",
"label": "Na2O"
},
"sodium oxide": {
"id": "http://linked.earth/ontology/paleo_variables#Na2O",
"label": "Na2O"
},
"ni": {
"id": "http://linked.earth/ontology/paleo_variables#Ni",
"label": "Ni"
},
"nickel": {
"id": "http://linked.earth/ontology/paleo_variables#Ni",
"label": "Ni"
},
"ppm ni": {
"id": "http://linked.earth/ontology/paleo_variables#Ni",
"label": "Ni"
},
"pc1": {
"id": "http://linked.earth/ontology/paleo_variables#PC1",
"label": "PC1"
},
"empirical orthogonal function": {
"id": "http://linked.earth/ontology/paleo_variables#PC3",
"label": "PC3"
},
"p1": {
"id": "http://linked.earth/ontology/paleo_variables#PC1",
"label": "PC1"
},
"pc1gs": {
"id": "http://linked.earth/ontology/paleo_variables#PC1",
"label": "PC1"
},
"pca1": {
"id": "http://linked.earth/ontology/paleo_variables#PC1",
"label": "PC1"
},
"droughtindex (pc1)": {
"id": "http://linked.earth/ontology/paleo_variables#PC1",
"label": "PC1"
},
"pc2": {
"id": "http://linked.earth/ontology/paleo_variables#PC2",
"label": "PC2"
},
"pca2": {
"id": "http://linked.earth/ontology/paleo_variables#PC2",
"label": "PC2"
},
"pc3": {
"id": "http://linked.earth/ontology/paleo_variables#PC3",
"label": "PC3"
},
"paq": {
"id": "http://linked.earth/ontology/paleo_variables#Paq",
"label": "Paq"
},
"p-aqueous": {
"id": "http://linked.earth/ontology/paleo_variables#Paq",
"label": "Paq"
},
"pb": {
"id": "http://linked.earth/ontology/paleo_variables#Pb",
"label": "Pb"
},
"lead": {
"id": "http://linked.earth/ontology/paleo_variables#Pb",
"label": "Pb"
},
"ppm pb": {
"id": "http://linked.earth/ontology/paleo_variables#Pb",
"label": "Pb"
},
"picea/artemisia": {
"id": "http://linked.earth/ontology/paleo_variables#Picea_Artemisia",
"label": "Picea/Artemisia"
},
"picea_artemisia": {
"id": "http://linked.earth/ontology/paleo_variables#Picea_Artemisia",
"label": "Picea/Artemisia"
},
"picea/artemesia": {
"id": "http://linked.earth/ontology/paleo_variables#Picea_Artemisia",
"label": "Picea/Artemisia"
},
"picea/pinus": {
"id": "http://linked.earth/ontology/paleo_variables#Picea_Pinus",
"label": "Picea/Pinus"
},
"picea_pinus": {
"id": "http://linked.earth/ontology/paleo_variables#Picea_Pinus",
"label": "Picea/Pinus"
},
"pinus/artemisia": {
"id": "http://linked.earth/ontology/paleo_variables#Pinus_Artemisia",
"label": "Pinus/Artemisia"
},
"pinus_artemisia": {
"id": "http://linked.earth/ontology/paleo_variables#Pinus_Artemisia",
"label": "Pinus/Artemisia"
},
"poaceae/ephedra": {
"id": "http://linked.earth/ontology/paleo_variables#Poaceae_Ephedra",
"label": "Poaceae/Ephedra"
},
"poaceae_ephedra": {
"id": "http://linked.earth/ontology/paleo_variables#Poaceae_Ephedra",
"label": "Poaceae/Ephedra"
},
"r570/r630": {
"id": "http://linked.earth/ontology/paleo_variables#R570_R630",
"label": "R570/R630"
},
"r570_r630": {
"id": "http://linked.earth/ontology/paleo_variables#R570_R630",
"label": "R570/R630"
},
"r570_630": {
"id": "http://linked.earth/ontology/paleo_variables#R570_R630",
"label": "R570/R630"
},
"r650/r700": {
"id": "http://linked.earth/ontology/paleo_variables#R650_R700",
"label": "R650/R700"
},
"r650_r700": {
"id": "http://linked.earth/ontology/paleo_variables#R650_R700",
"label": "R650/R700"
},
"r650_700": {
"id": "http://linked.earth/ontology/paleo_variables#R650_R700",
"label": "R650/R700"
},
"rabd660670": {
"id": "http://linked.earth/ontology/paleo_variables#RABD660670",
"label": "RABD660670"
},
"r660_670": {
"id": "http://linked.earth/ontology/paleo_variables#RABD660670",
"label": "RABD660670"
},
"rabd660;670 index": {
"id": "http://linked.earth/ontology/paleo_variables#RABD660670",
"label": "RABD660670"
},
"rabd660_670": {
"id": "http://linked.earth/ontology/paleo_variables#RABD660670",
"label": "RABD660670"
},
"ran15": {
"id": "http://linked.earth/ontology/paleo_variables#RAN15",
"label": "RAN15"
},
"organic compound index": {
"id": "http://linked.earth/ontology/paleo_variables#RAN15",
"label": "RAN15"
},
"rbar": {
"id": "http://linked.earth/ontology/paleo_variables#RBAR",
"label": "RBAR"
},
"average correlation coefficient": {
"id": "http://linked.earth/ontology/paleo_variables#RBAR",
"label": "RBAR"
},
"rb": {
"id": "http://linked.earth/ontology/paleo_variables#Rb",
"label": "Rb"
},
"rubidium": {
"id": "http://linked.earth/ontology/paleo_variables#Rb",
"label": "Rb"
},
"rb peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Rb",
"label": "Rb"
},
"rb87/sr86": {
"id": "http://linked.earth/ontology/paleo_variables#Rb87_Sr86",
"label": "Rb87/Sr86"
},
"rb87_sr86": {
"id": "http://linked.earth/ontology/paleo_variables#Rb87_Sr86",
"label": "Rb87/Sr86"
},
"87rb/86sr": {
"id": "http://linked.earth/ontology/paleo_variables#Rb87_Sr86",
"label": "Rb87/Sr86"
},
"rb/sr": {
"id": "http://linked.earth/ontology/paleo_variables#Rb87_Sr86",
"label": "Rb87/Sr86"
},
"so4": {
"id": "http://linked.earth/ontology/paleo_variables#SO4",
"label": "SO4"
},
"sulfate": {
"id": "http://linked.earth/ontology/paleo_variables#sulfate",
"label": "sulfate"
},
"so4__": {
"id": "http://linked.earth/ontology/paleo_variables#SO4",
"label": "SO4"
},
"sss": {
"id": "http://linked.earth/ontology/paleo_variables#salinity",
"label": "salinity"
},
"sc": {
"id": "http://linked.earth/ontology/paleo_variables#Sc",
"label": "Sc"
},
"scandium": {
"id": "http://linked.earth/ontology/paleo_variables#Sc",
"label": "Sc"
},
"ppm sc": {
"id": "http://linked.earth/ontology/paleo_variables#Sc",
"label": "Sc"
},
"silicon": {
"id": "http://linked.earth/ontology/paleo_variables#Si",
"label": "Si"
},
"si peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Si",
"label": "Si"
},
"siprop": {
"id": "http://linked.earth/ontology/paleo_variables#Si",
"label": "Si"
},
"norm silicon": {
"id": "http://linked.earth/ontology/paleo_variables#Si",
"label": "Si"
},
"si/al": {
"id": "http://linked.earth/ontology/paleo_variables#Si_Al",
"label": "Si/Al"
},
"si_al": {
"id": "http://linked.earth/ontology/paleo_variables#Si_Al",
"label": "Si/Al"
},
"silicon/aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#Si_Ti",
"label": "Si/Ti"
},
"si/ti": {
"id": "http://linked.earth/ontology/paleo_variables#Si_Ti",
"label": "Si/Ti"
},
"si_ti": {
"id": "http://linked.earth/ontology/paleo_variables#Si_Ti",
"label": "Si/Ti"
},
"norm si/ti": {
"id": "http://linked.earth/ontology/paleo_variables#Si_Ti",
"label": "Si/Ti"
},
"sr": {
"id": "http://linked.earth/ontology/paleo_variables#Sr",
"label": "Sr"
},
"strontium": {
"id": "http://linked.earth/ontology/paleo_variables#Sr",
"label": "Sr"
},
"sr (ppm)": {
"id": "http://linked.earth/ontology/paleo_variables#Sr",
"label": "Sr"
},
"sr peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Sr",
"label": "Sr"
},
"ppm sr": {
"id": "http://linked.earth/ontology/paleo_variables#Sr",
"label": "Sr"
},
"sr/ca": {
"id": "http://linked.earth/ontology/paleo_variables#Sr_Ca",
"label": "Sr/Ca"
},
"sr_ca": {
"id": "http://linked.earth/ontology/paleo_variables#Sr_Ca",
"label": "Sr/Ca"
},
"strontium/calcium": {
"id": "http://linked.earth/ontology/paleo_variables#Sr_Ca",
"label": "Sr/Ca"
},
"cdr3_srca": {
"id": "http://linked.earth/ontology/paleo_variables#Sr_Ca",
"label": "Sr/Ca"
},
"srca": {
"id": "http://linked.earth/ontology/paleo_variables#Sr_Ca",
"label": "Sr/Ca"
},
"srca_annual": {
"id": "http://linked.earth/ontology/paleo_variables#Sr_Ca",
"label": "Sr/Ca"
},
"wr11_srca": {
"id": "http://linked.earth/ontology/paleo_variables#Sr_Ca",
"label": "Sr/Ca"
},
"tds": {
"id": "http://linked.earth/ontology/paleo_variables#TDS",
"label": "TDS"
},
"total dissolved solids": {
"id": "http://linked.earth/ontology/paleo_variables#TDS",
"label": "TDS"
},
"tex86": {
"id": "http://linked.earth/ontology/paleo_variables#TEX86",
"label": "TEX86"
},
"tetraether index of 86 carbon atoms": {
"id": "http://linked.earth/ontology/paleo_variables#TEX86",
"label": "TEX86"
},
"tex86l": {
"id": "http://linked.earth/ontology/paleo_variables#TEX86",
"label": "TEX86"
},
"tic": {
"id": "http://linked.earth/ontology/paleo_variables#TIC",
"label": "TIC"
},
"inorganic carbon": {
"id": "http://linked.earth/ontology/paleo_variables#TIC",
"label": "TIC"
},
"% ic": {
"id": "http://linked.earth/ontology/paleo_variables#TIC",
"label": "TIC"
},
"toc": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"organic carbon": {
"id": "http://linked.earth/ontology/paleo_variables#organicCarbon",
"label": "organicCarbon"
},
"% oc": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"% organic carbon": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"corg": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"oc-mar (g)": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"oc-mar (mg)": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"organic carbon concentration": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"toc_flux": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"tocmg": {
"id": "http://linked.earth/ontology/paleo_variables#TOC",
"label": "TOC"
},
"toc/tn": {
"id": "http://linked.earth/ontology/paleo_variables#TOC_TN",
"label": "TOC/TN"
},
"toc_tn": {
"id": "http://linked.earth/ontology/paleo_variables#TOC_TN",
"label": "TOC/TN"
},
"ti": {
"id": "http://linked.earth/ontology/paleo_variables#Ti",
"label": "Ti"
},
"titanium": {
"id": "http://linked.earth/ontology/paleo_variables#Ti",
"label": "Ti"
},
"% ti": {
"id": "http://linked.earth/ontology/paleo_variables#Ti",
"label": "Ti"
},
"%ti": {
"id": "http://linked.earth/ontology/paleo_variables#Ti",
"label": "Ti"
},
"ti peak area": {
"id": "http://linked.earth/ontology/paleo_variables#Ti",
"label": "Ti"
},
"tiprop": {
"id": "http://linked.earth/ontology/paleo_variables#Ti",
"label": "Ti"
},
"tiash": {
"id": "http://linked.earth/ontology/paleo_variables#Ti",
"label": "Ti"
},
"tio2": {
"id": "http://linked.earth/ontology/paleo_variables#TiO2",
"label": "TiO2"
},
"titanium dioxide": {
"id": "http://linked.earth/ontology/paleo_variables#TiO2",
"label": "TiO2"
},
"ti/al": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Al",
"label": "Ti/Al"
},
"ti_al": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Al",
"label": "Ti/Al"
},
"titanium/aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Al",
"label": "Ti/Al"
},
"ti_ca": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Ca",
"label": "Ti/Ca"
},
"titanium/calcium": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Ca",
"label": "Ti/Ca"
},
"ln(ti/ca)": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Ca",
"label": "Ti/Ca"
},
"log(ti/ca)": {
"id": "http://linked.earth/ontology/paleo_variables#Ti_Ca",
"label": "Ti/Ca"
},
"uk37": {
"id": "http://linked.earth/ontology/paleo_variables#Uk37",
"label": "Uk37"
},
"alkenone unsaturation index uk37": {
"id": "http://linked.earth/ontology/paleo_variables#Uk37",
"label": "Uk37"
},
"sumuk37": {
"id": "http://linked.earth/ontology/paleo_variables#UK37",
"label": "UK37"
},
"uk37-sfs values": {
"id": "http://linked.earth/ontology/paleo_variables#Uk37",
"label": "Uk37"
},
"uk37\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#Uk37_",
"label": "Uk37\u2019"
},
"uk37_": {
"id": "http://linked.earth/ontology/paleo_variables#Uk37_",
"label": "Uk37\u2019"
},
"alkenone unsaturation index uk37 prime": {
"id": "http://linked.earth/ontology/paleo_variables#Uk37_",
"label": "Uk37\u2019"
},
"uk\u201937": {
"id": "http://linked.earth/ontology/paleo_variables#Uk37_",
"label": "Uk37\u2019"
},
"v": {
"id": "http://linked.earth/ontology/paleo_variables#V",
"label": "V"
},
"vanadium": {
"id": "http://linked.earth/ontology/paleo_variables#V",
"label": "V"
},
"ppm v": {
"id": "http://linked.earth/ontology/paleo_variables#V",
"label": "V"
},
"v/al": {
"id": "http://linked.earth/ontology/paleo_variables#V_Al",
"label": "V/Al"
},
"v_al": {
"id": "http://linked.earth/ontology/paleo_variables#V_Al",
"label": "V/Al"
},
"vanadium/aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#V_Al",
"label": "V/Al"
},
"y": {
"id": "http://linked.earth/ontology/paleo_variables#Y",
"label": "Y"
},
"yttrium": {
"id": "http://linked.earth/ontology/paleo_variables#Y",
"label": "Y"
},
"ppm y": {
"id": "http://linked.earth/ontology/paleo_variables#Y",
"label": "Y"
},
"zn": {
"id": "http://linked.earth/ontology/paleo_variables#Zn",
"label": "Zn"
},
"zinc": {
"id": "http://linked.earth/ontology/paleo_variables#Zn",
"label": "Zn"
},
"ppm zn": {
"id": "http://linked.earth/ontology/paleo_variables#Zn",
"label": "Zn"
},
"zr": {
"id": "http://linked.earth/ontology/paleo_variables#Zr",
"label": "Zr"
},
"zirconium": {
"id": "http://linked.earth/ontology/paleo_variables#Zr",
"label": "Zr"
},
"ppm zr": {
"id": "http://linked.earth/ontology/paleo_variables#Zr",
"label": "Zr"
},
"zr/al": {
"id": "http://linked.earth/ontology/paleo_variables#Zr_Al",
"label": "Zr/Al"
},
"zr_al": {
"id": "http://linked.earth/ontology/paleo_variables#Zr_Al",
"label": "Zr/Al"
},
"zirconium/aluminum": {
"id": "http://linked.earth/ontology/paleo_variables#Zr_Al",
"label": "Zr/Al"
},
"accumulation": {
"id": "http://linked.earth/ontology/paleo_variables#accumulation",
"label": "accumulation"
},
"accumulation rate": {
"id": "http://linked.earth/ontology/paleo_variables#accumulation",
"label": "accumulation"
},
"accumulation rate ice (kg/m2/yr)": {
"id": "http://linked.earth/ontology/paleo_variables#accumulation",
"label": "accumulation"
},
"ice accumulation": {
"id": "http://linked.earth/ontology/paleo_variables#accumulation",
"label": "accumulation"
},
"acc": {
"id": "http://linked.earth/ontology/paleo_variables#accumulation",
"label": "accumulation"
},
"age": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"age_original": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"intcal09age": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"marine09": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"median cal age": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"shcal04age": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agebacon": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agebchron": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"ageduplicate": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"ageensemble": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agemarine09": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agemedian": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agemedianbacon": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"ageoriginal": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"ageother": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"ageoxcal": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agerounded": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agestalage": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"age_calibrated": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"age_alt": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agecopra": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agelininterp": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"agelinreg": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"medianage": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"varvecountedagead0x2fbc": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"varvecountedageka": {
"id": "http://linked.earth/ontology/paleo_variables#age",
"label": "age"
},
"age14c": {
"id": "http://linked.earth/ontology/paleo_variables#age14C",
"label": "age14C"
},
"radiocarbon year": {
"id": "http://linked.earth/ontology/paleo_variables#age14C",
"label": "age14C"
},
"c14age": {
"id": "http://linked.earth/ontology/paleo_variables#age14C",
"label": "age14C"
},
"radiocarbondatesad0x2fbc": {
"id": "http://linked.earth/ontology/paleo_variables#age14C",
"label": "age14C"
},
"ammonium": {
"id": "http://linked.earth/ontology/paleo_variables#ammonium",
"label": "ammonium"
},
"nh4_": {
"id": "http://linked.earth/ontology/paleo_variables#ammonium",
"label": "ammonium"
},
"amps": {
"id": "http://linked.earth/ontology/paleo_variables#amps",
"label": "amps"
},
"ampere": {
"id": "http://linked.earth/ontology/paleo_variables#amps",
"label": "amps"
},
"aragonite": {
"id": "http://linked.earth/ontology/paleo_variables#aragonite",
"label": "aragonite"
},
"ash": {
"id": "http://linked.earth/ontology/paleo_variables#ash",
"label": "ash"
},
"boron": {
"id": "http://linked.earth/ontology/paleo_variables#boron",
"label": "boron"
},
"b": {
"id": "http://linked.earth/ontology/paleo_variables#boron",
"label": "boron"
},
"brgdgt-iiia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIa",
"label": "brGDGT-IIIa"
},
"branched glycerol dialkyl glycerol tetraether": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Id",
"label": "brGDGT-Id"
},
"br1050": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIa",
"label": "brGDGT-IIIa"
},
"iiia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIa",
"label": "brGDGT-IIIa"
},
"brgdgtiiia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIa",
"label": "brGDGT-IIIa"
},
"brgdgt-iiia\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIa_",
"label": "brGDGT-IIIa\u2019"
},
"brgdgt-iiia_": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIa_",
"label": "brGDGT-IIIa\u2019"
},
"iiia\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIa_",
"label": "brGDGT-IIIa\u2019"
},
"brgdgt-iiib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIb",
"label": "brGDGT-IIIb"
},
"br1048": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIb",
"label": "brGDGT-IIIb"
},
"iiib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIb",
"label": "brGDGT-IIIb"
},
"brgdgtiiib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIb",
"label": "brGDGT-IIIb"
},
"brgdgt-iiib\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIb_",
"label": "brGDGT-IIIb\u2019"
},
"brgdgt-iiib_": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIb_",
"label": "brGDGT-IIIb\u2019"
},
"iiib\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIb_",
"label": "brGDGT-IIIb\u2019"
},
"brgdgt-iiic": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIc",
"label": "brGDGT-IIIc"
},
"iiic": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIc",
"label": "brGDGT-IIIc"
},
"brgdgt-iiic\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIc_",
"label": "brGDGT-IIIc\u2019"
},
"brgdgt-iiic_": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIc_",
"label": "brGDGT-IIIc\u2019"
},
"iiic\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIIc_",
"label": "brGDGT-IIIc\u2019"
},
"brgdgt-iia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIa",
"label": "brGDGT-IIa"
},
"br1036": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIa",
"label": "brGDGT-IIa"
},
"iia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIa",
"label": "brGDGT-IIa"
},
"brgdgtiia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIa",
"label": "brGDGT-IIa"
},
"brgdgt-iia\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIa_",
"label": "brGDGT-IIa\u2019"
},
"brgdgt-iia_": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIa_",
"label": "brGDGT-IIa\u2019"
},
"iia\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIa_",
"label": "brGDGT-IIa\u2019"
},
"brgdgt-iib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIb",
"label": "brGDGT-IIb"
},
"iib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIb",
"label": "brGDGT-IIb"
},
"brgdgtiib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIb",
"label": "brGDGT-IIb"
},
"brgdgt-iib\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIb_",
"label": "brGDGT-IIb\u2019"
},
"brgdgt-iib_": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIb_",
"label": "brGDGT-IIb\u2019"
},
"iib\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIb_",
"label": "brGDGT-IIb\u2019"
},
"brgdgt-iic": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIc",
"label": "brGDGT-IIc"
},
"iic": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIc",
"label": "brGDGT-IIc"
},
"brgdgt-iic\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIc_",
"label": "brGDGT-IIc\u2019"
},
"brgdgt-iic_": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIc_",
"label": "brGDGT-IIc\u2019"
},
"iic\u2019": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-IIc_",
"label": "brGDGT-IIc\u2019"
},
"brgdgt-ia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ia",
"label": "brGDGT-Ia"
},
"ia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ia",
"label": "brGDGT-Ia"
},
"brgdgtia": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ia",
"label": "brGDGT-Ia"
},
"brgdgt-ib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ib",
"label": "brGDGT-Ib"
},
"br1020": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ib",
"label": "brGDGT-Ib"
},
"ib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ib",
"label": "brGDGT-Ib"
},
"brgdgtib": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ib",
"label": "brGDGT-Ib"
},
"brgdgt-ic": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ic",
"label": "brGDGT-Ic"
},
"ic": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Ic",
"label": "brGDGT-Ic"
},
"brgdgt-id": {
"id": "http://linked.earth/ontology/paleo_variables#brGDGT-Id",
"label": "brGDGT-Id"
},
"id": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"bubblenumberdensity": {
"id": "http://linked.earth/ontology/paleo_variables#bubbleNumberDensity",
"label": "bubbleNumberDensity"
},
"bulkdensity": {
"id": "http://linked.earth/ontology/paleo_variables#bulkDensity",
"label": "bulkDensity"
},
"bulk density": {
"id": "http://linked.earth/ontology/paleo_variables#bulkDensity",
"label": "bulkDensity"
},
"calcificationrate": {
"id": "http://linked.earth/ontology/paleo_variables#calcificationRate",
"label": "calcificationRate"
},
"calcification rate": {
"id": "http://linked.earth/ontology/paleo_variables#calcificationRate",
"label": "calcificationRate"
},
"calcification": {
"id": "http://linked.earth/ontology/paleo_variables#calcificationRate",
"label": "calcificationRate"
},
"calcite": {
"id": "http://linked.earth/ontology/paleo_variables#calcite",
"label": "calcite"
},
"carbon": {
"id": "http://linked.earth/ontology/paleo_variables#carbon",
"label": "carbon"
},
"% tc": {
"id": "http://linked.earth/ontology/paleo_variables#carbon",
"label": "carbon"
},
"% total c": {
"id": "http://linked.earth/ontology/paleo_variables#carbon",
"label": "carbon"
},
"%_tc": {
"id": "http://linked.earth/ontology/paleo_variables#carbon",
"label": "carbon"
},
"c": {
"id": "http://linked.earth/ontology/paleo_variables#carbon",
"label": "carbon"
},
"x_c": {
"id": "http://linked.earth/ontology/paleo_variables#carbon",
"label": "carbon"
},
"carbonate": {
"id": "http://linked.earth/ontology/paleo_variables#carbonate",
"label": "carbonate"
},
"% carbonate": {
"id": "http://linked.earth/ontology/paleo_variables#carbonate",
"label": "carbonate"
},
"charcoal": {
"id": "http://linked.earth/ontology/paleo_variables#charcoal",
"label": "charcoal"
},
"chacoal_influx": {
"id": "http://linked.earth/ontology/paleo_variables#charcoal",
"label": "charcoal"
},
"chloride": {
"id": "http://linked.earth/ontology/paleo_variables#chloride",
"label": "chloride"
},
"circulationindex": {
"id": "http://linked.earth/ontology/paleo_variables#circulationIndex",
"label": "circulationIndex"
},
"circulation index": {
"id": "http://linked.earth/ontology/paleo_variables#circulationIndex",
"label": "circulationIndex"
},
"goe": {
"id": "http://linked.earth/ontology/paleo_variables#circulationIndex",
"label": "circulationIndex"
},
"gof": {
"id": "http://linked.earth/ontology/paleo_variables#circulationIndex",
"label": "circulationIndex"
},
"clay": {
"id": "http://linked.earth/ontology/paleo_variables#clay",
"label": "clay"
},
"%_clay": {
"id": "http://linked.earth/ontology/paleo_variables#clay",
"label": "clay"
},
"x_clay": {
"id": "http://linked.earth/ontology/paleo_variables#clay",
"label": "clay"
},
"cluster": {
"id": "http://linked.earth/ontology/paleo_variables#cluster",
"label": "cluster"
},
"statistical variable": {
"id": "http://linked.earth/ontology/paleo_variables#index",
"label": "index"
},
"cluster2": {
"id": "http://linked.earth/ontology/paleo_variables#cluster",
"label": "cluster"
},
"composite": {
"id": "http://linked.earth/ontology/paleo_variables#composite",
"label": "composite"
},
"proxy composite": {
"id": "http://linked.earth/ontology/paleo_variables#composite",
"label": "composite"
},
"hybrid": {
"id": "http://linked.earth/ontology/paleo_variables#composite",
"label": "composite"
},
"concentration": {
"id": "http://linked.earth/ontology/paleo_variables#concentration",
"label": "concentration"
},
"concentration unit": {
"id": "http://linked.earth/ontology/paleo_variables#concentration",
"label": "concentration"
},
"concentration (c25-35)": {
"id": "http://linked.earth/ontology/paleo_variables#concentration",
"label": "concentration"
},
"friedel-3-ene concentration": {
"id": "http://linked.earth/ontology/paleo_variables#concentration",
"label": "concentration"
},
"hop-17(21)-ene concentration": {
"id": "http://linked.earth/ontology/paleo_variables#concentration",
"label": "concentration"
},
"core": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"core id": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"core name": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"core section": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"corename": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"coresect1h": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"core_number": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"dune_a": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"stal.id": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"originalcorename": {
"id": "http://linked.earth/ontology/paleo_variables#core",
"label": "core"
},
"correction": {
"id": "http://linked.earth/ontology/paleo_variables#correction",
"label": "correction"
},
"corrected": {
"id": "http://linked.earth/ontology/paleo_variables#correction",
"label": "correction"
},
"iso adjustment for ocean calibration": {
"id": "http://linked.earth/ontology/paleo_variables#correction",
"label": "correction"
},
"years for ocean correction": {
"id": "http://linked.earth/ontology/paleo_variables#correction",
"label": "correction"
},
"hasaragonitecorrection": {
"id": "http://linked.earth/ontology/paleo_variables#correction",
"label": "correction"
},
"hasaragonitecorrectioncomposite": {
"id": "http://linked.earth/ontology/paleo_variables#correction",
"label": "correction"
},
"correlationcoefficient": {
"id": "http://linked.earth/ontology/paleo_variables#correlationCoefficient",
"label": "correlationCoefficient"
},
"correlation coefficient": {
"id": "http://linked.earth/ontology/paleo_variables#correlationCoefficient",
"label": "correlationCoefficient"
},
"corrs": {
"id": "http://linked.earth/ontology/paleo_variables#correlationCoefficient",
"label": "correlationCoefficient"
},
"count": {
"id": "http://linked.earth/ontology/paleo_variables#sampleCount",
"label": "sampleCount"
},
"numbe_counted": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"number_counted": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"slide count": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"totalammoniabeccarii": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"total_grains_counted": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"varve_number": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"abundance": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"count_analyses_b3": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"count_analyses_c2": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"count_analyses_c3": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"count_analyses_c5": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"count_analyses_c6": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"numinzone": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"number": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"sampledensity": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"total": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"total_non_chaetoceros_counted": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"total_xount": {
"id": "http://linked.earth/ontology/paleo_variables#count",
"label": "count"
},
"d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"delta 13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"bulk om d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c13bulk": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c21 d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c23 d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c25 d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c25:2 d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c27 d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c28 d13c vs.\xA0vpdb": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c29 d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c29 \u03B413c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c31 d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c31 \u03B413c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c31d13c_pdb": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"c33 \u03B413c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"cdr3_d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_c28": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"friedel-3-ene d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"hop-17(21)-ene d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"taraxer-14-ene d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13/12c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c18 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c18 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c20 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c20 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c21 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c21 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c22 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c22 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c23 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c23 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c24 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c24 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c25": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c25 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c25 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c26 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c26 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c27": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c27 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c27 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c28 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c28 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c29": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c29 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c29 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c30 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c30 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c31": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c31 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c31 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c32 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c32 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c33 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c33 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c34 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c34 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c35 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c c35 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c vpdb": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c bulk": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c bulk calcite": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c carbonate": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c organic": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c ostracod": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13ccomposite": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cmean": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cpisid": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cprecisioncomposite": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cstandardcomposite": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_c31": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_org": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13ccarb": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc27": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc27err": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc29": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc29err": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc31": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc31err": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc33": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cleafwaxc33err": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13cwax": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_bulloides": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_dutertrei": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_pachyderma": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_pachyderma_d": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_ruber": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_ruber_pink": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d13c_sacculifer": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"planktic.d13c": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"\u03B413c n-alkanes": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"\u03B413c n-alkanes std dev": {
"id": "http://linked.earth/ontology/paleo_variables#d13C",
"label": "d13C"
},
"d15n": {
"id": "http://linked.earth/ontology/paleo_variables#d15N",
"label": "d15N"
},
"delta 15n": {
"id": "http://linked.earth/ontology/paleo_variables#d15N",
"label": "d15N"
},
"bulk om d15n": {
"id": "http://linked.earth/ontology/paleo_variables#d15N",
"label": "d15N"
},
"d15n/14n": {
"id": "http://linked.earth/ontology/paleo_variables#d15N",
"label": "d15N"
},
"dn15": {
"id": "http://linked.earth/ontology/paleo_variables#d15N",
"label": "d15N"
},
"dn15_corrected": {
"id": "http://linked.earth/ontology/paleo_variables#d15N",
"label": "d15N"
},
"d18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"delta 18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"cdr3_d18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"chironomid d18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"g. ruber w \u03B418o\xA0[\u2030 pdb]": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"gbulloidesd18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"ndutertreid18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"wr11_d18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"bagd18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d180_corrc": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o (sea level corrected)": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o avg": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o chironomid": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o lake water": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o vpdb": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o bulk calcite": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o carbonate": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o carbonate corrected for dolomite": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o encrustation": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o ostracod": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o pore ice": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o pore ice sw corr": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18obsi": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18ocomposite": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18opisid": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18oterrestrialgastropods": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_210yr": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_gb": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_grass_leaf": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_pdb": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_smow": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_sphagnum": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_annual": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_sw": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_sw_annual": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_swcorr": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_vpdb": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_vp\u2013sp": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18ocarb": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18odiatom": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18og.rub": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18omean": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18osw": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18osw-g.rub": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18osw-sl-g.rubw": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18otr": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18otr+": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18otr-": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_acicula": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_bulloides": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_crassaformis": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_dutertrei": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_inflata": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_mabahethi": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_marginata": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_menardii": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_obliquiloculata": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_pachyderma": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_pachyderma_d": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_peregrina": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_quinqueloba": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_ruber": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_ruber_lato": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_ruber_pink": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_ruber_stricto": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_sacculifer": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d18o_tumida": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"dd18o5pt": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"nonreliabled18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"planktic.d18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"ruberd18": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"x18o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"x18orub_": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"\u03B418o": {
"id": "http://linked.earth/ontology/paleo_variables#d18O",
"label": "d18O"
},
"d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"delta 2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c20 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c20 d2h sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c20d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c21 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c22 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c22 d2h sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c22d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c23 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c23 \u03B4d": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c24 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c24d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c25 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c25 \u03B4d": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c25:2 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c26 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c26 d2h sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c26d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c27 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c28 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c28 d2h sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c28_dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c28_ddiv": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c28d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c29 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c29 dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c29 \u03B4d": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c29 \u03B4d corrected": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c29 \u03B4d ice volume adjusted": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c29 \u03B4d ice volume and vegetation adjusted": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c29-c31 \u03B4d": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c30 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c30 d2h sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c30 dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c30 dd iv corrected (3\xB0c)": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c30 dd iv corrected (7\xB0c)": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c30d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c31 d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c31 dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c31 \u03B4d": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c31dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c31ddsd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c32 dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"c33 \u03B4d": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"friedel-3-ene d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"hop-17(21)-ene d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"long chain n-alkane avg d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"long chain n-acid avg d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"mid-chain n-acid avg d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"midchain n-alkane avg d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"precip d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"taraxer-14-ene d2h": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"bagdd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c20": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c20 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c20 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c21 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c21 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c22": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c22 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c22 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c23": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c23 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c23 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c24 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c24 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c25": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c25 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c25 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c25 error": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c25:2": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c26 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c26 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c27": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c27 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c27 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c27 error": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c28 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c28 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c29": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c29 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c29 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c29 error": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c30": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c30 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c30 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c31": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c31 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c31 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c31 error": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c32 fame": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c32 fame sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c33 alkane": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h c33 alkane sem": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h avg": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h pore ice": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h pore ice sw corr": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h precip": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hc24": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hc26": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hc28": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hc29": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hc30": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h_c16": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h_c26": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h_c28": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2h_c30": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hleafwaxc29": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hleafwaxc29err": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hleafwaxc31": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hleafwaxc31err": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hleafwaxc33": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hleafwaxc33err": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2hsw": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd iv": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"ddc29": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"ddc31": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"ddp": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd_c29": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd_c31": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd_c31_sd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd_ivandbio": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd_ivonly": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"dd_swcorr": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"ddwax": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"ddwax corrected": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"ddwax_corr": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"ddwax_iv": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"nc28_dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"nc30_dd": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"\u03B4daq": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"\u03B4dterr": {
"id": "http://linked.earth/ontology/paleo_variables#d2H",
"label": "d2H"
},
"d2huncertaintyhigh80": {
"id": "http://linked.earth/ontology/paleo_variables#d2HUncertaintyHigh80",
"label": "d2HUncertaintyHigh80"
},
"precip dd 90 ci": {
"id": "http://linked.earth/ontology/paleo_variables#d2HUncertaintyHigh80",
"label": "d2HUncertaintyHigh80"
},
"d2huncertaintylow80": {
"id": "http://linked.earth/ontology/paleo_variables#d2HUncertaintyLow80",
"label": "d2HUncertaintyLow80"
},
"precip dd 10 ci": {
"id": "http://linked.earth/ontology/paleo_variables#d2HUncertaintyLow80",
"label": "d2HUncertaintyLow80"
},
"deleteme": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"a": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"cal": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"calibrated": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"imon1953/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"lazerprofiler": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"rcs.ars": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"saug/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"sete/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"sfev/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"shiv/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"tete/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"tfev/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"thiv/3": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"unkowncolumn": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"average c26 c28": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"hobdob": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"interval": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"noid": {
"id": "http://linked.earth/ontology/paleo_variables#deleteMe",
"label": "deleteMe"
},
"deltarelativehumidity": {
"id": "http://linked.earth/ontology/paleo_variables#deltaRelativeHumidity",
"label": "deltaRelativeHumidity"
},
"\u2206rh_mid": {
"id": "http://linked.earth/ontology/paleo_variables#deltaRelativeHumidity",
"label": "deltaRelativeHumidity"
},
"deltatemperature": {
"id": "http://linked.earth/ontology/paleo_variables#deltaTemperature",
"label": "deltaTemperature"
},
"deltat": {
"id": "http://linked.earth/ontology/paleo_variables#deltaTemperature",
"label": "deltaTemperature"
},
"density": {
"id": "http://linked.earth/ontology/paleo_variables#density",
"label": "density"
},
"depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"adjusted depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"composite depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"composite depth in core": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"composite depth mid": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"composite_depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"core depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth blf": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"drillhole depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"midpointdepth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"section depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"compositedepth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"cor_depth_cm": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth corrected": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depthbycore": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depthcomp": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depthcomposite": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth_cmbs": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth_core": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth_core1": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth_corr_cm": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth_merge": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depth_merged": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depthice": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depthwe": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"drive-depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"mean depth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"originalcoredepth": {
"id": "http://linked.earth/ontology/paleo_variables#depth",
"label": "depth"
},
"depthbottom": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"depth at sample start": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"bot": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"bottom depth": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"bottom_depth": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"composite depth bottom": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"section depth bottom": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"bottom depth in section": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"bottomdepth": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"depth.bottom": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"depth_bot": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"depth_bottom": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"uncorrected_depth_bot": {
"id": "http://linked.earth/ontology/paleo_variables#depthBottom",
"label": "depthBottom"
},
"depthtop": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"acetic acid": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"composite depth top": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"section depth top": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"top": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"top depth": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"top_depth": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"depth.top": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"depth_top": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"depth_top_m": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"logdepthtop": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"logdepthtop-edc99": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"logdepttop": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"top depth in section": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"topdepth": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"uncorrected_depth_top": {
"id": "http://linked.earth/ontology/paleo_variables#depthTop",
"label": "depthTop"
},
"deuteriumexcess": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"deuterium excess": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"bagdexcess": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"d-excess": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"d-excess pore ice": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"d-excess pore ice sw corr": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"d-excess sw": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"d-excess_swcorr": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"deutex": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"dxs": {
"id": "http://linked.earth/ontology/paleo_variables#deuteriumExcess",
"label": "deuteriumExcess"
},
"diatom": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"%benthic": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"%indif.": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"%saline": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"%benth.dia": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"%fresh": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"%plank.dia": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"%saline.dia": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"sumdiatoms": {
"id": "http://linked.earth/ontology/paleo_variables#diatom",
"label": "diatom"
},
"diatomcount": {
"id": "http://linked.earth/ontology/paleo_variables#diatomCount",
"label": "diatomCount"
},
"diatom index": {
"id": "http://linked.earth/ontology/paleo_variables#diatomCount",
"label": "diatomCount"
},
"diatoms_per_traverse": {
"id": "http://linked.earth/ontology/paleo_variables#diatomCount",
"label": "diatomCount"
},
"diatom_abundance": {
"id": "http://linked.earth/ontology/paleo_variables#diatomCount",
"label": "diatomCount"
},
"seaicediatoms": {
"id": "http://linked.earth/ontology/paleo_variables#diatomCount",
"label": "diatomCount"
},
"dinocyst": {
"id": "http://linked.earth/ontology/paleo_variables#dinocyst",
"label": "dinocyst"
},
"total dinocysts": {
"id": "http://linked.earth/ontology/paleo_variables#dinocyst",
"label": "dinocyst"
},
"flux_dino": {
"id": "http://linked.earth/ontology/paleo_variables#dinocyst",
"label": "dinocyst"
},
"dolomite": {
"id": "http://linked.earth/ontology/paleo_variables#dolomite",
"label": "dolomite"
},
"% dolomite": {
"id": "http://linked.earth/ontology/paleo_variables#dolomite",
"label": "dolomite"
},
"drybulkdensity": {
"id": "http://linked.earth/ontology/paleo_variables#dryBulkDensity",
"label": "dryBulkDensity"
},
"dbd": {
"id": "http://linked.earth/ontology/paleo_variables#dryBulkDensity",
"label": "dryBulkDensity"
},
"dry bulk density": {
"id": "http://linked.earth/ontology/paleo_variables#dryBulkDensity",
"label": "dryBulkDensity"
},
"estdrybd": {
"id": "http://linked.earth/ontology/paleo_variables#dryBulkDensity",
"label": "dryBulkDensity"
},
"dry_bd": {
"id": "http://linked.earth/ontology/paleo_variables#dryBulkDensity",
"label": "dryBulkDensity"
},
"duration": {
"id": "http://linked.earth/ontology/paleo_variables#duration",
"label": "duration"
},
"duration unit": {
"id": "http://linked.earth/ontology/paleo_variables#duration",
"label": "duration"
},
"yearspersample": {
"id": "http://linked.earth/ontology/paleo_variables#duration",
"label": "duration"
},
"dust": {
"id": "http://linked.earth/ontology/paleo_variables#dust",
"label": "dust"
},
"0.50_quantile_dust_flux": {
"id": "http://linked.earth/ontology/paleo_variables#dust",
"label": "dust"
},
"dmar": {
"id": "http://linked.earth/ontology/paleo_variables#dust",
"label": "dust"
},
"dustflux": {
"id": "http://linked.earth/ontology/paleo_variables#dust",
"label": "dust"
},
"effectiveprecipitation": {
"id": "http://linked.earth/ontology/paleo_variables#effectivePrecipitation",
"label": "effectivePrecipitation"
},
"precipitation minus evaporation": {
"id": "http://linked.earth/ontology/paleo_variables#effectivePrecipitation",
"label": "effectivePrecipitation"
},
"moisture_index": {
"id": "http://linked.earth/ontology/paleo_variables#effectivePrecipitation",
"label": "effectivePrecipitation"
},
"effectivemoisture": {
"id": "http://linked.earth/ontology/paleo_variables#effectivePrecipitation",
"label": "effectivePrecipitation"
},
"waterbalance": {
"id": "http://linked.earth/ontology/paleo_variables#effectivePrecipitation",
"label": "effectivePrecipitation"
},
"elevation": {
"id": "http://linked.earth/ontology/paleo_variables#elevation",
"label": "elevation"
},
"collection elevation": {
"id": "http://linked.earth/ontology/paleo_variables#zscore",
"label": "zscore"
},
"elevation a.s.l.": {
"id": "http://linked.earth/ontology/paleo_variables#elevation",
"label": "elevation"
},
"elevation sample": {
"id": "http://linked.earth/ontology/paleo_variables#elevation",
"label": "elevation"
},
"epsilonc28c22": {
"id": "http://linked.earth/ontology/paleo_variables#epsilonC28C22",
"label": "epsilonC28C22"
},
"epsilon c28-c22": {
"id": "http://linked.earth/ontology/paleo_variables#epsilonC28C22",
"label": "epsilonC28C22"
},
"epsilon28-22": {
"id": "http://linked.earth/ontology/paleo_variables#epsilonC28C22",
"label": "epsilonC28C22"
},
"epsilonc28c24": {
"id": "http://linked.earth/ontology/paleo_variables#epsilonC28C24",
"label": "epsilonC28C24"
},
"epsilon c28-c24": {
"id": "http://linked.earth/ontology/paleo_variables#epsilonC28C24",
"label": "epsilonC28C24"
},
"epsilonc29c23": {
"id": "http://linked.earth/ontology/paleo_variables#epsilonC29C23",
"label": "epsilonC29C23"
},
"epsilon c29-c23": {
"id": "http://linked.earth/ontology/paleo_variables#epsilonC29C23",
"label": "epsilonC29C23"
},
"equilibriumlinealtitude": {
"id": "http://linked.earth/ontology/paleo_variables#equilibriumLineAltitude",
"label": "equilibriumLineAltitude"
},
"equilibrium line altitude": {
"id": "http://linked.earth/ontology/paleo_variables#equilibriumLineAltitude",
"label": "equilibriumLineAltitude"
},
"ela": {
"id": "http://linked.earth/ontology/paleo_variables#equilibriumLineAltitude",
"label": "equilibriumLineAltitude"
},
"ela_alt": {
"id": "http://linked.earth/ontology/paleo_variables#equilibriumLineAltitude",
"label": "equilibriumLineAltitude"
},
"event": {
"id": "http://linked.earth/ontology/paleo_variables#event",
"label": "event"
},
"eventlayer": {
"id": "http://linked.earth/ontology/paleo_variables#eventLayer",
"label": "eventLayer"
},
"event layer": {
"id": "http://linked.earth/ontology/paleo_variables#eventLayer",
"label": "eventLayer"
},
"layer": {
"id": "http://linked.earth/ontology/paleo_variables#eventLayer",
"label": "eventLayer"
},
"layer_type": {
"id": "http://linked.earth/ontology/paleo_variables#eventLayer",
"label": "eventLayer"
},
"facies": {
"id": "http://linked.earth/ontology/paleo_variables#facies",
"label": "facies"
},
"lithologic unit": {
"id": "http://linked.earth/ontology/paleo_variables#facies",
"label": "facies"
},
"lithology": {
"id": "http://linked.earth/ontology/paleo_variables#facies",
"label": "facies"
},
"feldspar": {
"id": "http://linked.earth/ontology/paleo_variables#feldspar",
"label": "feldspar"
},
"feldspar group": {
"id": "http://linked.earth/ontology/paleo_variables#feldspar",
"label": "feldspar"
},
"flood": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"m-flood": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"m-flood 200 yr avg": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"m-flood 30 yr sum": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"p-flood": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"p-flood 200 yr avg": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"p-flood 30 yr sum": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"floods": {
"id": "http://linked.earth/ontology/paleo_variables#flood",
"label": "flood"
},
"fluorine": {
"id": "http://linked.earth/ontology/paleo_variables#fluorine",
"label": "fluorine"
},
"f": {
"id": "http://linked.earth/ontology/paleo_variables#fluorine",
"label": "fluorine"
},
"f_": {
"id": "http://linked.earth/ontology/paleo_variables#fluorine",
"label": "fluorine"
},
"foraminifera": {
"id": "http://linked.earth/ontology/paleo_variables#foraminifera",
"label": "foraminifera"
},
"foraminifer": {
"id": "http://linked.earth/ontology/paleo_variables#foraminifera",
"label": "foraminifera"
},
"foram": {
"id": "http://linked.earth/ontology/paleo_variables#foraminifera",
"label": "foraminifera"
},
"gamma": {
"id": "http://linked.earth/ontology/paleo_variables#gamma",
"label": "gamma"
},
"gamma radiation": {
"id": "http://linked.earth/ontology/paleo_variables#gamma",
"label": "gamma"
},
"glaciercoverage": {
"id": "http://linked.earth/ontology/paleo_variables#glacierCoverage",
"label": "glacierCoverage"
},
"globigerinoidesruber": {
"id": "http://linked.earth/ontology/paleo_variables#globigerinoidesRuber",
"label": "globigerinoidesRuber"
},
"globigerinoides ruber": {
"id": "http://linked.earth/ontology/paleo_variables#globigerinoidesRuber",
"label": "globigerinoidesRuber"
},
"gruber": {
"id": "http://linked.earth/ontology/paleo_variables#globigerinoidesRuber",
"label": "globigerinoidesRuber"
},
"grainsize": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"grain size": {
"id": "http://linked.earth/ontology/paleo_variables#lithics",
"label": "lithics"
},
"250-31 um": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"63-4 um": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"<16 \u03BCm": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"<2 um": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"<2um": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"<4 um": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
">63 um": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"d50": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"grain size mean": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"grainsizemode": {
"id": "http://linked.earth/ontology/paleo_variables#grainSize",
"label": "grainSize"
},
"grayscale": {
"id": "http://linked.earth/ontology/paleo_variables#grayscale",
"label": "grayscale"
},
"grayscale20lp_detrended": {
"id": "http://linked.earth/ontology/paleo_variables#grayscale",
"label": "grayscale"
},
"grey_scale": {
"id": "http://linked.earth/ontology/paleo_variables#grayscale",
"label": "grayscale"
},
"growing degree days": {
"id": "http://linked.earth/ontology/paleo_variables#growing_degree_days",
"label": "growing degree days"
},
"growing_degree_days": {
"id": "http://linked.earth/ontology/paleo_variables#growing_degree_days",
"label": "growing degree days"
},
"gdd5": {
"id": "http://linked.earth/ontology/paleo_variables#growing_degree_days",
"label": "growing degree days"
},
"growthrate": {
"id": "http://linked.earth/ontology/paleo_variables#growthRate",
"label": "growthRate"
},
"growth rate": {
"id": "http://linked.earth/ontology/paleo_variables#growthRate",
"label": "growthRate"
},
"hasgap": {
"id": "http://linked.earth/ontology/paleo_variables#hasGap",
"label": "hasGap"
},
"hashiatus": {
"id": "http://linked.earth/ontology/paleo_variables#hasHiatus",
"label": "hasHiatus"
},
"hashiatuscomposite": {
"id": "http://linked.earth/ontology/paleo_variables#hasHiatus",
"label": "hasHiatus"
},
"hole": {
"id": "http://linked.earth/ontology/paleo_variables#hole",
"label": "hole"
},
"humidificationindex": {
"id": "http://linked.earth/ontology/paleo_variables#humidificationIndex",
"label": "humidificationIndex"
},
"humification index": {
"id": "http://linked.earth/ontology/paleo_variables#humidificationIndex",
"label": "humidificationIndex"
},
"hindex": {
"id": "http://linked.earth/ontology/paleo_variables#humidificationIndex",
"label": "humidificationIndex"
},
"icemelt": {
"id": "http://linked.earth/ontology/paleo_variables#iceMelt",
"label": "iceMelt"
},
"ice melt": {
"id": "http://linked.earth/ontology/paleo_variables#iceMelt",
"label": "iceMelt"
},
"ice_melt_fraction": {
"id": "http://linked.earth/ontology/paleo_variables#iceMelt",
"label": "iceMelt"
},
"melt": {
"id": "http://linked.earth/ontology/paleo_variables#iceMelt",
"label": "iceMelt"
},
"meltlayerfrequency": {
"id": "http://linked.earth/ontology/paleo_variables#iceMelt",
"label": "iceMelt"
},
"meltlayers": {
"id": "http://linked.earth/ontology/paleo_variables#iceMelt",
"label": "iceMelt"
},
"icerafteddebris": {
"id": "http://linked.earth/ontology/paleo_variables#iceRaftedDebris",
"label": "iceRaftedDebris"
},
"ice rafted debris": {
"id": "http://linked.earth/ontology/paleo_variables#iceRaftedDebris",
"label": "iceRaftedDebris"
},
"ird": {
"id": "http://linked.earth/ontology/paleo_variables#iceRaftedDebris",
"label": "iceRaftedDebris"
},
"inc/coh": {
"id": "http://linked.earth/ontology/paleo_variables#inc_coh",
"label": "inc/coh"
},
"inc_coh": {
"id": "http://linked.earth/ontology/paleo_variables#inc_coh",
"label": "inc/coh"
},
"incoherent:coherent scattering": {
"id": "http://linked.earth/ontology/paleo_variables#inc_coh",
"label": "inc/coh"
},
"index": {
"id": "http://linked.earth/ontology/paleo_variables#index",
"label": "index"
},
"pls-1": {
"id": "http://linked.earth/ontology/paleo_variables#index",
"label": "index"
},
"pls-2": {
"id": "http://linked.earth/ontology/paleo_variables#index",
"label": "index"
},
"sm/illitechlorite": {
"id": "http://linked.earth/ontology/paleo_variables#index",
"label": "index"
},
"isreliable": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliabieyn1": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliabieyn2": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable?": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable 1": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable 2": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable_1": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable_2": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable_3": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"reliable_4": {
"id": "http://linked.earth/ontology/paleo_variables#isReliable",
"label": "isReliable"
},
"lakearea": {
"id": "http://linked.earth/ontology/paleo_variables#lakeArea",
"label": "lakeArea"
},
"lake area": {
"id": "http://linked.earth/ontology/paleo_variables#lakeArea",
"label": "lakeArea"
},
"lakelevel": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"lake level": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"lake level a.s.l.": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"lakedepth": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"lakelevel_cm_": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"depth.lake": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"lakelevelrelative": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"lakestatus": {
"id": "http://linked.earth/ontology/paleo_variables#lakeLevel",
"label": "lakeLevel"
},
"laketrend": {
"id": "http://linked.earth/ontology/paleo_variables#lakeTrend",
"label": "lakeTrend"
},
"lakevolume": {
"id": "http://linked.earth/ontology/paleo_variables#lakeVolume",
"label": "lakeVolume"
},
"landscapecover": {
"id": "http://linked.earth/ontology/paleo_variables#landscapeCover",
"label": "landscapeCover"
},
"ecosystem quantity": {
"id": "http://linked.earth/ontology/paleo_variables#percent",
"label": "percent"
},
"openvegetation___": {
"id": "http://linked.earth/ontology/paleo_variables#landscapeCover",
"label": "landscapeCover"
},
"latitude": {
"id": "http://linked.earth/ontology/paleo_variables#latitude",
"label": "latitude"
},
"latitude sample": {
"id": "http://linked.earth/ontology/paleo_variables#latitude",
"label": "latitude"
},
"layerthickness": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"layer thickness": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"fld lay thick": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"flood lay (annual)": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"flood lay (fall)": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"flood lay (spring)": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"flood lay (summer)": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"flood lay (winter)": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"laminathickenss": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"lamina_thickness": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"debrislaythick": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"eventlayerthick": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"floodlaythick": {
"id": "http://linked.earth/ontology/paleo_variables#layerThickness",
"label": "layerThickness"
},
"lithics": {
"id": "http://linked.earth/ontology/paleo_variables#lithics",
"label": "lithics"
},
"%_lithics": {
"id": "http://linked.earth/ontology/paleo_variables#lithics",
"label": "lithics"
},
"lithic flux": {
"id": "http://linked.earth/ontology/paleo_variables#lithics",
"label": "lithics"
},
"longitude": {
"id": "http://linked.earth/ontology/paleo_variables#longitude",
"label": "longitude"
},
"longitude sample": {
"id": "http://linked.earth/ontology/paleo_variables#longitude",
"label": "longitude"
},
"material": {
"id": "http://linked.earth/ontology/paleo_variables#material",
"label": "material"
},
"reconstruction material": {
"id": "http://linked.earth/ontology/paleo_variables#material",
"label": "material"
},
"mineralogy": {
"id": "http://linked.earth/ontology/paleo_variables#mineralogy",
"label": "mineralogy"
},
"identified mineral": {
"id": "http://linked.earth/ontology/paleo_variables#mineralogy",
"label": "mineralogy"
},
"mineral_flux": {
"id": "http://linked.earth/ontology/paleo_variables#mineralogy",
"label": "mineralogy"
},
"mineralogycomposite": {
"id": "http://linked.earth/ontology/paleo_variables#mineralogy",
"label": "mineralogy"
},
"needstobechanged": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"((( null ))) ac ratio? /// pollenratio": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"-": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"10%max": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"10%min": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"100yrsum": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"10yrrun.avg.": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"20%max": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"20%min": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"30%max": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"30%min": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"50%max": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"50%min": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"80%max": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"80%min": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"a odd (25-35)": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"a/c": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"a/c ratio": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"alkenones": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"analogues": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"analogues#": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"bs": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"bs_comx": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"bs_landscape_openness": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"bag": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"benthic": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"c170x2d28": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cast1": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cast2": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"ci": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cia": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cmt": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cmt_max": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cmt_min": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cmtmax": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"cmtmin": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"ct": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"d": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"dec": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"di": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"dryelements": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"e2hterr-2haq": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"em1": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"em2": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"em3": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"emi": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"eaq-p": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"hc/g": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"hii (h-set)": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"hii (n-set)": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"hii std (h-set)": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"hii std (n-set)": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"hulunnuur": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"imi": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"intv0x2e": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"jult-esep": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"lorca": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"lsr (cm/ky)": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"laminae": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"lyc.added": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mg0": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mst": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mshellcrn": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mag0x2e": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mark add": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mark found": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mean consensus": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mean_anomaly": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"minidiscus?": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mode": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"moistelements": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"ne.ars": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"oep": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"ppexp": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"rra": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"reconstructed": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"s52": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"tct": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"totc": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"ts": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"tsar": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"tsar5pt": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"tt": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"taraxer-14-ene concentration": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"th13c": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"u_xs": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"unit": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"wacls": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"wacls_total": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"wainv": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"wainv_total": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"wapls-2": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"wmt": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"water/relict ice age": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"aridity": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"bagdepth": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"benth": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"d0x2800x2e10x29": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"d0x2800x2e50x29": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"d0x2800x2e90x29": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"d13o_pachyderma": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"distance": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"dln": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"drive-type": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"esep_pls_c2": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"esep_wmat": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"kyryr bp2": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"log[em3/(em1+em2)]": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"lower band": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"mineral": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"n-alkane": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"s": {
"id": "http://linked.earth/ontology/paleo_variables#sulfur",
"label": "sulfur"
},
"stage": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"tempsource": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"thin-mid": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"thisshouldntbeempty": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"thisshouldntbeempty1": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"unnamed": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"water": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x00x2e020xb5m0x2d30x2e890xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x10000x2e010xb5m0x2d20000x2e000xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x1250x2e000xb5m0x2d2490x2e990xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x150x2e600xb5m0x2d300x2e990xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x2500x2e000xb5m0x2d4990x2e990xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x30x2e900xb5m0x2d70x2e790xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x310x2e000xb5m0x2d620x2e490xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x5000x2e000xb5m0x2d10000x2e000xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x620x2e500xb5m0x2d1240x2e990xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"x70x2e800xb5m0x2d150x2e590xb5m": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeChanged",
"label": "needsToBeChanged"
},
"needstobesplitintomultiplecolumns": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeSplitIntoMultipleColumns",
"label": "needsToBeSplitIntoMultipleColumns"
},
"depth-range": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeSplitIntoMultipleColumns",
"label": "needsToBeSplitIntoMultipleColumns"
},
"depthrange": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeSplitIntoMultipleColumns",
"label": "needsToBeSplitIntoMultipleColumns"
},
"depth_range": {
"id": "http://linked.earth/ontology/paleo_variables#needsToBeSplitIntoMultipleColumns",
"label": "needsToBeSplitIntoMultipleColumns"
},
"nitrogen": {
"id": "http://linked.earth/ontology/paleo_variables#nitrogen",
"label": "nitrogen"
},
"n": {
"id": "http://linked.earth/ontology/paleo_variables#nitrogen",
"label": "nitrogen"
},
"notes": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"bsi_regime": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"codename": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"commentregardingreliability": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"commentregardingreliability1": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"commentregardingreliability2": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"commentregardingreliability3": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"commentregardingreliability4": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"reworked": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"color": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"entityname": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"note": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"notes_c5": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"repeats": {
"id": "http://linked.earth/ontology/paleo_variables#notes",
"label": "notes"
},
"organiccarbon": {
"id": "http://linked.earth/ontology/paleo_variables#organicCarbon",
"label": "organicCarbon"
},
"acc rate toc": {
"id": "http://linked.earth/ontology/paleo_variables#organicCarbon",
"label": "organicCarbon"
},
"c_organic_flux": {
"id": "http://linked.earth/ontology/paleo_variables#organicCarbon",
"label": "organicCarbon"
},
"corg dens": {
"id": "http://linked.earth/ontology/paleo_variables#organicCarbon",
"label": "organicCarbon"
},
"organicmatter": {
"id": "http://linked.earth/ontology/paleo_variables#organicMatter",
"label": "organicMatter"
},
"organic matter": {
"id": "http://linked.earth/ontology/paleo_variables#organicMatter",
"label": "organicMatter"
},
"%_tom": {
"id": "http://linked.earth/ontology/paleo_variables#organicMatter",
"label": "organicMatter"
},
"om": {
"id": "http://linked.earth/ontology/paleo_variables#organicMatter",
"label": "organicMatter"
},
"om dens": {
"id": "http://linked.earth/ontology/paleo_variables#organicMatter",
"label": "organicMatter"
},
"organic": {
"id": "http://linked.earth/ontology/paleo_variables#organicMatter",
"label": "organicMatter"
},
"organicnitrogen": {
"id": "http://linked.earth/ontology/paleo_variables#organicNitrogen",
"label": "organicNitrogen"
},
"norg": {
"id": "http://linked.earth/ontology/paleo_variables#organicNitrogen",
"label": "organicNitrogen"
},
"oxygen": {
"id": "http://linked.earth/ontology/paleo_variables#oxygen",
"label": "oxygen"
},
"%o": {
"id": "http://linked.earth/ontology/paleo_variables#oxygen",
"label": "oxygen"
},
"ph": {
"id": "http://linked.earth/ontology/paleo_variables#pH",
"label": "pH"
},
"phsoil": {
"id": "http://linked.earth/ontology/paleo_variables#pH",
"label": "pH"
},
"soilph": {
"id": "http://linked.earth/ontology/paleo_variables#pH",
"label": "pH"
},
"peat": {
"id": "http://linked.earth/ontology/paleo_variables#peat",
"label": "peat"
},
"peatflux": {
"id": "http://linked.earth/ontology/paleo_variables#peat",
"label": "peat"
},
"percent": {
"id": "http://linked.earth/ontology/paleo_variables#percent",
"label": "percent"
},
"woodycover___": {
"id": "http://linked.earth/ontology/paleo_variables#percent",
"label": "percent"
},
"phosphorus": {
"id": "http://linked.earth/ontology/paleo_variables#phosphorus",
"label": "phosphorus"
},
"%p": {
"id": "http://linked.earth/ontology/paleo_variables#phosphorus",
"label": "phosphorus"
},
"potassium": {
"id": "http://linked.earth/ontology/paleo_variables#potassium",
"label": "potassium"
},
"% k": {
"id": "http://linked.earth/ontology/paleo_variables#potassium",
"label": "potassium"
},
"%k": {
"id": "http://linked.earth/ontology/paleo_variables#potassium",
"label": "potassium"
},
"k": {
"id": "http://linked.earth/ontology/paleo_variables#potassium",
"label": "potassium"
},
"k peak area": {
"id": "http://linked.earth/ontology/paleo_variables#potassium",
"label": "potassium"
},
"kprop": {
"id": "http://linked.earth/ontology/paleo_variables#potassium",
"label": "potassium"
},
"k_": {
"id": "http://linked.earth/ontology/paleo_variables#potassium",
"label": "potassium"
},
"precipitation": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"annual precipitation": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"map": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"p": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"pannom": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"panom": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"precip": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"summer precipitation": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"winter precipitation": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"precip51yr": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"precip5yr": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"precipitation (with h-set)": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"precipobs": {
"id": "http://linked.earth/ontology/paleo_variables#precipitation",
"label": "precipitation"
},
"productivity": {
"id": "http://linked.earth/ontology/paleo_variables#productivity",
"label": "productivity"
},
"pyrite": {
"id": "http://linked.earth/ontology/paleo_variables#pyrite",
"label": "pyrite"
},
"quartz": {
"id": "http://linked.earth/ontology/paleo_variables#quartz",
"label": "quartz"
},
"reflectance": {
"id": "http://linked.earth/ontology/paleo_variables#reflectance",
"label": "reflectance"
},
"brightness": {
"id": "http://linked.earth/ontology/paleo_variables#reflectance",
"label": "reflectance"
},
"x_radiograph_dark_layer": {
"id": "http://linked.earth/ontology/paleo_variables#reflectance",
"label": "reflectance"
},
"blueintensity": {
"id": "http://linked.earth/ontology/paleo_variables#reflectance",
"label": "reflectance"
},
"red_color_intensity_units": {
"id": "http://linked.earth/ontology/paleo_variables#reflectance",
"label": "reflectance"
},
"redness": {
"id": "http://linked.earth/ontology/paleo_variables#reflectance",
"label": "reflectance"
},
"relativehumidity": {
"id": "http://linked.earth/ontology/paleo_variables#relativeHumidity",
"label": "relativeHumidity"
},
"relative humidity": {
"id": "http://linked.earth/ontology/paleo_variables#relativeHumidity",
"label": "relativeHumidity"
},
"rh": {
"id": "http://linked.earth/ontology/paleo_variables#relativeHumidity",
"label": "relativeHumidity"
},
"residualchronology": {
"id": "http://linked.earth/ontology/paleo_variables#residualChronology",
"label": "residualChronology"
},
"residual chronology method": {
"id": "http://linked.earth/ontology/paleo_variables#residualChronology",
"label": "residualChronology"
},
"residual": {
"id": "http://linked.earth/ontology/paleo_variables#residualChronology",
"label": "residualChronology"
},
"ringwidth": {
"id": "http://linked.earth/ontology/paleo_variables#ringWidth",
"label": "ringWidth"
},
"ring width": {
"id": "http://linked.earth/ontology/paleo_variables#ringWidth",
"label": "ringWidth"
},
"trw": {
"id": "http://linked.earth/ontology/paleo_variables#ringWidth",
"label": "ringWidth"
},
"trsgi": {
"id": "http://linked.earth/ontology/paleo_variables#ringWidth",
"label": "ringWidth"
},
"salinity": {
"id": "http://linked.earth/ontology/paleo_variables#salinity",
"label": "salinity"
},
"saug": {
"id": "http://linked.earth/ontology/paleo_variables#salinity",
"label": "salinity"
},
"sete": {
"id": "http://linked.earth/ontology/paleo_variables#salinity",
"label": "salinity"
},
"sfev": {
"id": "http://linked.earth/ontology/paleo_variables#salinity",
"label": "salinity"
},
"shiv": {
"id": "http://linked.earth/ontology/paleo_variables#salinity",
"label": "salinity"
},
"logsalinity": {
"id": "http://linked.earth/ontology/paleo_variables#salinity",
"label": "salinity"
},
"samplecount": {
"id": "http://linked.earth/ontology/paleo_variables#sampleCount",
"label": "sampleCount"
},
"num_samples": {
"id": "http://linked.earth/ontology/paleo_variables#sampleCount",
"label": "sampleCount"
},
"sampleid": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample identification": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"dateid": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"lab code": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"lab id": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"originalsampleid": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample id": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample label": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample interval": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"label": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"plotname": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sambleid": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample # in section": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sampleida": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sampleidb": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sampleidc": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"samplenumber": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample_code": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sample_number": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"samples": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sisalsampleid": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sisalsampleidcomposite": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"smapleid": {
"id": "http://linked.earth/ontology/paleo_variables#sampleID",
"label": "sampleID"
},
"sand": {
"id": "http://linked.earth/ontology/paleo_variables#sand",
"label": "sand"
},
"%_sand": {
"id": "http://linked.earth/ontology/paleo_variables#sand",
"label": "sand"
},
"x_sand": {
"id": "http://linked.earth/ontology/paleo_variables#sand",
"label": "sand"
},
"seaice": {
"id": "http://linked.earth/ontology/paleo_variables#seaIce",
"label": "seaIce"
},
"sea ice cover": {
"id": "http://linked.earth/ontology/paleo_variables#seaIce",
"label": "seaIce"
},
"imon1953": {
"id": "http://linked.earth/ontology/paleo_variables#seaIce",
"label": "seaIce"
},
"sea_ice_conc": {
"id": "http://linked.earth/ontology/paleo_variables#seaIce",
"label": "seaIce"
},
"sea_ice_months": {
"id": "http://linked.earth/ontology/paleo_variables#seaIce",
"label": "seaIce"
},
"section": {
"id": "http://linked.earth/ontology/paleo_variables#section",
"label": "section"
},
"sec label": {
"id": "http://linked.earth/ontology/paleo_variables#section",
"label": "section"
},
"section #": {
"id": "http://linked.earth/ontology/paleo_variables#section",
"label": "section"
},
"section [#]": {
"id": "http://linked.earth/ontology/paleo_variables#section",
"label": "section"
},
"section number": {
"id": "http://linked.earth/ontology/paleo_variables#section",
"label": "section"
},
"core_section": {
"id": "http://linked.earth/ontology/paleo_variables#section",
"label": "section"
},
"section name": {
"id": "http://linked.earth/ontology/paleo_variables#section",
"label": "section"
},
"sedimentdry": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"dry sediment": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"clastic": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"clastic_flux": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"dry sample mass": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"mass dry": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"mass dry 106 to 1000 um": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"mass dry 63 to 106 um": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"mass dry >1mm": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"massdry": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"massdry_1mm": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"sedimentweight": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentDry",
"label": "sedimentDry"
},
"sedimentationrate": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentationRate",
"label": "sedimentationRate"
},
"sedimentation rate": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentationRate",
"label": "sedimentationRate"
},
"mean sedim rate": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentationRate",
"label": "sedimentationRate"
},
"sedim rate": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentationRate",
"label": "sedimentationRate"
},
"sed rate": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentationRate",
"label": "sedimentationRate"
},
"sedrate": {
"id": "http://linked.earth/ontology/paleo_variables#sedimentationRate",
"label": "sedimentationRate"
},
"segmentlength": {
"id": "http://linked.earth/ontology/paleo_variables#segmentLength",
"label": "segmentLength"
},
"segment": {
"id": "http://linked.earth/ontology/paleo_variables#segmentLength",
"label": "segmentLength"
},
"sequence": {
"id": "http://linked.earth/ontology/paleo_variables#sequence",
"label": "sequence"
},
"pollen sequence": {
"id": "http://linked.earth/ontology/paleo_variables#sequence",
"label": "sequence"
},
"silt": {
"id": "http://linked.earth/ontology/paleo_variables#silt",
"label": "silt"
},
"%_silt": {
"id": "http://linked.earth/ontology/paleo_variables#silt",
"label": "silt"
},
"x_silt": {
"id": "http://linked.earth/ontology/paleo_variables#silt",
"label": "silt"
},
"site": {
"id": "http://linked.earth/ontology/paleo_variables#site",
"label": "site"
},
"coresite": {
"id": "http://linked.earth/ontology/paleo_variables#site",
"label": "site"
},
"drilling project": {
"id": "http://linked.earth/ontology/paleo_variables#site",
"label": "site"
},
"lakename": {
"id": "http://linked.earth/ontology/paleo_variables#site",
"label": "site"
},
"region": {
"id": "http://linked.earth/ontology/paleo_variables#site",
"label": "site"
},
"sitename": {
"id": "http://linked.earth/ontology/paleo_variables#site",
"label": "site"
},
"site/hole": {
"id": "http://linked.earth/ontology/paleo_variables#site",
"label": "site"
},
"sitecount": {
"id": "http://linked.earth/ontology/paleo_variables#siteCount",
"label": "siteCount"
},
"#ofsites": {
"id": "http://linked.earth/ontology/paleo_variables#siteCount",
"label": "siteCount"
},
"sodium": {
"id": "http://linked.earth/ontology/paleo_variables#sodium",
"label": "sodium"
},
"na": {
"id": "http://linked.earth/ontology/paleo_variables#sodium",
"label": "sodium"
},
"na_": {
"id": "http://linked.earth/ontology/paleo_variables#sodium",
"label": "sodium"
},
"solarirradiance": {
"id": "http://linked.earth/ontology/paleo_variables#solarIrradiance",
"label": "solarIrradiance"
},
"solar irradiance": {
"id": "http://linked.earth/ontology/paleo_variables#solarIrradiance",
"label": "solarIrradiance"
},
"sunfrac": {
"id": "http://linked.earth/ontology/paleo_variables#solarIrradiance",
"label": "solarIrradiance"
},
"streamflow": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"aprq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"augq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"decq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"febq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"janq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"julyq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"juneq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"marchq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"mayq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"novq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"octq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"septq": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"discharge": {
"id": "http://linked.earth/ontology/paleo_variables#streamflow",
"label": "streamflow"
},
"sulfur": {
"id": "http://linked.earth/ontology/paleo_variables#sulfur",
"label": "sulfur"
},
"sulphur": {
"id": "http://linked.earth/ontology/paleo_variables#sulfur",
"label": "sulfur"
},
"temperature": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperature variable": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"apr": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"aug": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"fra06 air temperature": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"feb": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"ice_core_c": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"jul": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"jun": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"jan": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"jultanom": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"jultanomloess": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"maat": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"mat": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"may": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"msat": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"msat russell 2018": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"meant": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nov": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"oct": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"pls_c2_temp": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"pollen_t": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sbt": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sep": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sst": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sst-d18o": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sst_ldi": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sst_amj": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sst_from_uk37": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sst_from_planktic0x2emgca": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"sst_from_planktic0x2ed18o": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"t anomaly": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tete": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tfev": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"thiv": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tanom": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom 10 ci": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom 25": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom 75": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom 90": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom best": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom for15": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom fra06": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp anom fra06-tr": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tsource": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"deep.temp": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"interpolatedtemperature": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nonreliabletemperature": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nonreliabletemperature 1": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nonreliabletemperature_1": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nonreliabletemperature_2": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nonreliabletemperature_3": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nonreliabletemperature_4": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"nonreliabletemperature 2": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"smoothedtemp": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"soiltemp": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"subt": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"t-source": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp2": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temp2s": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tempav0": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tempav8": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tempk": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tempnoelevcorrection": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tempnosourcecorrection": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temppartialcorrect": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"tempsmooth5": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperature 1": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperature 2": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperaturecomposite": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperature_1": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperature_2": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperature_3": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperature_4": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"temperaturer2": {
"id": "http://linked.earth/ontology/paleo_variables#temperature",
"label": "temperature"
},
"thickness": {
"id": "http://linked.earth/ontology/paleo_variables#thickness",
"label": "thickness"
},
"samp thick": {
"id": "http://linked.earth/ontology/paleo_variables#thickness",
"label": "thickness"
},
"sample thickness": {
"id": "http://linked.earth/ontology/paleo_variables#thickness",
"label": "thickness"
},
"sample_thickness": {
"id": "http://linked.earth/ontology/paleo_variables#thickness",
"label": "thickness"
},
"thicknesscomposite": {
"id": "http://linked.earth/ontology/paleo_variables#thickness",
"label": "thickness"
},
"totalcarbon": {
"id": "http://linked.earth/ontology/paleo_variables#totalCarbon",
"label": "totalCarbon"
},
"tc": {
"id": "http://linked.earth/ontology/paleo_variables#totalCarbon",
"label": "totalCarbon"
},
"totalnitrogen": {
"id": "http://linked.earth/ontology/paleo_variables#totalNitrogen",
"label": "totalNitrogen"
},
"tn": {
"id": "http://linked.earth/ontology/paleo_variables#totalNitrogen",
"label": "totalNitrogen"
},
"totalpollen": {
"id": "http://linked.earth/ontology/paleo_variables#totalPollen",
"label": "totalPollen"
},
"pollen": {
"id": "http://linked.earth/ontology/paleo_variables#totalPollen",
"label": "totalPollen"
},
"treepollen": {
"id": "http://linked.earth/ontology/paleo_variables#totalPollen",
"label": "totalPollen"
},
"treecover": {
"id": "http://linked.earth/ontology/paleo_variables#treeCover",
"label": "treeCover"
},
"uncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"unspecified margin of error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"13cleafwaxc29-33err": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"a_site_std": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"age_uncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"annual precipitation error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"c20 total unc": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"c22 total unc": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"c24 total unc": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"c26 total unc": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"c28 total unc": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"c30 total unc": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"calibration error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"dmar_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"dmar_uncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"epsilon c28-c22 uncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"epsilon c28-c24 uncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"epsilon uncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"epsilon28-22uncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"jas_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"jaserror": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"srcauncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"summer precipitation error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"tterror": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"t_site_std": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uk37_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uk_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"winter precipitation error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"ageerror": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"ageuncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"ageuncertaintyother": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"bubblenumberdensityerror": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d13c error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d13c std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d13cprecision": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d13cstandard": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d13c_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18o error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18oprecision": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18oprecisioncomposite": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18ostandard": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18ostandardcomposite": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18ouncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18o_grass_leaf_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18o_sphagnum_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d18o_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"d2hleafwaxc28err": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"dd error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"dd unc": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"dduncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"err": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"error1": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"error2": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"error3": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"lakeareaerror": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"lakevolumeerror": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"nc30_err": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"precipitationuncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"range": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"temperror": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"temperatureuncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"temperature_error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty (\xB1)": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty.temperature": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty_1": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty_2": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty_3": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty_4": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty_temperature": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty",
"label": "uncertainty"
},
"uncertainty1s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"68% confidence interval margin of error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"2h_dino_1sig": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c23 stdev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c23 \u03B4d std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c24 d2h stdev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c25 stdev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c25 \u03B4d std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c27 stdev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c29 d13c std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c29 dd std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c29 stdev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c29 \u03B413c std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c29 \u03B413c std dev\xA0[\xB1]": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c29 \u03B4d std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c29 \u03B4d std dev\xA0[\xB1]": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c30 dd std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c31 d13c std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c31 dd std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c31 \u03B413c std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c31 \u03B4d std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c31d13csd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c33 \u03B413c std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"c33 \u03B4d std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"cbtsd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"map1-sigma": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"mbtsd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"mg_ca_sd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"sd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"sd_anomaly": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"se": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdev c28 dd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"u371sigmauncertainty-": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"wmt1-sigma": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"d excess stdev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"d13c_c31_sd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"dd std dev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"from_68": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"precipitation std": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"precipitation std (with h-set)": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"std": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stddev": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stddev___": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdev c24": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdev c26": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdev c28": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdev weighted average": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdevc24": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdevc25": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdevc26": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdevc27": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdevc28": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdevc29": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"stdevc31": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"to_68": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty1s",
"label": "uncertainty1s"
},
"uncertainty2s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty2s",
"label": "uncertainty2s"
},
"95% confidence interval margin of error": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty2s",
"label": "uncertainty2s"
},
"2 sigma": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty2s",
"label": "uncertainty2s"
},
"map2-sigma": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty2s",
"label": "uncertainty2s"
},
"wmt2-sigma": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty2s",
"label": "uncertainty2s"
},
"from_95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty2s",
"label": "uncertainty2s"
},
"to_95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertainty2s",
"label": "uncertainty2s"
},
"uncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"unspecified error upper bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"acc max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"ageold": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"age_max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"chironomid d18o max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"imon1953_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"jas+": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"map_max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"mat_max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"matmax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"maxelevm": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"pannommax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"pannommaxuncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"panommax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"panommaxuncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"pmax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"saug_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"sete_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"sfev_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"shiv_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"sunfracmax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"tete_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"tfev_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"thiv_s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"treecover_max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"uncertaintydust0x5b0x250x5d0x28plus0x29": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"wmt_max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"wmtmax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"age max": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"agebaconuncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"agebchronuncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"agemax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"ageoxcaluncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"agestalageuncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"ageuncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"age_old": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"agecoprauncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"agelininterpuncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"agelinreguncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"cal_age_range_old": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"d18ouncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"errorup": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"errorup2": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"error_older_age": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"lakelevelhi": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"lakelevelmax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"max age": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"max rh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"maxage": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"meltuncertaintyhigh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"precip+": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"temperrorplus": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"temperrorupper": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"temperaturewarm": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"uncertainty_plus": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"upper band": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"uppererr": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"uppererr2": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"year_old": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"\u2206rh_upper": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh",
"label": "uncertaintyHigh"
},
"uncertaintyhigh1s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"68% confidence interval upper bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"p+sd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"q0.84": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"t+sd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"t.plussd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"temperature 1 sigma range high": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"age_y_bp+1s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"ddp_1s_upper": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"deltat + 1 sigma": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"ice volume adjusted": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"ice volume and vegetation adjusted": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"precip_1s_upper": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"precip_1s_uppper": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s",
"label": "uncertaintyHigh1s"
},
"uncertaintyhigh50": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh50",
"label": "uncertaintyHigh50"
},
"50% confidence interval upper bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh50",
"label": "uncertaintyHigh50"
},
"0.25_quantile_dust_flux": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh50",
"label": "uncertaintyHigh50"
},
"0.75_quantile_dust_flux": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh50",
"label": "uncertaintyHigh50"
},
"precip dd 75 ci": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh50",
"label": "uncertaintyHigh50"
},
"uncertaintyhigh90": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh90",
"label": "uncertaintyHigh90"
},
"90% confidence interval upper bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh90",
"label": "uncertaintyHigh90"
},
"pcpanomci95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh90",
"label": "uncertaintyHigh90"
},
"uncertaintyhigh95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"95% confidence interval upper bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"0.975_quantile_dust_flux": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"95upperage": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"q0.975": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"age95conmax": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"age_97.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"age_calbp95+": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"d13c_97.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"d18o_97.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"maxage95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"max_age_95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"upper95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyHigh95",
"label": "uncertaintyHigh95"
},
"uncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"unspecified error lower bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"acc min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"age_min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"chironomid d18o min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"imon1953_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"jas-": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"map_min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"mat_min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"matmin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"minelevm": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"pannommin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"pannomminuncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"panommin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"panomminuncertainty": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"pmin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"saug_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"sete_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"sfev_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"shiv_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"sunfracmin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"tete_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"tfev_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"thiv_i": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"treecover_min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"uncertaintydust0x5b0x250x5d0x28minus0x29": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"wmt_min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"wmtmin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"age min": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"agebaconuncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"agebchronuncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"agemin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"ageoxcaluncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"agestalageuncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"ageuncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"ageyoung": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"age_young": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"agecoprauncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"agelininterpuncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"agelinreguncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"cal_age_range_young": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"d18ouncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"errorlow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"errorlow2": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"error_younger_age": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"lakelevello": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"lakelevelmin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"lowererr": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"meltuncertaintylow": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"min age": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"min rh": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"minage": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"precip-": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"temperrorlower": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"temperaturecold": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"undertainty_minus": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"yearbottom": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"yeartop": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"\u2206rh_lower": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow",
"label": "uncertaintyLow"
},
"uncertaintylow1s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"68% confidence interval lower bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"p-sd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"q0.16": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"t-sd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"t.minussd": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"temperature 1 sigma range low": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"age_y_bp-1s": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"ddp_1s_lower": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"deltat - 1 sigma": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"precip_1s_lower": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow1s",
"label": "uncertaintyLow1s"
},
"uncertaintylow90": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow90",
"label": "uncertaintyLow90"
},
"90% confidence interval lower bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow90",
"label": "uncertaintyLow90"
},
"age97.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow90",
"label": "uncertaintyLow90"
},
"age_5thpercentile": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow90",
"label": "uncertaintyLow90"
},
"age_95thpercentile": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow90",
"label": "uncertaintyLow90"
},
"uncertaintylow95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"95% confidence interval lower bound": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"0.025_quantile_dust_flux": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"95lowerage": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"precip dd 25 ci": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"q0.025": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"age2.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"age95confmin": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"age_2.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"age_calbp95-": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"d13c_2.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"d18o_2.5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"lower95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"lowererr2": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"minage95": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"pcpanomci5": {
"id": "http://linked.earth/ontology/paleo_variables#uncertaintyLow95",
"label": "uncertaintyLow95"
},
"upwelling": {
"id": "http://linked.earth/ontology/paleo_variables#upwelling",
"label": "upwelling"
},
"upwelling index": {
"id": "http://linked.earth/ontology/paleo_variables#upwelling",
"label": "upwelling"
},
"uranium": {
"id": "http://linked.earth/ontology/paleo_variables#uranium",
"label": "uranium"
},
"u": {
"id": "http://linked.earth/ontology/paleo_variables#uranium",
"label": "uranium"
},
"varvethickness": {
"id": "http://linked.earth/ontology/paleo_variables#varveThickness",
"label": "varveThickness"
},
"varve thickness": {
"id": "http://linked.earth/ontology/paleo_variables#varveThickness",
"label": "varveThickness"
},
"varve_width": {
"id": "http://linked.earth/ontology/paleo_variables#varveThickness",
"label": "varveThickness"
},
"volume": {
"id": "http://linked.earth/ontology/paleo_variables#volume",
"label": "volume"
},
"samp vol": {
"id": "http://linked.earth/ontology/paleo_variables#volume",
"label": "volume"
},
"watercontent": {
"id": "http://linked.earth/ontology/paleo_variables#waterContent",
"label": "waterContent"
},
"water content": {
"id": "http://linked.earth/ontology/paleo_variables#waterContent",
"label": "waterContent"
},
"watertabledepth": {
"id": "http://linked.earth/ontology/paleo_variables#waterTableDepth",
"label": "waterTableDepth"
},
"water table depth": {
"id": "http://linked.earth/ontology/paleo_variables#waterTableDepth",
"label": "waterTableDepth"
},
"water table": {
"id": "http://linked.earth/ontology/paleo_variables#waterTableDepth",
"label": "waterTableDepth"
},
"water table detrended": {
"id": "http://linked.earth/ontology/paleo_variables#waterTableDepth",
"label": "waterTableDepth"
},
"water_tabledepth": {
"id": "http://linked.earth/ontology/paleo_variables#waterTableDepth",
"label": "waterTableDepth"
},
"water wm": {
"id": "http://linked.earth/ontology/paleo_variables#waterTableDepth",
"label": "waterTableDepth"
},
"water_table_depth": {
"id": "http://linked.earth/ontology/paleo_variables#waterTableDepth",
"label": "waterTableDepth"
},
"wetbulkdensity": {
"id": "http://linked.earth/ontology/paleo_variables#wetBulkDensity",
"label": "wetBulkDensity"
},
"wetbd": {
"id": "http://linked.earth/ontology/paleo_variables#wetBulkDensity",
"label": "wetBulkDensity"
},
"year": {
"id": "http://linked.earth/ontology/paleo_variables#year",
"label": "year"
},
"recon0x2edate": {
"id": "http://linked.earth/ontology/paleo_variables#year",
"label": "year"
},
"year b2k": {
"id": "http://linked.earth/ontology/paleo_variables#year",
"label": "year"
},
"age_ce": {
"id": "http://linked.earth/ontology/paleo_variables#year",
"label": "year"
},
"year start": {
"id": "http://linked.earth/ontology/paleo_variables#year",
"label": "year"
},
"yearensemble": {
"id": "http://linked.earth/ontology/paleo_variables#year",
"label": "year"
},
"yearrounded": {
"id": "http://linked.earth/ontology/paleo_variables#year",
"label": "year"
},
"zscore": {
"id": "http://linked.earth/ontology/paleo_variables#zscore",
"label": "zscore"
},
"z_score": {
"id": "http://linked.earth/ontology/paleo_variables#zscore",
"label": "zscore"
}
}
}
};
var RSYNONYMS = {};
for (const category in SYNONYMS) {
for (const className in SYNONYMS[category]) {
const categoryObj = SYNONYMS[category];
if (categoryObj) {
const synonyms = categoryObj[className];
if (synonyms) {
for (const synonym in synonyms) {
const synObj = synonyms[synonym];
RSYNONYMS[synObj.id] = synObj.label;
}
}
}
}
}
// src/globals/schema.ts
var SCHEMA = {
"Dataset": {
"@id": ["{dataSetName}"],
"@toJson_pre": [
"setArchiveTypeLabel"
],
"datasetId": {
"name": "hasDatasetId"
},
"dataSetName": {
"name": "hasName",
"alternates": ["paleoArchiveName"]
},
"dataSource": {
"name": "hasDataSource"
},
"originalDataURL": {
"name": "hasOriginalDataUrl",
"alternates": ["originalDataUrl", "additionalDataUrl", "originalDataSource", "originalDataURL", "originalSourceUrl", "paleoData_WDSPaleoUrl"]
},
"dataContributor": {
"name": "hasContributor",
"schema": "Person",
"alternates": ["whoEnteredinDB", "MetadataEnteredByWhom", "contributorName"],
"fromJson": "parsePersons",
"multiple": true
},
"archiveType": {
"name": "hasArchiveType",
"alternates": [
"archive",
"paleoDataArchive",
"paleoData_Archive",
"Archive"
],
"type": "Individual",
"synonyms": SYNONYMS["ARCHIVES"]["ArchiveType"],
"class_range": "ArchiveType",
"skip_auto_convert_to_json": true
},
"changelog": {
"name": "hasChangeLog",
"schema": "ChangeLog",
"multiple": true
},
"notes": {
"name": "hasNotes"
},
"collectionName": {
"name": "hasCollectionName",
"alternates": ["collectionName1", "collectionName2", "collectionName3"]
},
"collectionYear": {
"name": "hasCollectionYear"
},
"investigator": {
"name": "hasInvestigator",
"alternates": ["investigators"],
"schema": "Person",
"multiple": true,
"fromJson": "parsePersons"
},
"creator": {
"name": "hasCreator",
"schema": "Person",
"multiple": true,
"fromJson": "parsePersons"
},
"funding": {
"name": "hasFunding",
"multiple": true,
"schema": "Funding"
},
"pub": {
"name": "hasPublication",
"multiple": true,
"schema": "Publication"
},
"geo": {
"name": "hasLocation",
"schema": "Location",
"fromJson": "parseLocation",
"toJson": "locationToJson"
},
"paleoData": {
"name": "hasPaleoData",
"multiple": true,
"schema": "PaleoData"
},
"chronData": {
"name": "hasChronData",
"multiple": true,
"schema": "ChronData"
},
"googleSpreadSheetKey": {
"name": "hasSpreadsheetLink",
"fromJson": "getGoogleSpreadsheetUrl",
"toJson": "getGoogleSpreadsheetKey"
},
"dataSetVersion": {
"name": "hasVersion"
},
"compilation_nest": {
"name": "hasCompilationNest",
"alternates": [
"pages2kRegion",
"paleoDIVERSiteId",
"sisalSiteId",
"LegacyClimateDatasetId",
"LegacyClimateSiteId",
"ch2kCoreCode",
"coralHydro2kGroup",
"iso2kCertification",
"iso2kUI",
"ocean2kID",
"pages2kId",
"pages2kID",
"QCCertification",
"SISALEntityID"
]
}
},
"Compilation": {
"@id": ["{compilationName}", ".", "{@id}"],
"compilationName": {
"name": "hasName"
},
"compilationVersion": {
"name": "hasVersion",
"multiple": true
}
},
"ChangeLog": {
"@id": ["{@parent.@id}", ".ChangeLog.", "{@index}"],
"@category": "ChangeLog",
"curator": {
"name": "hasCurator"
},
"version": {
"name": "hasVersion"
},
"lastVersion": {
"name": "hasLastVersion"
},
"timestamp": {
"name": "hasTimestamp"
},
"changes": {
"name": "hasChanges",
"multiple": true,
"type": "Individual",
"schema": "Change",
"fromJson": "parseChanges",
"toJson": "changesToJson"
},
"notes": {
"name": "hasNotes"
}
},
"Change": {
"@id": ["{@parent.@id}", ".Change.", "{@index}"],
"name": {
"name": "hasName"
},
"notes": {
"name": "hasNotes",
"multiple": true
}
},
"Funding": {
"@id": [
"{fundingAgency|agency}",
".",
"{fundingGrant|grant}"
],
"agency": {
"name": "hasFundingAgency",
"alternates": ["fundingAgency"]
},
"grant": {
"name": "hasGrant",
"multiple": true,
"alternates": ["fundingGrant"]
},
"country": {
"name": "hasFundingCountry",
"alternates": ["fundingCountry"]
},
"investigator": {
"name": "hasInvestigator",
"schema": "Person",
"multiple": true,
"fromJson": "parsePersons"
}
},
"Publication": {
"@id": [
"Publication.",
"{identifier.0.id|@parent.dataSetName}",
"{index}"
],
"title": {
"name": "hasTitle"
},
"abstract": {
"name": "hasAbstract"
},
"institution": {
"name": "hasInstitution"
},
"issue": {
"name": "hasIssue"
},
"journal": {
"name": "hasJournal"
},
"volume": {
"name": "hasVolume",
"type": "string"
},
"pages": {
"name": "hasPages"
},
"year": {
"name": "hasYear",
"type": "integer",
"alternates": ["pubYear"]
},
"publisher": {
"name": "hasPublisher"
},
"report": {
"name": "hasReport"
},
"type": {
"name": "hasType"
},
"citation": {
"name": "hasCitation",
"type": "string"
},
"citeKey": {
"name": "hasCiteKey",
"type": "string"
},
"url": {
"name": "hasUrl",
"alternates": ["link"],
"multiple": true
},
"dataUrl": {
"name": "hasDataUrl",
"alternates": ["data_Url", "pubDataUrl"],
"multiple": true
},
"doi": {
"name": "hasDOI",
"type": "string",
"alternates": ["DOI"]
},
"author": {
"name": "hasAuthor",
"alternates": ["authors"],
"schema": "Person",
"multiple": true,
"fromJson": "parsePersons"
},
"firstauthor": {
"name": "hasFirstAuthor",
"alternates": ["firstAuthor"],
"schema": "Person",
"fromJson": "parsePersons"
}
},
"PaleoData": {
"@id": [
"{@parent.dataSetName}",
".PaleoData",
"{@index}"
],
"paleoDataName": {
"name": "hasName"
},
"measurementTable": {
"alternates": ["paleoMeasurementTable"],
"name": "hasMeasurementTable",
"multiple": true,
"schema": "DataTable"
},
"model": {
"alternates": ["paleoModel"],
"name": "modeledBy",
"multiple": true,
"schema": "Model"
}
},
"ChronData": {
"@id": [
"{@parent.dataSetName}",
".ChronData",
"{@index}"
],
"measurementTable": {
"alternates": ["chronMeasurementTable"],
"name": "hasMeasurementTable",
"multiple": true,
"schema": "DataTable"
},
"model": {
"alternates": ["chronModel"],
"name": "modeledBy",
"multiple": true,
"schema": "Model"
}
},
"Model": {
"@id": ["{@parent.@id}", ".Model", "{@index}"],
"method": {
"name": "hasCode"
},
"summaryTable": {
"name": "hasSummaryTable",
"multiple": true,
"schema": "DataTable"
},
"ensembleTable": {
"name": "hasEnsembleTable",
"multiple": true,
"schema": "DataTable"
},
"distributionTable": {
"name": "hasDistributionTable",
"multiple": true,
"schema": "DataTable"
}
},
"DataTable": {
"@id": ["{filename}", "_trunc(4)"],
"toJson": ["orderVariables"],
"fromJson": ["setColumnNumbers"],
"filename": {
"name": "hasFileName"
},
"columns": {
"name": "hasVariable",
"multiple": true,
"schema": "Variable"
},
"missingValue": {
"name": "hasMissingValue"
}
},
"Variable": {
"@id": [
"{foundInTable|@parent.@id}",
".",
"{TSid|tsid|tSid}",
".",
"{variableName|name}"
],
"@fromJson": [
"wrapUncertainty",
"addFoundInTable",
"addFoundInDataset",
"addVariableValues",
"addStandardVariable",
"stringifyColumnNumbersArray"
],
"@toJson_pre": [
"removeFoundInTable",
"removeFoundInDataset",
"setVariableNameFromStandardVariableLabel",
"setUnitsLabel",
"setProxyLabel",
"setArchiveTypeLabel",
"setProxyGeneralLabel"
],
"@toJson": [
"unwrapUncertainty",
"extractVariableValues",
"unarrayColumnNumber"
],
"number": {
"name": "hasColumnNumber",
"type": "integer"
},
"TSid": {
"name": "hasVariableId",
"alternates": ["tsid", "tSid"]
},
"variableName": {
"name": "hasName"
},
"variableType": {
"name": "hasType"
},
"archiveType": {
"name": "hasArchiveType",
"alternates": [
"archive",
"paleoDataArchive",
"paleoData_Archive",
"Archive"
],
"type": "Individual",
"synonyms": SYNONYMS.ARCHIVES?.ArchiveType,
"class_range": "ArchiveType",
"skip_auto_convert_to_json": true
},
"units": {
"name": "hasUnits",
"type": "Individual",
"synonyms": SYNONYMS.UNITS?.PaleoUnit,
"class_range": "PaleoUnit",
"skip_auto_convert_to_json": true
},
"missingValue": {
"name": "hasMissingValue"
},
"hasMaxValue": {
"name": "hasMaxValue",
"alternates": ["hasMax"],
"type": "float"
},
"hasMinValue": {
"name": "hasMinValue",
"alternates": ["hasMin"],
"type": "float"
},
"hasMeanValue": {
"name": "hasMeanValue",
"alternates": ["hasMean"],
"type": "float"
},
"hasMedianValue": {
"name": "hasMedianValue",
"alternates": ["hasMedian"],
"type": "float"
},
"description": {
"name": "hasDescription"
},
"isPrimary": {
"name": "isPrimary",
"type": "boolean"
},
"isComposite": {
"name": "isComposite",
"type": "boolean"
},
"measurementInstrument": {
"name": "hasInstrument",
"type": "Individual",
"category": "Instrument"
},
"calibration": {
"name": "calibratedVia",
"schema": "Calibration",
"type": "Individual",
"multiple": true
},
"interpretation": {
"name": "hasInterpretation",
"schema": "Interpretation",
"category": "Interpretation",
"type": "Individual",
"multiple": true
},
"resolution": {
"name": "hasResolution",
"category": "Resolution",
"schema": "Resolution",
"type": "Individual",
"alternates": ["hasResolution"]
},
"physicalSample": {
"name": "hasPhysicalSample",
"schema": "PhysicalSample",
"category": "PhysicalSample",
"alternates": ["hasPhysicalSample"],
"type": "Individual",
"multiple": true
},
"uncertainty": {
"name": "hasUncertainty"
},
"uncertaintyAnalytical": {
"name": "hasUncertaintyAnalytical"
},
"uncertaintyReproducibility": {
"name": "hasUncertaintyReproducibility"
},
"proxy": {
"name": "hasProxy",
"type": "Individual",
"synonyms": SYNONYMS.PROXIES?.PaleoProxy,
"class_range": "PaleoProxy",
"skip_auto_convert_to_json": true
},
"proxyGeneral": {
"name": "hasProxyGeneral",
"type": "Individual",
"synonyms": SYNONYMS.PROXIES?.PaleoProxyGeneral,
"class_range": "PaleoProxyGeneral",
"skip_auto_convert_to_json": true
},
"inCompilationBeta": {
"name": "partOfCompilation",
"schema": "Compilation",
"category": "Compilation",
"type": "Individual",
"multiple": true
},
"notes": {
"name": "hasNotes",
"alternates": ["qcNotes", "qCNotes", "qCnotes", "qcnotes", "QCnotes", "QCNotes"]
},
"hasValues": {
"type": "string"
},
"foundInTable": {
"type": "Individual"
},
"foundInDataset": {
"type": "Individual"
},
"hasStandardVariable": {
"type": "EnumeratedIndividual",
"synonyms": SYNONYMS.VARIABLES?.PaleoVariable,
"class_range": "PaleoVariable",
"skip_auto_convert_to_json": true
}
},
"PhysicalSample": {
"hasidentifier": {
"name": "hasIGSN"
},
"hasname": {
"name": "name"
},
"housedat": {
"name": "housedAt"
}
},
"Resolution": {
"@id": ["{@parent.@id}", ".Resolution"],
"@toJson_pre": [
"setUnitsLabel"
],
"hasMaxValue": { "name": "hasMaxValue", "alternates": ["hasMax"], "type": "float" },
"hasMinValue": { "name": "hasMinValue", "alternates": ["hasMin"], "type": "float" },
"hasMeanValue": { "name": "hasMeanValue", "alternates": ["hasMean"], "type": "float" },
"hasMedianValue": { "name": "hasMedianValue", "alternates": ["hasMedian"], "type": "float" },
"units": {
"name": "hasUnits",
"type": "Individual",
"synonyms": SYNONYMS.UNITS?.PaleoUnit,
"class_range": "PaleoUnit",
"skip_auto_convert_to_json": true
}
},
"Location": {
"@id": ["{@parent.dataSetName}", ".Location"],
"coordinates": {
"type": "Geographic_coordinate",
"class_type": "string"
},
"coordinatesFor": {
"type": "Individual"
},
"type": { "name": "hasType" },
"continent": { "name": "hasContinent" },
"country": { "name": "hasCountry" },
"countryOcean": { "name": "hasCountryOcean" },
"description": { "name": "hasDescription" },
"elevation": { "name": "hasElevation" },
"geometryType": { "name": "hasGeometryType" },
"latitude": { "name": "hasLatitude" },
"longitude": { "name": "hasLongitude" },
"locationName": { "name": "hasLocationName", "alternates": ["secondarySiteName"] },
"ocean": { "name": "hasOcean", "alternates": ["ocean2"] },
"siteName": { "name": "hasSiteName" },
"notes": { "name": "hasNotes" }
},
"Interpretation": {
"@id": [
"{@parent.@id}",
".Interpretation",
"{@index}"
],
"@fromJson": ["addInterpretationRank"],
"@toJson_pre": [
"setUnitsLabel",
"setSeasonalityLabels",
"setInterpretationVariableLabel"
],
"variable": {
"name": "hasVariable",
"type": "Individual",
"synonyms": SYNONYMS["INTERPRETATION"]["InterpretationVariable"],
"class_range": "InterpretationVariable",
"skip_auto_convert_to_json": true
},
"variableGeneral": {
"name": "hasVariableGeneral",
"alternates": ["variableGroup"]
},
"variableGeneralDirection": {
"name": "hasVariableGeneralDirection",
"alternates": ["variableGroupDirection"]
},
"variableDetail": {
"name": "hasVariableDetail",
"alternates": ["variabledetail"]
},
"seasonality": {
"name": "hasSeasonality",
"type": "Individual",
"synonyms": SYNONYMS["INTERPRETATION"]["InterpretationSeasonality"],
"class_range": "InterpretationSeasonality",
"skip_auto_convert_to_json": true
},
"seasonalityOriginal": {
"name": "hasSeasonalityOriginal",
"type": "Individual",
"synonyms": SYNONYMS["INTERPRETATION"]["InterpretationSeasonality"],
"class_range": "InterpretationSeasonality",
"skip_auto_convert_to_json": true
},
"seasonalityGeneral": {
"name": "hasSeasonalityGeneral",
"type": "Individual",
"synonyms": SYNONYMS["INTERPRETATION"]["InterpretationSeasonality"],
"class_range": "InterpretationSeasonality",
"skip_auto_convert_to_json": true
},
"notes": { "name": "hasNotes" },
"rank": { "name": "hasRank" },
// TODO: Auto-create if it doesnt exist
"basis": { "name": "hasBasis" },
"scope": { "name": "hasScope" },
"mathematicalRelation": { "name": "hasMathematicalRelation" },
"direction": {
"name": "hasDirection",
"alternates": ["interpDirection"]
},
"isLocal": {
"name": "isLocal",
"alternates": ["local"]
}
},
"Calibration": {
"@id": ["{@parent.@id}", ".Calibration"],
"@fromJson": ["wrapUncertainty"],
"@toJson": ["unwrapUncertainty"],
"datasetRange": {
"name": "hasDatasetRange"
},
"doi": {
"name": "hasDOI",
"alternates": ["calibrationDOI", "hasDOI", "transferFunctionDOI"]
},
"equation": {
"name": "hasEquation",
"alternates": ["calibrationEquation"]
},
"equationIntercept": {
"name": "hasEquationIntercept"
},
"equationR2": {
"name": "hasEquationR2"
},
"equationSlope": {
"name": "hasEquationSlope"
},
"equationSlopeUncertainty": {
"name": "hasEquationSlopeUncertainty"
},
"method": {
"name": "hasMethod"
},
"methodDetail": {
"name": "hasMethodDetail"
},
"proxyDataset": {
"name": "hasProxyDataset",
"alternates": ["transferFunctionTrainingSet"]
},
"targetDataset": {
"name": "hasTargetDataset",
"alternates": ["target", "dataset"]
},
"hasSeasonality": {
"name": "seasonality",
"alternates": ["transferFunctionTrainingSet"]
},
"notes": {
"name": "hasNotes",
"alternates": ["Note"]
},
"uncertainty": {
"name": "hasUncertainty",
"alternates": ["uncertainty", "calibrationUncertainty", "temperature12kUncertainty", "transferFunctionUncertainty"]
}
},
"Person": {
"@id": ["{name}"],
"name": {
"name": "hasName"
}
}
};
// src/globals/blacklist.ts
var BLACKLIST = {
"metadataMD5": 1,
"paleoData_paleoDataMD5": 1,
"paleoData_paleoMeasurementTableMD5": 1,
"paleoDataMD5": 1,
"paleoMeasurementTableMD5": 1,
"tagMD5": 1,
"chronData_chronDataMD5": 1,
"chronData_chronMeasurementTableMD5": 1,
"chronDataMD5": 1,
"chronMeasurementTableMD5": 1
};
var REVERSE_BLACKLIST = {
"inferredFrom": 1,
"foundInTable": 1,
"foundInDataset": 1
//'takenAtDepth' : 1
};
// src/utils/utils.ts
import { Writer } from "n3";
import { v4 as uuidv4 } from "uuid";
function uniqid(prefix = "", moreEntropy = false) {
let theUniqid;
if (moreEntropy) {
const uuid1 = uuidv4().replace(/-/g, "");
const uuid2 = uuidv4().replace(/-/g, "").substring(0, 8);
theUniqid = uuid1 + uuid2;
} else {
theUniqid = uuidv4().replace(/-/g, "");
}
return (prefix || "") + theUniqid;
}
function sanitizeId(id) {
if (!id)
return "";
return encodeURIComponent(id.replace(/[^a-zA-Z0-9\-\.]/g, "_"));
}
function ucfirst(str) {
if (!str)
return str;
return str.charAt(0).toUpperCase() + str.slice(1);
}
function lcfirst(str) {
if (!str)
return str;
return str.charAt(0).toLowerCase() + str.slice(1);
}
function camelCase(str) {
if (!str)
return str;
const words = str.split(/[^a-zA-Z0-9]+/);
return words.map((word, i) => {
if (i === 0)
return lcfirst(word);
return ucfirst(word);
}).join("");
}
function escape(str) {
if (!str)
return str;
return str.replace(/[\\"']/g, "\\$&").replace(/\u0000/g, "\\0");
}
async function serializeStore(store, type = "turtle", logger9) {
try {
const quads = store.getQuads(null, null, null, null);
const writer = new Writer({ format: type });
for (const quad of quads) {
writer.addQuad(quad);
}
return new Promise((resolve, reject) => {
writer.end((error, result) => {
if (error) {
reject(error);
} else {
resolve(result);
}
});
});
} catch (error) {
logger9.error("Error serializing graph: %s", error instanceof Error ? error.message : String(error));
throw new Error(`Failed to serialize graph: ${error instanceof Error ? error.message : String(error)}`);
}
}
function parseVariableValues(valuestr) {
if (Array.isArray(valuestr)) {
return valuestr;
}
let values;
try {
values = JSON.parse(valuestr);
} catch (error) {
try {
const cleanedStr = valuestr.replace(/\\"/g, '"');
const parsedStr = cleanedStr.replace(/NaN/g, "null").replace(/\bNaN\b/g, "null").replace(/\bnan\b/g, "null").replace(/\bNAN\b/g, "null").replace(/"NaN"/g, "null").replace(/"nan"/g, "null").replace(/"NAN"/g, "null");
values = JSON.parse(parsedStr);
} catch (innerError) {
console.error("Failed to parse variable values:", innerError);
values = valuestr;
}
}
return values;
}
// src/utils/bagit.ts
import * as fs from "fs";
import * as path from "path";
import * as crypto2 from "crypto";
async function createBagitFiles(bagitDir, metadata = {}) {
const bagitContent = "BagIt-Version: 1.0\nTag-File-Character-Encoding: UTF-8";
fs.writeFileSync(path.join(bagitDir, "bagit.txt"), bagitContent);
const bagInfo = {
"Bagging-Date": (/* @__PURE__ */ new Date()).toISOString(),
"Bag-Software-Agent": "lipdjs",
...metadata
};
const bagInfoContent = Object.entries(bagInfo).map(([key, value]) => `${key}: ${value}`).join("\n");
fs.writeFileSync(path.join(bagitDir, "bag-info.txt"), bagInfoContent);
await createManifest(bagitDir, "md5");
}
async function createManifest(bagitDir, algorithm) {
const dataDir = path.join(bagitDir, "data");
const manifestPath = path.join(bagitDir, `manifest-${algorithm}.txt`);
const files = getAllFiles(dataDir);
const checksums = await Promise.all(
files.map(async (file) => {
const relativePath = path.relative(bagitDir, file).replace(/\\/g, "/");
const checksum = await calculateChecksum(file, algorithm);
return `${checksum} ${relativePath}`;
})
);
fs.writeFileSync(manifestPath, checksums.join("\n"));
}
function getAllFiles(dir) {
const files = [];
function processDir(directory) {
const entries = fs.readdirSync(directory, { withFileTypes: true });
for (const entry of entries) {
const fullPath = path.join(directory, entry.name);
if (entry.isDirectory()) {
processDir(fullPath);
} else {
files.push(fullPath);
}
}
}
processDir(dir);
return files;
}
function calculateChecksum(filePath, algorithm) {
return new Promise((resolve, reject) => {
const hash = crypto2.createHash(algorithm);
const stream = fs.createReadStream(filePath);
stream.on("error", (err) => {
reject(err);
});
stream.on("data", (chunk) => {
hash.update(chunk);
});
stream.on("end", () => {
resolve(hash.digest("hex"));
});
});
}
// src/utils/rdfToLipd.ts
import pako from "pako";
var logger2 = Logger.getInstance();
var DF = DataFactory;
var RDFToLiPD = class {
/**
* Constructor for RDFToLiPD class
* @param store The RDF graph to convert
*/
constructor(store) {
this.lipdCsvs = {};
this.allfacts = {};
this.store = store;
this.graphurl = NSURL;
this.namespace = NSURL + "/";
this.schema = { ...SCHEMA };
this.rschema = this.getSchemaReverseMap();
logger2.debug("RDFToLiPD instance created");
}
/**
* Convert RDF graph to a LiPD file
* @param dsname Dataset name
* @param lipdfile Output LiPD file path
* @returns The converted LiPD data
*/
async convert(dsname, lipdfile) {
const lipd = this.convertToJson(dsname);
const tempDir = fs2.mkdtempSync("rdf_to_lipd_");
const dsDir = path2.join(tempDir, dsname);
const dataDir = path2.join(dsDir, "data");
try {
fs2.mkdirSync(dataDir, { recursive: true });
this.createCsvs(lipd, dataDir);
fs2.writeFileSync(
path2.join(dataDir, "metadata.jsonld"),
JSON.stringify(lipd, null, 4)
);
await this.createBagitFiles(dsDir);
await this.zipDirectory(dsDir, lipdfile);
logger2.debug("Successfully converted RDF to LiPD file: %s", lipdfile);
return lipd;
} catch (error) {
logger2.error("Error converting RDF to LiPD: %s", error instanceof Error ? error.message : String(error));
throw error;
} finally {
fs2.rmSync(tempDir, { recursive: true, force: true });
}
}
/**
* Convert RDF graph to LiPD JSON format
* @param dsname Dataset name
* @returns The converted LiPD JSON data
*/
convertToJson(dsname) {
this.schema = { ...SCHEMA };
this.rschema = this.getSchemaReverseMap();
this.allfacts = {};
this.indexFacts(this.namespace + dsname);
const lipd = this._convertToLipd(this.namespace + dsname, "Dataset", "Dataset", {});
return this.postProcessing(lipd);
}
/**
* Post-process the converted LiPD object
* @param obj Object to process
* @param parent Parent object
* @returns Processed object
*/
postProcessing(obj, parent = null) {
if (!obj || typeof obj !== "object") {
return obj;
}
if (!("@schema" in obj)) {
return obj;
}
const schemaname = obj["@schema"];
const tschema = this.schema[schemaname] || null;
if (tschema && "@toJson_pre" in tschema) {
for (const func of tschema["@toJson_pre"]) {
const fn = this[func];
if (fn) {
obj = fn.call(this, obj, parent);
}
}
}
for (const [key, value] of Object.entries(obj)) {
if (Array.isArray(value)) {
for (let i = 0; i < value.length; i++) {
obj[key][i] = this.postProcessing(value[i], obj);
}
} else {
obj[key] = this.postProcessing(value, obj);
}
}
if (tschema && "@toJson" in tschema) {
for (const func of tschema["@toJson"]) {
const fn = this[func];
if (fn) {
obj = fn.call(this, obj, parent);
}
}
}
if ("hasValues" in obj) {
const valuestr = obj["hasValues"];
obj["values"] = parseVariableValues(valuestr);
delete obj["hasValues"];
}
delete obj["@id"];
delete obj["@schema"];
delete obj["@category"];
if ("type" in obj) {
delete obj["type"];
}
return obj;
}
/**
* Get property details from schema
* @param pname Property name
* @param schema Schema object
* @returns Property details
*/
getPropertyDetails(pname, schema) {
const details = { name: pname };
if (schema && pname in schema) {
for (const [key, value] of Object.entries(schema[pname])) {
details[key] = value;
}
}
return details;
}
/**
* Get RDF property details from schema
* @param pname Property name
* @param fullkey Full property key
* @param schema Schema object
* @returns Property details
*/
getRdfPropertyDetails(pname, fullkey, schema) {
const key = pname;
pname = lcfirst(pname);
const details = { name: pname };
if (schema && fullkey in schema) {
for (const [key2, value] of Object.entries(schema[fullkey])) {
details[key2] = value;
}
}
return details;
}
/**
* Get schema reverse map
* @returns Reverse schema map
*/
getSchemaReverseMap() {
const newschema = {};
for (const [schid, sch] of Object.entries(this.schema)) {
const newsch = {};
for (const [prop, details] of Object.entries(sch)) {
if (prop[0] === "@") {
continue;
}
if ("skip_auto_convert_to_json" in details) {
continue;
}
const pdetails = this.getPropertyDetails(prop, sch);
const pname = pdetails.name;
pdetails.name = prop;
newsch[pname] = pdetails;
if ("category" in pdetails) {
const catpname = pname + "." + ucfirst(pdetails.category);
newsch[catpname] = pdetails;
}
if ("schema" in pdetails) {
const schpname = pname + "." + ucfirst(pdetails.schema);
newsch[schpname] = pdetails;
}
}
newschema[schid] = newsch;
}
return newschema;
}
/**
* Extract local name from URL
* @param url URL to extract from
* @returns Local name
*/
localName(url) {
return url.replace(/^.*[#/]/, "");
}
/**
* Convert RDF to LiPD format
* @param id ID to convert
* @param category Category of the item
* @param schemaname Schema name
* @param pagesdone Map of processed pages
* @returns Converted LiPD object
*/
convertToLipd(id, category, schemaname, pagesdone) {
if (pagesdone.has(id))
return null;
pagesdone.set(id, true);
const facts = this.allfacts[id];
if (!facts)
return null;
const obj = {};
const schema = this.schema[schemaname];
for (const [pname, values] of Object.entries(facts)) {
if (pname === "type")
continue;
const details = this.getRdfPropertyDetails(pname, pname, schema);
const propname = details.name;
if (Array.isArray(REVERSE_BLACKLIST) && REVERSE_BLACKLIST.includes(propname))
continue;
const converted = [];
for (const value of values) {
if (value["@type"] === "uri" && value["@id"]) {
const subid = value["@id"];
const subobj = this.convertToLipd(subid, category, schemaname, pagesdone);
if (subobj)
converted.push(subobj);
} else if (value["@value"] !== void 0) {
converted.push(value["@value"]);
}
}
if (converted.length > 0) {
if (details.multiple) {
obj[propname] = converted;
} else {
obj[propname] = converted[0];
}
}
}
return obj;
}
/**
* Order variables in a datatable
* @param datatable Datatable object
* @param parent Parent object
* @returns Datatable object with ordered variables
*/
orderVariables(datatable, parent = null) {
datatable.variables = datatable.variables.sort((a, b) => (a.columnNumber ?? 0) - (b.columnNumber ?? 0));
console.log("orderVariables", datatable.variables);
return datatable;
}
changesToJson(change, parent = null) {
let newChange = {};
if (change.name) {
newChange[change.name] = change.notes || [];
return newChange;
}
return null;
}
/**
* Convert location to GeoJSON format
* @param geo Location object
* @param parent Parent object
* @returns GeoJSON object
*/
locationToJson(geo, parent = null) {
const geojson = {
type: "Feature",
geometry: {
type: "Point",
coordinates: [0, 0, 0]
},
properties: {}
};
if ("coordinates" in geo) {
const latlong = geo["coordinates"].split(",");
geojson.geometry.coordinates = [
parseFloat(latlong[1]),
parseFloat(latlong[0]),
latlong.length > 2 ? parseFloat(latlong[2]) : 0
];
}
if ("long" in geo) {
geojson.geometry.coordinates[0] = parseFloat(geo["long"]);
}
if ("longitude" in geo) {
geojson.geometry.coordinates[0] = parseFloat(geo["longitude"]);
}
if ("lat" in geo) {
geojson.geometry.coordinates[1] = parseFloat(geo["lat"]);
}
if ("latitude" in geo) {
geojson.geometry.coordinates[1] = parseFloat(geo["latitude"]);
}
if ("alt" in geo && geo["alt"] !== "NA") {
geojson.geometry.coordinates[2] = parseFloat(geo["alt"]);
}
if ("elevation" in geo && geo["elevation"] !== "NA") {
geojson.geometry.coordinates[2] = parseFloat(geo["elevation"]);
}
for (const [prop, value] of Object.entries(geo)) {
if (prop.startsWith("@"))
continue;
if (prop === "locationType") {
geojson.type = geo["locationType"];
} else if (prop !== "coordinates" && prop !== "coordinatesFor") {
if (!prop.match(/^(geo|wgs84):/)) {
if (!["long", "lat", "alt"].includes(prop)) {
geojson.properties[prop] = value;
}
}
}
}
return geojson;
}
/**
* Unarray column number
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with unarrayed number
*/
unarrayColumnNumber(variable, parent = null) {
if (!variable)
return variable;
if ("number" in variable) {
if (Array.isArray(variable["number"]) && variable["number"].length === 1) {
variable["number"] = variable["number"][0];
}
if (typeof variable["number"] === "string") {
variable["number"] = JSON.parse(variable["number"]);
}
}
return variable;
}
/**
* Extract table data from columns
* @param table The table containing columns with data
* @returns Array of row data
*/
getTableData(table) {
const data = [];
if (!table.columns)
return data;
const maxLength = Math.max(...table.columns.map((col) => col.values?.length || 0));
for (let i = 0; i < maxLength; i++) {
const row = table.columns.map((col) => col.values[i] ?? null);
data.push(row);
}
return data;
}
/**
* Create CSV files from table data
* @param lipd The LiPD data containing tables
* @param dataDir Directory to write CSV files
*/
createCsvs(lipd, dataDir) {
const csvs = {};
const datakeys = ["paleoData", "chronData"];
for (const datakey of datakeys) {
const data = lipd[datakey];
if (!data)
continue;
for (const item of data) {
if (item.measurementTable) {
for (const table of item.measurementTable) {
csvs[table.filename] = this.getTableData(table);
}
}
if (item.model) {
for (const model of item.model) {
if (model.ensembleTable) {
for (const table of model.ensembleTable) {
csvs[table.filename] = this.getTableData(table);
}
}
if (model.summaryTable) {
for (const table of model.summaryTable) {
csvs[table.filename] = this.getTableData(table);
}
}
if (model.distributionTable) {
for (const table of model.distributionTable) {
csvs[table.filename] = this.getTableData(table);
}
}
}
}
}
}
for (const [csvname, csvdata] of Object.entries(csvs)) {
const csvContent = csvdata.map((row) => row.join(",")).join("\n");
fs2.writeFileSync(path2.join(dataDir, csvname), csvContent);
}
}
/**
* Create bagit files in the data directory
* @param dataDir Directory to create bagit files in
* @returns Promise that resolves when bagit files are created
*/
createBagitFiles(dataDir) {
const bagInfo = {
"Bag-Software-Agent": "lipdjs",
"Bagging-Date": (/* @__PURE__ */ new Date()).toISOString()
};
return createBagitFiles(dataDir, bagInfo);
}
/**
* Zip a directory into a LiPD file
* @param dataDir Directory to zip
* @param lipdfile Output LiPD file path
* @returns Promise that resolves when the zip file is created
*/
zipDirectory(dataDir, lipdfile) {
return new Promise((resolve, reject) => {
const zip = new AdmZip();
const addFilesToZip = (currentPath, relativePath = "") => {
const files = fs2.readdirSync(currentPath);
for (const file of files) {
const filePath = path2.join(currentPath, file);
const zipPath = path2.join(relativePath, file);
if (fs2.statSync(filePath).isDirectory()) {
addFilesToZip(filePath, zipPath);
} else {
zip.addLocalFile(filePath, path2.dirname(zipPath));
}
}
};
addFilesToZip(dataDir);
zip.writeZip(lipdfile, (error) => {
if (error) {
reject(error);
} else {
resolve();
}
});
});
}
/**
* Get property values from query result
* @param qres Query result containing predicate and object
* @returns Object with property names and their values
*/
_getPropValuesFromQueryResultPO(qres) {
const result = {};
for (const row of qres) {
const pname = this.localName(row.predicate.id);
if (!(pname in result)) {
result[pname] = [];
}
const value = {};
if (row.object.termType === "NamedNode") {
value["@type"] = "uri";
value["@id"] = row.object.id;
} else if (row.object.termType === "Literal") {
value["@type"] = "literal";
value["@value"] = row.object.value;
value["@datatype"] = null;
}
result[pname].push(value);
}
return result;
}
/**
* Get facts for a specific ID
* @param id The ID to query facts for
* @returns Object containing all properties and values for the ID
*/
_getFacts(id) {
const qres = this.store.getQuads(DF.namedNode(id), null, null, null);
return this._getPropValuesFromQueryResultPO(qres);
}
/**
* Get and index facts for an ID and all related resources
* @param id The ID to index facts for
*/
indexFacts(id) {
if (id in this.allfacts) {
return;
}
const facts = this._getFacts(id);
this.allfacts[id] = facts;
for (const [pname, pfacts] of Object.entries(facts)) {
for (const pfact of pfacts) {
if (pfact["@type"] === "uri") {
if (pname !== "type") {
this.indexFacts(pfact["@id"]);
}
}
}
}
}
_convertToLipd(id, category, schemaname, pagesdone = {}) {
if (id in this.allfacts) {
const facts = this.allfacts[id];
if (id in pagesdone) {
return pagesdone[id];
}
const schema = schemaname && this.rschema[schemaname] ? this.rschema[schemaname] : null;
if (schemaname && !category) {
category = schemaname;
}
if ("type" in facts) {
const cats = facts["type"];
for (const cat of cats) {
if (cat["@type"] === "uri") {
category = this.localName(cat["@id"]);
break;
}
}
}
const obj = {
"@id": id,
"@category": category,
"@schema": schemaname
};
pagesdone[id] = obj;
for (const [pname, pfacts] of Object.entries(facts)) {
if (pname in REVERSE_BLACKLIST) {
continue;
}
let prop = pname;
prop = prop.replace(/\s/g, "_");
let propkey = prop;
for (const value of pfacts) {
if (value["@type"] === "uri") {
if (value["@id"] && value["@id"] in this.allfacts) {
const pfact = this.allfacts[value["@id"]];
if ("type" in pfact) {
const valcats = pfact["type"];
for (const valcat of valcats) {
if (valcat["@type"] === "uri") {
const valcatname = this.localName(valcat["@id"]);
propkey = prop + "." + valcatname;
break;
}
}
}
}
}
}
const details = this.getRdfPropertyDetails(prop, propkey, schema);
const name = details.name;
const ptype = details.type || null;
let cat = details.category || null;
let sch = details.schema || null;
if (cat && !sch) {
sch = cat;
}
const toJson = details.toJson || null;
let multiple = details.multiple || false;
if (pfacts.length > 0) {
if (multiple) {
obj[name] = [];
}
for (const pfact of pfacts) {
let val;
if (pfact["@type"] === "uri") {
val = this._convertToLipd(pfact["@id"], cat, sch, pagesdone);
} else {
val = pfact["@value"];
}
if (toJson) {
val = this[toJson](val);
}
if (!multiple && name in obj && !Array.isArray(obj[name])) {
multiple = true;
obj[name] = [obj[name]];
}
if (multiple) {
obj[name].push(val);
} else {
obj[name] = val;
}
}
}
}
return obj;
} else {
return id.replace(/_/g, " ");
}
}
/**
* Convert location to GeoJSON format
* @param geo Location object
* @param parent Parent object
* @returns GeoJSON object
*/
_location_to_json(geo, parent = null) {
const geojson = {
type: "Feature",
geometry: {
type: "Point",
coordinates: [0, 0, 0]
},
properties: {}
};
if ("coordinates" in geo) {
const latlong = geo["coordinates"].split(",");
geojson.geometry.coordinates = [
parseFloat(latlong[1]),
parseFloat(latlong[0]),
latlong.length > 2 ? parseFloat(latlong[2]) : 0
];
}
if ("long" in geo) {
geojson.geometry.coordinates[0] = parseFloat(geo["long"]);
}
if ("longitude" in geo) {
geojson.geometry.coordinates[0] = parseFloat(geo["longitude"]);
}
if ("lat" in geo) {
geojson.geometry.coordinates[1] = parseFloat(geo["lat"]);
}
if ("latitude" in geo) {
geojson.geometry.coordinates[1] = parseFloat(geo["latitude"]);
}
if ("alt" in geo && geo["alt"] !== "NA") {
geojson.geometry.coordinates[2] = parseFloat(geo["alt"]);
}
if ("elevation" in geo && geo["elevation"] !== "NA") {
geojson.geometry.coordinates[2] = parseFloat(geo["elevation"]);
}
for (const [prop, value] of Object.entries(geo)) {
if (prop[0] === "@") {
continue;
}
if (prop === "locationType") {
geojson.type = geo["locationType"];
} else {
if (prop === "coordinates" || prop === "coordinatesFor") {
} else if (/^(geo|wgs84):/.test(prop)) {
} else if (["long", "lat", "alt"].includes(prop)) {
} else {
geojson.properties[prop] = value;
}
}
}
return geojson;
}
/**
* Extract Google Spreadsheet key from URL
* @param url Google Spreadsheet URL
* @param parent Parent object
* @returns Google Spreadsheet key
*/
getGoogleSpreadsheetKey(url, parent = null) {
return url.replace("https://docs.google.com/spreadsheets/d/", "");
}
/**
* Remove foundInTable property
* @param variable Variable object
* @param parent Parent object
* @returns Variable object without foundInTable
*/
removeFoundInTable(variable, parent = null) {
if ("foundInTable" in variable) {
delete variable["foundInTable"];
}
return variable;
}
/**
* Remove foundInDataset property
* @param variable Variable object
* @param parent Parent object
* @returns Variable object without foundInDataset
*/
removeFoundInDataset(variable, parent = null) {
if ("foundInDataset" in variable) {
delete variable["foundInDataset"];
}
return variable;
}
/**
* Unwrap uncertainty values
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with unwrapped uncertainty
*/
unwrapUncertainty(variable, parent = null) {
if ("hasUncertainty" in variable) {
const unc = variable["hasUncertainty"];
if ("hasValue" in unc) {
variable["uncertainty"] = parseFloat(unc["hasValue"]);
delete unc["hasValue"];
}
for (const [key, value] of Object.entries(unc)) {
if (key[0] !== "@") {
variable[key] = value;
}
}
delete variable["hasUncertainty"];
}
return variable;
}
/**
* Unwrap integration time
* @param interp Interpretation object
* @param parent Parent object
* @returns Interpretation object with unwrapped integration time
*/
unwrapIntegrationTime(interp, parent = null) {
if ("integrationTime" in interp) {
const intime = interp["integrationTime"];
if ("hasValue" in intime) {
interp["integrationTime"] = parseFloat(intime["hasValue"]);
delete intime["hasValue"];
}
for (const [key, value] of Object.entries(intime)) {
if (key[0] !== "@") {
interp["integrationTime" + ucfirst(key)] = value;
}
}
delete interp["hasIntegrationTime"];
}
return interp;
}
/**
* Collect variables by ID
* @param item Item to process
* @param arr Array of collected variables
* @returns Updated array of collected variables
*/
collectVariablesById(item, arr) {
if (typeof item !== "object" || item === null) {
return arr;
}
if ("@category" in item && "@id" in item && /Variable$/.test(item["@category"])) {
arr[item["@id"]] = item;
} else {
for (const [key, value] of Object.entries(item)) {
if (key[0] !== "@") {
arr = this.collectVariablesById(item[key], arr);
}
}
}
return arr;
}
/**
* Set archive type label
* @param ds Dataset object
* @param parent Parent object
* @returns Dataset object with archive type label
*/
setArchiveTypeLabel(ds, parent = null) {
if ("hasArchiveType" in ds) {
if ("@id" in ds["hasArchiveType"]) {
const id = ds["hasArchiveType"]["@id"];
if (RSYNONYMS && id in RSYNONYMS) {
ds["archiveType"] = RSYNONYMS[id];
} else {
ds["archiveType"] = ds["hasArchiveType"]["label"];
}
}
delete ds["hasArchiveType"];
}
return ds;
}
/**
* Set variable name from standard variable label
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with variable name
*/
setVariableNameFromStandardVariableLabel(variable, parent = null) {
if ("hasStandardVariable" in variable) {
if ("@id" in variable["hasStandardVariable"]) {
const id = variable["hasStandardVariable"]["@id"];
if (RSYNONYMS && id in RSYNONYMS) {
variable["variableName"] = RSYNONYMS[id];
} else {
variable["variableName"] = variable["hasStandardVariable"]["label"];
}
}
delete variable["hasStandardVariable"];
}
return variable;
}
/**
* Set units label
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with units label
*/
setUnitsLabel(variable, parent = null) {
if ("hasUnits" in variable) {
if ("@id" in variable["hasUnits"]) {
const id = variable["hasUnits"]["@id"];
if (RSYNONYMS && id in RSYNONYMS) {
variable["units"] = RSYNONYMS[id];
} else {
variable["units"] = variable["hasUnits"]["label"];
}
}
delete variable["hasUnits"];
}
return variable;
}
/**
* Set proxy label
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with proxy label
*/
setProxyLabel(variable, parent = null) {
if ("hasProxy" in variable) {
if ("@id" in variable["hasProxy"]) {
const id = variable["hasProxy"]["@id"];
if (RSYNONYMS && id in RSYNONYMS) {
variable["proxy"] = RSYNONYMS[id];
} else {
variable["proxy"] = variable["hasProxy"]["label"];
}
}
delete variable["hasProxy"];
}
return variable;
}
/**
* Set proxy general label
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with proxy general label
*/
setProxyGeneralLabel(variable, parent = null) {
if ("hasProxyGeneral" in variable) {
if ("@id" in variable["hasProxyGeneral"]) {
const id = variable["hasProxyGeneral"]["@id"];
if (RSYNONYMS && id in RSYNONYMS) {
variable["proxyGeneral"] = RSYNONYMS[id];
} else {
variable["proxyGeneral"] = variable["hasProxyGeneral"]["label"];
}
}
delete variable["hasProxyGeneral"];
}
return variable;
}
/**
* Set interpretation variable label
* @param interp Interpretation object
* @param parent Parent object
* @returns Interpretation object with variable label
*/
setInterpretationVariableLabel(interp, parent = null) {
if ("hasVariable" in interp) {
if ("@id" in interp["hasVariable"]) {
const id = interp["hasVariable"]["@id"];
if (RSYNONYMS && id in RSYNONYMS) {
interp["variable"] = RSYNONYMS[id];
} else {
interp["variable"] = interp["hasVariable"]["label"];
}
}
delete interp["hasVariable"];
}
return interp;
}
/**
* Set seasonality labels
* @param interp Interpretation object
* @param parent Parent object
* @returns Interpretation object with seasonality labels
*/
setSeasonalityLabels(interp, parent = null) {
const convs = {
"hasSeasonality": "seasonality",
"hasSeasonalityGeneral": "seasonalityGeneral",
"hasSeasonalityOriginal": "seasonalityOriginal"
};
for (const [pid, nid] of Object.entries(convs)) {
if (pid in interp) {
if ("@id" in interp[pid]) {
const id = interp[pid]["@id"];
if (RSYNONYMS && id in RSYNONYMS) {
interp[nid] = RSYNONYMS[id];
} else {
interp[nid] = interp[pid]["label"];
}
}
delete interp[pid];
}
}
return interp;
}
/**
* Create publication identifier
* @param pub Publication object
* @param parent Parent object
* @returns Publication object with identifier
*/
createPublicationIdentifier(pub, parent = null) {
const identifiers = [];
if ("hasDOI" in pub) {
const identifier = {
"type": "doi",
"id": pub["hasDOI"]
};
if ("link" in pub) {
for (const link of Object.values(pub["link"])) {
if (typeof link === "string" && /dx\.doi\.org/.test(link)) {
identifier["url"] = link;
}
}
delete pub["link"];
}
delete pub["hasDOI"];
identifiers.push(identifier);
}
pub["identifier"] = identifiers;
return pub;
}
/**
* Convert values to array
* @param resolution Resolution object
* @param parent Parent object
* @returns Array of values
*/
valuesToArray(resolution, parent = null) {
if ("values" in resolution) {
return resolution["values"].split(",");
}
return resolution;
}
/**
* Unarray column number
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with unarrayed number
*/
unArrayColumnNumber(variable, parent = null) {
if (!variable)
return variable;
if ("number" in variable) {
if (Array.isArray(variable["number"]) && variable["number"].length === 1) {
variable["number"] = variable["number"][0];
}
if (typeof variable["number"] === "string") {
variable["number"] = JSON.parse(variable["number"]);
}
}
return variable;
}
/**
* Extract variable values
* @param variable Variable object
* @param parent Parent object
* @returns Variable object with extracted values
*/
extractVariableValues(variable, parent = null) {
if ("hasValues" in variable) {
const valuestr = variable["hasValues"];
const values = parseVariableValues(valuestr);
if (typeof values === "object" && values !== null && "base64_zlib" in values) {
variable["hasValues"] = this.unzipString(values["base64_zlib"]);
} else {
variable["hasValues"] = values;
}
}
return variable;
}
/**
* Unzip a base64 encoded and zlib compressed string
* @param str The base64 encoded and zlib compressed string
* @returns The uncompressed string
*/
unzipString(str) {
try {
let binary;
if (typeof Buffer !== "undefined" && Buffer.from) {
binary = Uint8Array.from(Buffer.from(str, "base64"));
} else {
const decoded = atob(str);
binary = Uint8Array.from(decoded, (c) => c.charCodeAt(0));
}
const text = new TextDecoder().decode(pako.inflate(binary));
return text;
} catch (e) {
logger2.error("Could not decode/unzip the contents", e);
throw e;
}
}
};
// src/utils/lipdToRdf.ts
import * as fs3 from "fs";
import * as path3 from "path";
import * as os from "os";
import AdmZip2 from "adm-zip";
import * as Papa from "papaparse";
import { Store as Store2 } from "n3";
import { DataFactory as DataFactory2 } from "n3";
import JSZip from "jszip";
var logger3 = Logger.getInstance();
var DF2 = DataFactory2;
function expandSchema(schema) {
const expandedSchema = JSON.parse(JSON.stringify(schema));
for (const key in expandedSchema) {
for (const lipdKey in expandedSchema[key]) {
const pdetails = expandedSchema[key][lipdKey];
if (typeof pdetails !== "object" || pdetails === null) {
continue;
}
if (pdetails.alternates && Array.isArray(pdetails.alternates)) {
for (const altKey of pdetails.alternates) {
expandedSchema[key][altKey] = { ...pdetails };
}
}
}
}
expandedSchema.__expanded = true;
return expandedSchema;
}
var LipdToRDF = class {
constructor(standardize = true, addLabels = true) {
this.lipdCsvs = {};
this.store = new Store2();
this.graphUrl = NSURL;
this.namespace = NSURL + "/";
this.namespaces = {
ont: DF2.namedNode(ONTONS),
rdf: DF2.namedNode(NAMESPACES.rdf),
rdfs: DF2.namedNode(NAMESPACES.rdfs),
xsd: DF2.namedNode(NAMESPACES.xsd),
owl: DF2.namedNode(NAMESPACES.owl),
wgs84: DF2.namedNode(NAMESPACES.wgs84)
};
this.standardize = standardize;
this.addLabels = addLabels;
this.schema = expandSchema(JSON.parse(JSON.stringify(SCHEMA)));
logger3.debug("LipdToRDF instance created with standardize=%s, addLabels=%s", standardize, addLabels);
}
/**
* Convert LiPD file to RDF Graph
* @param lipdPath Path to LiPD file (can be a local file or URL)
*/
async convert(lipdPath) {
logger3.debug("Starting conversion of LiPD file: %s", lipdPath);
if (isBrowser()) {
await this._convertBrowser(lipdPath);
logger3.debug("Browser conversion completed");
return;
}
for (const quad of this.store.getQuads(null, null, null, null)) {
this.store.removeQuad(quad);
}
const lpdName = path3.basename(lipdPath).replace(".lpd", "").replace(/\?.+$/, "");
this.graphUrl = NSURL + "/" + lpdName;
logger3.debug("Set graph URL to: %s", this.graphUrl);
const tmpDir = fs3.mkdtempSync(path3.join(os.tmpdir(), "lipd_to_rdf_"));
logger3.debug("Created temporary directory: %s", tmpDir);
try {
logger3.debug("Unzipping LiPD file to temporary directory");
this._unzipLipdFile(lipdPath, tmpDir);
logger3.debug("Looking for JSON-LD files in the extracted content");
const jsons = this._findFilesWithExtension(tmpDir, "jsonld");
logger3.debug("Found %d JSON-LD files", jsons.length);
for (const [jsonPath, jsonName] of jsons) {
logger3.debug("Processing JSON-LD file: %s", jsonName);
const jsonDir = path3.dirname(jsonPath);
logger3.debug("Looking for CSV files in %s", jsonDir);
const csvs = this._findFilesWithExtension(jsonDir, "csv");
logger3.debug("Found %d CSV files", csvs.length);
this.lipdCsvs = {};
for (const [csvPath, csvName] of csvs) {
try {
logger3.debug("Processing CSV file: %s", csvName);
const csvData = fs3.readFileSync(csvPath, "utf8");
const parsedCsv = Papa.parse(csvData, { header: false });
if (parsedCsv.data && Array.isArray(parsedCsv.data)) {
this.lipdCsvs[csvName] = parsedCsv.data;
logger3.debug("Successfully loaded CSV file: %s", csvName);
}
} catch (error) {
logger3.warn("CSV file %s might have inconsistent columns: %s", csvName, error instanceof Error ? error.message : String(error));
this.lipdCsvs[csvName] = this._detectColumnsAndLoad(csvPath);
}
}
logger3.debug("Loading JSON-LD data into RDF graph");
this._loadLipdJsonToGraph(jsonPath);
}
logger3.debug("Conversion completed successfully");
} catch (error) {
logger3.error("Error during conversion: %s", error instanceof Error ? error.message : String(error));
throw error;
} finally {
try {
logger3.debug("Cleaning up temporary directory: %s", tmpDir);
fs3.rmSync(tmpDir, { recursive: true });
} catch (error) {
logger3.error("Error cleaning up temporary directory: %s", error instanceof Error ? error.message : String(error));
}
}
}
/**
* Load LiPD file from a File object (for browser file input)
* @param file File object from HTML5 file input
*/
async loadFromFile(file) {
if (!isBrowser()) {
throw new Error("loadFromFile() is only available in browser environments");
}
logger3.debug("Loading LiPD file from File object: %s", file.name);
try {
for (const quad of this.store.getQuads(null, null, null, null)) {
this.store.removeQuad(quad);
}
const arrayBuffer = await file.arrayBuffer();
const zip = await JSZip.loadAsync(arrayBuffer);
const lpdName = file.name.replace(".lpd", "").replace(/\?.+$/, "");
this.graphUrl = NSURL + "/" + sanitizeId(lpdName);
logger3.debug("Set graph URL to: %s", this.graphUrl);
this.lipdCsvs = {};
const csvEntries = [];
const jsonEntries = [];
for (const fileName of Object.keys(zip.files)) {
const zipFile = zip.files[fileName];
if (zipFile.dir)
continue;
if (fileName.endsWith(".csv")) {
csvEntries.push([fileName, zipFile]);
} else if (fileName.endsWith(".jsonld")) {
jsonEntries.push(zipFile);
}
}
for (const [fileName, zipFile] of csvEntries) {
const csvContent = await zipFile.async("string");
const parsedCsv = Papa.parse(csvContent, { header: false });
this.lipdCsvs[fileName] = parsedCsv.data;
const baseName = fileName.split("/").pop();
if (baseName) {
this.lipdCsvs[baseName] = parsedCsv.data;
}
logger3.debug(`Loaded CSV '${fileName}' (${parsedCsv.data.length}\xD7${parsedCsv.data[0].length || 0})`);
}
for (const zipFile of jsonEntries) {
const jsonContent = await zipFile.async("string");
this._loadLipdJsonString(jsonContent);
}
logger3.debug("File loading completed successfully");
} catch (error) {
logger3.error("Error loading LiPD file from File object: %s", error instanceof Error ? error.message : String(error));
throw error;
}
}
/**
* Detect the number of columns in a CSV and load it
* @param filePath Path to the CSV file
* @returns Parsed CSV data as array of arrays
*/
_detectColumnsAndLoad(filePath) {
let numColumns = 0;
const lines = fs3.readFileSync(filePath, "utf8").split("\n");
for (const line of lines) {
const num = line.split(",").length;
if (num > numColumns) {
numColumns = num;
}
}
const csvData = fs3.readFileSync(filePath, "utf8");
const parsedCsv = Papa.parse(csvData, { header: false });
return parsedCsv.data;
}
/**
* Write LiPD RDF Graph to a file
* @param toPath Path to output file
* @param type Output format ('json', 'turtle', 'n3', 'ntriples', etc.)
*/
async serialize(toPath, type = "turtle") {
logger3.debug("Serializing graph to %s in %s format", toPath, type);
if (this.store) {
try {
const serialized = await serializeStore(this.store, type, logger3);
fs3.writeFileSync(toPath, serialized);
logger3.debug("Successfully wrote graph to: %s", toPath);
} catch (error) {
logger3.error("Error serializing graph: %s", error instanceof Error ? error.message : String(error));
throw new Error(`Failed to serialize graph: ${error instanceof Error ? error.message : String(error)}`);
}
} else {
logger3.error("Cannot serialize: Graph is null or undefined");
throw new Error("Cannot serialize: Graph is null or undefined");
}
}
/**
* Write LiPD RDF Graph to a file
* @param toPath Path to output file
* @param type Output format ('json', 'turtle', 'n3', 'ntriples', etc.)
*/
async toString(type = "turtle") {
if (this.store) {
try {
let serialized;
serialized = await serializeStore(this.store, type, logger3);
return serialized || "";
} catch (error) {
logger3.error("Error serializing graph:", error);
throw new Error(`Failed to serialize graph: ${error instanceof Error ? error.message : String(error)}`);
}
}
return "";
}
/**
* Unzip a LiPD file to a directory
* @param lipdFile Path to the LiPD file
* @param unzipDir Directory to extract to
*/
_unzipLipdFile(lipdFile, unzipDir) {
try {
if (lipdFile.startsWith("http")) {
throw new Error("URL-based LiPD files not yet supported in this implementation");
} else {
logger3.debug("Unzipping local file: %s to %s", lipdFile, unzipDir);
const zip = new AdmZip2(lipdFile);
zip.extractAllTo(unzipDir, true);
logger3.debug("Unzipping completed successfully");
}
} catch (error) {
logger3.error("Error unzipping LiPD file: %s", error instanceof Error ? error.message : String(error));
throw new Error(`Failed to unzip LiPD file: ${error instanceof Error ? error.message : String(error)}`);
}
}
/**
* Find files with a specific extension in a directory (recursively)
* @param directory Directory to search in
* @param extension File extension to look for
* @returns Array of [filePath, fileName] tuples
*/
_findFilesWithExtension(directory, extension) {
const regex = new RegExp(`\\.${extension}$`);
const results = [];
try {
const entries = fs3.readdirSync(directory, { withFileTypes: true });
for (const entry of entries) {
const entryPath = path3.join(directory, entry.name);
if (entry.isFile() && regex.test(entry.name)) {
results.push([entryPath, entry.name]);
} else if (entry.isDirectory()) {
const subResults = this._findFilesWithExtension(entryPath, extension);
results.push(...subResults);
}
}
} catch (error) {
logger3.error(`Cannot access ${directory}. Probably a permissions error:`, error);
}
return results;
}
/**
* Load LiPD JSON data into the RDF graph
* @param jsonPath Path to the JSON file
* @param url Optional URL of the LiPD file
*/
_loadLipdJsonToGraph(jsonPath, url) {
logger3.debug("Loading JSON file to graph: %s", jsonPath);
for (const quad of this.store.getQuads(null, null, null, null)) {
this.store.removeQuad(quad);
}
try {
const jsonContent = fs3.readFileSync(jsonPath, "utf8");
const obj = JSON.parse(jsonContent);
logger3.debug("JSON file parsed successfully");
if (obj.dataSetName) {
this.graphUrl = NSURL + "/" + sanitizeId(obj.dataSetName);
logger3.debug("Updated graph URL based on dataset name: %s", this.graphUrl);
}
logger3.debug("Mapping LiPD data to RDF structure");
const objHash = {};
this._mapLipdToJson(obj, null, null, "Dataset", "Dataset", objHash);
if (url) {
objHash[obj["@id"]].hasUrl = url;
logger3.debug("Set URL from parameter: %s", url);
} else if (obj["@id"]) {
objHash[obj["@id"]].hasUrl = DATAURL + "/" + obj["@id"] + ".lpd";
logger3.debug("Set derived URL: %s", DATAURL + "/" + obj["@id"] + ".lpd");
}
logger3.debug("Creating RDF individuals for %d objects", Object.keys(objHash).length);
for (const [key, item] of Object.entries(objHash)) {
this._createIndividualFull(item);
}
logger3.debug("Successfully loaded JSON data into RDF graph");
} catch (error) {
logger3.error("Error loading JSON to graph: %s", error instanceof Error ? error.message : String(error));
throw new Error(`Failed to load JSON to graph: ${error instanceof Error ? error.message : String(error)}`);
}
}
/**
* Map LiPD JSON data to a structured format suitable for RDF conversion
* @param obj The JSON object to map
* @param parent Parent object
* @param index Index in parent's array
* @param category Category of the object
* @param schemaName Schema name to use
* @param hash Object hash for storing objects by ID
* @returns ID of the created object
*/
_mapLipdToJson(obj, parent, index, category, schemaName, hash) {
const schema = this.schema[schemaName] ? this.schema[schemaName] : {};
if (typeof obj !== "object" || obj === null) {
return obj;
}
obj["@parent"] = parent;
obj["@index"] = index;
obj["@schema"] = schemaName;
let objId = this.getObjectId(obj, category, schema);
if ("@id" in obj) {
objId = obj["@id"];
}
if (objId in hash) {
return objId;
}
obj["@id"] = objId;
[obj, hash] = this.modifyStructureIfNeeded(obj, hash, schema);
if ("@category" in obj) {
category = obj["@category"];
}
hash[objId] = {
"@id": objId,
"@category": category,
"@schema": schemaName
};
const item = hash[objId];
if (typeof obj === "object") {
for (const [propKey, value] of Object.entries(obj)) {
if (propKey[0] === "@") {
continue;
}
if (propKey in BLACKLIST) {
continue;
}
let details = {};
let pname = propKey;
if (propKey in schema) {
details = schema[propKey];
pname = details["name"] ? details["name"] : propKey;
}
const dtype = details["type"] ? details["type"] : null;
let cat = details["category"] ? details["category"] : null;
let sch = details["schema"] ? details["schema"] : null;
const fromJson = details["fromJson"] ? details["fromJson"] : null;
if (sch && !cat) {
cat = sch;
}
if (fromJson) {
const fn = this[fromJson];
const processedValue = fn.call(this, value, obj);
if (!processedValue) {
continue;
}
if (pname) {
if (Array.isArray(processedValue)) {
let idx = 1;
for (const subValue of processedValue) {
if (typeof subValue === "object") {
if (!(propKey in item)) {
item[propKey] = [];
}
item[propKey].push(this._mapLipdToJson(subValue, obj, idx, cat, sch, hash));
idx++;
}
}
} else if (typeof processedValue === "object") {
item[propKey] = this._mapLipdToJson(processedValue, obj, null, cat, sch, hash);
} else {
item[propKey] = processedValue;
}
} else if (typeof processedValue === "object") {
for (const [subPropKey, subValue] of Object.entries(processedValue)) {
item[subPropKey] = subValue;
}
}
continue;
}
if (!pname) {
continue;
}
if (Array.isArray(value)) {
let idx = 1;
for (const subValue of value) {
if (!(propKey in item)) {
item[propKey] = [];
}
item[propKey].push(this._mapLipdToJson(subValue, obj, idx, cat, sch, hash));
idx++;
}
} else if (typeof value === "object") {
if (!(propKey in item)) {
item[propKey] = [];
}
item[propKey].push(this._mapLipdToJson(value, obj, null, cat, sch, hash));
} else {
if (dtype === "Individual") {
item[propKey] = value;
if (!(String(value) in hash)) {
hash[String(value)] = {
"@id": value,
"@category": cat,
"@schema": sch
};
}
} else {
item[propKey] = value;
}
}
}
}
hash[objId] = item;
return objId;
}
/**
* Get compound key ID from an object
* @param compoundKey Array of keys to traverse the object
* @param obj Object to extract value from
* @returns The value at the end of the key path or null if not found
*/
getCompoundKeyId(compoundKey, obj) {
let tobj = obj;
for (const key of compoundKey) {
if (typeof tobj === "object" && tobj !== null && key in tobj) {
tobj = tobj[key];
} else {
return null;
}
}
if (typeof tobj !== "object" || tobj === null) {
return tobj;
}
return null;
}
/**
* Get binding key ID from an object
* @param key Key or compound key (separated by dots) or alternative keys (separated by pipes)
* @param obj Object to extract value from
* @returns The value found or a unique ID if not found
*/
getBindingKeyId(key, obj) {
const keyOptions = key.split("|");
for (const optKey of keyOptions) {
const compoundKey = optKey.split(".");
const keyId = this.getCompoundKeyId(compoundKey, obj);
if (keyId) {
return String(keyId);
}
}
return uniqid();
}
/**
* Apply a function to a key ID
* @param fn Function name to apply
* @param arg Argument for the function
* @param curObjId Current object ID
* @returns Modified object ID
*/
getFunctionKeyId(fn, arg, curObjId) {
if (fn === "trunc") {
return curObjId.substring(0, curObjId.length - parseInt(arg));
} else if (fn === "uniqid") {
return String(curObjId) + uniqid(arg);
}
return curObjId;
}
/**
* Create an ID from a pattern
* @param pattern Array of pattern parts
* @param obj Object to extract values from
* @returns Generated ID string
*/
createIdFromPattern(pattern, obj) {
let objId = "";
for (const key of pattern) {
const bindingMatch = key.match(/{(.+)}/);
if (bindingMatch && bindingMatch.length > 1) {
objId += String(this.getBindingKeyId(bindingMatch[1], obj));
} else {
const funcMatch = key.match(/_(.+)\((.*)\)/);
if (funcMatch && funcMatch.length > 2) {
const fn = funcMatch[1];
const arg = funcMatch[2];
objId = String(this.getFunctionKeyId(fn, arg, objId));
} else {
objId += String(key);
}
}
}
return objId;
}
/**
* Fix title by replacing problematic characters
* @param titleId Title ID to fix
* @returns Fixed title ID
*/
fixTitle(titleId) {
return titleId.replace(/@\\x{FFFD}@u/g, "_");
}
/**
* Get object ID based on schema and category
* @param obj Object to generate ID for
* @param category Category of the object
* @param schema Schema definition
* @returns Generated object ID
*/
getObjectId(obj, category, schema) {
let objId;
if (typeof obj === "object" && obj !== null) {
objId = "Unknown." + uniqid(category);
} else {
objId = ucfirst(String(obj)).replace(/\s/g, "_");
}
if (schema && "@id" in schema) {
objId = this.createIdFromPattern(schema["@id"], obj);
}
return this.fixTitle(objId);
}
/**
* Modify the object structure if needed based on schema
* @param obj Object to modify
* @param hash Object hash
* @param schema Schema definition
* @returns [modified object, modified hash]
*/
modifyStructureIfNeeded(obj, hash, schema) {
if (schema["@fromJson"]) {
for (const func of schema["@fromJson"]) {
if (func in this) {
const fn = this[func];
if (typeof fn === "function") {
const result = fn.call(this, obj, hash);
if (Array.isArray(result) && result.length >= 2) {
[obj, hash] = result;
}
}
}
}
}
return [obj, hash];
}
/**
* Guess the data value type based on string pattern
* @param val Value to analyze
* @returns Detected data type
*/
_guessDataValueType(val) {
const value = String(val);
if (/^-?\d+$/.test(value)) {
return "float";
}
if (/^-?\d+\.\d+$/.test(value)) {
return "float";
}
if (/^[2][0-9]{3}[-][0-1][0-9][-][0-3][0-9]( |T)[0-9]{2}:[0-9]{2}:[0-9]{2}/.test(value)) {
return "datetime";
}
if (/^[2][0-9]{3}[-][0-1][0-9][-][0-3][0-9]/.test(value)) {
return "date";
}
if (/^(true|false)$/i.test(value)) {
return "boolean";
}
if (/^http/.test(value)) {
return "url";
}
if (/^".+"$/.test(value)) {
return "string";
}
if (/^'.+'$/.test(value)) {
return "string";
}
return "string";
}
/**
* Guess the value type for any kind of value
* @param value Value to analyze
* @returns Detected data type
*/
_guessValueType(value) {
if (value) {
if (Array.isArray(value)) {
for (const subvalue of value) {
return this._guessValueType(subvalue);
}
} else if (typeof value === "object" && value !== null) {
return "Individual";
} else {
const valtype = this._guessDataValueType(value);
return valtype;
}
}
return "string";
}
/**
* Get property details from schema and value
* @param key Property key
* @param schema Schema definition
* @param value Property value
* @returns Property details object
*/
getPropertyDetails(key, schema, value) {
let pname = key;
const details = {
"name": pname
};
if (key in schema && "@@processed" in schema[key]) {
return schema[key];
}
if (key in schema) {
for (const [skey, svalue] of Object.entries(schema[key])) {
details[skey] = svalue;
}
}
if ("schema" in details) {
details["type"] = "Individual";
}
pname = lcfirst(details["name"]);
if (!("type" in details)) {
details["type"] = this._guessValueType(value);
if (!("type" in details)) {
details["type"] = "string";
}
}
details["@@processed"] = true;
schema[key] = details;
return details;
}
/**
* Create an individual
* @param objId ID of the individual
* @returns Fully qualified URI for the individual
*/
createIndividual(objId) {
return this.namespace + sanitizeId(objId);
}
/**
* Create a class
* @param category Category name
* @returns Fully qualified URI for the class
*/
createClass(category) {
return ONTONS + sanitizeId(category);
}
/**
* Create a property
* @param prop Property name
* @param dtype Data type
* @param cat Category
* @param multiple Whether the property can have multiple values
* @returns [property URI, data type, category, multiple flag]
*/
createProperty(prop, dtype, cat, multiple) {
const nsProp = prop.split(":", 2);
let ns = ONTONS;
if (nsProp.length > 1) {
const prefix = nsProp[0];
if (prefix in NAMESPACES) {
ns = NAMESPACES[prefix];
}
prop = nsProp[1];
}
return [ns + lcfirst(sanitizeId(prop)), dtype, cat, multiple];
}
/**
* Set individual classes
* @param objId ID of the individual
* @param category Primary category
* @param extraCats Additional categories
*/
setIndividualClasses(objId, category, extraCats) {
if (objId && category) {
this.store.addQuad(
DF2.quad(
DF2.namedNode(objId),
DF2.namedNode(NAMESPACES.rdf + "type"),
DF2.namedNode(category),
DF2.namedNode(this.graphUrl)
)
);
}
for (const ecat of extraCats) {
if (objId && ecat) {
this.store.addQuad(
DF2.quad(
DF2.namedNode(objId),
DF2.namedNode(NAMESPACES.rdf + "type"),
DF2.namedNode(this.createClass(ecat)),
DF2.namedNode(this.graphUrl)
)
);
}
}
}
/**
* Set object label
* @param objId ID of the object
* @param label Label to set
*/
setObjectLabel(objId, label) {
if (objId && label) {
DF2.quad;
this.store.addQuad(
DF2.quad(
DF2.namedNode(objId),
DF2.namedNode(NAMESPACES.rdfs + "label"),
DF2.literal(label),
DF2.namedNode(this.graphUrl)
)
);
}
}
/**
* Set property value
* @param objId ID of the object
* @param prop Property details (from _createProperty)
* @param value Value to set
*/
setPropertyValue(objId, prop, value) {
if (Array.isArray(value)) {
for (const subValue of value) {
this.setPropertyValue(objId, prop, subValue);
}
return;
}
const [propId, dtype, cat, multiple] = prop;
if (!objId || value === null || value === void 0) {
return;
}
let objItem = null;
if (dtype === "float" || dtype === "integer") {
if (String(value).toLowerCase().includes("nan"))
return;
if (String(value).toLowerCase().includes("na"))
return;
}
if (typeof value === "string") {
value = escape(value);
}
if (dtype === "boolean") {
value = String(value).toLowerCase();
if (value !== "true") {
value = "false";
}
} else if (dtype === "float") {
const match = String(value).match(/(-?\d+\.?\d*)/);
if (match) {
value = match[1];
} else {
value = 0;
}
} else if (dtype === "integer") {
const match = String(value).match(/(-?\d+)/);
if (match) {
value = match[1];
} else {
value = 0;
}
}
if (dtype === "Individual") {
value = this.createIndividual(value);
objItem = DF2.namedNode(value);
} else if (dtype === "EnumeratedIndividual") {
objItem = DF2.namedNode(value);
} else if (dtype === "List") {
objItem = value;
} else {
let datatype = void 0;
if (dtype === "float")
datatype = DF2.namedNode(NAMESPACES.xsd + "float");
else if (dtype === "integer")
datatype = DF2.namedNode(NAMESPACES.xsd + "integer");
else if (dtype === "boolean")
datatype = DF2.namedNode(NAMESPACES.xsd + "boolean");
else if (dtype === "date")
datatype = DF2.namedNode(NAMESPACES.xsd + "date");
else if (dtype === "dateTime")
datatype = DF2.namedNode(NAMESPACES.xsd + "dateTime");
else if (dtype === "string")
datatype = DF2.namedNode(NAMESPACES.xsd + "string");
objItem = DF2.literal(String(value), datatype);
}
if (!multiple) {
const existing = this.store.getQuads(
DF2.namedNode(objId),
DF2.namedNode(propId),
null,
null
);
if (existing.length > 0) {
return;
}
}
this.store.addQuad(
DF2.quad(
DF2.namedNode(objId),
DF2.namedNode(propId),
objItem,
DF2.namedNode(this.graphUrl)
)
);
}
/**
* Create a full individual with all its properties
* @param obj Object to create
*/
_createIndividualFull(obj) {
const category = obj["@category"];
const extraCats = obj["@extracats"] || [];
const schemaName = obj["@schema"] || category;
const schema = this.schema[schemaName] || {};
const objId = obj["@id"];
if (!objId) {
return;
}
let categoryUri = null;
if (category) {
categoryUri = this.createClass(category);
}
const objUri = this.createIndividual(objId);
this.setIndividualClasses(objUri, categoryUri, extraCats);
for (const [key, value] of Object.entries(obj)) {
if (key[0] === "@") {
continue;
}
const details = this.getPropertyDetails(key, schema, value);
const prop = details.name;
const dtype = details.type;
const synonyms = details.synonyms || {};
let cat = details.category || null;
const sch = details.schema || null;
const fromJson = details.fromJson || null;
const multiple = details.multiple || false;
if (!prop) {
continue;
}
if (sch && !cat) {
cat = sch;
}
const propDI = this.createProperty(prop, dtype, cat, multiple);
if (dtype === "Individual") {
if (typeof value === "string" && Object.keys(synonyms).length > 0) {
const lowerValue = value.toLowerCase();
if (synonyms[lowerValue]) {
propDI[1] = "EnumeratedIndividual";
let synId = synonyms[lowerValue].id;
if (!this.standardize) {
synId += "." + uniqid();
}
this.setPropertyValue(objUri, propDI, synId);
if (this.addLabels) {
let label;
if (this.standardize) {
label = synonyms[lowerValue].label;
} else {
label = value;
}
this.setObjectLabel(synId, label);
}
} else {
propDI[1] = "EnumeratedIndividual";
const synId = this.createIndividual(value) + "." + uniqid();
this.setPropertyValue(objUri, propDI, synId);
this.setObjectLabel(synId, value);
}
} else {
this.setPropertyValue(objUri, propDI, value);
}
} else if (typeof value === "object" && value !== null && !Array.isArray(value)) {
this.setPropertyValue(objUri, propDI, value);
} else {
if (dtype === "File") {
} else {
this.setPropertyValue(objUri, propDI, value);
}
}
}
}
/**
* Parse persons string into array of person objects
* @param authorString String containing author names
* @param parent Optional parent object
* @returns Array of parsed author names
*/
parsePersonsString(authorString, parent) {
if (authorString.includes(";")) {
const authorSplit = authorString.split(/\s*;\s*/);
const authorList = [];
for (const author of authorSplit) {
if (author.includes(",")) {
const lastFirst = author.split(/\s*,\s*/);
authorList.push(`${lastFirst[1]} ${lastFirst[0]}`);
} else {
authorList.push(author);
}
}
return authorList;
} else {
const authorList = [];
const authorSplit = authorString.split(/\s*,\s*/);
if (authorSplit.length % 2 === 0) {
for (let i = 0; i < authorSplit.length; i += 2) {
authorList.push(`${authorSplit[i + 1]} ${authorSplit[i]}`);
}
} else {
for (const author of authorSplit) {
authorList.push(author);
}
}
return authorList;
}
}
/**
* Parse persons object into standardized format
* @param auths Author string or array of authors
* @param parent Optional parent object
* @returns Array of parsed person objects
*/
parsePersons(auths, parent) {
const authors = [];
if (!Array.isArray(auths)) {
auths = [auths];
}
for (const authstr of auths) {
let authname = null;
if (typeof authstr === "object" && authstr !== null) {
if ("name" in authstr) {
authname = authstr.name;
}
} else {
authname = authstr;
}
if (authname) {
const auth = this.parsePersonsString(authname, parent);
if (Array.isArray(auth)) {
authors.push(...auth);
} else {
authors.push(auth);
}
}
}
return authors.map((auth) => ({ name: auth }));
}
/**
* Flatten array recursively (browser-compatible alternative to Array.flat())
* @param arr Array to flatten
* @returns Flattened array
*/
_flattenArray(arr) {
const result = [];
for (const item of arr) {
if (Array.isArray(item)) {
result.push(...this._flattenArray(item));
} else {
result.push(item);
}
}
return result;
}
/**
* Set column numbers for variables
* @param datatable Datatable object
* @param parent Parent object
* @returns Datatable object with ordered variables
*/
setColumnNumbers(datatable, parent = null) {
for (const [index, variable] of datatable.variables.entries()) {
variable.columnNumber = index + 1;
console.log("setColumnNumbers", variable);
}
return datatable;
}
/**
* Parse changeLog object into standardized format
* @param changes Change list
* @param parent Optional parent object
* @returns Array of parsed person objects
*/
parseChanges(changes, parent) {
const newChanges = [];
if (!Array.isArray(changes)) {
changes = [changes];
}
for (const change of changes) {
for (const name of Object.keys(change)) {
let notes = change[name] || [];
notes = Array.isArray(notes) ? this._flattenArray(notes) : [notes];
const newChange = {
name,
notes
};
newChanges.push(newChange);
}
}
return newChanges;
}
/**
* Parse location object
* @param geo Location object
* @param parent Parent object
* @returns Processed location object
*/
parseLocation(geo, parent) {
const ngeo = {};
ngeo.locationType = geo.type || null;
if (parent && parent["@id"]) {
ngeo.coordinatesFor = parent["@id"];
}
if (geo.geometry && geo.geometry.coordinates) {
const coords = geo.geometry.coordinates;
if (coords && coords.length > 0) {
ngeo.coordinates = `${coords[1]},${coords[0]}`;
ngeo["wgs84:lat"] = coords[1];
ngeo.hasLatitude = coords[1];
ngeo.latitude = coords[1];
ngeo["wgs84:long"] = coords[0];
ngeo.longitude = coords[0];
ngeo.hasLongitude = coords[0];
if (coords.length > 2) {
ngeo["wgs84:alt"] = coords[2];
ngeo.elevation = coords[2];
ngeo.hasElevation = coords[2];
}
}
}
if (geo.properties && typeof geo.properties === "object") {
for (const [key, value] of Object.entries(geo.properties)) {
ngeo[key] = value;
}
} else if (typeof geo === "object") {
for (const [key, value] of Object.entries(geo)) {
if (key !== "geometry") {
if (!(`wgs84:${key}` in ngeo)) {
ngeo[key] = value;
}
}
}
}
return ngeo;
}
/**
* Process uncertainty values
* @param val Uncertainty value
* @param parent Parent object
* @returns Uncertainty object
*/
getUncertainty(val, parent) {
const uncertainty = {};
uncertainty.hasValue = val;
uncertainty.analytical = val;
uncertainty.reproducibility = val;
return uncertainty;
}
/**
* Get Google Spreadsheet URL from key
* @param key Spreadsheet key
* @param parent Parent object
* @returns Spreadsheet URL
*/
getGoogleSpreadsheetUrl(key, parent) {
return `https://docs.google.com/spreadsheets/d/${key}`;
}
/**
* Get a property from a parent object
* @param obj Object with parent reference
* @param prop Property to find
* @returns Property value or null
*/
getParentProperty(obj, prop) {
let parent = obj["@parent"];
while (parent) {
if (prop in parent) {
return parent[prop];
}
parent = parent["@parent"];
}
return null;
}
/**
* Get a parent with a specific property value
* @param obj Object with parent reference
* @param prop Property to check
* @param val Value to match
* @returns Parent object or null
*/
getParentWithPropertyValue(obj, prop, val) {
let parent = obj["@parent"];
while (parent) {
if (prop in parent && parent[prop] === val) {
return parent;
}
parent = parent["@parent"];
}
return null;
}
/**
* Set identifier properties for publications
* @param pub Publication object
* @param objHash Object hash
* @returns [modified publication, modified hash, added objects]
*/
setIdentifierProperties(pub, objHash) {
if ("identifier" in pub) {
for (const identifier of pub.identifier) {
if (identifier.type === "doi") {
if (!("hasDOI" in pub)) {
pub.hasDOI = [];
}
pub.hasDOI.push(identifier.id);
} else if (identifier.type === "issn") {
if (!("hasISSN" in pub)) {
pub.hasISSN = [];
}
pub.hasISSN.push(identifier.id);
} else if (identifier.type === "isbn") {
if (!("hasISBN" in pub)) {
pub.hasISBN = [];
}
pub.hasISBN.push(identifier.id);
}
if ("url" in identifier) {
if (!("hasLink" in pub)) {
pub.hasLink = [];
}
pub.hasLink.push(identifier.url);
}
}
delete pub.identifier;
}
return [pub, objHash, []];
}
/**
* Convert values array to string
* @param obj Object with values
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
valuesToString(obj, objHash) {
if ("values" in obj && Array.isArray(obj.values)) {
obj.values = obj.values.join(", ");
}
return [obj, objHash, []];
}
/**
* Guess sensor type based on archive, observation, and sensor
* @param archive Archive type
* @param observation Observation type
* @param sensor Sensor data
* @returns Guessed sensor type
*/
guessSensorType(archive, observation, sensor) {
if ("sensorGenus" in sensor || "sensorSpecies" in sensor) {
if (archive === "MarineSediment") {
return "Foraminifera";
} else if (archive === "Coral") {
return "Polyp";
} else if (archive === "Wood") {
return "Vegetation";
} else if (archive === "MolluskShell") {
return "Bivalves";
} else if (archive === "Sclerosponge") {
return "Sponge";
}
return "OrganicSensor";
} else {
if (archive === "MarineSediment" && (observation === "Uk37" || observation === "Alkenone")) {
return "Coccolithophores";
} else if (archive === "MarineSediment" && observation === "TEX86") {
return "Archea";
} else if (archive === "MarineSediment" && observation === "D18O") {
return "Foraminifera";
} else if (archive === "MarineSediment" && observation === "Mg/Ca") {
return "Foraminifera";
} else if (archive === "LakeSediment" && (observation === "Uk37" || observation === "Alkenone")) {
return "Coccolithophores";
} else if (archive === "LakeSediment" && observation === "TEX86") {
return "Archea";
} else if (archive === "LakeSediment" && observation === "Midge") {
return "Chironomids";
} else if (archive === "LakeSediment" && observation === "BSi") {
return "Diatoms";
} else if (archive === "LakeSediment" && observation === "Chironomid") {
return "Chironomids";
} else if (archive === "LakeSediment" && observation === "Reflectance") {
return "PhotosyntheticAlgae";
} else if (archive === "LakeSediment" && observation === "Pollen") {
return "Watershed";
} else if (archive === "Coral") {
return "Polyp";
} else if (archive === "Wood") {
return "Vegetation";
} else if (archive === "MolluskShell") {
return "Bivalves";
} else if (archive === "Sclerosponge") {
return "Sponge";
} else if (archive === "Speleothem") {
return "Karst";
} else if (archive === "GlacierIce") {
return "Snow";
} else if (archive === "LakeSediment" && observation === "VarveThickness") {
return "Catchment";
} else if (archive === "GlacierIce" && observation === "Melt") {
return "IceSurface";
} else if (archive === "Borehole") {
return "Soil";
} else {
return "InorganicSensor";
}
}
}
/**
* Standardize observation names
* @param observation Observation name
* @returns Standardized observation name
*/
getObservation(observation) {
if (observation === null || observation === void 0) {
return null;
}
if (observation.toLowerCase() === "alkenone") {
return "Uk37";
}
return camelCase(observation);
}
/**
* Generate a variable ID
* @param obj Variable object
* @param parentId Parent ID
* @returns Generated variable ID
*/
getVariableId(obj, parentId) {
const iobj = {};
for (const [key, value] of Object.entries(obj)) {
iobj[key.toLowerCase()] = value;
}
if (!("tsid" in iobj)) {
iobj.tsid = uniqid();
}
let id = `${parentId}.${iobj.tsid}`;
id += `.${iobj.variablename || ""}`;
return id;
}
/**
* Wrap integration time data
* @param obj Object with integration time data
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
wrapIntegrationTime(obj, objHash) {
const objId = obj["@id"];
const pvals = {};
const keysToDelete = [];
for (const [key, value] of Object.entries(obj)) {
if (/^integrationTime$/i.test(key)) {
pvals.hasValue = value;
keysToDelete.push(key);
} else {
const match = key.match(/^integrationTime(.+)/);
if (match) {
const nkey = match[1];
const nkeyLcfirst = lcfirst(nkey);
pvals[nkeyLcfirst] = value;
keysToDelete.push(key);
}
}
}
for (const key of keysToDelete) {
delete obj[key];
}
if (Object.keys(pvals).length > 0) {
const inTimeId = `${objId}.IntegrationTime`;
obj.integrationTime = inTimeId;
const inTime = {
"@id": inTimeId,
"@category": "IntegrationTime",
"@schema": "IntegrationTime"
};
Object.assign(inTime, pvals);
objHash[inTimeId] = inTime;
return [obj, objHash, [inTimeId]];
}
return [obj, objHash, []];
}
/**
* Add interpretation rank
* @param obj Interpretation object
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
addInterpretationRank(obj, objHash) {
if (!("rank" in obj) || typeof obj.rank !== "number") {
const rank = obj["@index"] - 1;
obj.rank = rank;
}
return [obj, objHash, []];
}
/**
* Wrap uncertainty data
* @param obj Object with uncertainty data
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
wrapUncertainty(obj, objHash) {
const objId = obj["@id"];
const pvals = {};
const keysToBeDeleted = [];
for (const [key, value] of Object.entries(obj)) {
if (/^uncertainty$/i.test(key)) {
pvals.hasValue = value;
keysToBeDeleted.push(key);
} else if (/^uncertainty/i.test(key)) {
pvals[key] = value;
keysToBeDeleted.push(key);
}
}
for (const key of keysToBeDeleted) {
delete obj[key];
}
if (Object.keys(pvals).length > 0) {
const uncId = `${objId}.Uncertainty`;
obj.hasUncertainty = uncId;
const uncertainty = {
"@id": uncId,
"@category": "Uncertainty"
};
for (const [prop, value] of Object.entries(pvals)) {
uncertainty[prop] = value;
}
objHash[uncId] = uncertainty;
return [obj, objHash, [uncId]];
}
return [obj, objHash, []];
}
/**
* Add found in table reference
* @param obj Object to modify
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
addFoundInTable(obj, objHash) {
if (obj["@parent"] && obj["@parent"]["@id"]) {
obj.foundInTable = obj["@parent"]["@id"];
}
return [obj, objHash, []];
}
/**
* Add found in dataset reference
* @param obj Object to modify
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
addFoundInDataset(obj, objHash) {
let parent = obj["@parent"];
let top = parent;
while (parent) {
top = parent;
parent = parent["@parent"];
}
if (top && top["@id"]) {
obj.foundInDataset = top["@id"];
}
return [obj, objHash, []];
}
/**
* Add variable values from CSV data
* @param obj Variable object
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
addVariableValues(obj, objHash) {
if (!obj["@parent"] || !obj["@parent"]["@id"]) {
return [obj, objHash, []];
}
const csvName = `${obj["@parent"]["@id"]}.csv`;
if (!("number" in obj)) {
obj.number = obj["@index"];
}
if (typeof obj.number === "string") {
obj.number = parseInt(obj.number, 10);
}
if (!Array.isArray(obj.number)) {
obj.number = [obj.number];
}
const indices = obj.number.map((col) => parseInt(col, 10) - 1);
let csvData = null;
const lookupKeys = [
csvName,
// e.g., "tableId.csv"
csvName.split("/").pop()
// basename only
];
const availableCsvs = Object.keys(this.lipdCsvs);
for (const availableCsv of availableCsvs) {
if (availableCsv.endsWith(csvName)) {
lookupKeys.push(availableCsv);
}
}
logger3.debug(`Looking for CSV with keys: ${lookupKeys.join(", ")}`);
logger3.debug(`Available CSVs: ${availableCsvs.join(", ")}`);
for (const key of lookupKeys) {
if (key && key in this.lipdCsvs) {
csvData = this.lipdCsvs[key];
logger3.debug(`Found CSV data with key: ${key}`);
break;
}
}
if (csvData) {
let values = [];
if (indices.length === 1) {
if (indices[0] >= 0 && csvData.length > 0 && indices[0] < csvData[0].length) {
values = csvData.map((row) => row[indices[0]]);
}
} else {
values = indices.map((index) => {
return csvData.map((row) => row[index]);
});
}
const valString = JSON.stringify(values);
obj.hasValues = valString;
logger3.debug(`Added ${values.length} values for variable`);
return [obj, objHash, []];
} else {
logger3.debug(`CSV '${csvName}' not found in zip \u2014 cannot fill hasValues. Available: ${availableCsvs.join(", ")}`);
}
return [obj, objHash, []];
}
/**
* Add standard variable reference
* @param obj Variable object
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
addStandardVariable(obj, objHash) {
if ("variableName" in obj) {
const name = obj.variableName;
const synonyms = SYNONYMS.VARIABLES?.PaleoVariable;
if (typeof name === "string" && synonyms && name.toLowerCase() in synonyms) {
obj.hasStandardVariable = synonyms[name.toLowerCase()].id;
if (this.addLabels) {
const label = synonyms[name.toLowerCase()].label;
this.setObjectLabel(obj.hasStandardVariable, label);
}
}
}
return [obj, objHash, []];
}
/**
* Stringify column numbers array
* @param obj Variable object
* @param objHash Object hash
* @returns [modified object, modified hash, added objects]
*/
stringifyColumnNumbersArray(obj, objHash) {
if ("number" in obj && Array.isArray(obj.number) && obj.number.length > 1) {
obj.hasColumnNumber = JSON.stringify(obj.number);
delete obj.number;
}
return [obj, objHash, []];
}
async _convertBrowser(lipdPath) {
try {
const response = await fetch(lipdPath);
if (!response.ok) {
throw new Error(`Failed to fetch LiPD file: ${response.statusText}`);
}
const arrayBuffer = await response.arrayBuffer();
const zip = await JSZip.loadAsync(arrayBuffer);
const csvEntries = [];
const jsonEntries = [];
for (const fileName of Object.keys(zip.files)) {
const file = zip.files[fileName];
if (file.dir)
continue;
if (fileName.endsWith(".csv")) {
csvEntries.push([fileName, file]);
} else if (fileName.endsWith(".jsonld")) {
jsonEntries.push(file);
}
}
for (const [fileName, file] of csvEntries) {
const csvContent = await file.async("string");
const parsedCsv = Papa.parse(csvContent, { header: false });
this.lipdCsvs[fileName] = parsedCsv.data;
const baseName = fileName.split("/").pop();
if (baseName) {
this.lipdCsvs[baseName] = parsedCsv.data;
}
logger3.debug(`Loaded CSV '${fileName}' (${parsedCsv.data.length}\xD7${parsedCsv.data[0].length || 0})`);
}
for (const file of jsonEntries) {
const jsonContent = await file.async("string");
this._loadLipdJsonString(jsonContent);
}
} catch (error) {
logger3.error("Error converting LiPD in browser: %s", error instanceof Error ? error.message : String(error));
throw error;
}
}
/**
* Load LiPD JSON content that is already available as a string (used in browser flow)
* @param jsonContent Raw JSON-LD content
*/
_loadLipdJsonString(jsonContent) {
try {
const obj = JSON.parse(jsonContent);
if (obj.dataSetName) {
this.graphUrl = NSURL + "/" + sanitizeId(obj.dataSetName);
}
const objHash = {};
this._mapLipdToJson(obj, null, null, "Dataset", "Dataset", objHash);
if (obj["@id"]) {
objHash[obj["@id"]].hasUrl = DATAURL + "/" + obj["@id"] + ".lpd";
}
for (const item of Object.values(objHash)) {
this._createIndividualFull(item);
}
} catch (error) {
logger3.error("Error loading JSON content in browser: %s", error instanceof Error ? error.message : String(error));
throw error;
}
}
};
// src/lipdSeries.ts
var logger4 = Logger.getInstance();
var LiPDSeries = class extends RDFGraph {
constructor(graph) {
super(graph);
this.lipds = {};
}
/**
* Load LiPD data into the series
* @param lipd LiPD object to load
*/
load(lipd) {
}
};
// src/globals/queries.ts
var QUERY_DSNAME = `
PREFIX le: <http://linked.earth/ontology#>
SELECT ?dsname WHERE {
GRAPH ?g {
?ds a le:Dataset .
?ds le:hasName ?dsname
}
}
`;
var QUERY_DSID = `
PREFIX le: <http://linked.earth/ontology#>
SELECT ?dsid WHERE {
GRAPH ?g {
?ds a le:Dataset .
OPTIONAL{?ds le:hasDatasetId ?dsid}
}
}
`;
var QUERY_UNIQUE_ARCHIVE_TYPE = `
PREFIX le: <http://linked.earth/ontology#>
SELECT DISTINCT ?archiveType WHERE {
GRAPH ?g {
?ds a le:Dataset .
?ds le:hasArchiveType ?archiveType
}
}
`;
var QUERY_FILTER_DATASET_NAME = `
PREFIX le: <http://linked.earth/ontology#>
SELECT ?dsname WHERE {
?ds a le:Dataset .
?ds le:hasName ?dsname .
FILTER regex(str(?dsname), "[datasetName].*", "i")
}
`;
var QUERY_FILTER_TIME = `
PREFIX le: <http://linked.earth/ontology#>
SELECT ?dsname ?minage ?maxage WHERE {
?ds a le:Dataset .
?ds le:hasName ?dsname .
?ds le:hasPaleoData ?data .
?data le:hasMeasurementTable ?table .
?table le:hasVariable ?var .
?table le:hasVariable ?timevar .
?timevar le:hasName ?time_variableName .
FILTER (regex(str(?time_variableName), "year.*") || regex(str(?time_variableName), "age.*")) .
?timevar le:hasMinValue ?minage .
?timevar le:hasMaxValue ?maxage .
}
`;
var QUERY_FILTER_COMPILATION = `
PREFIX le: <http://linked.earth/ontology#>
SELECT DISTINCT ?dataSetName WHERE {
?ds a le:Dataset .
?ds le:hasName ?dataSetName .
?ds le:hasPaleoData ?data .
?data le:hasMeasurementTable ?table .
?table le:hasVariable ?var .
?var le:partOfCompilation ?compilation .
?compilation le:hasName ?compilationName .
FILTER regex(str(?compilationName), "[compilationName].*", "i")}
`;
// src/utils/multiProcessing.ts
var logger5 = Logger.getInstance();
async function convertLipdToGraph(args) {
const [lipdfile, standardize, addLabels] = args;
try {
const converter = new LipdToRDF(standardize, addLabels);
await converter.convert(lipdfile);
return converter.store;
} catch (error) {
logger5.error("Error converting LiPD file %s to RDF: %s", lipdfile, error instanceof Error ? error.message : String(error));
throw error;
}
}
async function multiLoadLipd(store, lipdFiles, parallel = true, standardize = true, addLabels = true) {
const args = lipdFiles.map((file) => [file, standardize, addLabels]);
if (parallel) {
const promises = args.map((arg) => convertLipdToGraph(arg));
const subgraphs = await Promise.all(promises);
for (const subgraph of subgraphs) {
const quads = subgraph.getQuads(null, null, null, null);
for (const quad of quads) {
if (store.getQuads(quad.subject, quad.predicate, quad.object, quad.graph).length === 0) {
store.addQuad(quad);
}
}
}
} else {
for (const arg of args) {
const subgraph = await convertLipdToGraph(arg);
const quads = subgraph.getQuads(null, null, null, null);
for (const quad of quads) {
if (store.getQuads(quad.subject, quad.predicate, quad.object, quad.graph).length === 0) {
store.addQuad(quad);
}
}
}
}
return store;
}
// src/classes/archivetype.ts
var _ArchiveType = class _ArchiveType {
constructor(id, label) {
this.id = id;
this.label = label;
}
equals(value) {
return this.id === value.id;
}
getLabel() {
return this.label;
}
getId() {
return this.id;
}
toData(data = {}) {
data[this.id] = {
"label": [
{
"@datatype": null,
"@type": "literal",
"@value": this.label
}
]
};
return data;
}
toJson() {
return this.label;
}
static fromSynonym(synonym) {
const lowerSynonym = synonym.toLowerCase();
if (lowerSynonym in _ArchiveType.synonyms) {
const synobj = _ArchiveType.synonyms[lowerSynonym];
return new _ArchiveType(synobj.id, synobj.label);
}
return null;
}
};
_ArchiveType.synonyms = SYNONYMS.ARCHIVES?.ArchiveType;
var ArchiveType = _ArchiveType;
var ArchiveTypeConstants = class {
};
ArchiveTypeConstants.Borehole = new ArchiveType("http://linked.earth/ontology/archive#Borehole", "Borehole");
ArchiveTypeConstants.Coral = new ArchiveType("http://linked.earth/ontology/archive#Coral", "Coral");
ArchiveTypeConstants.FluvialSediment = new ArchiveType("http://linked.earth/ontology/archive#FluvialSediment", "Fluvial sediment");
ArchiveTypeConstants.GlacierIce = new ArchiveType("http://linked.earth/ontology/archive#GlacierIce", "Glacier ice");
ArchiveTypeConstants.GroundIce = new ArchiveType("http://linked.earth/ontology/archive#GroundIce", "Ground ice");
ArchiveTypeConstants.LakeSediment = new ArchiveType("http://linked.earth/ontology/archive#LakeSediment", "Lake sediment");
ArchiveTypeConstants.MarineSediment = new ArchiveType("http://linked.earth/ontology/archive#MarineSediment", "Marine sediment");
ArchiveTypeConstants.Midden = new ArchiveType("http://linked.earth/ontology/archive#Midden", "Midden");
ArchiveTypeConstants.MolluskShell = new ArchiveType("http://linked.earth/ontology/archive#MolluskShell", "Mollusk shell");
ArchiveTypeConstants.Peat = new ArchiveType("http://linked.earth/ontology/archive#Peat", "Peat");
ArchiveTypeConstants.Sclerosponge = new ArchiveType("http://linked.earth/ontology/archive#Sclerosponge", "Sclerosponge");
ArchiveTypeConstants.Shoreline = new ArchiveType("http://linked.earth/ontology/archive#Shoreline", "Shoreline");
ArchiveTypeConstants.Speleothem = new ArchiveType("http://linked.earth/ontology/archive#Speleothem", "Speleothem");
ArchiveTypeConstants.TerrestrialSediment = new ArchiveType("http://linked.earth/ontology/archive#TerrestrialSediment", "Terrestrial sediment");
ArchiveTypeConstants.Wood = new ArchiveType("http://linked.earth/ontology/archive#Wood", "Wood");
ArchiveTypeConstants.Documents = new ArchiveType("http://linked.earth/ontology/archive#Documents", "Documents");
ArchiveTypeConstants.Other = new ArchiveType("http://linked.earth/ontology/archive#Other", "Other");
// src/classes/change.ts
var Change = class _Change {
constructor() {
this.name = null;
this.notes = [];
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Change";
this._id = this._ns + "/" + uniqid("Change");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Change();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.name !== null) {
thisObj.name = data.name;
}
thisObj.notes = [];
for (const value of data.notes || []) {
thisObj.notes.push(value);
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Change();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.name = obj;
}
} else if (key === "hasNotes") {
thisObj.notes = [];
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.notes.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.name !== null) {
const valueObj = this.name;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasName"] = [obj];
}
if (this.notes.length > 0) {
data[this._id]["hasNotes"] = [];
for (const valueObj of this.notes) {
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasNotes"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.name !== null) {
const valueObj = this.name;
const obj = valueObj;
data["name"] = obj;
}
if (this.notes.length > 0) {
data["notes"] = [];
for (const valueObj of this.notes) {
const obj = valueObj;
data["notes"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Change();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "name") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.name = obj;
continue;
}
if (key === "notes") {
let obj = null;
thisObj.notes = [];
for (const value of pvalue) {
obj = value;
thisObj.notes.push(obj);
}
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getName() {
return this.name;
}
setName(name) {
this.name = name;
}
getNotes() {
return this.notes;
}
setNotes(notes) {
this.notes = notes;
}
addNotes(notes) {
this.notes.push(notes);
}
};
// src/classes/changelog.ts
var ChangeLog = class _ChangeLog {
constructor() {
this.changes = [];
this.curator = null;
this.lastVersion = null;
this.notes = null;
this.timestamp = null;
this.version = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#ChangeLog";
this._id = this._ns + "/" + uniqid("ChangeLog");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _ChangeLog();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.curator !== null) {
thisObj.curator = data.curator;
}
if (data.lastVersion !== null) {
thisObj.lastVersion = data.lastVersion;
}
if (data.notes !== null) {
thisObj.notes = data.notes;
}
if (data.timestamp !== null) {
thisObj.timestamp = data.timestamp;
}
if (data.version !== null) {
thisObj.version = data.version;
}
thisObj.changes = [];
for (const value of data.changes || []) {
thisObj.changes.push(Change.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _ChangeLog();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasChanges") {
thisObj.changes = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Change.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.changes.push(obj);
}
} else if (key === "hasCurator") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.curator = obj;
}
} else if (key === "hasLastVersion") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.lastVersion = obj;
}
} else if (key === "hasNotes") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.notes = obj;
}
} else if (key === "hasTimestamp") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.timestamp = obj;
}
} else if (key === "hasVersion") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.version = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.changes.length > 0) {
data[this._id]["hasChanges"] = [];
for (const valueObj of this.changes) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasChanges"].push(obj);
}
}
if (this.curator !== null) {
const valueObj = this.curator;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCurator"] = [obj];
}
if (this.lastVersion !== null) {
const valueObj = this.lastVersion;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasLastVersion"] = [obj];
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasNotes"] = [obj];
}
if (this.timestamp !== null) {
const valueObj = this.timestamp;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasTimestamp"] = [obj];
}
if (this.version !== null) {
const valueObj = this.version;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVersion"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.changes.length > 0) {
data["changes"] = [];
for (const valueObj of this.changes) {
const obj = valueObj.toJson();
data["changes"].push(obj);
}
}
if (this.curator !== null) {
const valueObj = this.curator;
const obj = valueObj;
data["curator"] = obj;
}
if (this.lastVersion !== null) {
const valueObj = this.lastVersion;
const obj = valueObj;
data["lastVersion"] = obj;
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = valueObj;
data["notes"] = obj;
}
if (this.timestamp !== null) {
const valueObj = this.timestamp;
const obj = valueObj;
data["timestamp"] = obj;
}
if (this.version !== null) {
const valueObj = this.version;
const obj = valueObj;
data["version"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _ChangeLog();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "changes") {
let obj = null;
thisObj.changes = [];
for (const value of pvalue) {
obj = Change.fromJson(value);
thisObj.changes.push(obj);
}
continue;
}
if (key === "curator") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.curator = obj;
continue;
}
if (key === "lastVersion") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.lastVersion = obj;
continue;
}
if (key === "notes") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.notes = obj;
continue;
}
if (key === "timestamp") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.timestamp = obj;
continue;
}
if (key === "version") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.version = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getChanges() {
return this.changes;
}
setChanges(changes) {
this.changes = changes;
}
addChanges(changes) {
this.changes.push(changes);
}
getCurator() {
return this.curator;
}
setCurator(curator) {
this.curator = curator;
}
getLastVersion() {
return this.lastVersion;
}
setLastVersion(lastVersion) {
this.lastVersion = lastVersion;
}
getNotes() {
return this.notes;
}
setNotes(notes) {
this.notes = notes;
}
getTimestamp() {
return this.timestamp;
}
setTimestamp(timestamp) {
this.timestamp = timestamp;
}
getVersion() {
return this.version;
}
setVersion(version) {
this.version = version;
}
};
// src/classes/calibration.ts
var Calibration = class _Calibration {
constructor() {
this.dOI = null;
this.datasetRange = null;
this.equation = null;
this.equationIntercept = null;
this.equationR2 = null;
this.equationSlope = null;
this.equationSlopeUncertainty = null;
this.method = null;
this.methodDetail = null;
this.notes = null;
this.proxyDataset = null;
this.seasonality = null;
this.targetDataset = null;
this.uncertainty = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Calibration";
this._id = this._ns + "/" + uniqid("Calibration");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Calibration();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.dOI !== null) {
thisObj.dOI = data.dOI;
}
if (data.datasetRange !== null) {
thisObj.datasetRange = data.datasetRange;
}
if (data.equation !== null) {
thisObj.equation = data.equation;
}
if (data.equationIntercept !== null) {
thisObj.equationIntercept = data.equationIntercept;
}
if (data.equationR2 !== null) {
thisObj.equationR2 = data.equationR2;
}
if (data.equationSlope !== null) {
thisObj.equationSlope = data.equationSlope;
}
if (data.equationSlopeUncertainty !== null) {
thisObj.equationSlopeUncertainty = data.equationSlopeUncertainty;
}
if (data.method !== null) {
thisObj.method = data.method;
}
if (data.methodDetail !== null) {
thisObj.methodDetail = data.methodDetail;
}
if (data.notes !== null) {
thisObj.notes = data.notes;
}
if (data.proxyDataset !== null) {
thisObj.proxyDataset = data.proxyDataset;
}
if (data.seasonality !== null) {
thisObj.seasonality = data.seasonality;
}
if (data.targetDataset !== null) {
thisObj.targetDataset = data.targetDataset;
}
if (data.uncertainty !== null) {
thisObj.uncertainty = data.uncertainty;
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Calibration();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasDOI") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.dOI = obj;
}
} else if (key === "hasDatasetRange") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.datasetRange = obj;
}
} else if (key === "hasEquation") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.equation = obj;
}
} else if (key === "hasEquationIntercept") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.equationIntercept = obj;
}
} else if (key === "hasEquationR2") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.equationR2 = obj;
}
} else if (key === "hasEquationSlope") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.equationSlope = obj;
}
} else if (key === "hasEquationSlopeUncertainty") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.equationSlopeUncertainty = obj;
}
} else if (key === "hasMethod") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.method = obj;
}
} else if (key === "hasMethodDetail") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.methodDetail = obj;
}
} else if (key === "hasNotes") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.notes = obj;
}
} else if (key === "hasProxyDataset") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.proxyDataset = obj;
}
} else if (key === "hasTargetDataset") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.targetDataset = obj;
}
} else if (key === "hasUncertainty") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.uncertainty = obj;
}
} else if (key === "seasonality") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.seasonality = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.dOI !== null) {
const valueObj = this.dOI;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDOI"] = [obj];
}
if (this.datasetRange !== null) {
const valueObj = this.datasetRange;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDatasetRange"] = [obj];
}
if (this.equation !== null) {
const valueObj = this.equation;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasEquation"] = [obj];
}
if (this.equationIntercept !== null) {
const valueObj = this.equationIntercept;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasEquationIntercept"] = [obj];
}
if (this.equationR2 !== null) {
const valueObj = this.equationR2;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasEquationR2"] = [obj];
}
if (this.equationSlope !== null) {
const valueObj = this.equationSlope;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasEquationSlope"] = [obj];
}
if (this.equationSlopeUncertainty !== null) {
const valueObj = this.equationSlopeUncertainty;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasEquationSlopeUncertainty"] = [obj];
}
if (this.method !== null) {
const valueObj = this.method;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasMethod"] = [obj];
}
if (this.methodDetail !== null) {
const valueObj = this.methodDetail;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasMethodDetail"] = [obj];
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasNotes"] = [obj];
}
if (this.proxyDataset !== null) {
const valueObj = this.proxyDataset;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasProxyDataset"] = [obj];
}
if (this.seasonality !== null) {
const valueObj = this.seasonality;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["seasonality"] = [obj];
}
if (this.targetDataset !== null) {
const valueObj = this.targetDataset;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasTargetDataset"] = [obj];
}
if (this.uncertainty !== null) {
const valueObj = this.uncertainty;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasUncertainty"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.dOI !== null) {
const valueObj = this.dOI;
const obj = valueObj;
data["doi"] = obj;
}
if (this.datasetRange !== null) {
const valueObj = this.datasetRange;
const obj = valueObj;
data["datasetRange"] = obj;
}
if (this.equation !== null) {
const valueObj = this.equation;
const obj = valueObj;
data["equation"] = obj;
}
if (this.equationIntercept !== null) {
const valueObj = this.equationIntercept;
const obj = valueObj;
data["equationIntercept"] = obj;
}
if (this.equationR2 !== null) {
const valueObj = this.equationR2;
const obj = valueObj;
data["equationR2"] = obj;
}
if (this.equationSlope !== null) {
const valueObj = this.equationSlope;
const obj = valueObj;
data["equationSlope"] = obj;
}
if (this.equationSlopeUncertainty !== null) {
const valueObj = this.equationSlopeUncertainty;
const obj = valueObj;
data["equationSlopeUncertainty"] = obj;
}
if (this.method !== null) {
const valueObj = this.method;
const obj = valueObj;
data["method"] = obj;
}
if (this.methodDetail !== null) {
const valueObj = this.methodDetail;
const obj = valueObj;
data["methodDetail"] = obj;
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = valueObj;
data["notes"] = obj;
}
if (this.proxyDataset !== null) {
const valueObj = this.proxyDataset;
const obj = valueObj;
data["proxyDataset"] = obj;
}
if (this.seasonality !== null) {
const valueObj = this.seasonality;
const obj = valueObj;
data["hasSeasonality"] = obj;
}
if (this.targetDataset !== null) {
const valueObj = this.targetDataset;
const obj = valueObj;
data["targetDataset"] = obj;
}
if (this.uncertainty !== null) {
const valueObj = this.uncertainty;
const obj = valueObj;
data["uncertainty"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Calibration();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "datasetRange") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.datasetRange = obj;
continue;
}
if (key === "doi") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.dOI = obj;
continue;
}
if (key === "equation") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.equation = obj;
continue;
}
if (key === "equationIntercept") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.equationIntercept = obj;
continue;
}
if (key === "equationR2") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.equationR2 = obj;
continue;
}
if (key === "equationSlope") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.equationSlope = obj;
continue;
}
if (key === "equationSlopeUncertainty") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.equationSlopeUncertainty = obj;
continue;
}
if (key === "hasSeasonality") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.seasonality = obj;
continue;
}
if (key === "method") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.method = obj;
continue;
}
if (key === "methodDetail") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.methodDetail = obj;
continue;
}
if (key === "notes") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.notes = obj;
continue;
}
if (key === "proxyDataset") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.proxyDataset = obj;
continue;
}
if (key === "targetDataset") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.targetDataset = obj;
continue;
}
if (key === "uncertainty") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.uncertainty = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getDOI() {
return this.dOI;
}
setDOI(dOI) {
this.dOI = dOI;
}
getDatasetRange() {
return this.datasetRange;
}
setDatasetRange(datasetRange) {
this.datasetRange = datasetRange;
}
getEquation() {
return this.equation;
}
setEquation(equation) {
this.equation = equation;
}
getEquationIntercept() {
return this.equationIntercept;
}
setEquationIntercept(equationIntercept) {
this.equationIntercept = equationIntercept;
}
getEquationR2() {
return this.equationR2;
}
setEquationR2(equationR2) {
this.equationR2 = equationR2;
}
getEquationSlope() {
return this.equationSlope;
}
setEquationSlope(equationSlope) {
this.equationSlope = equationSlope;
}
getEquationSlopeUncertainty() {
return this.equationSlopeUncertainty;
}
setEquationSlopeUncertainty(equationSlopeUncertainty) {
this.equationSlopeUncertainty = equationSlopeUncertainty;
}
getMethod() {
return this.method;
}
setMethod(method) {
this.method = method;
}
getMethodDetail() {
return this.methodDetail;
}
setMethodDetail(methodDetail) {
this.methodDetail = methodDetail;
}
getNotes() {
return this.notes;
}
setNotes(notes) {
this.notes = notes;
}
getProxyDataset() {
return this.proxyDataset;
}
setProxyDataset(proxyDataset) {
this.proxyDataset = proxyDataset;
}
getSeasonality() {
return this.seasonality;
}
setSeasonality(seasonality) {
this.seasonality = seasonality;
}
getTargetDataset() {
return this.targetDataset;
}
setTargetDataset(targetDataset) {
this.targetDataset = targetDataset;
}
getUncertainty() {
return this.uncertainty;
}
setUncertainty(uncertainty) {
this.uncertainty = uncertainty;
}
};
// src/classes/compilation.ts
var Compilation = class _Compilation {
constructor() {
this.name = null;
this.versions = [];
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Compilation";
this._id = this._ns + "/" + uniqid("Compilation");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Compilation();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.name !== null) {
thisObj.name = data.name;
}
thisObj.versions = [];
for (const value of data.versions || []) {
thisObj.versions.push(value);
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Compilation();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.name = obj;
}
} else if (key === "hasVersion") {
thisObj.versions = [];
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.versions.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.name !== null) {
const valueObj = this.name;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasName"] = [obj];
}
if (this.versions.length > 0) {
data[this._id]["hasVersion"] = [];
for (const valueObj of this.versions) {
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVersion"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.name !== null) {
const valueObj = this.name;
const obj = valueObj;
data["compilationName"] = obj;
}
if (this.versions.length > 0) {
data["compilationVersion"] = [];
for (const valueObj of this.versions) {
const obj = valueObj;
data["compilationVersion"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Compilation();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "compilationName") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.name = obj;
continue;
}
if (key === "compilationVersion") {
let obj = null;
thisObj.versions = [];
for (const value of pvalue) {
obj = value;
thisObj.versions.push(obj);
}
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getName() {
return this.name;
}
setName(name) {
this.name = name;
}
getVersions() {
return this.versions;
}
setVersions(versions) {
this.versions = versions;
}
addVersion(versions) {
this.versions.push(versions);
}
};
// src/classes/interpretationseasonality.ts
var _InterpretationSeasonality = class _InterpretationSeasonality {
constructor(id, label) {
this.id = id;
this.label = label;
}
equals(value) {
return this.id === value.id;
}
getLabel() {
return this.label;
}
getId() {
return this.id;
}
toData(data = {}) {
data[this.id] = {
"label": [
{
"@datatype": null,
"@type": "literal",
"@value": this.label
}
]
};
return data;
}
toJson() {
return this.label;
}
static fromSynonym(synonym) {
const lowerSynonym = synonym.toLowerCase();
if (lowerSynonym in _InterpretationSeasonality.synonyms) {
const synobj = _InterpretationSeasonality.synonyms[lowerSynonym];
return new _InterpretationSeasonality(synobj.id, synobj.label);
}
return null;
}
};
_InterpretationSeasonality.synonyms = SYNONYMS.INTERPRETATION?.InterpretationSeasonality;
var InterpretationSeasonality = _InterpretationSeasonality;
var InterpretationSeasonalityConstants = class {
};
InterpretationSeasonalityConstants.Oct_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-May", "Oct-May");
InterpretationSeasonalityConstants.Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun", "Jun");
InterpretationSeasonalityConstants.Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul", "Jul");
InterpretationSeasonalityConstants.Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug", "Aug");
InterpretationSeasonalityConstants.Annual = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Annual", "Annual");
InterpretationSeasonalityConstants.Winter = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Winter", "Winter");
InterpretationSeasonalityConstants.Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr", "Apr");
InterpretationSeasonalityConstants.Apr_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Aug", "Apr-Aug");
InterpretationSeasonalityConstants.Apr_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Dec", "Apr-Dec");
InterpretationSeasonalityConstants.Apr_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Feb", "Apr-Feb");
InterpretationSeasonalityConstants.Apr_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Jan", "Apr-Jan");
InterpretationSeasonalityConstants.Apr_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Jul", "Apr-Jul");
InterpretationSeasonalityConstants.Apr_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Jun", "Apr-Jun");
InterpretationSeasonalityConstants.Apr_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Mar", "Apr-Mar");
InterpretationSeasonalityConstants.Apr_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-May", "Apr-May");
InterpretationSeasonalityConstants.Apr_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Nov", "Apr-Nov");
InterpretationSeasonalityConstants.Apr_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Oct", "Apr-Oct");
InterpretationSeasonalityConstants.Apr_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Apr-Sep", "Apr-Sep");
InterpretationSeasonalityConstants.Summer = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Summer", "Summer");
InterpretationSeasonalityConstants.Aug_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Apr", "Aug-Apr");
InterpretationSeasonalityConstants.Aug_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Dec", "Aug-Dec");
InterpretationSeasonalityConstants.Aug_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Feb", "Aug-Feb");
InterpretationSeasonalityConstants.Aug_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Jan", "Aug-Jan");
InterpretationSeasonalityConstants.Aug_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Jul", "Aug-Jul");
InterpretationSeasonalityConstants.Aug_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Jun", "Aug-Jun");
InterpretationSeasonalityConstants.Aug_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Mar", "Aug-Mar");
InterpretationSeasonalityConstants.Aug_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-May", "Aug-May");
InterpretationSeasonalityConstants.Aug_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Nov", "Aug-Nov");
InterpretationSeasonalityConstants.Aug_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Oct", "Aug-Oct");
InterpretationSeasonalityConstants.Aug_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Aug-Sep", "Aug-Sep");
InterpretationSeasonalityConstants.Growing_Season = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Growing_Season", "Growing Season");
InterpretationSeasonalityConstants.Coldest_Month = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Coldest_Month", "Coldest Month");
InterpretationSeasonalityConstants.Dec_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Apr", "Dec-Apr");
InterpretationSeasonalityConstants.Dec_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Aug", "Dec-Aug");
InterpretationSeasonalityConstants.Dec_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Feb", "Dec-Feb");
InterpretationSeasonalityConstants.Dec_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Jan", "Dec-Jan");
InterpretationSeasonalityConstants.Dec_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Jul", "Dec-Jul");
InterpretationSeasonalityConstants.Dec_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Jun", "Dec-Jun");
InterpretationSeasonalityConstants.Dec_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Mar", "Dec-Mar");
InterpretationSeasonalityConstants.Dec_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-May", "Dec-May");
InterpretationSeasonalityConstants.Dec_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Oct", "Dec-Oct");
InterpretationSeasonalityConstants.Dec_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Dec-Sep", "Dec-Sep");
InterpretationSeasonalityConstants.Fall = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Fall", "Fall");
InterpretationSeasonalityConstants.Feb_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Aug", "Feb-Aug");
InterpretationSeasonalityConstants.Feb_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Apr", "Feb-Apr");
InterpretationSeasonalityConstants.Feb_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Dec", "Feb-Dec");
InterpretationSeasonalityConstants.Feb_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Jul", "Feb-Jul");
InterpretationSeasonalityConstants.Feb_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Jun", "Feb-Jun");
InterpretationSeasonalityConstants.Feb_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Mar", "Feb-Mar");
InterpretationSeasonalityConstants.Feb_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-May", "Feb-May");
InterpretationSeasonalityConstants.Feb_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Nov", "Feb-Nov");
InterpretationSeasonalityConstants.Feb_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Oct", "Feb-Oct");
InterpretationSeasonalityConstants.Feb_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Feb-Sep", "Feb-Sep");
InterpretationSeasonalityConstants.Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan", "Jan");
InterpretationSeasonalityConstants.Jan_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Apr", "Jan-Apr");
InterpretationSeasonalityConstants.Jan_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Aug", "Jan-Aug");
InterpretationSeasonalityConstants.Jan_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Feb", "Jan-Feb");
InterpretationSeasonalityConstants.Jan_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Jul", "Jan-Jul");
InterpretationSeasonalityConstants.Jan_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Jun", "Jan-Jun");
InterpretationSeasonalityConstants.Jan_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Mar", "Jan-Mar");
InterpretationSeasonalityConstants.Jan_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-May", "Jan-May");
InterpretationSeasonalityConstants.Jan_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Nov", "Jan-Nov");
InterpretationSeasonalityConstants.Jan_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Oct", "Jan-Oct");
InterpretationSeasonalityConstants.Jan_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jan-Sep", "Jan-Sep");
InterpretationSeasonalityConstants.May_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Sep", "May-Sep");
InterpretationSeasonalityConstants.Jul_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Apr", "Jul-Apr");
InterpretationSeasonalityConstants.Jul_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Aug", "Jul-Aug");
InterpretationSeasonalityConstants.Jul_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Dec", "Jul-Dec");
InterpretationSeasonalityConstants.Jul_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Feb", "Jul-Feb");
InterpretationSeasonalityConstants.Jul_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Jan", "Jul-Jan");
InterpretationSeasonalityConstants.Jul_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Jun", "Jul-Jun");
InterpretationSeasonalityConstants.Jul_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Mar", "Jul-Mar");
InterpretationSeasonalityConstants.Jul_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-May", "Jul-May");
InterpretationSeasonalityConstants.Jul_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Nov", "Jul-Nov");
InterpretationSeasonalityConstants.Jul_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Oct", "Jul-Oct");
InterpretationSeasonalityConstants.Jul_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jul-Sep", "Jul-Sep");
InterpretationSeasonalityConstants.Jun_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Apr", "Jun-Apr");
InterpretationSeasonalityConstants.Jun_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Aug", "Jun-Aug");
InterpretationSeasonalityConstants.Jun_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Sep", "Jun-Sep");
InterpretationSeasonalityConstants.Jun_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Dec", "Jun-Dec");
InterpretationSeasonalityConstants.Jun_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Feb", "Jun-Feb");
InterpretationSeasonalityConstants.Jun_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Jan", "Jun-Jan");
InterpretationSeasonalityConstants.Jun_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Jul", "Jun-Jul");
InterpretationSeasonalityConstants.Jun_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Mar", "Jun-Mar");
InterpretationSeasonalityConstants.Jun_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Nov", "Jun-Nov");
InterpretationSeasonalityConstants.Jun_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Jun-Oct", "Jun-Oct");
InterpretationSeasonalityConstants.Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar", "Mar");
InterpretationSeasonalityConstants.Mar_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Apr", "Mar-Apr");
InterpretationSeasonalityConstants.Mar_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Aug", "Mar-Aug");
InterpretationSeasonalityConstants.Mar_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Dec", "Mar-Dec");
InterpretationSeasonalityConstants.Mar_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Jan", "Mar-Jan");
InterpretationSeasonalityConstants.Mar_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Jul", "Mar-Jul");
InterpretationSeasonalityConstants.Mar_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Jun", "Mar-Jun");
InterpretationSeasonalityConstants.Mar_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-May", "Mar-May");
InterpretationSeasonalityConstants.Mar_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Nov", "Mar-Nov");
InterpretationSeasonalityConstants.Mar_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Oct", "Mar-Oct");
InterpretationSeasonalityConstants.Mar_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Mar-Sep", "Mar-Sep");
InterpretationSeasonalityConstants.May_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Apr", "May-Apr");
InterpretationSeasonalityConstants.May_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Aug", "May-Aug");
InterpretationSeasonalityConstants.May_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Dec", "May-Dec");
InterpretationSeasonalityConstants.May_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Oct", "May-Oct");
InterpretationSeasonalityConstants.May_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Feb", "May-Feb");
InterpretationSeasonalityConstants.May_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Jan", "May-Jan");
InterpretationSeasonalityConstants.May_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Jul", "May-Jul");
InterpretationSeasonalityConstants.May_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Jun", "May-Jun");
InterpretationSeasonalityConstants.May_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Mar", "May-Mar");
InterpretationSeasonalityConstants.May_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#May-Nov", "May-Nov");
InterpretationSeasonalityConstants.needsToBeChanged = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#needsToBeChanged", "needsToBeChanged");
InterpretationSeasonalityConstants.Nov_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Apr", "Nov-Apr");
InterpretationSeasonalityConstants.Nov_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Aug", "Nov-Aug");
InterpretationSeasonalityConstants.Nov_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Dec", "Nov-Dec");
InterpretationSeasonalityConstants.Nov_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Feb", "Nov-Feb");
InterpretationSeasonalityConstants.Nov_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Jan", "Nov-Jan");
InterpretationSeasonalityConstants.Nov_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Jul", "Nov-Jul");
InterpretationSeasonalityConstants.Nov_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Jun", "Nov-Jun");
InterpretationSeasonalityConstants.Nov_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Mar", "Nov-Mar");
InterpretationSeasonalityConstants.Nov_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-May", "Nov-May");
InterpretationSeasonalityConstants.Nov_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Oct", "Nov-Oct");
InterpretationSeasonalityConstants.Nov_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Nov-Sep", "Nov-Sep");
InterpretationSeasonalityConstants.Oct_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Apr", "Oct-Apr");
InterpretationSeasonalityConstants.Oct_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Aug", "Oct-Aug");
InterpretationSeasonalityConstants.Oct_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Dec", "Oct-Dec");
InterpretationSeasonalityConstants.Oct_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Feb", "Oct-Feb");
InterpretationSeasonalityConstants.Oct_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Jan", "Oct-Jan");
InterpretationSeasonalityConstants.Oct_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Jul", "Oct-Jul");
InterpretationSeasonalityConstants.Oct_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Jun", "Oct-Jun");
InterpretationSeasonalityConstants.Oct_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Mar", "Oct-Mar");
InterpretationSeasonalityConstants.Oct_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Nov", "Oct-Nov");
InterpretationSeasonalityConstants.Oct_Sep = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Oct-Sep", "Oct-Sep");
InterpretationSeasonalityConstants.Sep_Apr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Apr", "Sep-Apr");
InterpretationSeasonalityConstants.Sep_Aug = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Aug", "Sep-Aug");
InterpretationSeasonalityConstants.Sep_Dec = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Dec", "Sep-Dec");
InterpretationSeasonalityConstants.Sep_Feb = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Feb", "Sep-Feb");
InterpretationSeasonalityConstants.Sep_Jan = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Jan", "Sep-Jan");
InterpretationSeasonalityConstants.Sep_Jul = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Jul", "Sep-Jul");
InterpretationSeasonalityConstants.Sep_Jun = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Jun", "Sep-Jun");
InterpretationSeasonalityConstants.Sep_Mar = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Mar", "Sep-Mar");
InterpretationSeasonalityConstants.Sep_May = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-May", "Sep-May");
InterpretationSeasonalityConstants.Sep_Nov = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Nov", "Sep-Nov");
InterpretationSeasonalityConstants.Sep_Oct = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Sep-Oct", "Sep-Oct");
InterpretationSeasonalityConstants.Spr_Sum = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Spr-Sum", "Spr-Sum");
InterpretationSeasonalityConstants.Spring = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Spring", "Spring");
InterpretationSeasonalityConstants.subannual = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#subannual", "subannual");
InterpretationSeasonalityConstants.Warmest_Month = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Warmest_Month", "Warmest Month");
InterpretationSeasonalityConstants.Wet_Season = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Wet_Season", "Wet Season");
InterpretationSeasonalityConstants.Win_Spr = new InterpretationSeasonality("http://linked.earth/ontology/interpretation#Win-Spr", "Win-Spr");
// src/classes/interpretationvariable.ts
var _InterpretationVariable = class _InterpretationVariable {
constructor(id, label) {
this.id = id;
this.label = label;
}
equals(value) {
return this.id === value.id;
}
getLabel() {
return this.label;
}
getId() {
return this.id;
}
toData(data = {}) {
data[this.id] = {
"label": [
{
"@datatype": null,
"@type": "literal",
"@value": this.label
}
]
};
return data;
}
toJson() {
return this.label;
}
static fromSynonym(synonym) {
const lowerSynonym = synonym.toLowerCase();
if (lowerSynonym in _InterpretationVariable.synonyms) {
const synobj = _InterpretationVariable.synonyms[lowerSynonym];
return new _InterpretationVariable(synobj.id, synobj.label);
}
return null;
}
};
_InterpretationVariable.synonyms = SYNONYMS.INTERPRETATION?.InterpretationVariable;
var InterpretationVariable = _InterpretationVariable;
var InterpretationVariableConstants = class {
};
InterpretationVariableConstants.C3C4Ratio = new InterpretationVariable("http://linked.earth/ontology/interpretation#C3C4Ratio", "C3C4Ratio");
InterpretationVariableConstants.circulationIndex = new InterpretationVariable("http://linked.earth/ontology/interpretation#circulationIndex", "circulationIndex");
InterpretationVariableConstants.circulationVariable = new InterpretationVariable("http://linked.earth/ontology/interpretation#circulationVariable", "circulationVariable");
InterpretationVariableConstants.dissolvedOxygen = new InterpretationVariable("http://linked.earth/ontology/interpretation#dissolvedOxygen", "dissolvedOxygen");
InterpretationVariableConstants.dust = new InterpretationVariable("http://linked.earth/ontology/interpretation#dust", "dust");
InterpretationVariableConstants.ELA = new InterpretationVariable("http://linked.earth/ontology/interpretation#ELA", "ELA");
InterpretationVariableConstants.evaporation = new InterpretationVariable("http://linked.earth/ontology/interpretation#evaporation", "evaporation");
InterpretationVariableConstants.fire = new InterpretationVariable("http://linked.earth/ontology/interpretation#fire", "fire");
InterpretationVariableConstants.growingDegreeDays = new InterpretationVariable("http://linked.earth/ontology/interpretation#growingDegreeDays", "growingDegreeDays");
InterpretationVariableConstants.hydrologicBalance = new InterpretationVariable("http://linked.earth/ontology/interpretation#hydrologicBalance", "hydrologicBalance");
InterpretationVariableConstants.lakeWaterIsotope = new InterpretationVariable("http://linked.earth/ontology/interpretation#lakeWaterIsotope", "lakeWaterIsotope");
InterpretationVariableConstants.meltwater = new InterpretationVariable("http://linked.earth/ontology/interpretation#meltwater", "meltwater");
InterpretationVariableConstants.needsToBeReplaced = new InterpretationVariable("http://linked.earth/ontology/interpretation#needsToBeReplaced", "needsToBeReplaced");
InterpretationVariableConstants.P_E = new InterpretationVariable("http://linked.earth/ontology/interpretation#P-E", "P-E");
InterpretationVariableConstants.precipitation = new InterpretationVariable("http://linked.earth/ontology/interpretation#precipitation", "precipitation");
InterpretationVariableConstants.precipitationDeuteriumExcess = new InterpretationVariable("http://linked.earth/ontology/interpretation#precipitationDeuteriumExcess", "precipitationDeuteriumExcess");
InterpretationVariableConstants.precipitationIsotope = new InterpretationVariable("http://linked.earth/ontology/interpretation#precipitationIsotope", "precipitationIsotope");
InterpretationVariableConstants.productivity = new InterpretationVariable("http://linked.earth/ontology/interpretation#productivity", "productivity");
InterpretationVariableConstants.relativeHumidity = new InterpretationVariable("http://linked.earth/ontology/interpretation#relativeHumidity", "relativeHumidity");
InterpretationVariableConstants.salinity = new InterpretationVariable("http://linked.earth/ontology/interpretation#salinity", "salinity");
InterpretationVariableConstants.seaIce = new InterpretationVariable("http://linked.earth/ontology/interpretation#seaIce", "seaIce");
InterpretationVariableConstants.seasonality = new InterpretationVariable("http://linked.earth/ontology/interpretation#seasonality", "seasonality");
InterpretationVariableConstants.seawaterIsotope = new InterpretationVariable("http://linked.earth/ontology/interpretation#seawaterIsotope", "seawaterIsotope");
InterpretationVariableConstants.streamflow = new InterpretationVariable("http://linked.earth/ontology/interpretation#streamflow", "streamflow");
InterpretationVariableConstants.sunlight = new InterpretationVariable("http://linked.earth/ontology/interpretation#sunlight", "sunlight");
InterpretationVariableConstants.surfacePressure = new InterpretationVariable("http://linked.earth/ontology/interpretation#surfacePressure", "surfacePressure");
InterpretationVariableConstants.temperature = new InterpretationVariable("http://linked.earth/ontology/interpretation#temperature", "temperature");
InterpretationVariableConstants.upwelling = new InterpretationVariable("http://linked.earth/ontology/interpretation#upwelling", "upwelling");
InterpretationVariableConstants.windSpeed = new InterpretationVariable("http://linked.earth/ontology/interpretation#windSpeed", "windSpeed");
// src/classes/interpretation.ts
var Interpretation = class _Interpretation {
constructor() {
this.basis = null;
this.direction = null;
this.local = null;
this.mathematicalRelation = null;
this.notes = null;
this.rank = null;
this.scope = null;
this.seasonality = null;
this.seasonalityGeneral = null;
this.seasonalityOriginal = null;
this.variable = null;
this.variableDetail = null;
this.variableGeneral = null;
this.variableGeneralDirection = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Interpretation";
this._id = this._ns + "/" + uniqid("Interpretation");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Interpretation();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.basis !== null) {
thisObj.basis = data.basis;
}
if (data.direction !== null) {
thisObj.direction = data.direction;
}
if (data.local !== null) {
thisObj.local = data.local;
}
if (data.mathematicalRelation !== null) {
thisObj.mathematicalRelation = data.mathematicalRelation;
}
if (data.notes !== null) {
thisObj.notes = data.notes;
}
if (data.rank !== null) {
thisObj.rank = data.rank;
}
if (data.scope !== null) {
thisObj.scope = data.scope;
}
if (data.seasonality !== null) {
thisObj.seasonality = new InterpretationSeasonality(data.seasonality.id, data.seasonality.label);
}
if (data.seasonalityGeneral !== null) {
thisObj.seasonalityGeneral = new InterpretationSeasonality(data.seasonalityGeneral.id, data.seasonalityGeneral.label);
}
if (data.seasonalityOriginal !== null) {
thisObj.seasonalityOriginal = new InterpretationSeasonality(data.seasonalityOriginal.id, data.seasonalityOriginal.label);
}
if (data.variable !== null) {
thisObj.variable = new InterpretationVariable(data.variable.id, data.variable.label);
}
if (data.variableDetail !== null) {
thisObj.variableDetail = data.variableDetail;
}
if (data.variableGeneral !== null) {
thisObj.variableGeneral = data.variableGeneral;
}
if (data.variableGeneralDirection !== null) {
thisObj.variableGeneralDirection = data.variableGeneralDirection;
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Interpretation();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasBasis") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.basis = obj;
}
} else if (key === "hasDirection") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.direction = obj;
}
} else if (key === "hasMathematicalRelation") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.mathematicalRelation = obj;
}
} else if (key === "hasNotes") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.notes = obj;
}
} else if (key === "hasRank") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.rank = obj;
}
} else if (key === "hasScope") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.scope = obj;
}
} else if (key === "hasSeasonality") {
for (const val of value) {
let obj = null;
obj = InterpretationSeasonality.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.seasonality = obj;
}
} else if (key === "hasSeasonalityGeneral") {
for (const val of value) {
let obj = null;
obj = InterpretationSeasonality.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.seasonalityGeneral = obj;
}
} else if (key === "hasSeasonalityOriginal") {
for (const val of value) {
let obj = null;
obj = InterpretationSeasonality.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.seasonalityOriginal = obj;
}
} else if (key === "hasVariable") {
for (const val of value) {
let obj = null;
obj = InterpretationVariable.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.variable = obj;
}
} else if (key === "hasVariableDetail") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.variableDetail = obj;
}
} else if (key === "hasVariableGeneral") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.variableGeneral = obj;
}
} else if (key === "hasVariableGeneralDirection") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.variableGeneralDirection = obj;
}
} else if (key === "isLocal") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.local = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.basis !== null) {
const valueObj = this.basis;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasBasis"] = [obj];
}
if (this.direction !== null) {
const valueObj = this.direction;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDirection"] = [obj];
}
if (this.local !== null) {
const valueObj = this.local;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["isLocal"] = [obj];
}
if (this.mathematicalRelation !== null) {
const valueObj = this.mathematicalRelation;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasMathematicalRelation"] = [obj];
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasNotes"] = [obj];
}
if (this.rank !== null) {
const valueObj = this.rank;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasRank"] = [obj];
}
if (this.scope !== null) {
const valueObj = this.scope;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasScope"] = [obj];
}
if (this.seasonality !== null) {
const valueObj = this.seasonality;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasSeasonality"] = [obj];
}
if (this.seasonalityGeneral !== null) {
const valueObj = this.seasonalityGeneral;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasSeasonalityGeneral"] = [obj];
}
if (this.seasonalityOriginal !== null) {
const valueObj = this.seasonalityOriginal;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasSeasonalityOriginal"] = [obj];
}
if (this.variable !== null) {
const valueObj = this.variable;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasVariable"] = [obj];
}
if (this.variableDetail !== null) {
const valueObj = this.variableDetail;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVariableDetail"] = [obj];
}
if (this.variableGeneral !== null) {
const valueObj = this.variableGeneral;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVariableGeneral"] = [obj];
}
if (this.variableGeneralDirection !== null) {
const valueObj = this.variableGeneralDirection;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVariableGeneralDirection"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.basis !== null) {
const valueObj = this.basis;
const obj = valueObj;
data["basis"] = obj;
}
if (this.direction !== null) {
const valueObj = this.direction;
const obj = valueObj;
data["direction"] = obj;
}
if (this.local !== null) {
const valueObj = this.local;
const obj = valueObj;
data["isLocal"] = obj;
}
if (this.mathematicalRelation !== null) {
const valueObj = this.mathematicalRelation;
const obj = valueObj;
data["mathematicalRelation"] = obj;
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = valueObj;
data["notes"] = obj;
}
if (this.rank !== null) {
const valueObj = this.rank;
const obj = valueObj;
data["rank"] = obj;
}
if (this.scope !== null) {
const valueObj = this.scope;
const obj = valueObj;
data["scope"] = obj;
}
if (this.seasonality !== null) {
const valueObj = this.seasonality;
const obj = valueObj.toJson();
data["seasonality"] = obj;
}
if (this.seasonalityGeneral !== null) {
const valueObj = this.seasonalityGeneral;
const obj = valueObj.toJson();
data["seasonalityGeneral"] = obj;
}
if (this.seasonalityOriginal !== null) {
const valueObj = this.seasonalityOriginal;
const obj = valueObj.toJson();
data["seasonalityOriginal"] = obj;
}
if (this.variable !== null) {
const valueObj = this.variable;
const obj = valueObj.toJson();
data["variable"] = obj;
}
if (this.variableDetail !== null) {
const valueObj = this.variableDetail;
const obj = valueObj;
data["variableDetail"] = obj;
}
if (this.variableGeneral !== null) {
const valueObj = this.variableGeneral;
const obj = valueObj;
data["variableGeneral"] = obj;
}
if (this.variableGeneralDirection !== null) {
const valueObj = this.variableGeneralDirection;
const obj = valueObj;
data["variableGeneralDirection"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Interpretation();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "basis") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.basis = obj;
continue;
}
if (key === "direction") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.direction = obj;
continue;
}
if (key === "isLocal") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.local = obj;
continue;
}
if (key === "mathematicalRelation") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.mathematicalRelation = obj;
continue;
}
if (key === "notes") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.notes = obj;
continue;
}
if (key === "rank") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.rank = obj;
continue;
}
if (key === "scope") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.scope = obj;
continue;
}
if (key === "seasonality") {
let obj = null;
let value = pvalue;
obj = InterpretationSeasonality.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.seasonality = obj;
continue;
}
if (key === "seasonalityGeneral") {
let obj = null;
let value = pvalue;
obj = InterpretationSeasonality.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.seasonalityGeneral = obj;
continue;
}
if (key === "seasonalityOriginal") {
let obj = null;
let value = pvalue;
obj = InterpretationSeasonality.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.seasonalityOriginal = obj;
continue;
}
if (key === "variable") {
let obj = null;
let value = pvalue;
obj = InterpretationVariable.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.variable = obj;
continue;
}
if (key === "variableDetail") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.variableDetail = obj;
continue;
}
if (key === "variableGeneral") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.variableGeneral = obj;
continue;
}
if (key === "variableGeneralDirection") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.variableGeneralDirection = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getBasis() {
return this.basis;
}
setBasis(basis) {
this.basis = basis;
}
getDirection() {
return this.direction;
}
setDirection(direction) {
this.direction = direction;
}
getMathematicalRelation() {
return this.mathematicalRelation;
}
setMathematicalRelation(mathematicalRelation) {
this.mathematicalRelation = mathematicalRelation;
}
getNotes() {
return this.notes;
}
setNotes(notes) {
this.notes = notes;
}
getRank() {
return this.rank;
}
setRank(rank) {
this.rank = rank;
}
getScope() {
return this.scope;
}
setScope(scope) {
this.scope = scope;
}
getSeasonality() {
return this.seasonality;
}
setSeasonality(seasonality) {
this.seasonality = seasonality;
}
getSeasonalityGeneral() {
return this.seasonalityGeneral;
}
setSeasonalityGeneral(seasonalityGeneral) {
this.seasonalityGeneral = seasonalityGeneral;
}
getSeasonalityOriginal() {
return this.seasonalityOriginal;
}
setSeasonalityOriginal(seasonalityOriginal) {
this.seasonalityOriginal = seasonalityOriginal;
}
getVariable() {
return this.variable;
}
setVariable(variable) {
this.variable = variable;
}
getVariableDetail() {
return this.variableDetail;
}
setVariableDetail(variableDetail) {
this.variableDetail = variableDetail;
}
getVariableGeneral() {
return this.variableGeneral;
}
setVariableGeneral(variableGeneral) {
this.variableGeneral = variableGeneral;
}
getVariableGeneralDirection() {
return this.variableGeneralDirection;
}
setVariableGeneralDirection(variableGeneralDirection) {
this.variableGeneralDirection = variableGeneralDirection;
}
isLocal() {
return this.local;
}
setLocal(local) {
this.local = local;
}
};
// src/classes/paleoproxy.ts
var _PaleoProxy = class _PaleoProxy {
constructor(id, label) {
this.id = id;
this.label = label;
}
equals(value) {
return this.id === value.id;
}
getLabel() {
return this.label;
}
getId() {
return this.id;
}
toData(data = {}) {
data[this.id] = {
"label": [
{
"@datatype": null,
"@type": "literal",
"@value": this.label
}
]
};
return data;
}
toJson() {
return this.label;
}
static fromSynonym(synonym) {
const lowerSynonym = synonym.toLowerCase();
if (lowerSynonym in _PaleoProxy.synonyms) {
const synobj = _PaleoProxy.synonyms[lowerSynonym];
return new _PaleoProxy(synobj.id, synobj.label);
}
return null;
}
};
_PaleoProxy.synonyms = SYNONYMS.PROXIES?.PaleoProxy;
var PaleoProxy = _PaleoProxy;
var PaleoProxyConstants = class {
};
PaleoProxyConstants.accumulation_rate = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#accumulation_rate", "accumulation rate");
PaleoProxyConstants.ACL = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#ACL", "ACL");
PaleoProxyConstants.Al2O3 = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Al2O3", "Al2O3");
PaleoProxyConstants.alkenone = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#alkenone", "alkenone");
PaleoProxyConstants.amoeba = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#amoeba", "amoeba");
PaleoProxyConstants.Ba_Al = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Ba_Al", "Ba/Al");
PaleoProxyConstants.Ba_Ca = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Ba_Ca", "Ba/Ca");
PaleoProxyConstants.biomarker = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#biomarker", "biomarker");
PaleoProxyConstants.BIT = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#BIT", "BIT");
PaleoProxyConstants.borehole = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#borehole", "borehole");
PaleoProxyConstants.BSi = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#BSi", "BSi");
PaleoProxyConstants.bubble_frequency = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#bubble_frequency", "bubble frequency");
PaleoProxyConstants.bulk_density = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#bulk_density", "bulk density");
PaleoProxyConstants.bulk_sediment = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#bulk_sediment", "bulk sediment");
PaleoProxyConstants.C_N = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#C_N", "C/N");
PaleoProxyConstants.Ca_K = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Ca_K", "Ca/K");
PaleoProxyConstants.Ca_Ti = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Ca_Ti", "Ca/Ti");
PaleoProxyConstants.CaCO3 = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#CaCO3", "CaCO3");
PaleoProxyConstants.calcification_rate = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#calcification_rate", "calcification rate");
PaleoProxyConstants.calcite = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#calcite", "calcite");
PaleoProxyConstants.carbonate = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#carbonate", "carbonate");
PaleoProxyConstants.cellulose = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#cellulose", "cellulose");
PaleoProxyConstants.charcoal = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#charcoal", "charcoal");
PaleoProxyConstants.chironomid = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#chironomid", "chironomid");
PaleoProxyConstants.chlorophyll = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#chlorophyll", "chlorophyll");
PaleoProxyConstants.chrysophyte_assemblage = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#chrysophyte_assemblage", "chrysophyte assemblage");
PaleoProxyConstants.cladoceran = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#cladoceran", "cladoceran");
PaleoProxyConstants.coccolithophore = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#coccolithophore", "coccolithophore");
PaleoProxyConstants.d13C = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#d13C", "d13C");
PaleoProxyConstants.d15N = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#d15N", "d15N");
PaleoProxyConstants.d15N_d40Ar = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#d15N_d40Ar", "d15N/d40Ar");
PaleoProxyConstants.d18O = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#d18O", "d18O");
PaleoProxyConstants.dD = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#dD", "dD");
PaleoProxyConstants.deuterium_excess = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#deuterium_excess", "deuterium excess");
PaleoProxyConstants.diatom = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#diatom", "diatom");
PaleoProxyConstants.dinocyst = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#dinocyst", "dinocyst");
PaleoProxyConstants.dry_bulk_density = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#dry_bulk_density", "dry bulk density");
PaleoProxyConstants.Eu_Zr = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Eu_Zr", "Eu/Zr");
PaleoProxyConstants.Fe = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Fe", "Fe");
PaleoProxyConstants.Fe_Al = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Fe_Al", "Fe/Al");
PaleoProxyConstants.foraminifera = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#foraminifera", "foraminifera");
PaleoProxyConstants.GDGT = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#GDGT", "GDGT");
PaleoProxyConstants.grain_size = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#grain_size", "grain size");
PaleoProxyConstants.HBI = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#HBI", "HBI");
PaleoProxyConstants.historical = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#historical", "historical");
PaleoProxyConstants.humification = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#humification", "humification");
PaleoProxyConstants.ice_accumulation = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#ice_accumulation", "ice accumulation");
PaleoProxyConstants.ice_melt = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#ice_melt", "ice melt");
PaleoProxyConstants.inorganic_carbon = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#inorganic_carbon", "inorganic carbon");
PaleoProxyConstants.IP25 = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#IP25", "IP25");
PaleoProxyConstants.lake_level = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#lake_level", "lake level");
PaleoProxyConstants.latewood_cellulose = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#latewood_cellulose", "latewood cellulose");
PaleoProxyConstants.LDI = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#LDI", "LDI");
PaleoProxyConstants.macrofossils = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#macrofossils", "macrofossils");
PaleoProxyConstants.magnetic = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#magnetic", "magnetic");
PaleoProxyConstants.magnetic_susceptibility = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#magnetic_susceptibility", "magnetic susceptibility");
PaleoProxyConstants.mass_accumulation_rate = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#mass_accumulation_rate", "mass accumulation rate");
PaleoProxyConstants.maximum_latewood_density = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#maximum_latewood_density", "maximum latewood density");
PaleoProxyConstants.Mg = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Mg", "Mg");
PaleoProxyConstants.Mg_Ca = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Mg_Ca", "Mg/Ca");
PaleoProxyConstants.multiproxy = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#multiproxy", "multiproxy");
PaleoProxyConstants.Ti = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Ti", "Ti");
PaleoProxyConstants.needs_to_be_changed = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#needs_to_be_changed", "needs to be changed");
PaleoProxyConstants.needsToBeChanged = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#needsToBeChanged", "needsToBeChanged");
PaleoProxyConstants.ostracod = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#ostracod", "ostracod");
PaleoProxyConstants.P_aqueous = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#P-aqueous", "P-aqueous");
PaleoProxyConstants.peat_ash = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#peat_ash", "peat ash");
PaleoProxyConstants.pH = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#pH", "pH");
PaleoProxyConstants.pollen = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#pollen", "pollen");
PaleoProxyConstants.radiolaria = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#radiolaria", "radiolaria");
PaleoProxyConstants.Rb = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Rb", "Rb");
PaleoProxyConstants.Rb_Sr = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Rb_Sr", "Rb/Sr");
PaleoProxyConstants.reflectance = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#reflectance", "reflectance");
PaleoProxyConstants.ring_width = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#ring_width", "ring width");
PaleoProxyConstants.Sr = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Sr", "Sr");
PaleoProxyConstants.Sr_Ca = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Sr_Ca", "Sr/Ca");
PaleoProxyConstants.stratigraphy = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#stratigraphy", "stratigraphy");
PaleoProxyConstants.sulfur = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#sulfur", "sulfur");
PaleoProxyConstants.TEX86 = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#TEX86", "TEX86");
PaleoProxyConstants.Ti_Al = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Ti_Al", "Ti/Al");
PaleoProxyConstants.Ti_Ca = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#Ti_Ca", "Ti/Ca");
PaleoProxyConstants.TOC = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#TOC", "TOC");
PaleoProxyConstants.total_nitrogen = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#total_nitrogen", "total nitrogen");
PaleoProxyConstants.varve_thickness = new PaleoProxy("http://linked.earth/ontology/paleo_proxy#varve_thickness", "varve thickness");
// src/classes/paleoproxygeneral.ts
var _PaleoProxyGeneral = class _PaleoProxyGeneral {
constructor(id, label) {
this.id = id;
this.label = label;
}
equals(value) {
return this.id === value.id;
}
getLabel() {
return this.label;
}
getId() {
return this.id;
}
toData(data = {}) {
data[this.id] = {
"label": [
{
"@datatype": null,
"@type": "literal",
"@value": this.label
}
]
};
return data;
}
toJson() {
return this.label;
}
static fromSynonym(synonym) {
const lowerSynonym = synonym.toLowerCase();
if (lowerSynonym in _PaleoProxyGeneral.synonyms) {
const synobj = _PaleoProxyGeneral.synonyms[lowerSynonym];
return new _PaleoProxyGeneral(synobj.id, synobj.label);
}
return null;
}
};
_PaleoProxyGeneral.synonyms = SYNONYMS.PROXIES?.PaleoProxyGeneral;
var PaleoProxyGeneral = _PaleoProxyGeneral;
var PaleoProxyGeneralConstants = class {
};
PaleoProxyGeneralConstants.biogenic = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#biogenic", "biogenic");
PaleoProxyGeneralConstants.cryophysical = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#cryophysical", "cryophysical");
PaleoProxyGeneralConstants.dendrophysical = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#dendrophysical", "dendrophysical");
PaleoProxyGeneralConstants.elemental = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#elemental", "elemental");
PaleoProxyGeneralConstants.faunal_assemblage = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#faunal_assemblage", "faunal assemblage");
PaleoProxyGeneralConstants.floral_assemblage = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#floral_assemblage", "floral assemblage");
PaleoProxyGeneralConstants.isotopic = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#isotopic", "isotopic");
PaleoProxyGeneralConstants.mineral = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#mineral", "mineral");
PaleoProxyGeneralConstants.pyrogenic = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#pyrogenic", "pyrogenic");
PaleoProxyGeneralConstants.sedimentology = new PaleoProxyGeneral("http://linked.earth/ontology/paleo_proxy#sedimentology", "sedimentology");
// src/classes/paleounit.ts
var _PaleoUnit = class _PaleoUnit {
constructor(id, label) {
this.id = id;
this.label = label;
}
equals(value) {
return this.id === value.id;
}
getLabel() {
return this.label;
}
getId() {
return this.id;
}
toData(data = {}) {
data[this.id] = {
"label": [
{
"@datatype": null,
"@type": "literal",
"@value": this.label
}
]
};
return data;
}
toJson() {
return this.label;
}
static fromSynonym(synonym) {
const lowerSynonym = synonym.toLowerCase();
if (lowerSynonym in _PaleoUnit.synonyms) {
const synobj = _PaleoUnit.synonyms[lowerSynonym];
return new _PaleoUnit(synobj.id, synobj.label);
}
return null;
}
};
_PaleoUnit.synonyms = SYNONYMS.UNITS?.PaleoUnit;
var PaleoUnit = _PaleoUnit;
var PaleoUnitConstants = class {
};
PaleoUnitConstants.atomic_ratio = new PaleoUnit("http://linked.earth/ontology/paleo_units#atomic_ratio", "atomic ratio");
PaleoUnitConstants.cgs = new PaleoUnit("http://linked.earth/ontology/paleo_units#cgs", "cgs");
PaleoUnitConstants.cm = new PaleoUnit("http://linked.earth/ontology/paleo_units#cm", "cm");
PaleoUnitConstants.cm_kyr = new PaleoUnit("http://linked.earth/ontology/paleo_units#cm_kyr", "cm/kyr");
PaleoUnitConstants.cm_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#cm_yr", "cm/yr");
PaleoUnitConstants.cm3 = new PaleoUnit("http://linked.earth/ontology/paleo_units#cm3", "cm3");
PaleoUnitConstants.count = new PaleoUnit("http://linked.earth/ontology/paleo_units#count", "count");
PaleoUnitConstants.count_century = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_century", "count/century");
PaleoUnitConstants.count_cm2 = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_cm2", "count/cm2");
PaleoUnitConstants.count_cm2_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_cm2_yr", "count/cm2/yr");
PaleoUnitConstants.count_cm3 = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_cm3", "count/cm3");
PaleoUnitConstants.count_g = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_g", "count/g");
PaleoUnitConstants.count_kyr = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_kyr", "count/kyr");
PaleoUnitConstants.count_mL = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_mL", "count/mL");
PaleoUnitConstants.count_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#count_yr", "count/yr");
PaleoUnitConstants.cps = new PaleoUnit("http://linked.earth/ontology/paleo_units#cps", "cps");
PaleoUnitConstants.day = new PaleoUnit("http://linked.earth/ontology/paleo_units#day", "day");
PaleoUnitConstants.degC = new PaleoUnit("http://linked.earth/ontology/paleo_units#degC", "degC");
PaleoUnitConstants.degree = new PaleoUnit("http://linked.earth/ontology/paleo_units#degree", "degree");
PaleoUnitConstants.fraction = new PaleoUnit("http://linked.earth/ontology/paleo_units#fraction", "fraction");
PaleoUnitConstants.g = new PaleoUnit("http://linked.earth/ontology/paleo_units#g", "g");
PaleoUnitConstants.g_cm_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_cm_yr", "g/cm/yr");
PaleoUnitConstants.g_cm2 = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_cm2", "g/cm2");
PaleoUnitConstants.g_cm2_kyr = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_cm2_kyr", "g/cm2/kyr");
PaleoUnitConstants.g_cm2_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_cm2_yr", "g/cm2/yr");
PaleoUnitConstants.g_cm3 = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_cm3", "g/cm3");
PaleoUnitConstants.g_L = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_L", "g/L");
PaleoUnitConstants.g_m2 = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_m2", "g/m2");
PaleoUnitConstants.g_m2_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#g_m2_yr", "g/m2/yr");
PaleoUnitConstants.grayscale = new PaleoUnit("http://linked.earth/ontology/paleo_units#grayscale", "grayscale");
PaleoUnitConstants.kg_m2_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#kg_m2_yr", "kg/m2/yr");
PaleoUnitConstants.kg_m3 = new PaleoUnit("http://linked.earth/ontology/paleo_units#kg_m3", "kg/m3");
PaleoUnitConstants.km2 = new PaleoUnit("http://linked.earth/ontology/paleo_units#km2", "km2");
PaleoUnitConstants.km3 = new PaleoUnit("http://linked.earth/ontology/paleo_units#km3", "km3");
PaleoUnitConstants.log_mg_L_ = new PaleoUnit("http://linked.earth/ontology/paleo_units#log_mg_L_", "log(mg/L)");
PaleoUnitConstants.m = new PaleoUnit("http://linked.earth/ontology/paleo_units#m", "m");
PaleoUnitConstants.m3_kg = new PaleoUnit("http://linked.earth/ontology/paleo_units#m3_kg", "m3/kg");
PaleoUnitConstants.mg = new PaleoUnit("http://linked.earth/ontology/paleo_units#mg", "mg");
PaleoUnitConstants.mg_cm2_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#mg_cm2_yr", "mg/cm2/yr");
PaleoUnitConstants.mg_g = new PaleoUnit("http://linked.earth/ontology/paleo_units#mg_g", "mg/g");
PaleoUnitConstants.mg_kg = new PaleoUnit("http://linked.earth/ontology/paleo_units#mg_kg", "mg/kg");
PaleoUnitConstants.mg_L = new PaleoUnit("http://linked.earth/ontology/paleo_units#mg_L", "mg/L");
PaleoUnitConstants.mm = new PaleoUnit("http://linked.earth/ontology/paleo_units#mm", "mm");
PaleoUnitConstants.mm_day = new PaleoUnit("http://linked.earth/ontology/paleo_units#mm_day", "mm/day");
PaleoUnitConstants.mm_season = new PaleoUnit("http://linked.earth/ontology/paleo_units#mm_season", "mm/season");
PaleoUnitConstants.mm_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#mm_yr", "mm/yr");
PaleoUnitConstants.mmol_mol = new PaleoUnit("http://linked.earth/ontology/paleo_units#mmol_mol", "mmol/mol");
PaleoUnitConstants.months_year = new PaleoUnit("http://linked.earth/ontology/paleo_units#months_year", "months/year");
PaleoUnitConstants.needsToBeChanged = new PaleoUnit("http://linked.earth/ontology/paleo_units#needsToBeChanged", "needsToBeChanged");
PaleoUnitConstants.ng = new PaleoUnit("http://linked.earth/ontology/paleo_units#ng", "ng");
PaleoUnitConstants.ng_g = new PaleoUnit("http://linked.earth/ontology/paleo_units#ng_g", "ng/g");
PaleoUnitConstants.peak_area = new PaleoUnit("http://linked.earth/ontology/paleo_units#peak_area", "peak area");
PaleoUnitConstants.percent = new PaleoUnit("http://linked.earth/ontology/paleo_units#percent", "percent");
PaleoUnitConstants.permil = new PaleoUnit("http://linked.earth/ontology/paleo_units#permil", "permil");
PaleoUnitConstants.pH = new PaleoUnit("http://linked.earth/ontology/paleo_units#pH", "pH");
PaleoUnitConstants.ppb = new PaleoUnit("http://linked.earth/ontology/paleo_units#ppb", "ppb");
PaleoUnitConstants.ppm = new PaleoUnit("http://linked.earth/ontology/paleo_units#ppm", "ppm");
PaleoUnitConstants.practical_salinity_unit = new PaleoUnit("http://linked.earth/ontology/paleo_units#practical_salinity_unit", "practical salinity unit");
PaleoUnitConstants.ratio = new PaleoUnit("http://linked.earth/ontology/paleo_units#ratio", "ratio");
PaleoUnitConstants.SI = new PaleoUnit("http://linked.earth/ontology/paleo_units#SI", "SI");
PaleoUnitConstants.ug_cm2_yr = new PaleoUnit("http://linked.earth/ontology/paleo_units#ug_cm2_yr", "ug/cm2/yr");
PaleoUnitConstants.ug_g = new PaleoUnit("http://linked.earth/ontology/paleo_units#ug_g", "ug/g");
PaleoUnitConstants.um = new PaleoUnit("http://linked.earth/ontology/paleo_units#um", "um");
PaleoUnitConstants.umol_mol = new PaleoUnit("http://linked.earth/ontology/paleo_units#umol_mol", "umol/mol");
PaleoUnitConstants.unitless = new PaleoUnit("http://linked.earth/ontology/paleo_units#unitless", "unitless");
PaleoUnitConstants.yr_14C_BP = new PaleoUnit("http://linked.earth/ontology/paleo_units#yr_14C_BP", "yr 14C BP");
PaleoUnitConstants.yr_AD = new PaleoUnit("http://linked.earth/ontology/paleo_units#yr_AD", "yr AD");
PaleoUnitConstants.yr_b2k = new PaleoUnit("http://linked.earth/ontology/paleo_units#yr_b2k", "yr b2k");
PaleoUnitConstants.yr_BP = new PaleoUnit("http://linked.earth/ontology/paleo_units#yr_BP", "yr BP");
PaleoUnitConstants.yr_ka = new PaleoUnit("http://linked.earth/ontology/paleo_units#yr_ka", "yr ka");
PaleoUnitConstants.z_score = new PaleoUnit("http://linked.earth/ontology/paleo_units#z_score", "z score");
// src/classes/paleovariable.ts
var _PaleoVariable = class _PaleoVariable {
constructor(id, label) {
this.id = id;
this.label = label;
}
equals(value) {
return this.id === value.id;
}
getLabel() {
return this.label;
}
getId() {
return this.id;
}
toData(data = {}) {
data[this.id] = {
"label": [
{
"@datatype": null,
"@type": "literal",
"@value": this.label
}
]
};
return data;
}
toJson() {
return this.label;
}
static fromSynonym(synonym) {
const lowerSynonym = synonym.toLowerCase();
if (lowerSynonym in _PaleoVariable.synonyms) {
const synobj = _PaleoVariable.synonyms[lowerSynonym];
return new _PaleoVariable(synobj.id, synobj.label);
}
return null;
}
};
_PaleoVariable.synonyms = SYNONYMS.VARIABLES?.PaleoVariable;
var PaleoVariable = _PaleoVariable;
var PaleoVariableConstants = class {
};
PaleoVariableConstants.ACL = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ACL", "ACL");
PaleoVariableConstants.AET_PET = new PaleoVariable("http://linked.earth/ontology/paleo_variables#AET_PET", "AET/PET");
PaleoVariableConstants.ARM_IRM = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ARM_IRM", "ARM/IRM");
PaleoVariableConstants.ARSTAN = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ARSTAN", "ARSTAN");
PaleoVariableConstants.Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Al", "Al");
PaleoVariableConstants.Al2O3 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Al2O3", "Al2O3");
PaleoVariableConstants.As = new PaleoVariable("http://linked.earth/ontology/paleo_variables#As", "As");
PaleoVariableConstants.BIT = new PaleoVariable("http://linked.earth/ontology/paleo_variables#BIT", "BIT");
PaleoVariableConstants.BSi = new PaleoVariable("http://linked.earth/ontology/paleo_variables#BSi", "BSi");
PaleoVariableConstants.Ba = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ba", "Ba");
PaleoVariableConstants.Ba_Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ba_Al", "Ba/Al");
PaleoVariableConstants.Ba_Ca = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ba_Ca", "Ba/Ca");
PaleoVariableConstants.Be = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Be", "Be");
PaleoVariableConstants.Br = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Br", "Br");
PaleoVariableConstants.C20n_alkenoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C20n-alkenoicAcid", "C20n-alkenoicAcid");
PaleoVariableConstants.C21n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C21n-alkanoicAcid", "C21n-alkanoicAcid");
PaleoVariableConstants.C22n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C22n-alkanoicAcid", "C22n-alkanoicAcid");
PaleoVariableConstants.C23n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C23n-alkanoicAcid", "C23n-alkanoicAcid");
PaleoVariableConstants.C24n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C24n-alkanoicAcid", "C24n-alkanoicAcid");
PaleoVariableConstants.C25_2n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C25_2n-alkanoicAcid", "C25_2n-alkanoicAcid");
PaleoVariableConstants.C25n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C25n-alkanoicAcid", "C25n-alkanoicAcid");
PaleoVariableConstants.C26n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C26n-alkanoicAcid", "C26n-alkanoicAcid");
PaleoVariableConstants.C27n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C27n-alkanoicAcid", "C27n-alkanoicAcid");
PaleoVariableConstants.C28n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C28n-alkanoicAcid", "C28n-alkanoicAcid");
PaleoVariableConstants.C29n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C29n-alkanoicAcid", "C29n-alkanoicAcid");
PaleoVariableConstants.C30n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C30n-alkanoicAcid", "C30n-alkanoicAcid");
PaleoVariableConstants.C31n_alkanoicAcid = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C31n-alkanoicAcid", "C31n-alkanoicAcid");
PaleoVariableConstants.C37Alkenone = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C37Alkenone", "C37Alkenone");
PaleoVariableConstants.C37_2Alkenone = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C37_2Alkenone", "C37:2Alkenone");
PaleoVariableConstants.C37_3aAlkenone = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C37_3aAlkenone", "C37:3aAlkenone");
PaleoVariableConstants.C37_3bAlkenone = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C37_3bAlkenone", "C37:3bAlkenone");
PaleoVariableConstants.C37_4Alkenone = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C37_4Alkenone", "C37:4Alkenone");
PaleoVariableConstants.CBT = new PaleoVariable("http://linked.earth/ontology/paleo_variables#CBT", "CBT");
PaleoVariableConstants.CCA1 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#CCA1", "CCA1");
PaleoVariableConstants.CCA2 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#CCA2", "CCA2");
PaleoVariableConstants.CPI = new PaleoVariable("http://linked.earth/ontology/paleo_variables#CPI", "CPI");
PaleoVariableConstants.C_N = new PaleoVariable("http://linked.earth/ontology/paleo_variables#C_N", "C/N");
PaleoVariableConstants.Ca = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ca", "Ca");
PaleoVariableConstants.CaCO3 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#CaCO3", "CaCO3");
PaleoVariableConstants.CaO = new PaleoVariable("http://linked.earth/ontology/paleo_variables#CaO", "CaO");
PaleoVariableConstants.Ca_K = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ca_K", "Ca/K");
PaleoVariableConstants.Ca_Sr = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ca_Sr", "Ca/Sr");
PaleoVariableConstants.Ca_Ti = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ca_Ti", "Ca/Ti");
PaleoVariableConstants.Ti_Ca = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ti_Ca", "Ti/Ca");
PaleoVariableConstants.Cd = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Cd", "Cd");
PaleoVariableConstants.Cd_Mn = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Cd_Mn", "Cd/Mn");
PaleoVariableConstants.Cl = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Cl", "Cl");
PaleoVariableConstants.Co = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Co", "Co");
PaleoVariableConstants.Cr = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Cr", "Cr");
PaleoVariableConstants.Cu = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Cu", "Cu");
PaleoVariableConstants.DWHI = new PaleoVariable("http://linked.earth/ontology/paleo_variables#DWHI", "DWHI");
PaleoVariableConstants.Dd2H = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Dd2H", "Dd2H");
PaleoVariableConstants.EPS = new PaleoVariable("http://linked.earth/ontology/paleo_variables#EPS", "EPS");
PaleoVariableConstants.ElNinoEvent = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ElNinoEvent", "ElNinoEvent");
PaleoVariableConstants.Eu_Zr = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Eu_Zr", "Eu/Zr");
PaleoVariableConstants.Fe = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Fe", "Fe");
PaleoVariableConstants.Fe2O3 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Fe2O3", "Fe2O3");
PaleoVariableConstants.Fe_Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Fe_Al", "Fe/Al");
PaleoVariableConstants.Fe_Ca = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Fe_Ca", "Fe/Ca");
PaleoVariableConstants.Fe_K = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Fe_K", "Fe/K");
PaleoVariableConstants.Fe_Mn = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Fe_Mn", "Fe/Mn");
PaleoVariableConstants.GDGT = new PaleoVariable("http://linked.earth/ontology/paleo_variables#GDGT", "GDGT");
PaleoVariableConstants.GDGT_0_Cren = new PaleoVariable("http://linked.earth/ontology/paleo_variables#GDGT-0_Cren", "GDGT-0/Cren");
PaleoVariableConstants.IP25 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#IP25", "IP25");
PaleoVariableConstants.IRM = new PaleoVariable("http://linked.earth/ontology/paleo_variables#IRM", "IRM");
PaleoVariableConstants.ITCZ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ITCZ", "ITCZ");
PaleoVariableConstants.JulianDay = new PaleoVariable("http://linked.earth/ontology/paleo_variables#JulianDay", "JulianDay");
PaleoVariableConstants.K2O = new PaleoVariable("http://linked.earth/ontology/paleo_variables#K2O", "K2O");
PaleoVariableConstants.K37 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#K37", "K37");
PaleoVariableConstants.K_Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#K_Al", "K/Al");
PaleoVariableConstants.LDI = new PaleoVariable("http://linked.earth/ontology/paleo_variables#LDI", "LDI");
PaleoVariableConstants.LOI = new PaleoVariable("http://linked.earth/ontology/paleo_variables#LOI", "LOI");
PaleoVariableConstants.La = new PaleoVariable("http://linked.earth/ontology/paleo_variables#La", "La");
PaleoVariableConstants.MAR = new PaleoVariable("http://linked.earth/ontology/paleo_variables#MAR", "MAR");
PaleoVariableConstants.MBT = new PaleoVariable("http://linked.earth/ontology/paleo_variables#MBT", "MBT");
PaleoVariableConstants.MS = new PaleoVariable("http://linked.earth/ontology/paleo_variables#MS", "MS");
PaleoVariableConstants.Si = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Si", "Si");
PaleoVariableConstants.MXD = new PaleoVariable("http://linked.earth/ontology/paleo_variables#MXD", "MXD");
PaleoVariableConstants.Mg = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Mg", "Mg");
PaleoVariableConstants.MgO = new PaleoVariable("http://linked.earth/ontology/paleo_variables#MgO", "MgO");
PaleoVariableConstants.Mg_Ca = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Mg_Ca", "Mg/Ca");
PaleoVariableConstants.Mn = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Mn", "Mn");
PaleoVariableConstants.MnO = new PaleoVariable("http://linked.earth/ontology/paleo_variables#MnO", "MnO");
PaleoVariableConstants.Mn_Fe = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Mn_Fe", "Mn/Fe");
PaleoVariableConstants.Mn_Mo = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Mn_Mo", "Mn/Mo");
PaleoVariableConstants.Mo = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Mo", "Mo");
PaleoVariableConstants.NO3 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#NO3", "NO3");
PaleoVariableConstants.nitrate = new PaleoVariable("http://linked.earth/ontology/paleo_variables#nitrate", "nitrate");
PaleoVariableConstants.N_C = new PaleoVariable("http://linked.earth/ontology/paleo_variables#N_C", "N/C");
PaleoVariableConstants.Na2O = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Na2O", "Na2O");
PaleoVariableConstants.Ni = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ni", "Ni");
PaleoVariableConstants.PC1 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#PC1", "PC1");
PaleoVariableConstants.PC3 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#PC3", "PC3");
PaleoVariableConstants.PC2 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#PC2", "PC2");
PaleoVariableConstants.Paq = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Paq", "Paq");
PaleoVariableConstants.Pb = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Pb", "Pb");
PaleoVariableConstants.Picea_Artemisia = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Picea_Artemisia", "Picea/Artemisia");
PaleoVariableConstants.Picea_Pinus = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Picea_Pinus", "Picea/Pinus");
PaleoVariableConstants.Pinus_Artemisia = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Pinus_Artemisia", "Pinus/Artemisia");
PaleoVariableConstants.Poaceae_Ephedra = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Poaceae_Ephedra", "Poaceae/Ephedra");
PaleoVariableConstants.R570_R630 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#R570_R630", "R570/R630");
PaleoVariableConstants.R650_R700 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#R650_R700", "R650/R700");
PaleoVariableConstants.RABD660670 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#RABD660670", "RABD660670");
PaleoVariableConstants.RAN15 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#RAN15", "RAN15");
PaleoVariableConstants.RBAR = new PaleoVariable("http://linked.earth/ontology/paleo_variables#RBAR", "RBAR");
PaleoVariableConstants.Rb = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Rb", "Rb");
PaleoVariableConstants.Rb87_Sr86 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Rb87_Sr86", "Rb87/Sr86");
PaleoVariableConstants.SO4 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#SO4", "SO4");
PaleoVariableConstants.sulfate = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sulfate", "sulfate");
PaleoVariableConstants.salinity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#salinity", "salinity");
PaleoVariableConstants.Sc = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Sc", "Sc");
PaleoVariableConstants.Si_Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Si_Al", "Si/Al");
PaleoVariableConstants.Si_Ti = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Si_Ti", "Si/Ti");
PaleoVariableConstants.Sr = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Sr", "Sr");
PaleoVariableConstants.Sr_Ca = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Sr_Ca", "Sr/Ca");
PaleoVariableConstants.TDS = new PaleoVariable("http://linked.earth/ontology/paleo_variables#TDS", "TDS");
PaleoVariableConstants.TEX86 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#TEX86", "TEX86");
PaleoVariableConstants.TIC = new PaleoVariable("http://linked.earth/ontology/paleo_variables#TIC", "TIC");
PaleoVariableConstants.TOC = new PaleoVariable("http://linked.earth/ontology/paleo_variables#TOC", "TOC");
PaleoVariableConstants.organicCarbon = new PaleoVariable("http://linked.earth/ontology/paleo_variables#organicCarbon", "organicCarbon");
PaleoVariableConstants.TOC_TN = new PaleoVariable("http://linked.earth/ontology/paleo_variables#TOC_TN", "TOC/TN");
PaleoVariableConstants.Ti = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ti", "Ti");
PaleoVariableConstants.TiO2 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#TiO2", "TiO2");
PaleoVariableConstants.Ti_Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Ti_Al", "Ti/Al");
PaleoVariableConstants.Uk37 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Uk37", "Uk37");
PaleoVariableConstants.UK37 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#UK37", "UK37");
PaleoVariableConstants.Uk37_ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Uk37_", "Uk37\u2019");
PaleoVariableConstants.V = new PaleoVariable("http://linked.earth/ontology/paleo_variables#V", "V");
PaleoVariableConstants.V_Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#V_Al", "V/Al");
PaleoVariableConstants.Y = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Y", "Y");
PaleoVariableConstants.Zn = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Zn", "Zn");
PaleoVariableConstants.Zr = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Zr", "Zr");
PaleoVariableConstants.Zr_Al = new PaleoVariable("http://linked.earth/ontology/paleo_variables#Zr_Al", "Zr/Al");
PaleoVariableConstants.accumulation = new PaleoVariable("http://linked.earth/ontology/paleo_variables#accumulation", "accumulation");
PaleoVariableConstants.age = new PaleoVariable("http://linked.earth/ontology/paleo_variables#age", "age");
PaleoVariableConstants.age14C = new PaleoVariable("http://linked.earth/ontology/paleo_variables#age14C", "age14C");
PaleoVariableConstants.ammonium = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ammonium", "ammonium");
PaleoVariableConstants.amps = new PaleoVariable("http://linked.earth/ontology/paleo_variables#amps", "amps");
PaleoVariableConstants.aragonite = new PaleoVariable("http://linked.earth/ontology/paleo_variables#aragonite", "aragonite");
PaleoVariableConstants.ash = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ash", "ash");
PaleoVariableConstants.boron = new PaleoVariable("http://linked.earth/ontology/paleo_variables#boron", "boron");
PaleoVariableConstants.brGDGT_IIIa = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIIa", "brGDGT-IIIa");
PaleoVariableConstants.brGDGT_Id = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-Id", "brGDGT-Id");
PaleoVariableConstants.brGDGT_IIIa_ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIIa_", "brGDGT-IIIa\u2019");
PaleoVariableConstants.brGDGT_IIIb = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIIb", "brGDGT-IIIb");
PaleoVariableConstants.brGDGT_IIIb_ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIIb_", "brGDGT-IIIb\u2019");
PaleoVariableConstants.brGDGT_IIIc = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIIc", "brGDGT-IIIc");
PaleoVariableConstants.brGDGT_IIIc_ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIIc_", "brGDGT-IIIc\u2019");
PaleoVariableConstants.brGDGT_IIa = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIa", "brGDGT-IIa");
PaleoVariableConstants.brGDGT_IIa_ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIa_", "brGDGT-IIa\u2019");
PaleoVariableConstants.brGDGT_IIb = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIb", "brGDGT-IIb");
PaleoVariableConstants.brGDGT_IIb_ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIb_", "brGDGT-IIb\u2019");
PaleoVariableConstants.brGDGT_IIc = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIc", "brGDGT-IIc");
PaleoVariableConstants.brGDGT_IIc_ = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-IIc_", "brGDGT-IIc\u2019");
PaleoVariableConstants.brGDGT_Ia = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-Ia", "brGDGT-Ia");
PaleoVariableConstants.brGDGT_Ib = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-Ib", "brGDGT-Ib");
PaleoVariableConstants.brGDGT_Ic = new PaleoVariable("http://linked.earth/ontology/paleo_variables#brGDGT-Ic", "brGDGT-Ic");
PaleoVariableConstants.sampleID = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sampleID", "sampleID");
PaleoVariableConstants.bubbleNumberDensity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#bubbleNumberDensity", "bubbleNumberDensity");
PaleoVariableConstants.bulkDensity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#bulkDensity", "bulkDensity");
PaleoVariableConstants.calcificationRate = new PaleoVariable("http://linked.earth/ontology/paleo_variables#calcificationRate", "calcificationRate");
PaleoVariableConstants.calcite = new PaleoVariable("http://linked.earth/ontology/paleo_variables#calcite", "calcite");
PaleoVariableConstants.carbon = new PaleoVariable("http://linked.earth/ontology/paleo_variables#carbon", "carbon");
PaleoVariableConstants.carbonate = new PaleoVariable("http://linked.earth/ontology/paleo_variables#carbonate", "carbonate");
PaleoVariableConstants.charcoal = new PaleoVariable("http://linked.earth/ontology/paleo_variables#charcoal", "charcoal");
PaleoVariableConstants.chloride = new PaleoVariable("http://linked.earth/ontology/paleo_variables#chloride", "chloride");
PaleoVariableConstants.circulationIndex = new PaleoVariable("http://linked.earth/ontology/paleo_variables#circulationIndex", "circulationIndex");
PaleoVariableConstants.clay = new PaleoVariable("http://linked.earth/ontology/paleo_variables#clay", "clay");
PaleoVariableConstants.cluster = new PaleoVariable("http://linked.earth/ontology/paleo_variables#cluster", "cluster");
PaleoVariableConstants.index = new PaleoVariable("http://linked.earth/ontology/paleo_variables#index", "index");
PaleoVariableConstants.composite = new PaleoVariable("http://linked.earth/ontology/paleo_variables#composite", "composite");
PaleoVariableConstants.concentration = new PaleoVariable("http://linked.earth/ontology/paleo_variables#concentration", "concentration");
PaleoVariableConstants.core = new PaleoVariable("http://linked.earth/ontology/paleo_variables#core", "core");
PaleoVariableConstants.correction = new PaleoVariable("http://linked.earth/ontology/paleo_variables#correction", "correction");
PaleoVariableConstants.correlationCoefficient = new PaleoVariable("http://linked.earth/ontology/paleo_variables#correlationCoefficient", "correlationCoefficient");
PaleoVariableConstants.sampleCount = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sampleCount", "sampleCount");
PaleoVariableConstants.count = new PaleoVariable("http://linked.earth/ontology/paleo_variables#count", "count");
PaleoVariableConstants.d13C = new PaleoVariable("http://linked.earth/ontology/paleo_variables#d13C", "d13C");
PaleoVariableConstants.d15N = new PaleoVariable("http://linked.earth/ontology/paleo_variables#d15N", "d15N");
PaleoVariableConstants.d18O = new PaleoVariable("http://linked.earth/ontology/paleo_variables#d18O", "d18O");
PaleoVariableConstants.d2H = new PaleoVariable("http://linked.earth/ontology/paleo_variables#d2H", "d2H");
PaleoVariableConstants.d2HUncertaintyHigh80 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#d2HUncertaintyHigh80", "d2HUncertaintyHigh80");
PaleoVariableConstants.d2HUncertaintyLow80 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#d2HUncertaintyLow80", "d2HUncertaintyLow80");
PaleoVariableConstants.deleteMe = new PaleoVariable("http://linked.earth/ontology/paleo_variables#deleteMe", "deleteMe");
PaleoVariableConstants.needsToBeChanged = new PaleoVariable("http://linked.earth/ontology/paleo_variables#needsToBeChanged", "needsToBeChanged");
PaleoVariableConstants.deltaRelativeHumidity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#deltaRelativeHumidity", "deltaRelativeHumidity");
PaleoVariableConstants.deltaTemperature = new PaleoVariable("http://linked.earth/ontology/paleo_variables#deltaTemperature", "deltaTemperature");
PaleoVariableConstants.density = new PaleoVariable("http://linked.earth/ontology/paleo_variables#density", "density");
PaleoVariableConstants.depth = new PaleoVariable("http://linked.earth/ontology/paleo_variables#depth", "depth");
PaleoVariableConstants.depthBottom = new PaleoVariable("http://linked.earth/ontology/paleo_variables#depthBottom", "depthBottom");
PaleoVariableConstants.depthTop = new PaleoVariable("http://linked.earth/ontology/paleo_variables#depthTop", "depthTop");
PaleoVariableConstants.deuteriumExcess = new PaleoVariable("http://linked.earth/ontology/paleo_variables#deuteriumExcess", "deuteriumExcess");
PaleoVariableConstants.diatom = new PaleoVariable("http://linked.earth/ontology/paleo_variables#diatom", "diatom");
PaleoVariableConstants.diatomCount = new PaleoVariable("http://linked.earth/ontology/paleo_variables#diatomCount", "diatomCount");
PaleoVariableConstants.dinocyst = new PaleoVariable("http://linked.earth/ontology/paleo_variables#dinocyst", "dinocyst");
PaleoVariableConstants.dolomite = new PaleoVariable("http://linked.earth/ontology/paleo_variables#dolomite", "dolomite");
PaleoVariableConstants.dryBulkDensity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#dryBulkDensity", "dryBulkDensity");
PaleoVariableConstants.duration = new PaleoVariable("http://linked.earth/ontology/paleo_variables#duration", "duration");
PaleoVariableConstants.dust = new PaleoVariable("http://linked.earth/ontology/paleo_variables#dust", "dust");
PaleoVariableConstants.effectivePrecipitation = new PaleoVariable("http://linked.earth/ontology/paleo_variables#effectivePrecipitation", "effectivePrecipitation");
PaleoVariableConstants.elevation = new PaleoVariable("http://linked.earth/ontology/paleo_variables#elevation", "elevation");
PaleoVariableConstants.zscore = new PaleoVariable("http://linked.earth/ontology/paleo_variables#zscore", "zscore");
PaleoVariableConstants.epsilonC28C22 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#epsilonC28C22", "epsilonC28C22");
PaleoVariableConstants.epsilonC28C24 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#epsilonC28C24", "epsilonC28C24");
PaleoVariableConstants.epsilonC29C23 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#epsilonC29C23", "epsilonC29C23");
PaleoVariableConstants.equilibriumLineAltitude = new PaleoVariable("http://linked.earth/ontology/paleo_variables#equilibriumLineAltitude", "equilibriumLineAltitude");
PaleoVariableConstants.event = new PaleoVariable("http://linked.earth/ontology/paleo_variables#event", "event");
PaleoVariableConstants.eventLayer = new PaleoVariable("http://linked.earth/ontology/paleo_variables#eventLayer", "eventLayer");
PaleoVariableConstants.facies = new PaleoVariable("http://linked.earth/ontology/paleo_variables#facies", "facies");
PaleoVariableConstants.feldspar = new PaleoVariable("http://linked.earth/ontology/paleo_variables#feldspar", "feldspar");
PaleoVariableConstants.flood = new PaleoVariable("http://linked.earth/ontology/paleo_variables#flood", "flood");
PaleoVariableConstants.fluorine = new PaleoVariable("http://linked.earth/ontology/paleo_variables#fluorine", "fluorine");
PaleoVariableConstants.foraminifera = new PaleoVariable("http://linked.earth/ontology/paleo_variables#foraminifera", "foraminifera");
PaleoVariableConstants.gamma = new PaleoVariable("http://linked.earth/ontology/paleo_variables#gamma", "gamma");
PaleoVariableConstants.glacierCoverage = new PaleoVariable("http://linked.earth/ontology/paleo_variables#glacierCoverage", "glacierCoverage");
PaleoVariableConstants.globigerinoidesRuber = new PaleoVariable("http://linked.earth/ontology/paleo_variables#globigerinoidesRuber", "globigerinoidesRuber");
PaleoVariableConstants.grainSize = new PaleoVariable("http://linked.earth/ontology/paleo_variables#grainSize", "grainSize");
PaleoVariableConstants.lithics = new PaleoVariable("http://linked.earth/ontology/paleo_variables#lithics", "lithics");
PaleoVariableConstants.grayscale = new PaleoVariable("http://linked.earth/ontology/paleo_variables#grayscale", "grayscale");
PaleoVariableConstants.growing_degree_days = new PaleoVariable("http://linked.earth/ontology/paleo_variables#growing_degree_days", "growing degree days");
PaleoVariableConstants.growthRate = new PaleoVariable("http://linked.earth/ontology/paleo_variables#growthRate", "growthRate");
PaleoVariableConstants.hasGap = new PaleoVariable("http://linked.earth/ontology/paleo_variables#hasGap", "hasGap");
PaleoVariableConstants.hasHiatus = new PaleoVariable("http://linked.earth/ontology/paleo_variables#hasHiatus", "hasHiatus");
PaleoVariableConstants.hole = new PaleoVariable("http://linked.earth/ontology/paleo_variables#hole", "hole");
PaleoVariableConstants.humidificationIndex = new PaleoVariable("http://linked.earth/ontology/paleo_variables#humidificationIndex", "humidificationIndex");
PaleoVariableConstants.iceMelt = new PaleoVariable("http://linked.earth/ontology/paleo_variables#iceMelt", "iceMelt");
PaleoVariableConstants.iceRaftedDebris = new PaleoVariable("http://linked.earth/ontology/paleo_variables#iceRaftedDebris", "iceRaftedDebris");
PaleoVariableConstants.inc_coh = new PaleoVariable("http://linked.earth/ontology/paleo_variables#inc_coh", "inc/coh");
PaleoVariableConstants.isReliable = new PaleoVariable("http://linked.earth/ontology/paleo_variables#isReliable", "isReliable");
PaleoVariableConstants.lakeArea = new PaleoVariable("http://linked.earth/ontology/paleo_variables#lakeArea", "lakeArea");
PaleoVariableConstants.lakeLevel = new PaleoVariable("http://linked.earth/ontology/paleo_variables#lakeLevel", "lakeLevel");
PaleoVariableConstants.lakeTrend = new PaleoVariable("http://linked.earth/ontology/paleo_variables#lakeTrend", "lakeTrend");
PaleoVariableConstants.lakeVolume = new PaleoVariable("http://linked.earth/ontology/paleo_variables#lakeVolume", "lakeVolume");
PaleoVariableConstants.landscapeCover = new PaleoVariable("http://linked.earth/ontology/paleo_variables#landscapeCover", "landscapeCover");
PaleoVariableConstants.percent = new PaleoVariable("http://linked.earth/ontology/paleo_variables#percent", "percent");
PaleoVariableConstants.latitude = new PaleoVariable("http://linked.earth/ontology/paleo_variables#latitude", "latitude");
PaleoVariableConstants.layerThickness = new PaleoVariable("http://linked.earth/ontology/paleo_variables#layerThickness", "layerThickness");
PaleoVariableConstants.longitude = new PaleoVariable("http://linked.earth/ontology/paleo_variables#longitude", "longitude");
PaleoVariableConstants.material = new PaleoVariable("http://linked.earth/ontology/paleo_variables#material", "material");
PaleoVariableConstants.mineralogy = new PaleoVariable("http://linked.earth/ontology/paleo_variables#mineralogy", "mineralogy");
PaleoVariableConstants.sulfur = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sulfur", "sulfur");
PaleoVariableConstants.needsToBeSplitIntoMultipleColumns = new PaleoVariable("http://linked.earth/ontology/paleo_variables#needsToBeSplitIntoMultipleColumns", "needsToBeSplitIntoMultipleColumns");
PaleoVariableConstants.nitrogen = new PaleoVariable("http://linked.earth/ontology/paleo_variables#nitrogen", "nitrogen");
PaleoVariableConstants.notes = new PaleoVariable("http://linked.earth/ontology/paleo_variables#notes", "notes");
PaleoVariableConstants.organicMatter = new PaleoVariable("http://linked.earth/ontology/paleo_variables#organicMatter", "organicMatter");
PaleoVariableConstants.organicNitrogen = new PaleoVariable("http://linked.earth/ontology/paleo_variables#organicNitrogen", "organicNitrogen");
PaleoVariableConstants.oxygen = new PaleoVariable("http://linked.earth/ontology/paleo_variables#oxygen", "oxygen");
PaleoVariableConstants.pH = new PaleoVariable("http://linked.earth/ontology/paleo_variables#pH", "pH");
PaleoVariableConstants.peat = new PaleoVariable("http://linked.earth/ontology/paleo_variables#peat", "peat");
PaleoVariableConstants.phosphorus = new PaleoVariable("http://linked.earth/ontology/paleo_variables#phosphorus", "phosphorus");
PaleoVariableConstants.potassium = new PaleoVariable("http://linked.earth/ontology/paleo_variables#potassium", "potassium");
PaleoVariableConstants.precipitation = new PaleoVariable("http://linked.earth/ontology/paleo_variables#precipitation", "precipitation");
PaleoVariableConstants.productivity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#productivity", "productivity");
PaleoVariableConstants.pyrite = new PaleoVariable("http://linked.earth/ontology/paleo_variables#pyrite", "pyrite");
PaleoVariableConstants.quartz = new PaleoVariable("http://linked.earth/ontology/paleo_variables#quartz", "quartz");
PaleoVariableConstants.reflectance = new PaleoVariable("http://linked.earth/ontology/paleo_variables#reflectance", "reflectance");
PaleoVariableConstants.relativeHumidity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#relativeHumidity", "relativeHumidity");
PaleoVariableConstants.residualChronology = new PaleoVariable("http://linked.earth/ontology/paleo_variables#residualChronology", "residualChronology");
PaleoVariableConstants.ringWidth = new PaleoVariable("http://linked.earth/ontology/paleo_variables#ringWidth", "ringWidth");
PaleoVariableConstants.sand = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sand", "sand");
PaleoVariableConstants.seaIce = new PaleoVariable("http://linked.earth/ontology/paleo_variables#seaIce", "seaIce");
PaleoVariableConstants.section = new PaleoVariable("http://linked.earth/ontology/paleo_variables#section", "section");
PaleoVariableConstants.sedimentDry = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sedimentDry", "sedimentDry");
PaleoVariableConstants.sedimentationRate = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sedimentationRate", "sedimentationRate");
PaleoVariableConstants.segmentLength = new PaleoVariable("http://linked.earth/ontology/paleo_variables#segmentLength", "segmentLength");
PaleoVariableConstants.sequence = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sequence", "sequence");
PaleoVariableConstants.silt = new PaleoVariable("http://linked.earth/ontology/paleo_variables#silt", "silt");
PaleoVariableConstants.site = new PaleoVariable("http://linked.earth/ontology/paleo_variables#site", "site");
PaleoVariableConstants.siteCount = new PaleoVariable("http://linked.earth/ontology/paleo_variables#siteCount", "siteCount");
PaleoVariableConstants.sodium = new PaleoVariable("http://linked.earth/ontology/paleo_variables#sodium", "sodium");
PaleoVariableConstants.solarIrradiance = new PaleoVariable("http://linked.earth/ontology/paleo_variables#solarIrradiance", "solarIrradiance");
PaleoVariableConstants.streamflow = new PaleoVariable("http://linked.earth/ontology/paleo_variables#streamflow", "streamflow");
PaleoVariableConstants.temperature = new PaleoVariable("http://linked.earth/ontology/paleo_variables#temperature", "temperature");
PaleoVariableConstants.thickness = new PaleoVariable("http://linked.earth/ontology/paleo_variables#thickness", "thickness");
PaleoVariableConstants.totalCarbon = new PaleoVariable("http://linked.earth/ontology/paleo_variables#totalCarbon", "totalCarbon");
PaleoVariableConstants.totalNitrogen = new PaleoVariable("http://linked.earth/ontology/paleo_variables#totalNitrogen", "totalNitrogen");
PaleoVariableConstants.totalPollen = new PaleoVariable("http://linked.earth/ontology/paleo_variables#totalPollen", "totalPollen");
PaleoVariableConstants.treeCover = new PaleoVariable("http://linked.earth/ontology/paleo_variables#treeCover", "treeCover");
PaleoVariableConstants.uncertainty = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertainty", "uncertainty");
PaleoVariableConstants.uncertainty1s = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertainty1s", "uncertainty1s");
PaleoVariableConstants.uncertainty2s = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertainty2s", "uncertainty2s");
PaleoVariableConstants.uncertaintyHigh = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyHigh", "uncertaintyHigh");
PaleoVariableConstants.uncertaintyHigh1s = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyHigh1s", "uncertaintyHigh1s");
PaleoVariableConstants.uncertaintyLow95 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyLow95", "uncertaintyLow95");
PaleoVariableConstants.uncertaintyHigh50 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyHigh50", "uncertaintyHigh50");
PaleoVariableConstants.uncertaintyHigh90 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyHigh90", "uncertaintyHigh90");
PaleoVariableConstants.uncertaintyHigh95 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyHigh95", "uncertaintyHigh95");
PaleoVariableConstants.uncertaintyLow = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyLow", "uncertaintyLow");
PaleoVariableConstants.uncertaintyLow1s = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyLow1s", "uncertaintyLow1s");
PaleoVariableConstants.uncertaintyLow90 = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uncertaintyLow90", "uncertaintyLow90");
PaleoVariableConstants.upwelling = new PaleoVariable("http://linked.earth/ontology/paleo_variables#upwelling", "upwelling");
PaleoVariableConstants.uranium = new PaleoVariable("http://linked.earth/ontology/paleo_variables#uranium", "uranium");
PaleoVariableConstants.varveThickness = new PaleoVariable("http://linked.earth/ontology/paleo_variables#varveThickness", "varveThickness");
PaleoVariableConstants.volume = new PaleoVariable("http://linked.earth/ontology/paleo_variables#volume", "volume");
PaleoVariableConstants.waterContent = new PaleoVariable("http://linked.earth/ontology/paleo_variables#waterContent", "waterContent");
PaleoVariableConstants.waterTableDepth = new PaleoVariable("http://linked.earth/ontology/paleo_variables#waterTableDepth", "waterTableDepth");
PaleoVariableConstants.wetBulkDensity = new PaleoVariable("http://linked.earth/ontology/paleo_variables#wetBulkDensity", "wetBulkDensity");
PaleoVariableConstants.year = new PaleoVariable("http://linked.earth/ontology/paleo_variables#year", "year");
// src/classes/physicalsample.ts
var PhysicalSample = class _PhysicalSample {
constructor() {
this.housedAt = null;
this.iGSN = null;
this.name = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#PhysicalSample";
this._id = this._ns + "/" + uniqid("PhysicalSample");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _PhysicalSample();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.housedAt !== null) {
thisObj.housedAt = data.housedAt;
}
if (data.iGSN !== null) {
thisObj.iGSN = data.iGSN;
}
if (data.name !== null) {
thisObj.name = data.name;
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _PhysicalSample();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasIGSN") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.iGSN = obj;
}
} else if (key === "housedAt") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.housedAt = obj;
}
} else if (key === "name") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.name = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.housedAt !== null) {
const valueObj = this.housedAt;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["housedAt"] = [obj];
}
if (this.iGSN !== null) {
const valueObj = this.iGSN;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasIGSN"] = [obj];
}
if (this.name !== null) {
const valueObj = this.name;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["name"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.housedAt !== null) {
const valueObj = this.housedAt;
const obj = valueObj;
data["housedat"] = obj;
}
if (this.iGSN !== null) {
const valueObj = this.iGSN;
const obj = valueObj;
data["hasidentifier"] = obj;
}
if (this.name !== null) {
const valueObj = this.name;
const obj = valueObj;
data["hasname"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _PhysicalSample();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "hasidentifier") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.iGSN = obj;
continue;
}
if (key === "hasname") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.name = obj;
continue;
}
if (key === "housedat") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.housedAt = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getHousedAt() {
return this.housedAt;
}
setHousedAt(housedAt) {
this.housedAt = housedAt;
}
getIGSN() {
return this.iGSN;
}
setIGSN(iGSN) {
this.iGSN = iGSN;
}
getName() {
return this.name;
}
setName(name) {
this.name = name;
}
};
// src/classes/resolution.ts
var Resolution = class _Resolution {
constructor() {
this.maxValue = null;
this.meanValue = null;
this.medianValue = null;
this.minValue = null;
this.units = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Resolution";
this._id = this._ns + "/" + uniqid("Resolution");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Resolution();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.maxValue !== null) {
thisObj.maxValue = data.maxValue;
}
if (data.meanValue !== null) {
thisObj.meanValue = data.meanValue;
}
if (data.medianValue !== null) {
thisObj.medianValue = data.medianValue;
}
if (data.minValue !== null) {
thisObj.minValue = data.minValue;
}
if (data.units !== null) {
thisObj.units = new PaleoUnit(data.units.id, data.units.label);
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Resolution();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasMaxValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.maxValue = obj;
}
} else if (key === "hasMeanValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.meanValue = obj;
}
} else if (key === "hasMedianValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.medianValue = obj;
}
} else if (key === "hasMinValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.minValue = obj;
}
} else if (key === "hasUnits") {
for (const val of value) {
let obj = null;
obj = PaleoUnit.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.units = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.maxValue !== null) {
const valueObj = this.maxValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMaxValue"] = [obj];
}
if (this.meanValue !== null) {
const valueObj = this.meanValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMeanValue"] = [obj];
}
if (this.medianValue !== null) {
const valueObj = this.medianValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMedianValue"] = [obj];
}
if (this.minValue !== null) {
const valueObj = this.minValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMinValue"] = [obj];
}
if (this.units !== null) {
const valueObj = this.units;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasUnits"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.maxValue !== null) {
const valueObj = this.maxValue;
const obj = valueObj;
data["hasMaxValue"] = obj;
}
if (this.meanValue !== null) {
const valueObj = this.meanValue;
const obj = valueObj;
data["hasMeanValue"] = obj;
}
if (this.medianValue !== null) {
const valueObj = this.medianValue;
const obj = valueObj;
data["hasMedianValue"] = obj;
}
if (this.minValue !== null) {
const valueObj = this.minValue;
const obj = valueObj;
data["hasMinValue"] = obj;
}
if (this.units !== null) {
const valueObj = this.units;
const obj = valueObj.toJson();
data["units"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Resolution();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "hasMaxValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.maxValue = obj;
continue;
}
if (key === "hasMeanValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.meanValue = obj;
continue;
}
if (key === "hasMedianValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.medianValue = obj;
continue;
}
if (key === "hasMinValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.minValue = obj;
continue;
}
if (key === "units") {
let obj = null;
let value = pvalue;
obj = PaleoUnit.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.units = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getMaxValue() {
return this.maxValue;
}
setMaxValue(maxValue) {
this.maxValue = maxValue;
}
getMeanValue() {
return this.meanValue;
}
setMeanValue(meanValue) {
this.meanValue = meanValue;
}
getMedianValue() {
return this.medianValue;
}
setMedianValue(medianValue) {
this.medianValue = medianValue;
}
getMinValue() {
return this.minValue;
}
setMinValue(minValue) {
this.minValue = minValue;
}
getUnits() {
return this.units;
}
setUnits(units) {
this.units = units;
}
};
// src/classes/variable.ts
var Variable = class _Variable {
constructor() {
this.archiveType = null;
this.calibratedVias = [];
this.columnNumber = null;
this.composite = null;
this.description = null;
this.foundInDataset = null;
this.foundInTable = null;
this.instrument = null;
this.interpretations = [];
this.maxValue = null;
this.meanValue = null;
this.medianValue = null;
this.minValue = null;
this.missingValue = null;
this.name = null;
this.notes = null;
this.partOfCompilations = [];
this.physicalSamples = [];
this.primary = null;
this.proxy = null;
this.proxyGeneral = null;
this.resolution = null;
this.standardVariable = null;
this.uncertainty = null;
this.uncertaintyAnalytical = null;
this.uncertaintyReproducibility = null;
this.units = null;
this.values = null;
this.variableId = null;
this.variableType = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Variable";
this._id = this._ns + "/" + uniqid("Variable");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Variable();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.archiveType !== null) {
thisObj.archiveType = new ArchiveType(data.archiveType.id, data.archiveType.label);
}
if (data.columnNumber !== null) {
thisObj.columnNumber = data.columnNumber;
}
if (data.composite !== null) {
thisObj.composite = data.composite;
}
if (data.description !== null) {
thisObj.description = data.description;
}
if (data.foundInDataset !== null) {
thisObj.foundInDataset = data.foundInDataset;
}
if (data.foundInTable !== null) {
thisObj.foundInTable = data.foundInTable;
}
if (data.instrument !== null) {
thisObj.instrument = data.instrument;
}
if (data.maxValue !== null) {
thisObj.maxValue = data.maxValue;
}
if (data.meanValue !== null) {
thisObj.meanValue = data.meanValue;
}
if (data.medianValue !== null) {
thisObj.medianValue = data.medianValue;
}
if (data.minValue !== null) {
thisObj.minValue = data.minValue;
}
if (data.missingValue !== null) {
thisObj.missingValue = data.missingValue;
}
if (data.name !== null) {
thisObj.name = data.name;
}
if (data.notes !== null) {
thisObj.notes = data.notes;
}
if (data.primary !== null) {
thisObj.primary = data.primary;
}
if (data.proxy !== null) {
thisObj.proxy = new PaleoProxy(data.proxy.id, data.proxy.label);
}
if (data.proxyGeneral !== null) {
thisObj.proxyGeneral = new PaleoProxyGeneral(data.proxyGeneral.id, data.proxyGeneral.label);
}
if (data.resolution !== null) {
thisObj.resolution = Resolution.fromDictionary(data.resolution);
}
if (data.standardVariable !== null) {
thisObj.standardVariable = new PaleoVariable(data.standardVariable.id, data.standardVariable.label);
}
if (data.uncertainty !== null) {
thisObj.uncertainty = data.uncertainty;
}
if (data.uncertaintyAnalytical !== null) {
thisObj.uncertaintyAnalytical = data.uncertaintyAnalytical;
}
if (data.uncertaintyReproducibility !== null) {
thisObj.uncertaintyReproducibility = data.uncertaintyReproducibility;
}
if (data.units !== null) {
thisObj.units = new PaleoUnit(data.units.id, data.units.label);
}
if (data.values !== null) {
thisObj.values = data.values;
}
if (data.variableId !== null) {
thisObj.variableId = data.variableId;
}
if (data.variableType !== null) {
thisObj.variableType = data.variableType;
}
thisObj.calibratedVias = [];
for (const value of data.calibratedVias || []) {
thisObj.calibratedVias.push(Calibration.fromDictionary(value));
}
thisObj.interpretations = [];
for (const value of data.interpretations || []) {
thisObj.interpretations.push(Interpretation.fromDictionary(value));
}
thisObj.partOfCompilations = [];
for (const value of data.partOfCompilations || []) {
thisObj.partOfCompilations.push(Compilation.fromDictionary(value));
}
thisObj.physicalSamples = [];
for (const value of data.physicalSamples || []) {
thisObj.physicalSamples.push(PhysicalSample.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Variable();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "calibratedVia") {
thisObj.calibratedVias = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Calibration.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.calibratedVias.push(obj);
}
} else if (key === "foundInDataset") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.foundInDataset = obj;
}
} else if (key === "foundInTable") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.foundInTable = obj;
}
} else if (key === "hasArchiveType") {
for (const val of value) {
let obj = null;
obj = ArchiveType.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.archiveType = obj;
}
} else if (key === "hasColumnNumber") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.columnNumber = obj;
}
} else if (key === "hasDescription") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.description = obj;
}
} else if (key === "hasInstrument") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.instrument = obj;
}
} else if (key === "hasInterpretation") {
thisObj.interpretations = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Interpretation.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.interpretations.push(obj);
}
} else if (key === "hasMaxValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.maxValue = obj;
}
} else if (key === "hasMeanValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.meanValue = obj;
}
} else if (key === "hasMedianValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.medianValue = obj;
}
} else if (key === "hasMinValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.minValue = obj;
}
} else if (key === "hasMissingValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.missingValue = obj;
}
} else if (key === "hasName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.name = obj;
}
} else if (key === "hasNotes") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.notes = obj;
}
} else if (key === "hasPhysicalSample") {
thisObj.physicalSamples = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = PhysicalSample.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.physicalSamples.push(obj);
}
} else if (key === "hasProxy") {
for (const val of value) {
let obj = null;
obj = PaleoProxy.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.proxy = obj;
}
} else if (key === "hasProxyGeneral") {
for (const val of value) {
let obj = null;
obj = PaleoProxyGeneral.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.proxyGeneral = obj;
}
} else if (key === "hasResolution") {
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Resolution.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.resolution = obj;
}
} else if (key === "hasStandardVariable") {
for (const val of value) {
let obj = null;
obj = PaleoVariable.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.standardVariable = obj;
}
} else if (key === "hasType") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.variableType = obj;
}
} else if (key === "hasUncertainty") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.uncertainty = obj;
}
} else if (key === "hasUncertaintyAnalytical") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.uncertaintyAnalytical = obj;
}
} else if (key === "hasUncertaintyReproducibility") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.uncertaintyReproducibility = obj;
}
} else if (key === "hasUnits") {
for (const val of value) {
let obj = null;
obj = PaleoUnit.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.units = obj;
}
} else if (key === "hasValues") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.values = obj;
}
} else if (key === "hasVariableId") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.variableId = obj;
}
} else if (key === "isComposite") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.composite = obj;
}
} else if (key === "isPrimary") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.primary = obj;
}
} else if (key === "partOfCompilation") {
thisObj.partOfCompilations = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Compilation.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.partOfCompilations.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.archiveType !== null) {
const valueObj = this.archiveType;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasArchiveType"] = [obj];
}
if (this.calibratedVias.length > 0) {
data[this._id]["calibratedVia"] = [];
for (const valueObj of this.calibratedVias) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["calibratedVia"].push(obj);
}
}
if (this.columnNumber !== null) {
const valueObj = this.columnNumber;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#integer"
};
data[this._id]["hasColumnNumber"] = [obj];
}
if (this.composite !== null) {
const valueObj = this.composite;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#boolean"
};
data[this._id]["isComposite"] = [obj];
}
if (this.description !== null) {
const valueObj = this.description;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDescription"] = [obj];
}
if (this.foundInDataset !== null) {
const valueObj = this.foundInDataset;
const obj = {
"@id": valueObj,
"@type": "uri"
};
data[this._id]["foundInDataset"] = [obj];
}
if (this.foundInTable !== null) {
const valueObj = this.foundInTable;
const obj = {
"@id": valueObj,
"@type": "uri"
};
data[this._id]["foundInTable"] = [obj];
}
if (this.instrument !== null) {
const valueObj = this.instrument;
const obj = {
"@id": valueObj,
"@type": "uri"
};
data[this._id]["hasInstrument"] = [obj];
}
if (this.interpretations.length > 0) {
data[this._id]["hasInterpretation"] = [];
for (const valueObj of this.interpretations) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasInterpretation"].push(obj);
}
}
if (this.maxValue !== null) {
const valueObj = this.maxValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMaxValue"] = [obj];
}
if (this.meanValue !== null) {
const valueObj = this.meanValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMeanValue"] = [obj];
}
if (this.medianValue !== null) {
const valueObj = this.medianValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMedianValue"] = [obj];
}
if (this.minValue !== null) {
const valueObj = this.minValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#float"
};
data[this._id]["hasMinValue"] = [obj];
}
if (this.missingValue !== null) {
const valueObj = this.missingValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasMissingValue"] = [obj];
}
if (this.name !== null) {
const valueObj = this.name;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasName"] = [obj];
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasNotes"] = [obj];
}
if (this.partOfCompilations.length > 0) {
data[this._id]["partOfCompilation"] = [];
for (const valueObj of this.partOfCompilations) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["partOfCompilation"].push(obj);
}
}
if (this.physicalSamples.length > 0) {
data[this._id]["hasPhysicalSample"] = [];
for (const valueObj of this.physicalSamples) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasPhysicalSample"].push(obj);
}
}
if (this.primary !== null) {
const valueObj = this.primary;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#boolean"
};
data[this._id]["isPrimary"] = [obj];
}
if (this.proxy !== null) {
const valueObj = this.proxy;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasProxy"] = [obj];
}
if (this.proxyGeneral !== null) {
const valueObj = this.proxyGeneral;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasProxyGeneral"] = [obj];
}
if (this.resolution !== null) {
const valueObj = this.resolution;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasResolution"] = [obj];
}
if (this.standardVariable !== null) {
const valueObj = this.standardVariable;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasStandardVariable"] = [obj];
}
if (this.uncertainty !== null) {
const valueObj = this.uncertainty;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasUncertainty"] = [obj];
}
if (this.uncertaintyAnalytical !== null) {
const valueObj = this.uncertaintyAnalytical;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasUncertaintyAnalytical"] = [obj];
}
if (this.uncertaintyReproducibility !== null) {
const valueObj = this.uncertaintyReproducibility;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasUncertaintyReproducibility"] = [obj];
}
if (this.units !== null) {
const valueObj = this.units;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasUnits"] = [obj];
}
if (this.values !== null) {
const valueObj = this.values;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasValues"] = [obj];
}
if (this.variableId !== null) {
const valueObj = this.variableId;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVariableId"] = [obj];
}
if (this.variableType !== null) {
const valueObj = this.variableType;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasType"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.archiveType !== null) {
const valueObj = this.archiveType;
const obj = valueObj.toJson();
data["archiveType"] = obj;
}
if (this.calibratedVias.length > 0) {
data["calibration"] = [];
for (const valueObj of this.calibratedVias) {
const obj = valueObj.toJson();
data["calibration"].push(obj);
}
}
if (this.columnNumber !== null) {
const valueObj = this.columnNumber;
const obj = valueObj;
data["number"] = obj;
}
if (this.composite !== null) {
const valueObj = this.composite;
const obj = valueObj;
data["isComposite"] = obj;
}
if (this.description !== null) {
const valueObj = this.description;
const obj = valueObj;
data["description"] = obj;
}
if (this.instrument !== null) {
const valueObj = this.instrument;
const obj = valueObj;
data["measurementInstrument"] = obj;
}
if (this.interpretations.length > 0) {
data["interpretation"] = [];
for (const valueObj of this.interpretations) {
const obj = valueObj.toJson();
data["interpretation"].push(obj);
}
}
if (this.maxValue !== null) {
const valueObj = this.maxValue;
const obj = valueObj;
data["hasMaxValue"] = obj;
}
if (this.meanValue !== null) {
const valueObj = this.meanValue;
const obj = valueObj;
data["hasMeanValue"] = obj;
}
if (this.medianValue !== null) {
const valueObj = this.medianValue;
const obj = valueObj;
data["hasMedianValue"] = obj;
}
if (this.minValue !== null) {
const valueObj = this.minValue;
const obj = valueObj;
data["hasMinValue"] = obj;
}
if (this.missingValue !== null) {
const valueObj = this.missingValue;
const obj = valueObj;
data["missingValue"] = obj;
}
if (this.name !== null) {
const valueObj = this.name;
const obj = valueObj;
data["variableName"] = obj;
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = valueObj;
data["notes"] = obj;
}
if (this.partOfCompilations.length > 0) {
data["inCompilationBeta"] = [];
for (const valueObj of this.partOfCompilations) {
const obj = valueObj.toJson();
data["inCompilationBeta"].push(obj);
}
}
if (this.physicalSamples.length > 0) {
data["physicalSample"] = [];
for (const valueObj of this.physicalSamples) {
const obj = valueObj.toJson();
data["physicalSample"].push(obj);
}
}
if (this.primary !== null) {
const valueObj = this.primary;
const obj = valueObj;
data["isPrimary"] = obj;
}
if (this.proxy !== null) {
const valueObj = this.proxy;
const obj = valueObj.toJson();
data["proxy"] = obj;
}
if (this.proxyGeneral !== null) {
const valueObj = this.proxyGeneral;
const obj = valueObj.toJson();
data["proxyGeneral"] = obj;
}
if (this.resolution !== null) {
const valueObj = this.resolution;
const obj = valueObj.toJson();
data["resolution"] = obj;
}
if (this.standardVariable !== null) {
const valueObj = this.standardVariable;
const obj = valueObj.toJson();
data["hasStandardVariable"] = obj;
}
if (this.uncertainty !== null) {
const valueObj = this.uncertainty;
const obj = valueObj;
data["uncertainty"] = obj;
}
if (this.uncertaintyAnalytical !== null) {
const valueObj = this.uncertaintyAnalytical;
const obj = valueObj;
data["uncertaintyAnalytical"] = obj;
}
if (this.uncertaintyReproducibility !== null) {
const valueObj = this.uncertaintyReproducibility;
const obj = valueObj;
data["uncertaintyReproducibility"] = obj;
}
if (this.units !== null) {
const valueObj = this.units;
const obj = valueObj.toJson();
data["units"] = obj;
}
if (this.values !== null) {
const valueObj = this.values;
const obj = valueObj;
data["hasValues"] = obj;
}
if (this.variableId !== null) {
const valueObj = this.variableId;
const obj = valueObj;
data["TSid"] = obj;
}
if (this.variableType !== null) {
const valueObj = this.variableType;
const obj = valueObj;
data["variableType"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Variable();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "TSid") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.variableId = obj;
continue;
}
if (key === "archiveType") {
let obj = null;
let value = pvalue;
obj = ArchiveType.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.archiveType = obj;
continue;
}
if (key === "calibration") {
let obj = null;
thisObj.calibratedVias = [];
for (const value of pvalue) {
obj = Calibration.fromJson(value);
thisObj.calibratedVias.push(obj);
}
continue;
}
if (key === "description") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.description = obj;
continue;
}
if (key === "foundInDataset") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.foundInDataset = obj;
continue;
}
if (key === "foundInTable") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.foundInTable = obj;
continue;
}
if (key === "hasMaxValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.maxValue = obj;
continue;
}
if (key === "hasMeanValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.meanValue = obj;
continue;
}
if (key === "hasMedianValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.medianValue = obj;
continue;
}
if (key === "hasMinValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.minValue = obj;
continue;
}
if (key === "hasStandardVariable") {
let obj = null;
let value = pvalue;
obj = PaleoVariable.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.standardVariable = obj;
continue;
}
if (key === "hasValues") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.values = obj;
continue;
}
if (key === "inCompilationBeta") {
let obj = null;
thisObj.partOfCompilations = [];
for (const value of pvalue) {
obj = Compilation.fromJson(value);
thisObj.partOfCompilations.push(obj);
}
continue;
}
if (key === "interpretation") {
let obj = null;
thisObj.interpretations = [];
for (const value of pvalue) {
obj = Interpretation.fromJson(value);
thisObj.interpretations.push(obj);
}
continue;
}
if (key === "isComposite") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.composite = obj;
continue;
}
if (key === "isPrimary") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.primary = obj;
continue;
}
if (key === "measurementInstrument") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.instrument = obj;
continue;
}
if (key === "missingValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.missingValue = obj;
continue;
}
if (key === "notes") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.notes = obj;
continue;
}
if (key === "number") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.columnNumber = obj;
continue;
}
if (key === "physicalSample") {
let obj = null;
thisObj.physicalSamples = [];
for (const value of pvalue) {
obj = PhysicalSample.fromJson(value);
thisObj.physicalSamples.push(obj);
}
continue;
}
if (key === "proxy") {
let obj = null;
let value = pvalue;
obj = PaleoProxy.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.proxy = obj;
continue;
}
if (key === "proxyGeneral") {
let obj = null;
let value = pvalue;
obj = PaleoProxyGeneral.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.proxyGeneral = obj;
continue;
}
if (key === "resolution") {
let obj = null;
let value = pvalue;
obj = Resolution.fromJson(value);
thisObj.resolution = obj;
continue;
}
if (key === "uncertainty") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.uncertainty = obj;
continue;
}
if (key === "uncertaintyAnalytical") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.uncertaintyAnalytical = obj;
continue;
}
if (key === "uncertaintyReproducibility") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.uncertaintyReproducibility = obj;
continue;
}
if (key === "units") {
let obj = null;
let value = pvalue;
obj = PaleoUnit.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.units = obj;
continue;
}
if (key === "variableName") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.name = obj;
continue;
}
if (key === "variableType") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.variableType = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getArchiveType() {
return this.archiveType;
}
setArchiveType(archiveType) {
this.archiveType = archiveType;
}
getCalibratedVias() {
return this.calibratedVias;
}
setCalibratedVias(calibratedVias) {
this.calibratedVias = calibratedVias;
}
addCalibratedVia(calibratedVias) {
this.calibratedVias.push(calibratedVias);
}
getColumnNumber() {
return this.columnNumber;
}
setColumnNumber(columnNumber) {
this.columnNumber = columnNumber;
}
getDescription() {
return this.description;
}
setDescription(description) {
this.description = description;
}
getFoundInDataset() {
return this.foundInDataset;
}
setFoundInDataset(foundInDataset) {
this.foundInDataset = foundInDataset;
}
getFoundInTable() {
return this.foundInTable;
}
setFoundInTable(foundInTable) {
this.foundInTable = foundInTable;
}
getInstrument() {
return this.instrument;
}
setInstrument(instrument) {
this.instrument = instrument;
}
getInterpretations() {
return this.interpretations;
}
setInterpretations(interpretations) {
this.interpretations = interpretations;
}
addInterpretation(interpretations) {
this.interpretations.push(interpretations);
}
getMaxValue() {
return this.maxValue;
}
setMaxValue(maxValue) {
this.maxValue = maxValue;
}
getMeanValue() {
return this.meanValue;
}
setMeanValue(meanValue) {
this.meanValue = meanValue;
}
getMedianValue() {
return this.medianValue;
}
setMedianValue(medianValue) {
this.medianValue = medianValue;
}
getMinValue() {
return this.minValue;
}
setMinValue(minValue) {
this.minValue = minValue;
}
getMissingValue() {
return this.missingValue;
}
setMissingValue(missingValue) {
this.missingValue = missingValue;
}
getName() {
return this.name;
}
setName(name) {
this.name = name;
}
getNotes() {
return this.notes;
}
setNotes(notes) {
this.notes = notes;
}
getPartOfCompilations() {
return this.partOfCompilations;
}
setPartOfCompilations(partOfCompilations) {
this.partOfCompilations = partOfCompilations;
}
addPartOfCompilation(partOfCompilations) {
this.partOfCompilations.push(partOfCompilations);
}
getPhysicalSamples() {
return this.physicalSamples;
}
setPhysicalSamples(physicalSamples) {
this.physicalSamples = physicalSamples;
}
addPhysicalSample(physicalSamples) {
this.physicalSamples.push(physicalSamples);
}
getProxy() {
return this.proxy;
}
setProxy(proxy) {
this.proxy = proxy;
}
getProxyGeneral() {
return this.proxyGeneral;
}
setProxyGeneral(proxyGeneral) {
this.proxyGeneral = proxyGeneral;
}
getResolution() {
return this.resolution;
}
setResolution(resolution) {
this.resolution = resolution;
}
getStandardVariable() {
return this.standardVariable;
}
setStandardVariable(standardVariable) {
this.standardVariable = standardVariable;
}
getUncertainty() {
return this.uncertainty;
}
setUncertainty(uncertainty) {
this.uncertainty = uncertainty;
}
getUncertaintyAnalytical() {
return this.uncertaintyAnalytical;
}
setUncertaintyAnalytical(uncertaintyAnalytical) {
this.uncertaintyAnalytical = uncertaintyAnalytical;
}
getUncertaintyReproducibility() {
return this.uncertaintyReproducibility;
}
setUncertaintyReproducibility(uncertaintyReproducibility) {
this.uncertaintyReproducibility = uncertaintyReproducibility;
}
getUnits() {
return this.units;
}
setUnits(units) {
this.units = units;
}
getValues() {
return this.values;
}
setValues(values) {
this.values = values;
}
getVariableId() {
return this.variableId;
}
setVariableId(variableId) {
this.variableId = variableId;
}
getVariableType() {
return this.variableType;
}
setVariableType(variableType) {
this.variableType = variableType;
}
isComposite() {
return this.composite;
}
setComposite(composite) {
this.composite = composite;
}
isPrimary() {
return this.primary;
}
setPrimary(primary) {
this.primary = primary;
}
};
// src/classes/datatable.ts
var DataTable = class _DataTable {
constructor() {
this.fileName = null;
this.missingValue = null;
this.variables = [];
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#DataTable";
this._id = this._ns + "/" + uniqid("DataTable");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _DataTable();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.fileName !== null) {
thisObj.fileName = data.fileName;
}
if (data.missingValue !== null) {
thisObj.missingValue = data.missingValue;
}
thisObj.variables = [];
for (const value of data.variables || []) {
thisObj.variables.push(Variable.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _DataTable();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasFileName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.fileName = obj;
}
} else if (key === "hasMissingValue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.missingValue = obj;
}
} else if (key === "hasVariable") {
thisObj.variables = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Variable.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.variables.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.fileName !== null) {
const valueObj = this.fileName;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasFileName"] = [obj];
}
if (this.missingValue !== null) {
const valueObj = this.missingValue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasMissingValue"] = [obj];
}
if (this.variables.length > 0) {
data[this._id]["hasVariable"] = [];
for (const valueObj of this.variables) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasVariable"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.fileName !== null) {
const valueObj = this.fileName;
const obj = valueObj;
data["filename"] = obj;
}
if (this.missingValue !== null) {
const valueObj = this.missingValue;
const obj = valueObj;
data["missingValue"] = obj;
}
if (this.variables.length > 0) {
data["columns"] = [];
for (const valueObj of this.variables) {
const obj = valueObj.toJson();
data["columns"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _DataTable();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "columns") {
let obj = null;
thisObj.variables = [];
for (const value of pvalue) {
obj = Variable.fromJson(value);
thisObj.variables.push(obj);
}
continue;
}
if (key === "filename") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.fileName = obj;
continue;
}
if (key === "missingValue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.missingValue = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getFileName() {
return this.fileName;
}
setFileName(fileName) {
this.fileName = fileName;
}
getMissingValue() {
return this.missingValue;
}
setMissingValue(missingValue) {
this.missingValue = missingValue;
}
getVariables() {
return this.variables;
}
setVariables(variables) {
this.variables = variables;
}
addVariable(variables) {
this.variables.push(variables);
}
/**
* Get data as a DataFrame-like structure
* @param useStandardNames Whether to use standard variable names instead of custom names
* @returns Object containing data and metadata
*/
getDataFrame(useStandardNames = false) {
const result = {
data: {},
metadata: {}
};
for (const v of this.variables) {
const name = v.getName();
if (!name)
continue;
let colname = name;
const standardVar = v.getStandardVariable();
if (useStandardNames && standardVar !== null) {
const label = standardVar.getLabel();
if (label)
colname = label;
}
const values = v.getValues();
if (values) {
result.data[colname] = parseVariableValues(values);
}
const varMetadata = v.toJson();
if (varMetadata) {
result.metadata[colname] = varMetadata;
delete result.metadata[colname].hasValues;
delete result.metadata[colname].values;
}
}
return result;
}
getDataList() {
const result = {
data: [],
metadata: []
};
for (const v of this.variables) {
const values = v.getValues();
if (values) {
result.data.push(parseVariableValues(values));
}
const varMetadata = v.toJson();
if (varMetadata) {
delete varMetadata.hasValues;
delete varMetadata.values;
result.metadata.push(varMetadata);
}
}
return result;
}
/**
* Set data from a DataFrame-like structure
* @param data Object containing data and metadata
*/
setDataFrame(data) {
this.variables = [];
for (const [colname, values] of Object.entries(data.data)) {
const metadata = data.metadata[colname];
if (!metadata)
continue;
const v = Variable.fromJson(metadata);
if (v) {
v.setValues(JSON.stringify(values));
this.addVariable(v);
}
}
}
/**
* Set data from a DataFrame-like structure
* @param data Object containing data and metadata
*/
setDataList(data) {
this.variables = [];
const transposedData = [];
for (let i = 0; i < data.metadata.length; i++) {
transposedData[i] = [];
}
for (let rowIndex = 0; rowIndex < data.data.length; rowIndex++) {
const row = data.data[rowIndex];
for (let colIndex = 0; colIndex < row.length; colIndex++) {
if (colIndex < transposedData.length) {
transposedData[colIndex].push(row[colIndex]);
}
}
}
for (let i = 0; i < data.metadata.length; i++) {
const values = transposedData[i];
const metadata = data.metadata[i];
if (!metadata)
continue;
const v = Variable.fromJson(metadata);
if (v) {
v.setValues(JSON.stringify(values));
this.addVariable(v);
}
}
}
};
// src/classes/model.ts
var Model = class _Model {
constructor() {
this.code = null;
this.distributionTables = [];
this.ensembleTables = [];
this.summaryTables = [];
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Model";
this._id = this._ns + "/" + uniqid("Model");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Model();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.code !== null) {
thisObj.code = data.code;
}
thisObj.distributionTables = [];
for (const value of data.distributionTables || []) {
thisObj.distributionTables.push(DataTable.fromDictionary(value));
}
thisObj.ensembleTables = [];
for (const value of data.ensembleTables || []) {
thisObj.ensembleTables.push(DataTable.fromDictionary(value));
}
thisObj.summaryTables = [];
for (const value of data.summaryTables || []) {
thisObj.summaryTables.push(DataTable.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Model();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasCode") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.code = obj;
}
} else if (key === "hasDistributionTable") {
thisObj.distributionTables = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = DataTable.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.distributionTables.push(obj);
}
} else if (key === "hasEnsembleTable") {
thisObj.ensembleTables = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = DataTable.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.ensembleTables.push(obj);
}
} else if (key === "hasSummaryTable") {
thisObj.summaryTables = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = DataTable.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.summaryTables.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.code !== null) {
const valueObj = this.code;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCode"] = [obj];
}
if (this.distributionTables.length > 0) {
data[this._id]["hasDistributionTable"] = [];
for (const valueObj of this.distributionTables) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasDistributionTable"].push(obj);
}
}
if (this.ensembleTables.length > 0) {
data[this._id]["hasEnsembleTable"] = [];
for (const valueObj of this.ensembleTables) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasEnsembleTable"].push(obj);
}
}
if (this.summaryTables.length > 0) {
data[this._id]["hasSummaryTable"] = [];
for (const valueObj of this.summaryTables) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasSummaryTable"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.code !== null) {
const valueObj = this.code;
const obj = valueObj;
data["method"] = obj;
}
if (this.distributionTables.length > 0) {
data["distributionTable"] = [];
for (const valueObj of this.distributionTables) {
const obj = valueObj.toJson();
data["distributionTable"].push(obj);
}
}
if (this.ensembleTables.length > 0) {
data["ensembleTable"] = [];
for (const valueObj of this.ensembleTables) {
const obj = valueObj.toJson();
data["ensembleTable"].push(obj);
}
}
if (this.summaryTables.length > 0) {
data["summaryTable"] = [];
for (const valueObj of this.summaryTables) {
const obj = valueObj.toJson();
data["summaryTable"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Model();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "distributionTable") {
let obj = null;
thisObj.distributionTables = [];
for (const value of pvalue) {
obj = DataTable.fromJson(value);
thisObj.distributionTables.push(obj);
}
continue;
}
if (key === "ensembleTable") {
let obj = null;
thisObj.ensembleTables = [];
for (const value of pvalue) {
obj = DataTable.fromJson(value);
thisObj.ensembleTables.push(obj);
}
continue;
}
if (key === "method") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.code = obj;
continue;
}
if (key === "summaryTable") {
let obj = null;
thisObj.summaryTables = [];
for (const value of pvalue) {
obj = DataTable.fromJson(value);
thisObj.summaryTables.push(obj);
}
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getCode() {
return this.code;
}
setCode(code) {
this.code = code;
}
getDistributionTables() {
return this.distributionTables;
}
setDistributionTables(distributionTables) {
this.distributionTables = distributionTables;
}
addDistributionTable(distributionTables) {
this.distributionTables.push(distributionTables);
}
getEnsembleTables() {
return this.ensembleTables;
}
setEnsembleTables(ensembleTables) {
this.ensembleTables = ensembleTables;
}
addEnsembleTable(ensembleTables) {
this.ensembleTables.push(ensembleTables);
}
getSummaryTables() {
return this.summaryTables;
}
setSummaryTables(summaryTables) {
this.summaryTables = summaryTables;
}
addSummaryTable(summaryTables) {
this.summaryTables.push(summaryTables);
}
};
// src/classes/chrondata.ts
var ChronData = class _ChronData {
constructor() {
this.measurementTables = [];
this.modeledBy = [];
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#ChronData";
this._id = this._ns + "/" + uniqid("ChronData");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _ChronData();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
thisObj.measurementTables = [];
for (const value of data.measurementTables || []) {
thisObj.measurementTables.push(DataTable.fromDictionary(value));
}
thisObj.modeledBy = [];
for (const value of data.modeledBy || []) {
thisObj.modeledBy.push(Model.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _ChronData();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasMeasurementTable") {
thisObj.measurementTables = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = DataTable.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.measurementTables.push(obj);
}
} else if (key === "modeledBy") {
thisObj.modeledBy = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Model.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.modeledBy.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.measurementTables.length > 0) {
data[this._id]["hasMeasurementTable"] = [];
for (const valueObj of this.measurementTables) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasMeasurementTable"].push(obj);
}
}
if (this.modeledBy.length > 0) {
data[this._id]["modeledBy"] = [];
for (const valueObj of this.modeledBy) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["modeledBy"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.measurementTables.length > 0) {
data["measurementTable"] = [];
for (const valueObj of this.measurementTables) {
const obj = valueObj.toJson();
data["measurementTable"].push(obj);
}
}
if (this.modeledBy.length > 0) {
data["model"] = [];
for (const valueObj of this.modeledBy) {
const obj = valueObj.toJson();
data["model"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _ChronData();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "measurementTable") {
let obj = null;
thisObj.measurementTables = [];
for (const value of pvalue) {
obj = DataTable.fromJson(value);
thisObj.measurementTables.push(obj);
}
continue;
}
if (key === "model") {
let obj = null;
thisObj.modeledBy = [];
for (const value of pvalue) {
obj = Model.fromJson(value);
thisObj.modeledBy.push(obj);
}
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getMeasurementTables() {
return this.measurementTables;
}
setMeasurementTables(measurementTables) {
this.measurementTables = measurementTables;
}
addMeasurementTable(measurementTables) {
this.measurementTables.push(measurementTables);
}
getModeledBy() {
return this.modeledBy;
}
setModeledBy(modeledBy) {
this.modeledBy = modeledBy;
}
addModeledBy(modeledBy) {
this.modeledBy.push(modeledBy);
}
};
// src/classes/person.ts
var Person = class _Person {
constructor() {
this.name = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Person";
this._id = this._ns + "/" + uniqid("Person");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Person();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.name !== null) {
thisObj.name = data.name;
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Person();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.name = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.name !== null) {
const valueObj = this.name;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasName"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.name !== null) {
const valueObj = this.name;
const obj = valueObj;
data["name"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Person();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "name") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.name = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getName() {
return this.name;
}
setName(name) {
this.name = name;
}
};
// src/classes/funding.ts
var Funding = class _Funding {
constructor() {
this.fundingAgency = null;
this.fundingCountry = null;
this.grants = [];
this.investigators = [];
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Funding";
this._id = this._ns + "/" + uniqid("Funding");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Funding();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.fundingAgency !== null) {
thisObj.fundingAgency = data.fundingAgency;
}
if (data.fundingCountry !== null) {
thisObj.fundingCountry = data.fundingCountry;
}
thisObj.grants = [];
for (const value of data.grants || []) {
thisObj.grants.push(value);
}
thisObj.investigators = [];
for (const value of data.investigators || []) {
thisObj.investigators.push(Person.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Funding();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasFundingAgency") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.fundingAgency = obj;
}
} else if (key === "hasFundingCountry") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.fundingCountry = obj;
}
} else if (key === "hasGrant") {
thisObj.grants = [];
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.grants.push(obj);
}
} else if (key === "hasInvestigator") {
thisObj.investigators = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Person.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.investigators.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.fundingAgency !== null) {
const valueObj = this.fundingAgency;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasFundingAgency"] = [obj];
}
if (this.fundingCountry !== null) {
const valueObj = this.fundingCountry;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasFundingCountry"] = [obj];
}
if (this.grants.length > 0) {
data[this._id]["hasGrant"] = [];
for (const valueObj of this.grants) {
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasGrant"].push(obj);
}
}
if (this.investigators.length > 0) {
data[this._id]["hasInvestigator"] = [];
for (const valueObj of this.investigators) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasInvestigator"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.fundingAgency !== null) {
const valueObj = this.fundingAgency;
const obj = valueObj;
data["agency"] = obj;
}
if (this.fundingCountry !== null) {
const valueObj = this.fundingCountry;
const obj = valueObj;
data["country"] = obj;
}
if (this.grants.length > 0) {
data["grant"] = [];
for (const valueObj of this.grants) {
const obj = valueObj;
data["grant"].push(obj);
}
}
if (this.investigators.length > 0) {
data["investigator"] = [];
for (const valueObj of this.investigators) {
const obj = valueObj.toJson();
data["investigator"].push(obj);
}
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Funding();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "agency") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.fundingAgency = obj;
continue;
}
if (key === "country") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.fundingCountry = obj;
continue;
}
if (key === "grant") {
let obj = null;
thisObj.grants = [];
for (const value of pvalue) {
obj = value;
thisObj.grants.push(obj);
}
continue;
}
if (key === "investigator") {
let obj = null;
thisObj.investigators = [];
for (const value of pvalue) {
obj = Person.fromJson(value);
thisObj.investigators.push(obj);
}
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getFundingAgency() {
return this.fundingAgency;
}
setFundingAgency(fundingAgency) {
this.fundingAgency = fundingAgency;
}
getFundingCountry() {
return this.fundingCountry;
}
setFundingCountry(fundingCountry) {
this.fundingCountry = fundingCountry;
}
getGrants() {
return this.grants;
}
setGrants(grants) {
this.grants = grants;
}
addGrant(grants) {
this.grants.push(grants);
}
getInvestigators() {
return this.investigators;
}
setInvestigators(investigators) {
this.investigators = investigators;
}
addInvestigator(investigators) {
this.investigators.push(investigators);
}
};
// src/classes/location.ts
var Location = class _Location {
constructor() {
this.continent = null;
this.coordinates = null;
this.coordinatesFor = null;
this.country = null;
this.countryOcean = null;
this.description = null;
this.elevation = null;
this.geometryType = null;
this.latitude = null;
this.locationName = null;
this.locationType = null;
this.longitude = null;
this.notes = null;
this.ocean = null;
this.siteName = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Location";
this._id = this._ns + "/" + uniqid("Location");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Location();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.continent !== null) {
thisObj.continent = data.continent;
}
if (data.coordinates !== null) {
thisObj.coordinates = data.coordinates;
}
if (data.coordinatesFor !== null) {
thisObj.coordinatesFor = data.coordinatesFor;
}
if (data.country !== null) {
thisObj.country = data.country;
}
if (data.countryOcean !== null) {
thisObj.countryOcean = data.countryOcean;
}
if (data.description !== null) {
thisObj.description = data.description;
}
if (data.elevation !== null) {
thisObj.elevation = data.elevation;
}
if (data.geometryType !== null) {
thisObj.geometryType = data.geometryType;
}
if (data.latitude !== null) {
thisObj.latitude = data.latitude;
}
if (data.locationName !== null) {
thisObj.locationName = data.locationName;
}
if (data.locationType !== null) {
thisObj.locationType = data.locationType;
}
if (data.longitude !== null) {
thisObj.longitude = data.longitude;
}
if (data.notes !== null) {
thisObj.notes = data.notes;
}
if (data.ocean !== null) {
thisObj.ocean = data.ocean;
}
if (data.siteName !== null) {
thisObj.siteName = data.siteName;
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Location();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "coordinates") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.coordinates = obj;
}
} else if (key === "coordinatesFor") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.coordinatesFor = obj;
}
} else if (key === "hasContinent") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.continent = obj;
}
} else if (key === "hasCountry") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.country = obj;
}
} else if (key === "hasCountryOcean") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.countryOcean = obj;
}
} else if (key === "hasDescription") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.description = obj;
}
} else if (key === "hasElevation") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.elevation = obj;
}
} else if (key === "hasGeometryType") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.geometryType = obj;
}
} else if (key === "hasLatitude") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.latitude = obj;
}
} else if (key === "hasLocationName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.locationName = obj;
}
} else if (key === "hasLongitude") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.longitude = obj;
}
} else if (key === "hasNotes") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.notes = obj;
}
} else if (key === "hasOcean") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.ocean = obj;
}
} else if (key === "hasSiteName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.siteName = obj;
}
} else if (key === "hasType") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.locationType = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.continent !== null) {
const valueObj = this.continent;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasContinent"] = [obj];
}
if (this.coordinates !== null) {
const valueObj = this.coordinates;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["coordinates"] = [obj];
}
if (this.coordinatesFor !== null) {
const valueObj = this.coordinatesFor;
const obj = {
"@id": valueObj,
"@type": "uri"
};
data[this._id]["coordinatesFor"] = [obj];
}
if (this.country !== null) {
const valueObj = this.country;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCountry"] = [obj];
}
if (this.countryOcean !== null) {
const valueObj = this.countryOcean;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCountryOcean"] = [obj];
}
if (this.description !== null) {
const valueObj = this.description;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDescription"] = [obj];
}
if (this.elevation !== null) {
const valueObj = this.elevation;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasElevation"] = [obj];
}
if (this.geometryType !== null) {
const valueObj = this.geometryType;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasGeometryType"] = [obj];
}
if (this.latitude !== null) {
const valueObj = this.latitude;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasLatitude"] = [obj];
}
if (this.locationName !== null) {
const valueObj = this.locationName;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasLocationName"] = [obj];
}
if (this.locationType !== null) {
const valueObj = this.locationType;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasType"] = [obj];
}
if (this.longitude !== null) {
const valueObj = this.longitude;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasLongitude"] = [obj];
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasNotes"] = [obj];
}
if (this.ocean !== null) {
const valueObj = this.ocean;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasOcean"] = [obj];
}
if (this.siteName !== null) {
const valueObj = this.siteName;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasSiteName"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.continent !== null) {
const valueObj = this.continent;
const obj = valueObj;
data["continent"] = obj;
}
if (this.coordinates !== null) {
const valueObj = this.coordinates;
const obj = valueObj;
data["coordinates"] = obj;
}
if (this.coordinatesFor !== null) {
const valueObj = this.coordinatesFor;
const obj = valueObj;
data["coordinatesFor"] = obj;
}
if (this.country !== null) {
const valueObj = this.country;
const obj = valueObj;
data["country"] = obj;
}
if (this.countryOcean !== null) {
const valueObj = this.countryOcean;
const obj = valueObj;
data["countryOcean"] = obj;
}
if (this.description !== null) {
const valueObj = this.description;
const obj = valueObj;
data["description"] = obj;
}
if (this.elevation !== null) {
const valueObj = this.elevation;
const obj = valueObj;
data["elevation"] = obj;
}
if (this.geometryType !== null) {
const valueObj = this.geometryType;
const obj = valueObj;
data["geometryType"] = obj;
}
if (this.latitude !== null) {
const valueObj = this.latitude;
const obj = valueObj;
data["latitude"] = obj;
}
if (this.locationName !== null) {
const valueObj = this.locationName;
const obj = valueObj;
data["locationName"] = obj;
}
if (this.locationType !== null) {
const valueObj = this.locationType;
const obj = valueObj;
data["type"] = obj;
}
if (this.longitude !== null) {
const valueObj = this.longitude;
const obj = valueObj;
data["longitude"] = obj;
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = valueObj;
data["notes"] = obj;
}
if (this.ocean !== null) {
const valueObj = this.ocean;
const obj = valueObj;
data["ocean"] = obj;
}
if (this.siteName !== null) {
const valueObj = this.siteName;
const obj = valueObj;
data["siteName"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Location();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "continent") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.continent = obj;
continue;
}
if (key === "coordinates") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.coordinates = obj;
continue;
}
if (key === "coordinatesFor") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.coordinatesFor = obj;
continue;
}
if (key === "country") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.country = obj;
continue;
}
if (key === "countryOcean") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.countryOcean = obj;
continue;
}
if (key === "description") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.description = obj;
continue;
}
if (key === "elevation") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.elevation = obj;
continue;
}
if (key === "geometryType") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.geometryType = obj;
continue;
}
if (key === "latitude") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.latitude = obj;
continue;
}
if (key === "locationName") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.locationName = obj;
continue;
}
if (key === "longitude") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.longitude = obj;
continue;
}
if (key === "notes") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.notes = obj;
continue;
}
if (key === "ocean") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.ocean = obj;
continue;
}
if (key === "siteName") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.siteName = obj;
continue;
}
if (key === "type") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.locationType = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getContinent() {
return this.continent;
}
setContinent(continent) {
this.continent = continent;
}
getCoordinates() {
return this.coordinates;
}
setCoordinates(coordinates) {
this.coordinates = coordinates;
}
getCoordinatesFor() {
return this.coordinatesFor;
}
setCoordinatesFor(coordinatesFor) {
this.coordinatesFor = coordinatesFor;
}
getCountry() {
return this.country;
}
setCountry(country) {
this.country = country;
}
getCountryOcean() {
return this.countryOcean;
}
setCountryOcean(countryOcean) {
this.countryOcean = countryOcean;
}
getDescription() {
return this.description;
}
setDescription(description) {
this.description = description;
}
getElevation() {
return this.elevation;
}
setElevation(elevation) {
this.elevation = elevation;
}
getGeometryType() {
return this.geometryType;
}
setGeometryType(geometryType) {
this.geometryType = geometryType;
}
getLatitude() {
return this.latitude;
}
setLatitude(latitude) {
this.latitude = latitude;
}
getLocationName() {
return this.locationName;
}
setLocationName(locationName) {
this.locationName = locationName;
}
getLocationType() {
return this.locationType;
}
setLocationType(locationType) {
this.locationType = locationType;
}
getLongitude() {
return this.longitude;
}
setLongitude(longitude) {
this.longitude = longitude;
}
getNotes() {
return this.notes;
}
setNotes(notes) {
this.notes = notes;
}
getOcean() {
return this.ocean;
}
setOcean(ocean) {
this.ocean = ocean;
}
getSiteName() {
return this.siteName;
}
setSiteName(siteName) {
this.siteName = siteName;
}
};
// src/classes/paleodata.ts
var PaleoData = class _PaleoData {
constructor() {
this.measurementTables = [];
this.modeledBy = [];
this.name = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#PaleoData";
this._id = this._ns + "/" + uniqid("PaleoData");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _PaleoData();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.name !== null) {
thisObj.name = data.name;
}
thisObj.measurementTables = [];
for (const value of data.measurementTables || []) {
thisObj.measurementTables.push(DataTable.fromDictionary(value));
}
thisObj.modeledBy = [];
for (const value of data.modeledBy || []) {
thisObj.modeledBy.push(Model.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _PaleoData();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasMeasurementTable") {
thisObj.measurementTables = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = DataTable.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.measurementTables.push(obj);
}
} else if (key === "hasName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.name = obj;
}
} else if (key === "modeledBy") {
thisObj.modeledBy = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Model.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.modeledBy.push(obj);
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.measurementTables.length > 0) {
data[this._id]["hasMeasurementTable"] = [];
for (const valueObj of this.measurementTables) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasMeasurementTable"].push(obj);
}
}
if (this.modeledBy.length > 0) {
data[this._id]["modeledBy"] = [];
for (const valueObj of this.modeledBy) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["modeledBy"].push(obj);
}
}
if (this.name !== null) {
const valueObj = this.name;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasName"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.measurementTables.length > 0) {
data["measurementTable"] = [];
for (const valueObj of this.measurementTables) {
const obj = valueObj.toJson();
data["measurementTable"].push(obj);
}
}
if (this.modeledBy.length > 0) {
data["model"] = [];
for (const valueObj of this.modeledBy) {
const obj = valueObj.toJson();
data["model"].push(obj);
}
}
if (this.name !== null) {
const valueObj = this.name;
const obj = valueObj;
data["paleoDataName"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _PaleoData();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "measurementTable") {
let obj = null;
thisObj.measurementTables = [];
for (const value of pvalue) {
obj = DataTable.fromJson(value);
thisObj.measurementTables.push(obj);
}
continue;
}
if (key === "model") {
let obj = null;
thisObj.modeledBy = [];
for (const value of pvalue) {
obj = Model.fromJson(value);
thisObj.modeledBy.push(obj);
}
continue;
}
if (key === "paleoDataName") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.name = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getMeasurementTables() {
return this.measurementTables;
}
setMeasurementTables(measurementTables) {
this.measurementTables = measurementTables;
}
addMeasurementTable(measurementTables) {
this.measurementTables.push(measurementTables);
}
getModeledBy() {
return this.modeledBy;
}
setModeledBy(modeledBy) {
this.modeledBy = modeledBy;
}
addModeledBy(modeledBy) {
this.modeledBy.push(modeledBy);
}
getName() {
return this.name;
}
setName(name) {
this.name = name;
}
};
// src/classes/publication.ts
var Publication = class _Publication {
constructor() {
this.abstract = null;
this.authors = [];
this.citation = null;
this.citeKey = null;
this.dOI = null;
this.dataUrls = [];
this.firstAuthor = null;
this.institution = null;
this.issue = null;
this.journal = null;
this.pages = null;
this.publicationType = null;
this.publisher = null;
this.report = null;
this.title = null;
this.urls = [];
this.volume = null;
this.year = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Publication";
this._id = this._ns + "/" + uniqid("Publication");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Publication();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.abstract !== null) {
thisObj.abstract = data.abstract;
}
if (data.citation !== null) {
thisObj.citation = data.citation;
}
if (data.citeKey !== null) {
thisObj.citeKey = data.citeKey;
}
if (data.dOI !== null) {
thisObj.dOI = data.dOI;
}
if (data.firstAuthor !== null) {
thisObj.firstAuthor = Person.fromDictionary(data.firstAuthor);
}
if (data.institution !== null) {
thisObj.institution = data.institution;
}
if (data.issue !== null) {
thisObj.issue = data.issue;
}
if (data.journal !== null) {
thisObj.journal = data.journal;
}
if (data.pages !== null) {
thisObj.pages = data.pages;
}
if (data.publicationType !== null) {
thisObj.publicationType = data.publicationType;
}
if (data.publisher !== null) {
thisObj.publisher = data.publisher;
}
if (data.report !== null) {
thisObj.report = data.report;
}
if (data.title !== null) {
thisObj.title = data.title;
}
if (data.volume !== null) {
thisObj.volume = data.volume;
}
if (data.year !== null) {
thisObj.year = data.year;
}
thisObj.authors = [];
for (const value of data.authors || []) {
thisObj.authors.push(Person.fromDictionary(value));
}
thisObj.dataUrls = [];
for (const value of data.dataUrls || []) {
thisObj.dataUrls.push(value);
}
thisObj.urls = [];
for (const value of data.urls || []) {
thisObj.urls.push(value);
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Publication();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasAbstract") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.abstract = obj;
}
} else if (key === "hasAuthor") {
thisObj.authors = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Person.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.authors.push(obj);
}
} else if (key === "hasCitation") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.citation = obj;
}
} else if (key === "hasCiteKey") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.citeKey = obj;
}
} else if (key === "hasDOI") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.dOI = obj;
}
} else if (key === "hasDataUrl") {
thisObj.dataUrls = [];
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.dataUrls.push(obj);
}
} else if (key === "hasFirstAuthor") {
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Person.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.firstAuthor = obj;
}
} else if (key === "hasInstitution") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.institution = obj;
}
} else if (key === "hasIssue") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.issue = obj;
}
} else if (key === "hasJournal") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.journal = obj;
}
} else if (key === "hasPages") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.pages = obj;
}
} else if (key === "hasPublisher") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.publisher = obj;
}
} else if (key === "hasReport") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.report = obj;
}
} else if (key === "hasTitle") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.title = obj;
}
} else if (key === "hasType") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.publicationType = obj;
}
} else if (key === "hasUrl") {
thisObj.urls = [];
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.urls.push(obj);
}
} else if (key === "hasVolume") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.volume = obj;
}
} else if (key === "hasYear") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.year = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.abstract !== null) {
const valueObj = this.abstract;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasAbstract"] = [obj];
}
if (this.authors.length > 0) {
data[this._id]["hasAuthor"] = [];
for (const valueObj of this.authors) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasAuthor"].push(obj);
}
}
if (this.citation !== null) {
const valueObj = this.citation;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCitation"] = [obj];
}
if (this.citeKey !== null) {
const valueObj = this.citeKey;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCiteKey"] = [obj];
}
if (this.dOI !== null) {
const valueObj = this.dOI;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDOI"] = [obj];
}
if (this.dataUrls.length > 0) {
data[this._id]["hasDataUrl"] = [];
for (const valueObj of this.dataUrls) {
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDataUrl"].push(obj);
}
}
if (this.firstAuthor !== null) {
const valueObj = this.firstAuthor;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasFirstAuthor"] = [obj];
}
if (this.institution !== null) {
const valueObj = this.institution;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasInstitution"] = [obj];
}
if (this.issue !== null) {
const valueObj = this.issue;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasIssue"] = [obj];
}
if (this.journal !== null) {
const valueObj = this.journal;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasJournal"] = [obj];
}
if (this.pages !== null) {
const valueObj = this.pages;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasPages"] = [obj];
}
if (this.publicationType !== null) {
const valueObj = this.publicationType;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasType"] = [obj];
}
if (this.publisher !== null) {
const valueObj = this.publisher;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasPublisher"] = [obj];
}
if (this.report !== null) {
const valueObj = this.report;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasReport"] = [obj];
}
if (this.title !== null) {
const valueObj = this.title;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasTitle"] = [obj];
}
if (this.urls.length > 0) {
data[this._id]["hasUrl"] = [];
for (const valueObj of this.urls) {
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasUrl"].push(obj);
}
}
if (this.volume !== null) {
const valueObj = this.volume;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVolume"] = [obj];
}
if (this.year !== null) {
const valueObj = this.year;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#integer"
};
data[this._id]["hasYear"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.abstract !== null) {
const valueObj = this.abstract;
const obj = valueObj;
data["abstract"] = obj;
}
if (this.authors.length > 0) {
data["author"] = [];
for (const valueObj of this.authors) {
const obj = valueObj.toJson();
data["author"].push(obj);
}
}
if (this.citation !== null) {
const valueObj = this.citation;
const obj = valueObj;
data["citation"] = obj;
}
if (this.citeKey !== null) {
const valueObj = this.citeKey;
const obj = valueObj;
data["citeKey"] = obj;
}
if (this.dOI !== null) {
const valueObj = this.dOI;
const obj = valueObj;
data["doi"] = obj;
}
if (this.dataUrls.length > 0) {
data["dataUrl"] = [];
for (const valueObj of this.dataUrls) {
const obj = valueObj;
data["dataUrl"].push(obj);
}
}
if (this.firstAuthor !== null) {
const valueObj = this.firstAuthor;
const obj = valueObj.toJson();
data["firstauthor"] = obj;
}
if (this.institution !== null) {
const valueObj = this.institution;
const obj = valueObj;
data["institution"] = obj;
}
if (this.issue !== null) {
const valueObj = this.issue;
const obj = valueObj;
data["issue"] = obj;
}
if (this.journal !== null) {
const valueObj = this.journal;
const obj = valueObj;
data["journal"] = obj;
}
if (this.pages !== null) {
const valueObj = this.pages;
const obj = valueObj;
data["pages"] = obj;
}
if (this.publicationType !== null) {
const valueObj = this.publicationType;
const obj = valueObj;
data["type"] = obj;
}
if (this.publisher !== null) {
const valueObj = this.publisher;
const obj = valueObj;
data["publisher"] = obj;
}
if (this.report !== null) {
const valueObj = this.report;
const obj = valueObj;
data["report"] = obj;
}
if (this.title !== null) {
const valueObj = this.title;
const obj = valueObj;
data["title"] = obj;
}
if (this.urls.length > 0) {
data["url"] = [];
for (const valueObj of this.urls) {
const obj = valueObj;
data["url"].push(obj);
}
}
if (this.volume !== null) {
const valueObj = this.volume;
const obj = valueObj;
data["volume"] = obj;
}
if (this.year !== null) {
const valueObj = this.year;
const obj = valueObj;
data["year"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Publication();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "abstract") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.abstract = obj;
continue;
}
if (key === "author") {
let obj = null;
thisObj.authors = [];
for (const value of pvalue) {
obj = Person.fromJson(value);
thisObj.authors.push(obj);
}
continue;
}
if (key === "citation") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.citation = obj;
continue;
}
if (key === "citeKey") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.citeKey = obj;
continue;
}
if (key === "dataUrl") {
let obj = null;
thisObj.dataUrls = [];
for (const value of pvalue) {
obj = value;
thisObj.dataUrls.push(obj);
}
continue;
}
if (key === "doi") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.dOI = obj;
continue;
}
if (key === "firstauthor") {
let obj = null;
let value = pvalue;
obj = Person.fromJson(value);
thisObj.firstAuthor = obj;
continue;
}
if (key === "institution") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.institution = obj;
continue;
}
if (key === "issue") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.issue = obj;
continue;
}
if (key === "journal") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.journal = obj;
continue;
}
if (key === "pages") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.pages = obj;
continue;
}
if (key === "publisher") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.publisher = obj;
continue;
}
if (key === "report") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.report = obj;
continue;
}
if (key === "title") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.title = obj;
continue;
}
if (key === "type") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.publicationType = obj;
continue;
}
if (key === "url") {
let obj = null;
thisObj.urls = [];
for (const value of pvalue) {
obj = value;
thisObj.urls.push(obj);
}
continue;
}
if (key === "volume") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.volume = obj;
continue;
}
if (key === "year") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.year = obj;
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getAbstract() {
return this.abstract;
}
setAbstract(abstract) {
this.abstract = abstract;
}
getAuthors() {
return this.authors;
}
setAuthors(authors) {
this.authors = authors;
}
addAuthor(authors) {
this.authors.push(authors);
}
getCitation() {
return this.citation;
}
setCitation(citation) {
this.citation = citation;
}
getCiteKey() {
return this.citeKey;
}
setCiteKey(citeKey) {
this.citeKey = citeKey;
}
getDOI() {
return this.dOI;
}
setDOI(dOI) {
this.dOI = dOI;
}
getDataUrls() {
return this.dataUrls;
}
setDataUrls(dataUrls) {
this.dataUrls = dataUrls;
}
addDataUrl(dataUrls) {
this.dataUrls.push(dataUrls);
}
getFirstAuthor() {
return this.firstAuthor;
}
setFirstAuthor(firstAuthor) {
this.firstAuthor = firstAuthor;
}
getInstitution() {
return this.institution;
}
setInstitution(institution) {
this.institution = institution;
}
getIssue() {
return this.issue;
}
setIssue(issue) {
this.issue = issue;
}
getJournal() {
return this.journal;
}
setJournal(journal) {
this.journal = journal;
}
getPages() {
return this.pages;
}
setPages(pages) {
this.pages = pages;
}
getPublicationType() {
return this.publicationType;
}
setPublicationType(publicationType) {
this.publicationType = publicationType;
}
getPublisher() {
return this.publisher;
}
setPublisher(publisher) {
this.publisher = publisher;
}
getReport() {
return this.report;
}
setReport(report) {
this.report = report;
}
getTitle() {
return this.title;
}
setTitle(title) {
this.title = title;
}
getUrls() {
return this.urls;
}
setUrls(urls) {
this.urls = urls;
}
addUrl(urls) {
this.urls.push(urls);
}
getVolume() {
return this.volume;
}
setVolume(volume) {
this.volume = volume;
}
getYear() {
return this.year;
}
setYear(year) {
this.year = year;
}
};
// src/classes/dataset.ts
var Dataset = class _Dataset {
constructor() {
this.archiveType = null;
this.changeLogs = [];
this.chronData = [];
this.collectionName = null;
this.collectionYear = null;
this.compilationNest = null;
this.contributors = [];
this.creators = [];
this.dataSource = null;
this.datasetId = null;
this.fundings = [];
this.investigators = [];
this.location = null;
this.name = null;
this.notes = null;
this.originalDataUrl = null;
this.paleoData = [];
this.publications = [];
this.spreadsheetLink = null;
this.version = null;
this._misc = {};
this._ontns = "http://linked.earth/ontology#";
this._ns = "http://linked.earth/lipd";
this._type = "http://linked.earth/ontology#Dataset";
this._id = this._ns + "/" + uniqid("Dataset");
}
getId() {
return this._id;
}
getType() {
return this._type;
}
getMisc() {
return this._misc;
}
static fromDictionary(data) {
const thisObj = new _Dataset();
thisObj._id = data._id;
thisObj._type = data._type;
thisObj._misc = data._misc;
thisObj._ontns = data._ontns;
thisObj._ns = data._ns;
if (data.archiveType !== null) {
thisObj.archiveType = new ArchiveType(data.archiveType.id, data.archiveType.label);
}
if (data.collectionName !== null) {
thisObj.collectionName = data.collectionName;
}
if (data.collectionYear !== null) {
thisObj.collectionYear = data.collectionYear;
}
if (data.compilationNest !== null) {
thisObj.compilationNest = data.compilationNest;
}
if (data.dataSource !== null) {
thisObj.dataSource = data.dataSource;
}
if (data.datasetId !== null) {
thisObj.datasetId = data.datasetId;
}
if (data.location !== null) {
thisObj.location = Location.fromDictionary(data.location);
}
if (data.name !== null) {
thisObj.name = data.name;
}
if (data.notes !== null) {
thisObj.notes = data.notes;
}
if (data.originalDataUrl !== null) {
thisObj.originalDataUrl = data.originalDataUrl;
}
if (data.spreadsheetLink !== null) {
thisObj.spreadsheetLink = data.spreadsheetLink;
}
if (data.version !== null) {
thisObj.version = data.version;
}
thisObj.changeLogs = [];
for (const value of data.changeLogs || []) {
thisObj.changeLogs.push(ChangeLog.fromDictionary(value));
}
thisObj.chronData = [];
for (const value of data.chronData || []) {
thisObj.chronData.push(ChronData.fromDictionary(value));
}
thisObj.contributors = [];
for (const value of data.contributors || []) {
thisObj.contributors.push(Person.fromDictionary(value));
}
thisObj.creators = [];
for (const value of data.creators || []) {
thisObj.creators.push(Person.fromDictionary(value));
}
thisObj.fundings = [];
for (const value of data.fundings || []) {
thisObj.fundings.push(Funding.fromDictionary(value));
}
thisObj.investigators = [];
for (const value of data.investigators || []) {
thisObj.investigators.push(Person.fromDictionary(value));
}
thisObj.paleoData = [];
for (const value of data.paleoData || []) {
thisObj.paleoData.push(PaleoData.fromDictionary(value));
}
thisObj.publications = [];
for (const value of data.publications || []) {
thisObj.publications.push(Publication.fromDictionary(value));
}
return thisObj;
}
static fromData(id, data) {
const thisObj = new _Dataset();
thisObj._id = id;
const mydata = data[id];
for (const [key, value] of Object.entries(mydata)) {
if (key === "type") {
for (const val of value) {
thisObj._type = val["@id"];
}
continue;
} else if (key === "hasArchiveType") {
for (const val of value) {
let obj = null;
obj = ArchiveType.fromSynonym(val["@id"].replace(/^.*?#/, ""));
thisObj.archiveType = obj;
}
} else if (key === "hasChangeLog") {
thisObj.changeLogs = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = ChangeLog.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.changeLogs.push(obj);
}
} else if (key === "hasChronData") {
thisObj.chronData = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = ChronData.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.chronData.push(obj);
}
} else if (key === "hasCollectionName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.collectionName = obj;
}
} else if (key === "hasCollectionYear") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.collectionYear = obj;
}
} else if (key === "hasCompilationNest") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.compilationNest = obj;
}
} else if (key === "hasContributor") {
thisObj.contributors = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Person.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.contributors.push(obj);
}
} else if (key === "hasCreator") {
thisObj.creators = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Person.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.creators.push(obj);
}
} else if (key === "hasDataSource") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.dataSource = obj;
}
} else if (key === "hasDatasetId") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.datasetId = obj;
}
} else if (key === "hasFunding") {
thisObj.fundings = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Funding.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.fundings.push(obj);
}
} else if (key === "hasInvestigator") {
thisObj.investigators = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Person.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.investigators.push(obj);
}
} else if (key === "hasLocation") {
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Location.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.location = obj;
}
} else if (key === "hasName") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.name = obj;
}
} else if (key === "hasNotes") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.notes = obj;
}
} else if (key === "hasOriginalDataUrl") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.originalDataUrl = obj;
}
} else if (key === "hasPaleoData") {
thisObj.paleoData = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = PaleoData.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.paleoData.push(obj);
}
} else if (key === "hasPublication") {
thisObj.publications = [];
for (const val of value) {
let obj = null;
if ("@id" in val) {
obj = Publication.fromData(val["@id"], data);
} else {
obj = val["@value"];
}
thisObj.publications.push(obj);
}
} else if (key === "hasSpreadsheetLink") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.spreadsheetLink = obj;
}
} else if (key === "hasVersion") {
for (const val of value) {
let obj = null;
if ("@value" in val) {
obj = val["@value"];
}
thisObj.version = obj;
}
} else {
for (const val of value) {
let obj;
if ("@id" in val) {
obj = data[val["@id"]];
} else if ("@value" in val) {
obj = val["@value"];
}
thisObj._misc[key] = obj;
}
}
}
return thisObj;
}
toData(data = {}) {
data[this._id] = {};
data[this._id]["type"] = [
{
"@id": this._type,
"@type": "uri"
}
];
if (this.archiveType !== null) {
const valueObj = this.archiveType;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasArchiveType"] = [obj];
}
if (this.changeLogs.length > 0) {
data[this._id]["hasChangeLog"] = [];
for (const valueObj of this.changeLogs) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasChangeLog"].push(obj);
}
}
if (this.chronData.length > 0) {
data[this._id]["hasChronData"] = [];
for (const valueObj of this.chronData) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasChronData"].push(obj);
}
}
if (this.collectionName !== null) {
const valueObj = this.collectionName;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCollectionName"] = [obj];
}
if (this.collectionYear !== null) {
const valueObj = this.collectionYear;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCollectionYear"] = [obj];
}
if (this.compilationNest !== null) {
const valueObj = this.compilationNest;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasCompilationNest"] = [obj];
}
if (this.contributors.length > 0) {
data[this._id]["hasContributor"] = [];
for (const valueObj of this.contributors) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasContributor"].push(obj);
}
}
if (this.creators.length > 0) {
data[this._id]["hasCreator"] = [];
for (const valueObj of this.creators) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasCreator"].push(obj);
}
}
if (this.dataSource !== null) {
const valueObj = this.dataSource;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDataSource"] = [obj];
}
if (this.datasetId !== null) {
const valueObj = this.datasetId;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasDatasetId"] = [obj];
}
if (this.fundings.length > 0) {
data[this._id]["hasFunding"] = [];
for (const valueObj of this.fundings) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasFunding"].push(obj);
}
}
if (this.investigators.length > 0) {
data[this._id]["hasInvestigator"] = [];
for (const valueObj of this.investigators) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasInvestigator"].push(obj);
}
}
if (this.location !== null) {
const valueObj = this.location;
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasLocation"] = [obj];
}
if (this.name !== null) {
const valueObj = this.name;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasName"] = [obj];
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasNotes"] = [obj];
}
if (this.originalDataUrl !== null) {
const valueObj = this.originalDataUrl;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasOriginalDataUrl"] = [obj];
}
if (this.paleoData.length > 0) {
data[this._id]["hasPaleoData"] = [];
for (const valueObj of this.paleoData) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasPaleoData"].push(obj);
}
}
if (this.publications.length > 0) {
data[this._id]["hasPublication"] = [];
for (const valueObj of this.publications) {
let obj = null;
if (typeof valueObj === "string") {
obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
} else {
obj = {
"@id": valueObj.getId(),
"@type": "uri"
};
data = valueObj.toData(data);
}
data[this._id]["hasPublication"].push(obj);
}
}
if (this.spreadsheetLink !== null) {
const valueObj = this.spreadsheetLink;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasSpreadsheetLink"] = [obj];
}
if (this.version !== null) {
const valueObj = this.version;
const obj = {
"@value": valueObj,
"@type": "literal",
"@datatype": "http://www.w3.org/2001/XMLSchema#string"
};
data[this._id]["hasVersion"] = [obj];
}
for (const [key, value] of Object.entries(this._misc)) {
data[this._id][key] = [];
let ptype = null;
const tp = typeof value;
if (tp === "number") {
if (Number.isInteger(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#integer";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#float";
}
} else if (tp === "string") {
if (/\d{4}-\d{2}-\d{2}( |T)\d{2}:\d{2}:\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#datetime";
} else if (/\d{4}-\d{2}-\d{2}/.test(value)) {
ptype = "http://www.w3.org/2001/XMLSchema#date";
} else {
ptype = "http://www.w3.org/2001/XMLSchema#string";
}
} else if (tp === "boolean") {
ptype = "http://www.w3.org/2001/XMLSchema#boolean";
}
data[this._id][key].push({
"@value": value,
"@type": "literal",
"@datatype": ptype
});
}
return data;
}
toJson() {
const data = {
"@id": this._id
};
if (this.archiveType !== null) {
const valueObj = this.archiveType;
const obj = valueObj.toJson();
data["archiveType"] = obj;
}
if (this.changeLogs.length > 0) {
data["changelog"] = [];
for (const valueObj of this.changeLogs) {
const obj = valueObj.toJson();
data["changelog"].push(obj);
}
}
if (this.chronData.length > 0) {
data["chronData"] = [];
for (const valueObj of this.chronData) {
const obj = valueObj.toJson();
data["chronData"].push(obj);
}
}
if (this.collectionName !== null) {
const valueObj = this.collectionName;
const obj = valueObj;
data["collectionName"] = obj;
}
if (this.collectionYear !== null) {
const valueObj = this.collectionYear;
const obj = valueObj;
data["collectionYear"] = obj;
}
if (this.compilationNest !== null) {
const valueObj = this.compilationNest;
const obj = valueObj;
data["compilation_nest"] = obj;
}
if (this.contributors.length > 0) {
data["dataContributor"] = [];
for (const valueObj of this.contributors) {
const obj = valueObj.toJson();
data["dataContributor"].push(obj);
}
}
if (this.creators.length > 0) {
data["creator"] = [];
for (const valueObj of this.creators) {
const obj = valueObj.toJson();
data["creator"].push(obj);
}
}
if (this.dataSource !== null) {
const valueObj = this.dataSource;
const obj = valueObj;
data["dataSource"] = obj;
}
if (this.datasetId !== null) {
const valueObj = this.datasetId;
const obj = valueObj;
data["datasetId"] = obj;
}
if (this.fundings.length > 0) {
data["funding"] = [];
for (const valueObj of this.fundings) {
const obj = valueObj.toJson();
data["funding"].push(obj);
}
}
if (this.investigators.length > 0) {
data["investigator"] = [];
for (const valueObj of this.investigators) {
const obj = valueObj.toJson();
data["investigator"].push(obj);
}
}
if (this.location !== null) {
const valueObj = this.location;
const obj = valueObj.toJson();
data["geo"] = obj;
}
if (this.name !== null) {
const valueObj = this.name;
const obj = valueObj;
data["dataSetName"] = obj;
}
if (this.notes !== null) {
const valueObj = this.notes;
const obj = valueObj;
data["notes"] = obj;
}
if (this.originalDataUrl !== null) {
const valueObj = this.originalDataUrl;
const obj = valueObj;
data["originalDataURL"] = obj;
}
if (this.paleoData.length > 0) {
data["paleoData"] = [];
for (const valueObj of this.paleoData) {
const obj = valueObj.toJson();
data["paleoData"].push(obj);
}
}
if (this.publications.length > 0) {
data["pub"] = [];
for (const valueObj of this.publications) {
const obj = valueObj.toJson();
data["pub"].push(obj);
}
}
if (this.spreadsheetLink !== null) {
const valueObj = this.spreadsheetLink;
const obj = valueObj;
data["googleSpreadSheetKey"] = obj;
}
if (this.version !== null) {
const valueObj = this.version;
const obj = valueObj;
data["dataSetVersion"] = obj;
}
for (const [key, value] of Object.entries(this._misc)) {
data[key] = value;
}
return data;
}
static fromJson(data) {
const thisObj = new _Dataset();
for (const [key, pvalue] of Object.entries(data)) {
if (key === "@id") {
thisObj._id = pvalue;
continue;
}
if (key === "archiveType") {
let obj = null;
let value = pvalue;
obj = ArchiveType.fromSynonym(value.replace(/^.*?#/, ""));
thisObj.archiveType = obj;
continue;
}
if (key === "changelog") {
let obj = null;
thisObj.changeLogs = [];
for (const value of pvalue) {
obj = ChangeLog.fromJson(value);
thisObj.changeLogs.push(obj);
}
continue;
}
if (key === "chronData") {
let obj = null;
thisObj.chronData = [];
for (const value of pvalue) {
obj = ChronData.fromJson(value);
thisObj.chronData.push(obj);
}
continue;
}
if (key === "collectionName") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.collectionName = obj;
continue;
}
if (key === "collectionYear") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.collectionYear = obj;
continue;
}
if (key === "compilation_nest") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.compilationNest = obj;
continue;
}
if (key === "creator") {
let obj = null;
thisObj.creators = [];
for (const value of pvalue) {
obj = Person.fromJson(value);
thisObj.creators.push(obj);
}
continue;
}
if (key === "dataContributor") {
let obj = null;
thisObj.contributors = [];
for (const value of pvalue) {
obj = Person.fromJson(value);
thisObj.contributors.push(obj);
}
continue;
}
if (key === "dataSetName") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.name = obj;
continue;
}
if (key === "dataSetVersion") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.version = obj;
continue;
}
if (key === "dataSource") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.dataSource = obj;
continue;
}
if (key === "datasetId") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.datasetId = obj;
continue;
}
if (key === "funding") {
let obj = null;
thisObj.fundings = [];
for (const value of pvalue) {
obj = Funding.fromJson(value);
thisObj.fundings.push(obj);
}
continue;
}
if (key === "geo") {
let obj = null;
let value = pvalue;
obj = Location.fromJson(value);
thisObj.location = obj;
continue;
}
if (key === "googleSpreadSheetKey") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.spreadsheetLink = obj;
continue;
}
if (key === "investigator") {
let obj = null;
thisObj.investigators = [];
for (const value of pvalue) {
obj = Person.fromJson(value);
thisObj.investigators.push(obj);
}
continue;
}
if (key === "notes") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.notes = obj;
continue;
}
if (key === "originalDataURL") {
let obj = null;
let value = pvalue;
obj = value;
thisObj.originalDataUrl = obj;
continue;
}
if (key === "paleoData") {
let obj = null;
thisObj.paleoData = [];
for (const value of pvalue) {
obj = PaleoData.fromJson(value);
thisObj.paleoData.push(obj);
}
continue;
}
if (key === "pub") {
let obj = null;
thisObj.publications = [];
for (const value of pvalue) {
obj = Publication.fromJson(value);
thisObj.publications.push(obj);
}
continue;
}
thisObj._misc[key] = pvalue;
}
return thisObj;
}
setNonStandardProperty(key, value) {
this._misc[key] = value;
}
getNonStandardProperty(key) {
return this._misc[key];
}
getAllNonStandardProperties() {
return this._misc;
}
addNonStandardProperty(key, value) {
if (!(key in this._misc)) {
this._misc[key] = [];
}
this._misc[key].push(value);
}
getArchiveType() {
return this.archiveType;
}
setArchiveType(archiveType) {
this.archiveType = archiveType;
}
getChangeLogs() {
return this.changeLogs;
}
setChangeLogs(changeLogs) {
this.changeLogs = changeLogs;
}
addChangeLog(changeLogs) {
this.changeLogs.push(changeLogs);
}
getChronData() {
return this.chronData;
}
setChronData(chronData) {
this.chronData = chronData;
}
addChronData(chronData) {
this.chronData.push(chronData);
}
getCollectionName() {
return this.collectionName;
}
setCollectionName(collectionName) {
this.collectionName = collectionName;
}
getCollectionYear() {
return this.collectionYear;
}
setCollectionYear(collectionYear) {
this.collectionYear = collectionYear;
}
getCompilationNest() {
return this.compilationNest;
}
setCompilationNest(compilationNest) {
this.compilationNest = compilationNest;
}
getContributors() {
return this.contributors;
}
setContributors(contributors) {
this.contributors = contributors;
}
addContributor(contributors) {
this.contributors.push(contributors);
}
getCreators() {
return this.creators;
}
setCreators(creators) {
this.creators = creators;
}
addCreator(creators) {
this.creators.push(creators);
}
getDataSource() {
return this.dataSource;
}
setDataSource(dataSource) {
this.dataSource = dataSource;
}
getDatasetId() {
return this.datasetId;
}
setDatasetId(datasetId) {
this.datasetId = datasetId;
}
getFundings() {
return this.fundings;
}
setFundings(fundings) {
this.fundings = fundings;
}
addFunding(fundings) {
this.fundings.push(fundings);
}
getInvestigators() {
return this.investigators;
}
setInvestigators(investigators) {
this.investigators = investigators;
}
addInvestigator(investigators) {
this.investigators.push(investigators);
}
getLocation() {
return this.location;
}
setLocation(location) {
this.location = location;
}
getName() {
return this.name;
}
setName(name) {
this.name = name;
this._id = this._ns + "/" + name;
}
getNotes() {
return this.notes;
}
setNotes(notes) {
this.notes = notes;
}
getOriginalDataUrl() {
return this.originalDataUrl;
}
setOriginalDataUrl(originalDataUrl) {
this.originalDataUrl = originalDataUrl;
}
getPaleoData() {
return this.paleoData;
}
setPaleoData(paleoData) {
this.paleoData = paleoData;
}
addPaleoData(paleoData) {
this.paleoData.push(paleoData);
}
getPublications() {
return this.publications;
}
setPublications(publications) {
this.publications = publications;
}
addPublication(publications) {
this.publications.push(publications);
}
getSpreadsheetLink() {
return this.spreadsheetLink;
}
setSpreadsheetLink(spreadsheetLink) {
this.spreadsheetLink = spreadsheetLink;
}
getVersion() {
return this.version;
}
setVersion(version) {
this.version = version;
}
};
// src/utils/rdfToJson.ts
import { DataFactory as DataFactory3, NamedNode as NamedNode2, Literal as Literal2 } from "n3";
var logger6 = Logger.getInstance();
var DF3 = DataFactory3;
var RDFToJSON = class {
/**
* Constructor for RDFToJSON class
* @param id The ID of the root node to start conversion from
* @param store The RDF graph to convert
*/
constructor(id, store) {
this.facts = {};
this.id = id;
this.store = store;
this._getIndexedFacts(id);
logger6.debug("RDFToJSON instance created with id: %s", id);
}
/**
* Get property values from query results
* @param qres Query results from RDF graph
* @returns Object containing property values
*/
_getPropValuesFromQueryResultPO(quads) {
const facts = {};
for (const quad of quads) {
const pname = this._localName(quad.predicate);
if (!facts[pname]) {
facts[pname] = [];
}
const value = {
"@type": quad.object instanceof NamedNode2 ? "uri" : "literal"
};
if (quad.object instanceof NamedNode2) {
value["@id"] = quad.object.value;
} else if (quad.object instanceof Literal2) {
value["@value"] = quad.object.value;
if (quad.object.datatype) {
value["@datatype"] = quad.object.datatype.value;
}
}
facts[pname].push(value);
}
return facts;
}
/**
* Get facts for a given ID from the RDF graph
* @param id The ID to get facts for
* @returns Object containing facts
*/
_getFacts(id) {
const subject = DF3.namedNode(id);
const quads = this.store.getQuads(subject, null, null, null);
return this._getPropValuesFromQueryResultPO(quads);
}
/**
* Get the local name from a URI
* @param url The URI to get the local name from
* @returns The local name
*/
_localName(url) {
const parts = url.value.split("#");
return parts[parts.length - 1];
}
/**
* Get indexed facts for a given ID and its related objects
* Recursively retrieves facts for all related objects
* @param id The ID to get indexed facts for
*/
_getIndexedFacts(id) {
if (id in this.facts) {
return;
}
const facts = this._getFacts(id);
this.facts[id] = facts;
for (const [pname, pfacts] of Object.entries(facts)) {
for (const pfact of pfacts) {
if (pfact["@type"] === "uri" && pname !== "type") {
this._getIndexedFacts(pfact["@id"]);
}
}
}
}
/**
* Convert the RDF graph to JSON string
* @returns JSON string representation of the RDF graph
*/
toJson() {
return JSON.stringify(this.facts, null, 3);
}
};
// src/utils/jsonToRdf.ts
import { DataFactory as DataFactory4 } from "n3";
var logger7 = Logger.getInstance();
var DF4 = DataFactory4;
var JSONToRDF = class {
/**
* Constructor for JSONToRDF class
* @param store The RDF graph to add triples to
* @param graphurl The URL of the graph
*/
constructor(store, graphurl) {
this.store = store;
this.graphurl = graphurl;
logger7.debug("JSONToRDF instance created with graphurl: %s", graphurl);
}
/**
* Load a triple into the RDF graph
* @param subject The subject of the triple
* @param prop The predicate of the triple
* @param value The object of the triple
*/
_loadTripleIntoGraph(subject, prop, value) {
for (const val of value) {
let valitem = null;
if (val["@type"] === "uri" && val["@id"]) {
valitem = DF4.namedNode(val["@id"]);
} else if (val["@type"] === "literal" && val["@value"] !== void 0) {
const dtype = val["@datatype"];
if (dtype) {
const finalDtype = typeof val["@value"] === "string" && !dtype ? "http://www.w3.org/2001/XMLSchema#string" : dtype;
valitem = DF4.literal(val["@value"], DF4.namedNode(finalDtype));
} else {
valitem = DF4.literal(val["@value"]);
}
}
if (valitem) {
const stmt = DF4.quad(
DF4.namedNode(subject),
DF4.namedNode(prop),
valitem,
DF4.namedNode(this.graphurl)
);
this.store.addQuad(stmt);
}
}
}
/**
* Clear all triples from the current graph context
*/
_clearSubgraph() {
const graphUri = DF4.namedNode(this.graphurl);
const quads = this.store.getQuads(null, null, null, graphUri);
for (const quad of quads) {
this.store.removeQuad(quad);
}
}
/**
* Load JSON data into the RDF graph
* @param data The JSON data to load
*/
loadJson(data) {
this._clearSubgraph();
for (const [subject, predicates] of Object.entries(data)) {
for (const [prop, value] of Object.entries(predicates)) {
let propUri;
if (prop === "type") {
propUri = "http://www.w3.org/1999/02/22-rdf-syntax-ns#type";
} else if (prop === "label") {
propUri = "http://www.w3.org/2000/01/rdf-schema#label";
} else {
propUri = ONTONS + prop;
}
this._loadTripleIntoGraph(subject, propUri, value);
}
}
logger7.debug("Loaded %d subjects into RDF graph", Object.keys(data).length);
}
getGraphUrl() {
return this.graphurl;
}
getStore() {
return this.store;
}
};
// src/lipd.ts
import { v4 as uuidv42 } from "uuid";
import * as pako2 from "pako";
var logger8 = Logger.getInstance();
var LiPD = class _LiPD extends RDFGraph {
/**
* The LiPD class describes a LiPD (Linked Paleo Data) object. It contains an RDF Graph which is serialization
* of the LiPD data into an RDF graph containing terms from the LiPD Ontology.
* @param store Optional N3 store to initialize with
* @param quiet Whether to suppress log messages
* @param endpoint Optional SPARQL endpoint URL
* @param auth Optional authentication credentials for the SPARQL endpoint
*/
constructor(store, quiet = false, endpoint, auth) {
super(store, quiet, endpoint, auth);
}
/**
* Load LiPD files from a directory
* @param dirPath Path to the directory containing LiPD files
* @param standardize Whether to standardize the data
* @param addLabels Whether to add labels
*/
async loadFromDir(dirPath, standardize = true, addLabels = true) {
if (!fs4.existsSync(dirPath)) {
throw new Error(`Directory ${dirPath} does not exist`);
}
const lipdFiles = [];
const files = fs4.readdirSync(dirPath);
for (const file of files) {
const filePath = path4.join(dirPath, file);
if (fs4.statSync(filePath).isFile() && file.endsWith(".lpd")) {
lipdFiles.push(filePath);
}
}
await this.load(lipdFiles, standardize, addLabels);
}
/**
* Load LiPD files
* @param lipdFiles Array of paths to LiPD files (can also be URLs)
* @param standardize Whether to standardize the data
* @param addLabels Whether to add labels
*/
async load(lipdFiles, standardize = true, addLabels = true) {
logger8.debug("Loading LiPD files..." + lipdFiles);
const files = Array.isArray(lipdFiles) ? lipdFiles : [lipdFiles];
const numFiles = files.length;
if (!this.quiet) {
logger8.debug(`Loading ${numFiles} LiPD files`);
}
this.store = await multiLoadLipd(this.store, files, true, standardize, addLabels);
logger8.debug("Multi-loading done");
logger8.debug(`Number of quads in LiPD: ${this.store.size}`);
if (!this.quiet) {
logger8.debug("Loaded..");
}
}
/**
* Load LiPD file from a File object (for browser file input)
* @param file File object from HTML5 file input
* @param standardize Whether to standardize the data
* @param addLabels Whether to add labels
*/
async loadFromFile(file, standardize = true, addLabels = true) {
logger8.debug("Loading LiPD file from File object: %s", file.name);
if (!this.quiet) {
logger8.debug(`Loading LiPD file: ${file.name}`);
}
const converter = new LipdToRDF(standardize, addLabels);
await converter.loadFromFile(file);
const quads = converter.store.getQuads(null, null, null, null);
for (const quad of quads) {
if (this.store.getQuads(quad.subject, quad.predicate, quad.object, quad.graph).length === 0) {
this.store.addQuad(quad);
}
}
logger8.debug(`Number of quads in LiPD: ${this.store.size}`);
if (!this.quiet) {
logger8.debug("File loaded successfully");
}
}
/**
* Get LiPD JSON for a dataset
* @param dsname Dataset ID
* @returns LiPD JSON
*/
getLipd(dsname) {
const converter = new RDFToLiPD(this.store);
return converter.convertToJson(dsname);
}
/**
* Create LiPD file for a dataset
* @param dsname Dataset ID
* @param lipdFile Path to LiPD file
* @returns LiPD JSON
*/
async createLipd(dsname, lipdFile) {
const converter = new RDFToLiPD(this.store);
const lipdJson = await converter.convert(dsname, lipdFile);
return this._removeValuesFromVariables(lipdJson);
}
/**
* Get dataset(s) from the graph and returns the popped LiPD object
* @param dsnames Dataset name(s) to get
* @returns LiPD object with the retrieved dataset(s)
*/
get(dsnames) {
const names = Array.isArray(dsnames) ? dsnames : [dsnames];
const dsids = names.map(
(name) => name.startsWith(NSURL) ? name : `${NSURL}/${name}`
);
const ds = super.get(dsids);
return new _LiPD(ds.getStore(), this.quiet, this.getEndpoint(), this.auth);
}
/**
* Pop dataset(s) from the graph and returns the popped LiPD object
* @param dsnames Dataset name(s) to be popped
* @returns LiPD object with the popped dataset(s)
*/
pop(dsnames) {
const names = Array.isArray(dsnames) ? dsnames : [dsnames];
const dsids = names.map(
(name) => name.startsWith(NSURL) ? name : `${NSURL}/${name}`
);
const popped = super.pop(dsids);
return new _LiPD(popped.getStore(), this.quiet, this.getEndpoint(), this.auth);
}
/**
* Remove dataset(s) from the graph
* @param dsnames Dataset name(s) to be removed
*/
remove(dsnames) {
const names = Array.isArray(dsnames) ? dsnames : [dsnames];
const dsids = names.map(
(name) => name.startsWith(NSURL) ? name : `${NSURL}/${name}`
);
super.remove(dsids);
}
/**
* Get all dataset names
* @returns List of dataset names
*/
async getAllDatasetNames() {
const [qres] = await this.query(QUERY_DSNAME);
return qres.map((row) => sanitizeId(row.dsname.value));
}
/**
* Get all dataset IDs
* @returns List of dataset IDs
*/
async getAllDatasetIds() {
const [qres] = await this.query(QUERY_DSID);
return qres.map((row) => sanitizeId(row.dsid));
}
/**
* Get all archive types
* @returns List of archive types
*/
async getAllArchiveTypes() {
const [qres] = await this.query(QUERY_UNIQUE_ARCHIVE_TYPE);
return qres.map((row) => String(row.archiveType));
}
/**
* Get all datasets as Dataset class instances
* @returns List of Dataset objects
*
* @example
* ```typescript
* const lipd = new LiPD();
* lipd.load('path/to/file.lpd').then(() => {
* lipd.getDatasets().then(datasets => {
* // Work with dataset objects
* console.log(datasets[0].getName());
* });
* });
* ```
*/
async getDatasets() {
const datasets = [];
const datasetNames = await this.getAllDatasetNames();
for (const dsname of datasetNames) {
let dsuri = NSURL + "/" + dsname;
let r2j = new RDFToJSON(dsuri, this.store);
let data = JSON.parse(r2j.toJson());
let ds = Dataset.fromData(dsuri, data);
for (const pd of ds.getPaleoData()) {
for (const table of pd.getMeasurementTables()) {
table.variables = table.variables.sort((a, b) => (a.columnNumber ?? 0) - (b.columnNumber ?? 0));
}
}
datasets.push(ds);
}
return datasets;
}
/**
* Loads instances of Dataset class into the LiPD graph
* @param datasets List of Dataset objects
*
* @example
* ```typescript
* // Load datasets from one LiPD object to another
* const lipd1 = new LiPD();
* lipd1.load('path/to/file.lpd').then(() => {
* lipd1.getDatasets().then(datasets => {
* // Modify datasets if needed
*
* // Create a new LiPD instance and load the datasets
* const lipd2 = new LiPD();
* lipd2.loadDatasets(datasets);
* });
* });
* ```
*/
loadDatasets(datasets) {
for (const ds of datasets) {
this._fixMissingIds(ds);
const dsuri = ds.getId() || NSURL + "/" + ds.getName();
const j2r = new JSONToRDF(this.store, dsuri);
j2r.loadJson(ds.toData());
}
}
/**
* Generate a unique ID with a given prefix
* @param prefix Prefix for the ID (default: 'PYD')
* @returns Unique formatted ID
* @private
*/
_generateUniqueId(prefix = "PYD") {
const randomUuid = uuidv42();
const idStr = randomUuid;
const formattedId = `${prefix}-${idStr.substring(0, 5)}-${idStr.substring(9, 13)}-${idStr.substring(14, 18)}-${idStr.substring(19, 23)}-${idStr.substring(24, 28)}`;
return formattedId;
}
/**
* Fix missing IDs in a dataset
* @param ds Dataset to fix
* @private
*/
_fixMissingIds(ds) {
let pdCounter = 0;
for (const pd of ds.getPaleoData()) {
let tableCounter = 0;
for (const table of pd.getMeasurementTables()) {
if (!table.getFileName()) {
table.setFileName(`paleo${pdCounter}measurement${tableCounter}.csv`);
}
for (const v of table.getVariables()) {
if (!v.getVariableId()) {
v.setVariableId(this._generateUniqueId("TS"));
}
}
tableCounter++;
}
pdCounter++;
}
let chronCounter = 0;
for (const chron of ds.getChronData()) {
let tableCounter = 0;
for (const table of chron.getMeasurementTables()) {
if (!table.getFileName()) {
table.setFileName(`chron${chronCounter}measurement${tableCounter}.csv`);
}
for (const v of table.getVariables()) {
if (!v.getVariableId()) {
v.setVariableId(this._generateUniqueId("TS"));
}
}
tableCounter++;
}
let modelCounter = 0;
for (const model of chron.getModeledBy()) {
let tableCounter2 = 0;
for (const table of model.getEnsembleTables()) {
if (!table.getFileName()) {
table.setFileName(`chron${chronCounter}model${modelCounter}ensemble${tableCounter2}.csv`);
}
for (const v of table.getVariables()) {
if (!v.getVariableId()) {
v.setVariableId(this._generateUniqueId("TS"));
}
}
tableCounter2++;
}
modelCounter++;
}
chronCounter++;
}
}
/**
* Convert the LiPD object to a LiPDSeries object
* @returns LiPDSeries object
*/
toLipdSeries() {
const series = new LiPDSeries();
series.load(this);
return series;
}
/**
* Filter datasets by name
* @param datasetName Dataset name to filter by
* @returns New LiPD object with filtered datasets
*/
async filterByDatasetName(datasetName) {
const query = QUERY_FILTER_DATASET_NAME.replace("[datasetName]", datasetName);
const [qres] = await this.query(query);
const dsnames = qres.map((row) => sanitizeId(row.dsname));
return this.get(dsnames);
}
/**
* Filter datasets by compilation name
* @param compilationName Compilation name to filter by
* @returns New LiPD object with filtered datasets
*/
async filterByCompilationName(compilationName) {
const query = QUERY_FILTER_COMPILATION.replace("[compilationName]", compilationName);
const [qres] = await this.query(query);
const dsnames = qres.map((row) => sanitizeId(row.dataSetName));
return this.get(dsnames);
}
async serialize(type = "turtle") {
return await serializeStore(this.store, type, logger8);
}
/**
* Filter datasets by time interval
* @param timeBound Minimum and maximum age values
* @param timeBoundType Type of querying to perform
* @param recordLength Minimum record length
* @returns New LiPD object with filtered datasets
*/
async filterByTime(timeBound, timeBoundType = "any", recordLength) {
if (timeBound[0] > timeBound[1]) {
timeBound = [timeBound[1], timeBound[0]];
}
const query = QUERY_FILTER_TIME;
const [, df] = await this.query(query);
let filterDf;
if (recordLength === void 0) {
switch (timeBoundType) {
case "entirely":
filterDf = df.filter(
(row) => row.minage <= timeBound[0] && row.maxage >= timeBound[1]
);
break;
case "entire":
filterDf = df.filter(
(row) => row.minage >= timeBound[0] && row.maxage <= timeBound[1]
);
break;
case "any":
filterDf = df.filter((row) => row.minage <= timeBound[1]);
break;
default:
throw new Error("timeBoundType must be in ['any', 'entirely', 'entire']");
}
} else {
switch (timeBoundType) {
case "entirely":
filterDf = df.filter(
(row) => row.minage <= timeBound[0] && row.maxage >= timeBound[1] && Math.abs(row.maxage - row.minage) >= recordLength
);
break;
case "entire":
filterDf = df.filter(
(row) => row.minage >= timeBound[0] && row.maxage <= timeBound[1] && Math.abs(row.maxage - row.minage) >= recordLength
);
break;
case "any":
filterDf = df.filter(
(row) => row.minage <= timeBound[1] && Math.abs(row.minage - timeBound[1]) >= recordLength
);
break;
default:
throw new Error("timeBoundType must be in ['any', 'entirely', 'entire']");
}
}
const dsnames = filterDf.map((row) => row.dsname);
return this.get(dsnames);
}
/**
* Updates local LiPD Graph for datasets to remote endpoint
* @param dsnames Array of dataset names
* @param batchSize Number of quads to include in each update batch (default: 100)
*
* @example
* ```typescript
* // Update datasets to remote endpoint
* const lipd = new LiPD();
* lipd.setEndpoint("https://linkedearth.graphdb.mint.isi.edu/repositories/LiPDVerse-dynamic");
* // Set authentication if needed
* lipd.setAuth({ username: "user", password: "pass" });
* lipd.updateRemoteDatasets(["MyDataset1", "MyDataset2"], 100);
* ```
*/
async updateRemoteDatasets(dsnames, batchSize = 100) {
if (!this.endpoint) {
throw new Error("No remote endpoint set");
}
const namesList = Array.isArray(dsnames) ? dsnames : [dsnames];
if (namesList.length === 0) {
throw new Error("No dataset names provided");
}
for (const dsname of namesList) {
const graphUri = `${NSURL}/${dsname}`;
const backupGraphUri = `${graphUri}_backup_${Date.now()}`;
try {
this.setRemote(true);
const graphExists = await this.askQuery(`ASK WHERE { GRAPH <${graphUri}> { ?s ?p ?o } }`);
if (graphExists) {
await this.updateQuery(`COPY GRAPH <${graphUri}> TO GRAPH <${backupGraphUri}>`);
}
this.setRemote(false);
const quads = this.store.getQuads(null, null, null, graphUri);
if (quads.length === 0) {
logger8.debug(`No quads found for dataset: ${dsname}`);
continue;
}
const nqData = await this._quadsToNQuads(quads);
this.setRemote(true);
if (graphExists) {
await this.updateQuery(`CLEAR GRAPH <${graphUri}>`);
}
let body = nqData;
const headers = {
"Content-Type": "application/n-quads"
};
if (nqData.length > 1e4) {
body = pako2.gzip(nqData);
headers["Content-Encoding"] = "gzip";
}
if (this.auth) {
const authStr = Buffer.from(`${this.auth.username}:${this.auth.password}`).toString("base64");
headers["Authorization"] = `Basic ${authStr}`;
}
const statementsEndpoint = this._getStatementsEndpoint();
const url = `${statementsEndpoint}?context=${encodeURIComponent(`<${graphUri}>`)}`;
const response = await fetch(url, {
method: "POST",
headers,
body
});
if (!response.ok) {
const errorText = await response.text();
throw new Error(`Error from bulk loader (${response.status}): ${errorText}`);
}
if (graphExists) {
await this.updateQuery(`DROP GRAPH <${backupGraphUri}>`);
}
} catch (err) {
logger8.error(`Failed to update remote graph for ${dsname}: ${err}`);
try {
this.setRemote(true);
const backupExists = await this.askQuery(`ASK WHERE { GRAPH <${backupGraphUri}> { ?s ?p ?o } }`);
if (backupExists) {
await this.updateQuery(`COPY GRAPH <${backupGraphUri}> TO GRAPH <${graphUri}>`);
await this.updateQuery(`DROP GRAPH <${backupGraphUri}>`);
}
} catch (restoreErr) {
logger8.error(`Failed to restore backup for ${dsname}: ${restoreErr}`);
}
throw err;
} finally {
this.setRemote(false);
}
}
logger8.debug("Remote datasets updated successfully");
}
/**
* Convert an array of quads to an N-Quads string
*/
async _quadsToNQuads(quads) {
return new Promise((resolve, reject) => {
const writer = new Writer2({ format: "N-Quads" });
writer.addQuads(quads);
writer.end((err, result) => {
if (err) {
reject(err);
} else {
resolve(result);
}
});
});
}
/**
* Derive the /statements endpoint from this.endpoint
*/
_getStatementsEndpoint() {
if (!this.endpoint) {
throw new Error("Endpoint not set");
}
return this.endpoint.replace(/\/repositories\/([^/]+)$/, "/repositories/$1/statements");
}
/**
* Builds an INSERT DATA query for a batch of quads
* @param quads Array of quads to insert
* @param graphUri URI of the graph to insert into
* @returns SPARQL INSERT query
* @private
*/
_buildInsertQuery(quads, graphUri) {
if (quads.length > 0) {
console.log("Sample quad structure:", JSON.stringify(quads[0], null, 2));
}
let insertQuery = `INSERT DATA { GRAPH <${graphUri}> {
`;
for (const quad of quads) {
let subject, predicate, object;
if (quad.subject.termType === "NamedNode") {
subject = `<${quad.subject.value}>`;
} else {
subject = `_:${quad.subject.value}`;
}
predicate = `<${quad.predicate.value}>`;
if (quad.object.termType === "NamedNode") {
object = `<${quad.object.value}>`;
} else if (quad.object.termType === "BlankNode") {
object = `_:${quad.object.value}`;
} else {
let literalValue = quad.object.value.toString().replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/\t/g, "\\t");
object = `"${literalValue}"`;
if (quad.object.language) {
object += `@${quad.object.language}`;
} else if (quad.object.datatype && quad.object.datatype.value !== "http://www.w3.org/2001/XMLSchema#string") {
object += `^^<${quad.object.datatype.value}>`;
}
}
insertQuery += ` ${subject} ${predicate} ${object} .
`;
}
insertQuery += "}}";
const previewLength = Math.min(insertQuery.length, 200);
console.log(`Generated query preview (${insertQuery.length} chars): ${insertQuery.substring(0, previewLength)}${insertQuery.length > previewLength ? "..." : ""}`);
return insertQuery;
}
/**
* Loads remote datasets into cache if a remote endpoint is set
* @param dsnames Array of dataset names
* @param loadDefaultGraph Whether to load the default graph (default: true)
*
* @example
* ```typescript
* // Fetch LiPD data from remote RDF Graph
* const lipd = new LiPD();
* lipd.setEndpoint("https://linkedearth.graphdb.mint.isi.edu/repositories/LiPDVerse-dynamic");
* // Set authentication if needed
* lipd.setAuth({ username: "user", password: "pass" });
* lipd.loadRemoteDatasets(["Ocn-MadangLagoonPapuaNewGuinea.Kuhnert.2001", "MD98_2181.Stott.2007"]);
* lipd.getAllDatasetNames().then(names => console.log(names));
* ```
*/
async loadRemoteDatasets(dsnames, loadDefaultGraph = true) {
if (!this.endpoint) {
throw new Error("No remote endpoint");
}
const namesList = Array.isArray(dsnames) ? dsnames : [dsnames];
if (namesList.length === 0) {
throw new Error("No dataset names to cache");
}
let dsnamestr = namesList.map((dsname) => `<${NSURL}/${dsname}>`).join(" ");
if (loadDefaultGraph) {
dsnamestr += ` <${DEFAULT_GRAPH_URI}>`;
}
console.log("Caching datasets from remote endpoint..");
this.setRemote(true);
const [qres] = await this.query(`SELECT ?s ?p ?o ?g WHERE { GRAPH ?g { ?s ?p ?o } VALUES ?g { ${dsnamestr} } }`);
this.setRemote(false);
for (const row of qres) {
this.store.addQuad(row.s, row.p, row.o, row.g);
}
console.log("Done..");
}
/**
* Build a full LiPD (BagIt) archive entirely in-memory – browser-safe
* @param dsname Dataset name to export
* @param opts Options { includeCsv?: boolean }
* @returns Blob in browsers, Buffer in Node
*/
async createLipdBrowser(dsname, opts = {}) {
const includeCsv = opts.includeCsv !== false;
const originalLipdJson = this.getLipd(dsname);
if (!originalLipdJson) {
throw new Error(`Dataset ${dsname} not found in LiPD graph`);
}
const csvMap = includeCsv ? this._generateCsvData(originalLipdJson) : {};
const lipdJson = this._removeValuesFromVariables(originalLipdJson);
const zip = new JSZip2();
const dataFolder = zip.folder("data");
dataFolder.file("metadata.jsonld", JSON.stringify(lipdJson, null, 2));
for (const [name, csv] of Object.entries(csvMap)) {
dataFolder.file(name, csv);
}
const bagitTxt = "BagIt-Version: 1.0\nTag-File-Character-Encoding: UTF-8";
zip.file("bagit.txt", bagitTxt);
const bagInfoTxt = `Bagging-Date: ${(/* @__PURE__ */ new Date()).toISOString()}
Bag-Software-Agent: lipdjs`;
zip.file("bag-info.txt", bagInfoTxt);
const manifestLines = [];
const encoder = new TextEncoder();
const computeHash = async (content) => {
if (isBrowser() && typeof crypto !== "undefined" && crypto.subtle) {
const buffer = encoder.encode(content);
const digest = await crypto.subtle.digest("SHA-256", buffer);
return Array.from(new Uint8Array(digest)).map((b) => b.toString(16).padStart(2, "0")).join("");
} else {
const { createHash: createHash2 } = await import("crypto");
return createHash2("sha256").update(content).digest("hex");
}
};
manifestLines.push(`${await computeHash(JSON.stringify(lipdJson, null, 2))} data/metadata.jsonld`);
for (const [name, csv] of Object.entries(csvMap)) {
manifestLines.push(`${await computeHash(csv)} data/${name}`);
}
zip.file("manifest-sha256.txt", manifestLines.join("\n"));
const zipOptions = {
compression: "DEFLATE",
compressionOptions: { level: 6 }
// 1=fastest, 9=best compression, 6=balanced
};
if (isBrowser()) {
return await zip.generateAsync({ type: "blob", ...zipOptions });
}
return await zip.generateAsync({ type: "uint8array", ...zipOptions });
}
// ---------------------------------------------------------------------
// Helper: generate CSV text for all tables in a LiPD JSON object
// ---------------------------------------------------------------------
_generateCsvData(lipd) {
const csvs = {};
const tableKeys = [
["paleoData", "measurementTable"],
["chronData", "measurementTable"]
];
for (const [sectionKey, tableKey] of tableKeys) {
const section = lipd[sectionKey];
if (!Array.isArray(section))
continue;
for (const secItem of section) {
if (Array.isArray(secItem[tableKey])) {
for (const table of secItem[tableKey]) {
const { filename, columns } = table;
if (!filename || !columns)
continue;
const csvContent = this._tableToCsv(columns);
csvs[filename] = csvContent;
}
}
if (Array.isArray(secItem.model)) {
for (const model of secItem.model) {
const subTables = ["ensembleTable", "summaryTable", "distributionTable"];
for (const key of subTables) {
if (Array.isArray(model[key])) {
for (const table of model[key]) {
const { filename, columns } = table;
if (!filename || !columns)
continue;
csvs[filename] = this._tableToCsv(columns);
}
}
}
}
}
}
}
return csvs;
}
_tableToCsv(columns) {
if (!Array.isArray(columns) || columns.length === 0)
return "";
const maxLen = Math.max(...columns.map((c) => c.values?.length ?? 0));
const rows = [];
for (let i = 0; i < maxLen; i++) {
const row = columns.map((col) => col.values?.[i] ?? "");
rows.push(row.join(","));
}
return rows.join("\n");
}
/**
* Remove values from variables in a LiPD JSON object.
* This is necessary because values are typically stored in CSV files,
* not directly in the metadata.jsonld file.
* @param lipdJson The LiPD JSON object to process.
* @returns A new LiPD JSON object with values removed from variables.
* @private
*/
_removeValuesFromVariables(lipdJson) {
if (typeof lipdJson !== "object" || lipdJson === null) {
return lipdJson;
}
if (Array.isArray(lipdJson)) {
return lipdJson.map((item) => this._removeValuesFromVariables(item));
}
if (typeof lipdJson === "object") {
const newObj = {};
for (const key in lipdJson) {
if (Object.prototype.hasOwnProperty.call(lipdJson, key)) {
if (key === "values" && this._isVariableObject(lipdJson)) {
continue;
}
newObj[key] = this._removeValuesFromVariables(lipdJson[key]);
}
}
return newObj;
}
return lipdJson;
}
/**
* Helper to check if an object looks like a variable object.
* Variables typically have properties like variableId, variableName, values, units, etc.
* @param obj The object to check.
* @returns True if it looks like a variable object, false otherwise.
* @private
*/
_isVariableObject(obj) {
if (!obj || typeof obj !== "object") {
return false;
}
const variableProps = ["variableId", "variableName", "TSid", "number", "columnNumber"];
const hasVariableProperty = variableProps.some((prop) => prop in obj);
return "values" in obj && hasVariableProperty;
}
};
export {
ArchiveType,
ArchiveTypeConstants,
Calibration,
Change,
ChangeLog,
ChronData,
Compilation,
DataTable,
Dataset,
Funding,
Interpretation,
InterpretationSeasonality,
InterpretationSeasonalityConstants,
InterpretationVariable,
InterpretationVariableConstants,
LiPD,
LiPDSeries,
Location,
LogLevel,
Logger,
Model,
PaleoData,
PaleoProxy,
PaleoProxyConstants,
PaleoProxyGeneral,
PaleoProxyGeneralConstants,
PaleoUnit,
PaleoUnitConstants,
PaleoVariable,
PaleoVariableConstants,
Person,
PhysicalSample,
Publication,
RSYNONYMS,
Resolution,
SCHEMA,
SYNONYMS,
Variable
};
//# sourceMappingURL=index.mjs.map