Translating nanoEHS data using EPA NaKnowBase and... | F1000Research "use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(){var t=function(){var t,e,o=[],n=window,r=n;for(;r;){try{if(r.frames.__tcfapiLocator){t=r;break}}catch(t){}if(r===n.top)break;r=r.parent}t||(!function t(){var e=n.document,o=!!n.frames.__tcfapiLocator;if(!o)if(e.body){var r=e.createElement("iframe");r.style.cssText="display:none",r.name="__tcfapiLocator",e.body.appendChild(r)}else setTimeout(t,5);return!o}(),n.__tcfapi=function(){for(var t=arguments.length,n=new Array(t),r=0;r 3&&2===parseInt(n[1],10)&&"boolean"==typeof n[3]&&(e=n[3],"function"==typeof n[2]&&n[2]("set",!0)):"ping"===n[0]?"function"==typeof n[2]&&n[2]({gdprApplies:e,cmpLoaded:!1,cmpStatus:"stub"}):o.push(n)},n.addEventListener("message",(function(t){var e="string"==typeof t.data,o={};if(e)try{o=JSON.parse(t.data)}catch(t){}else o=t.data;var n="object"===_typeof(o)&&null!==o?o.__tcfapiCall:null;n&&window.__tcfapi(n.command,n.version,(function(o,r){var a={__tcfapiReturn:{returnValue:o,success:r,callId:n.callId}};t&&t.source&&t.source.postMessage&&t.source.postMessage(e?JSON.stringify(a):a,"*")}),n.parameter)}),!1))};"undefined"!=typeof module?module.exports=t:t()}(); dataLayer = dataLayer || []; // Standard GTM initialization - Google Consent Mode handles consent automatically (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl+ '>m_auth=hzk0Vc3qFsQYhCrIoHz68A>m_preview=env-1>m_cookies_win=x';f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-MWFK8L5J'); ;window.NREUM||(NREUM={});NREUM.init={distributed_tracing:{enabled:true},privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]}}; ;NREUM.loader_config={accountID:"438030",trustKey:"438030",agentID:"772317073",licenseKey:"97f8f67f26",applicationID:"772317073"} ;NREUM.info={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",licenseKey:"97f8f67f26",applicationID:"772317073",sa:1} ;/*! For license information please see nr-loader-spa-1.236.0.min.js.LICENSE.txt */ (()=>{"use strict";var e,t,r={5763:(e,t,r)=>{r.d(t,{P_:()=>l,Mt:()=>g,C5:()=>s,DL:()=>v,OP:()=>T,lF:()=>D,Yu:()=>y,Dg:()=>h,CX:()=>c,GE:()=>b,sU:()=>_});var n=r(8632),i=r(9567);const o={beacon:n.ce.beacon,errorBeacon:n.ce.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.D)(t,o),(0,n.Qy)(e,a[e],"info")}var u=r(7056);const d=()=>{const e={blockSelector:"[data-nr-block]",maskInputOptions:{password:!0}};return{allow_bfcache:!0,privacy:{cookies_enabled:!0},ajax:{deny_list:void 0,enabled:!0,harvestTimeSeconds:10},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},session:{domain:void 0,expiresMs:u.oD,inactiveMs:u.Hb},ssl:void 0,obfuscate:void 0,jserrors:{enabled:!0,harvestTimeSeconds:10},metrics:{enabled:!0},page_action:{enabled:!0,harvestTimeSeconds:30},page_view_event:{enabled:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,long_task:!1},session_trace:{enabled:!0,harvestTimeSeconds:10},harvest:{tooManyRequestsDelay:60},session_replay:{enabled:!1,harvestTimeSeconds:60,sampleRate:.1,errorSampleRate:.1,maskTextSelector:"*",maskAllInputs:!0,get blockClass(){return"nr-block"},get ignoreClass(){return"nr-ignore"},get maskTextClass(){return"nr-mask"},get blockSelector(){return e.blockSelector},set blockSelector(t){e.blockSelector+=",".concat(t)},get maskInputOptions(){return e.maskInputOptions},set maskInputOptions(t){e.maskInputOptions={...t,password:!0}}},spa:{enabled:!0,harvestTimeSeconds:10}}},f={};function l(e){if(!e)throw new Error("All configuration objects require an agent identifier!");if(!f[e])throw new Error("Configuration for ".concat(e," was never set"));return f[e]}function h(e,t){if(!e)throw new Error("All configuration objects require an agent identifier!");f[e]=(0,i.D)(t,d()),(0,n.Qy)(e,f[e],"config")}function g(e,t){if(!e)throw new Error("All configuration objects require an agent identifier!");var r=l(e);if(r){for(var n=t.split("."),i=0;i {r.d(t,{D:()=>i});var n=r(50);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.Z)("Setting a Configurable requires an object as input");if(!t||"object"!=typeof t)return(0,n.Z)("Setting a Configurable requires a model to set its initial properties");const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.Z)("An error occurred while setting a property of a Configurable",e)}return r}catch(e){(0,n.Z)("An error occured while setting a Configurable",e)}}},6818:(e,t,r)=>{r.d(t,{Re:()=>i,gF:()=>o,q4:()=>n});const n="1.236.0",i="PROD",o="CDN"},385:(e,t,r)=>{r.d(t,{FN:()=>a,IF:()=>u,Nk:()=>f,Tt:()=>s,_A:()=>o,il:()=>n,pL:()=>c,v6:()=>i,w1:()=>d});const n="undefined"!=typeof window&&!!window.document,i="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),o=n?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),a=""+o?.location,s=/iPad|iPhone|iPod/.test(navigator.userAgent),c=s&&"undefined"==typeof SharedWorker,u=(()=>{const e=navigator.userAgent.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),d=Boolean(n&&window.document.documentMode),f=!!navigator.sendBeacon},1117:(e,t,r)=>{r.d(t,{w:()=>o});var n=r(50);const i={agentIdentifier:"",ee:void 0};class o{constructor(e){try{if("object"!=typeof e)return(0,n.Z)("shared context requires an object as input");this.sharedContext={},Object.assign(this.sharedContext,i),Object.entries(e).forEach((e=>{let[t,r]=e;Object.keys(i).includes(t)&&(this.sharedContext[t]=r)}))}catch(e){(0,n.Z)("An error occured while setting SharedContext",e)}}}},8e3:(e,t,r)=>{r.d(t,{L:()=>d,R:()=>c});var n=r(2177),i=r(1284),o=r(4322),a=r(3325);const s={};function c(e,t){const r={staged:!1,priority:a.p[t]||0};u(e),s[e].get(t)||s[e].set(t,r)}function u(e){e&&(s[e]||(s[e]=new Map))}function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"feature";if(u(e),!e||!s[e].get(t))return a(t);s[e].get(t).staged=!0;const r=[...s[e]];function a(t){const r=e?n.ee.get(e):n.ee,a=o.X.handlers;if(r.backlog&&a){var s=r.backlog[t],c=a[t];if(c){for(var u=0;s&&u {let[t,r]=e;return r.staged}))&&(r.sort(((e,t)=>e[1].priority-t[1].priority)),r.forEach((e=>{let[t]=e;a(t)})))}function f(e,t){var r=e[1];(0,i.D)(t[r],(function(t,r){var n=e[0];if(r[0]===n){var i=r[1],o=e[3],a=e[2];i.apply(o,a)}}))}},2177:(e,t,r)=>{r.d(t,{c:()=>f,ee:()=>u});var n=r(8632),i=r(2210),o=r(1284),a=r(5763),s="nr@context";let c=(0,n.fP)();var u;function d(){}function f(e){return(0,i.X)(e,s,l)}function l(){return new d}function h(){u.aborted=!0,u.backlog={}}c.ee?u=c.ee:(u=function e(t,r){var n={},c={},f={},g=!1;try{g=16===r.length&&(0,a.OP)(r).isolatedBacklog}catch(e){}var p={on:b,addEventListener:b,removeEventListener:y,emit:v,get:x,listeners:w,context:m,buffer:A,abort:h,aborted:!1,isBuffering:E,debugId:r,backlog:g?{}:t&&"object"==typeof t.backlog?t.backlog:{}};return p;function m(e){return e&&e instanceof d?e:e?(0,i.X)(e,s,l):l()}function v(e,r,n,i,o){if(!1!==o&&(o=!0),!u.aborted||i){t&&o&&t.emit(e,r,n);for(var a=m(n),s=w(e),d=s.length,f=0;fn,p:()=>i});var n=r(2177).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},4322:(e,t,r)=>{r.d(t,{X:()=>o});var n=r(5546);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.E,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.E);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3239:(e,t,r)=>{r.d(t,{bP:()=>s,iz:()=>c,m$:()=>a});var n=r(385);let i=!1,o=!1;try{const e={get passive(){return i=!0,!1},get signal(){return o=!0,!1}};n._A.addEventListener("test",null,e),n._A.removeEventListener("test",null,e)}catch(e){}function a(e,t){return i||o?{capture:!!e,passive:i,signal:t}:!!e}function s(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;window.addEventListener(e,t,a(r,n))}function c(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3?arguments[3]:void 0;document.addEventListener(e,t,a(r,n))}},4402:(e,t,r)=>{r.d(t,{Ht:()=>u,M:()=>c,Rl:()=>a,ky:()=>s});var n=r(385);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n._A?.crypto||n._A?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(31))),i.split("").map((e=>"x"===e?o(t,++r).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n._A?.crypto||n._A?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(31)));const a=[];for(var s=0;s {r.d(t,{Bq:()=>n,Hb:()=>o,oD:()=>i});const n="NRBA",i=144e5,o=18e5},7894:(e,t,r)=>{function n(){return Math.round(performance.now())}r.d(t,{z:()=>n})},7243:(e,t,r)=>{r.d(t,{e:()=>o});var n=r(385),i={};function o(e){if(e in i)return i[e];if(0===(e||"").indexOf("data:"))return{protocol:"data"};let t;var r=n._A?.location,o={};if(n.il)t=document.createElement("a"),t.href=e;else try{t=new URL(e,r.href)}catch(e){return o}o.port=t.port;var a=t.href.split("://");!o.port&&a[1]&&(o.port=a[1].split("/")[0].split("@").pop().split(":")[1]),o.port&&"0"!==o.port||(o.port="https"===a[0]?"443":"80"),o.hostname=t.hostname||r.hostname,o.pathname=t.pathname,o.protocol=a[0],"/"!==o.pathname.charAt(0)&&(o.pathname="/"+o.pathname);var s=!t.protocol||":"===t.protocol||t.protocol===r.protocol,c=t.hostname===r.hostname&&t.port===r.port;return o.sameOrigin=s&&(!t.hostname||c),"/"===o.pathname&&(i[e]=o),o}},50:(e,t,r)=>{function n(e,t){"function"==typeof console.warn&&(console.warn("New Relic: ".concat(e)),t&&console.warn(t))}r.d(t,{Z:()=>n})},2587:(e,t,r)=>{r.d(t,{N:()=>c,T:()=>u});var n=r(2177),i=r(5546),o=r(8e3),a=r(3325);const s={stn:[a.D.sessionTrace],err:[a.D.jserrors,a.D.metrics],ins:[a.D.pageAction],spa:[a.D.spa],sr:[a.D.sessionReplay,a.D.sessionTrace]};function c(e,t){const r=n.ee.get(t);e&&"object"==typeof e&&(Object.entries(e).forEach((e=>{let[t,n]=e;void 0===u[t]&&(s[t]?s[t].forEach((e=>{n?(0,i.p)("feat-"+t,[],void 0,e,r):(0,i.p)("block-"+t,[],void 0,e,r),(0,i.p)("rumresp-"+t,[Boolean(n)],void 0,e,r)})):n&&(0,i.p)("feat-"+t,[],void 0,void 0,r),u[t]=Boolean(n))})),Object.keys(s).forEach((e=>{void 0===u[e]&&(s[e]?.forEach((t=>(0,i.p)("rumresp-"+e,[!1],void 0,t,r))),u[e]=!1)})),(0,o.L)(t,a.D.pageViewEvent))}const u={}},2210:(e,t,r)=>{r.d(t,{X:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},1284:(e,t,r)=>{r.d(t,{D:()=>n});const n=(e,t)=>Object.entries(e||{}).map((e=>{let[r,n]=e;return t(r,n)}))},4351:(e,t,r)=>{r.d(t,{P:()=>o});var n=r(2177);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}}}},3960:(e,t,r)=>{r.d(t,{K:()=>a,b:()=>o});var n=r(3239);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.bP)("load",e,t)}function a(e){if(i())return e();(0,n.iz)("DOMContentLoaded",e)}},8632:(e,t,r)=>{r.d(t,{EZ:()=>u,Qy:()=>c,ce:()=>o,fP:()=>a,gG:()=>d,mF:()=>s});var n=r(7894),i=r(385);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return i._A.NREUM||(i._A.NREUM={}),void 0===i._A.newrelic&&(i._A.newrelic=i._A.NREUM),i._A.NREUM}function s(){let e=a();return e.o||(e.o={ST:i._A.setTimeout,SI:i._A.setImmediate,CT:i._A.clearTimeout,XHR:i._A.XMLHttpRequest,REQ:i._A.Request,EV:i._A.Event,PR:i._A.Promise,MO:i._A.MutationObserver,FETCH:i._A.fetch}),e}function c(e,t,r){let i=a();const o=i.initializedAgents||{},s=o[e]||{};return Object.keys(s).length||(s.initializedAt={ms:(0,n.z)(),date:new Date}),i.initializedAgents={...o,[e]:{...s,[r]:t}},i}function u(e,t){a()[e]=t}function d(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},7956:(e,t,r)=>{r.d(t,{N:()=>i});var n=r(3239);function i(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0;return void(0,n.iz)("visibilitychange",(function(){if(t)return void("hidden"==document.visibilityState&&e());e(document.visibilityState)}),r,i)}},1214:(e,t,r)=>{r.d(t,{em:()=>v,u5:()=>N,QU:()=>S,_L:()=>I,Gm:()=>L,Lg:()=>M,gy:()=>U,BV:()=>Q,Kf:()=>ee});var n=r(2177);const i="nr@original";var o=Object.prototype.hasOwnProperty,a=!1;function s(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");var a,s,c,u="-"===n.charAt(0);for(c=0;c 2?n-2:0),o=2;o {r(A[T],e,w),r(E[T],e,w)})),r(l._A,"fetch",y),t.on(y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(y+"done",[null,r],n)}else t.emit(y+"done",[e],n)})),t}const O={},j=["pushState","replaceState"];function S(e){const t=function(e){return(e||n.ee).get("history")}(e);return!l.il||O[t.debugId]++||(O[t.debugId]=1,s(t).inPlace(window.history,j,"-")),t}var P=r(3239);const C={},R=["appendChild","insertBefore","replaceChild"];function I(e){const t=function(e){return(e||n.ee).get("jsonp")}(e);if(!l.il||C[t.debugId])return t;C[t.debugId]=!0;var r=s(t),i=/[?&](?:callback|cb)=([^&#]+)/,o=/(.*)\.([^.]+)/,a=/^(\w+)(\.|$)(.*)$/;function c(e,t){var r=e.match(a),n=r[1],i=r[3];return i?c(i,t[n]):t[n]}return r.inPlace(Node.prototype,R,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var n=(a=e.src,s=a.match(i),s?s[1]:null);var a,s;if(!n)return;var u=function(e){var t=e.match(o);if(t&&t.length>=3)return{key:t[2],parent:c(t[1],window)};return{key:e,parent:window}}(n);if("function"!=typeof u.parent[u.key])return;var d={};function f(){t.emit("jsonp-end",[],d),e.removeEventListener("load",f,(0,P.m$)(!1)),e.removeEventListener("error",l,(0,P.m$)(!1))}function l(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",f,(0,P.m$)(!1)),e.removeEventListener("error",l,(0,P.m$)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",f,(0,P.m$)(!1)),e.addEventListener("error",l,(0,P.m$)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}var k=r(5763);const H={};function L(e){const t=function(e){return(e||n.ee).get("mutation")}(e);if(!l.il||H[t.debugId])return t;H[t.debugId]=!0;var r=s(t),i=k.Yu.MO;return i&&(window.MutationObserver=function(e){return this instanceof i?new i(r(e,"fn-")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype),t}const z={};function M(e){const t=function(e){return(e||n.ee).get("promise")}(e);if(z[t.debugId])return t;z[t.debugId]=!0;var r=n.c,o=s(t),a=k.Yu.PR;return a&&function(){function e(r){var n=t.context(),i=o(r,"executor-",n,null,!1);const s=Reflect.construct(a,[i],e);return t.context(s).getCtx=function(){return n},s}l._A.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return a.toString()},Object.setPrototypeOf(e,a),["all","race"].forEach((function(r){const n=a[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=a[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=a.prototype;const n=a.prototype.then;a.prototype.then=function(){var e=this,i=r(e);i.promise=e;for(var a=arguments.length,s=new Array(a),c=0;c e())),t};function m(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}function b(){var e=this,t=r.context(e);e.readyState>3&&!t.resolved&&(t.resolved=!0,r.emit("xhr-resolved",[],e)),i.inPlace(e,f,"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,p),p.prototype=o.prototype,i.inPlace(p.prototype,J,"-xhr-",E),r.on("send-xhr-start",(function(e,t){m(e,t),function(e){h.push(e),a&&(y?y.then(A):u?u(A):(w=-w,x.data=w))}(t)})),r.on("open-xhr-start",m),a){var y=c&&c.resolve();if(!u&&!c){var w=1,x=document.createTextNode(w);new a(A).observe(x,{characterData:!0})}}else t.on("fn-end",(function(e){e[0]&&e[0].type===d||A()}));function A(){for(var e=0;e {r.d(t,{t:()=>n});const n=r(3325).D.ajax},6660:(e,t,r)=>{r.d(t,{A:()=>i,t:()=>n});const n=r(3325).D.jserrors,i="nr@seenError"},3081:(e,t,r)=>{r.d(t,{gF:()=>o,mY:()=>i,t9:()=>n,vz:()=>s,xS:()=>a});const n=r(3325).D.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},4649:(e,t,r)=>{r.d(t,{t:()=>n});const n=r(3325).D.pageAction},7633:(e,t,r)=>{r.d(t,{Dz:()=>i,OJ:()=>a,qw:()=>o,t9:()=>n});const n=r(3325).D.pageViewEvent,i="firstbyte",o="domcontent",a="windowload"},9251:(e,t,r)=>{r.d(t,{t:()=>n});const n=r(3325).D.pageViewTiming},3614:(e,t,r)=>{r.d(t,{BST_RESOURCE:()=>i,END:()=>s,FEATURE_NAME:()=>n,FN_END:()=>u,FN_START:()=>c,PUSH_STATE:()=>d,RESOURCE:()=>o,START:()=>a});const n=r(3325).D.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState"},7836:(e,t,r)=>{r.d(t,{BODY:()=>A,CB_END:()=>E,CB_START:()=>u,END:()=>x,FEATURE_NAME:()=>i,FETCH:()=>_,FETCH_BODY:()=>v,FETCH_DONE:()=>m,FETCH_START:()=>p,FN_END:()=>c,FN_START:()=>s,INTERACTION:()=>l,INTERACTION_API:()=>d,INTERACTION_EVENTS:()=>o,JSONP_END:()=>b,JSONP_NODE:()=>g,JS_TIME:()=>T,MAX_TIMER_BUDGET:()=>a,REMAINING:()=>f,SPA_NODE:()=>h,START:()=>w,originalSetTimeout:()=>y});var n=r(5763);const i=r(3325).D.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",f="remaining",l="interaction",h="spaNode",g="jsonpNode",p="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=n.Yu.ST,w="-start",x="-end",A="-body",E="cb"+x,T="jsTime",_="fetch"},5938:(e,t,r)=>{r.d(t,{W:()=>o});var n=r(5763),i=r(2177);class o{constructor(e,t,r){this.agentIdentifier=e,this.aggregator=t,this.ee=i.ee.get(e,(0,n.OP)(this.agentIdentifier).isolatedBacklog),this.featureName=r,this.blocked=!1}}},9144:(e,t,r)=>{r.d(t,{j:()=>m});var n=r(3325),i=r(5763),o=r(5546),a=r(2177),s=r(7894),c=r(8e3),u=r(3960),d=r(385),f=r(50),l=r(3081),h=r(8632);function g(){const e=(0,h.gG)();["setErrorHandler","finished","addToTrace","inlineHit","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId"].forEach((t=>{e[t]=function(){for(var r=arguments.length,n=new Array(r),i=0;i 1?r-1:0),i=1;i {e.exposed&&e.api[t]&&o.push(e.api[t](...n))})),o.length>1?o:o[0]}(t,...n)}}))}var p=r(2587);function m(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},m=arguments.length>2?arguments[2]:void 0,v=arguments.length>3?arguments[3]:void 0,{init:b,info:y,loader_config:w,runtime:x={loaderType:m},exposed:A=!0}=t;const E=(0,h.gG)();y||(b=E.init,y=E.info,w=E.loader_config),(0,i.Dg)(e,b||{}),(0,i.GE)(e,w||{}),(0,i.sU)(e,x),y.jsAttributes??={},d.v6&&(y.jsAttributes.isWorker=!0),(0,i.CX)(e,y),g();const T=function(e,t){t||(0,c.R)(e,"api");const h={};var g=a.ee.get(e),p=g.get("tracer"),m="api-",v=m+"ixn-";function b(t,r,n,o){const a=(0,i.C5)(e);return null===r?delete a.jsAttributes[t]:(0,i.CX)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),x(m,n,!0,o||null===r?"session":void 0)(t,r)}function y(){}["setErrorHandler","finished","addToTrace","inlineHit","addRelease"].forEach((e=>h[e]=x(m,e,!0,"api"))),h.addPageAction=x(m,"addPageAction",!0,n.D.pageAction),h.setCurrentRouteName=x(m,"routeName",!0,n.D.spa),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,i.OP)(e).customTransaction=(r||"http://custom.transaction")+t,x(m,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("string"==typeof e){if(["string","number"].includes(typeof t)||null===t)return b(e,t,"setCustomAttribute",r);(0,f.Z)("Failed to execute setCustomAttribute.\nNon-null value must be a string or number type, but a type of was provided."))}else(0,f.Z)("Failed to execute setCustomAttribute.\nName must be a string type, but a type of was provided."))},h.setUserId=function(e){if("string"==typeof e||null===e)return b("enduser.id",e,"setUserId",!0);(0,f.Z)("Failed to execute setUserId.\nNon-null value must be a string type, but a type of was provided."))},h.interaction=function(){return(new y).get()};var w=y.prototype={createTracer:function(e,t){var r={},i=this,a="function"==typeof t;return(0,o.p)(v+"tracer",[(0,s.z)(),e,r],i,n.D.spa,g),function(){if(p.emit((a?"":"no-")+"fn-start",[(0,s.z)(),i,a],r),a)try{return t.apply(this,arguments)}catch(e){throw p.emit("fn-err",[arguments,this,"string"==typeof e?new Error(e):e],r),e}finally{p.emit("fn-end",[(0,s.z)()],r)}}}};function x(e,t,r,i){return function(){return(0,o.p)(l.xS,["API/"+t+"/called"],void 0,n.D.metrics,g),i&&(0,o.p)(e+t,[(0,s.z)(),...arguments],r?null:this,i,g),r?void 0:this}}function A(){r.e(439).then(r.bind(r,7438)).then((t=>{let{setAPI:r}=t;r(e),(0,c.L)(e,"api")})).catch((()=>(0,f.Z)("Downloading runtime APIs failed...")))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{w[e]=x(v,e,void 0,n.D.spa)})),h.noticeError=function(e,t){"string"==typeof e&&(e=new Error(e)),(0,o.p)(l.xS,["API/noticeError/called"],void 0,n.D.metrics,g),(0,o.p)("err",[e,(0,s.z)(),!1,t],void 0,n.D.jserrors,g)},d.il?(0,u.b)((()=>A()),!0):A(),h}(e,v);return(0,h.Qy)(e,T,"api"),(0,h.Qy)(e,A,"exposed"),(0,h.EZ)("activatedFeatures",p.T),T}},3325:(e,t,r)=>{r.d(t,{D:()=>n,p:()=>i});const n={ajax:"ajax",jserrors:"jserrors",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.ajax]:5,[n.sessionTrace]:6,[n.pageAction]:7,[n.spa]:8,[n.sessionReplay]:9}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>(({78:"page_action-aggregate",147:"metrics-aggregate",242:"session-manager",317:"jserrors-aggregate",348:"page_view_timing-aggregate",412:"lazy-feature-loader",439:"async-api",538:"recorder",590:"session_replay-aggregate",675:"compressor",733:"session_trace-aggregate",786:"page_view_event-aggregate",873:"spa-aggregate",898:"ajax-aggregate"}[e]||e)+"."+{78:"ac76d497",147:"3dc53903",148:"1a20d5fe",242:"2a64278a",317:"49e41428",348:"bd6de33a",412:"2f55ce66",439:"30bd804e",538:"1b18459f",590:"cf0efb30",675:"ae9f91a8",733:"83105561",786:"06482edd",860:"03a8b7a5",873:"e6b09d52",898:"998ef92b"}[e]+"-1.236.0.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d {s.onerror=s.onload=null,clearTimeout(h);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},h=setTimeout(l.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=l.bind(null,s.onerror),s.onload=l.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.j=364,i.p="https://js-agent.newrelic.com/",(()=>{var e={364:0,953:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u {i.r(o);var e=i(3325),t=i(5763);const r=Object.values(e.D);function n(e){const n={};return r.forEach((r=>{n[r]=function(e,r){return!1!==(0,t.Mt)(r,"".concat(e,".enabled"))}(r,e)})),n}var a=i(9144);var s=i(5546),c=i(385),u=i(8e3),d=i(5938),f=i(3960),l=i(50);class h extends d.W{constructor(e,t,r){let n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];super(e,t,r),this.auto=n,this.abortHandler,this.featAggregate,this.onAggregateImported,n&&(0,u.R)(e,r)}importAggregator(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.featAggregate||!this.auto)return;const r=c.il&&!0===(0,t.Mt)(this.agentIdentifier,"privacy.cookies_enabled");let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let t;try{if(r){const{setupAgentSession:e}=await Promise.all([i.e(860),i.e(242)]).then(i.bind(i,3228));t=e(this.agentIdentifier)}}catch(e){(0,l.Z)("A problem occurred when starting up session manager. This page will not start or extend any session.",e)}try{if(!this.shouldImportAgg(this.featureName,t))return void(0,u.L)(this.agentIdentifier,this.featureName);const{lazyFeatureLoader:r}=await i.e(412).then(i.bind(i,8582)),{Aggregate:o}=await r(this.featureName,"aggregate");this.featAggregate=new o(this.agentIdentifier,this.aggregator,e),n(!0)}catch(e){(0,l.Z)("Downloading and initializing ".concat(this.featureName," failed..."),e),this.abortHandler?.(),n(!1)}};c.il?(0,f.b)((()=>o()),!0):o()}shouldImportAgg(r,n){return r!==e.D.sessionReplay||!1!==(0,t.Mt)(this.agentIdentifier,"session_trace.enabled")&&(!!n?.isNew||!!n?.state.sessionReplay)}}var g=i(7633),p=i(7894);class m extends h{static featureName=g.t9;constructor(r,n){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(super(r,n,g.t9,i),("undefined"==typeof PerformanceNavigationTiming||c.Tt)&&"undefined"!=typeof PerformanceTiming){const n=(0,t.OP)(r);n[g.Dz]=Math.max(Date.now()-n.offset,0),(0,f.K)((()=>n[g.qw]=Math.max((0,p.z)()-n[g.Dz],0))),(0,f.b)((()=>{const t=(0,p.z)();n[g.OJ]=Math.max(t-n[g.Dz],0),(0,s.p)("timing",["load",t],void 0,e.D.pageViewTiming,this.ee)}))}this.importAggregator()}}var v=i(1117),b=i(1284);class y extends v.w{constructor(e){super(e),this.aggregatedData={}}store(e,t,r,n,i){var o=this.getBucket(e,t,r,i);return o.metrics=function(e,t){t||(t={count:0});return t.count+=1,(0,b.D)(e,(function(e,r){t[e]=w(r,t[e])})),t}(n,o.metrics),o}merge(e,t,r,n,i){var o=this.getBucket(e,t,n,i);if(o.metrics){var a=o.metrics;a.count+=r.count,(0,b.D)(r,(function(e,t){if("count"!==e){var n=a[e],i=r[e];i&&!i.c?a[e]=w(i.t,n):a[e]=function(e,t){if(!t)return e;t.c||(t=x(t.t));return t.min=Math.min(e.min,t.min),t.max=Math.max(e.max,t.max),t.t+=e.t,t.sos+=e.sos,t.c+=e.c,t}(i,a[e])}}))}else o.metrics=r}storeMetric(e,t,r,n){var i=this.getBucket(e,t,r);return i.stats=w(n,i.stats),i}getBucket(e,t,r,n){this.aggregatedData[e]||(this.aggregatedData[e]={});var i=this.aggregatedData[e][t];return i||(i=this.aggregatedData[e][t]={params:r||{}},n&&(i.custom=n)),i}get(e,t){return t?this.aggregatedData[e]&&this.aggregatedData[e][t]:this.aggregatedData[e]}take(e){for(var t={},r="",n=!1,i=0;i t.max&&(t.max=e),e 2&&void 0!==arguments[2])||arguments[2];super(e,r,j.t,n),c.il&&((0,t.OP)(e).initHidden=Boolean("hidden"===document.visibilityState),(0,N.N)((()=>(0,s.p)("docHidden",[(0,p.z)()],void 0,j.t,this.ee)),!0),(0,O.bP)("pagehide",(()=>(0,s.p)("winPagehide",[(0,p.z)()],void 0,j.t,this.ee))),this.importAggregator())}}var P=i(3081);class C extends h{static featureName=P.t9;constructor(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(e,t,P.t9,r),this.importAggregator()}}var R,I=i(2210),k=i(1214),H=i(2177),L={};try{R=localStorage.getItem("__nr_flags").split(","),console&&"function"==typeof console.log&&(L.console=!0,-1!==R.indexOf("dev")&&(L.dev=!0),-1!==R.indexOf("nr_dev")&&(L.nrDev=!0))}catch(e){}function z(e){try{L.console&&z(e)}catch(e){}}L.nrDev&&H.ee.on("internal-error",(function(e){z(e.stack)})),L.dev&&H.ee.on("fn-err",(function(e,t,r){z(r.stack)})),L.dev&&(z("NR AGENT IN DEVELOPMENT MODE"),z("flags: "+(0,b.D)(L,(function(e,t){return e})).join(", ")));var M=i(6660);class B extends h{static featureName=M.t;constructor(r,n){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];super(r,n,M.t,i),this.skipNext=0;try{this.removeOnAbort=new AbortController}catch(e){}const o=this;o.ee.on("fn-start",(function(e,t,r){o.abortHandler&&(o.skipNext+=1)})),o.ee.on("fn-err",(function(t,r,n){o.abortHandler&&!n[M.A]&&((0,I.X)(n,M.A,(function(){return!0})),this.thrown=!0,(0,s.p)("err",[n,(0,p.z)()],void 0,e.D.jserrors,o.ee))})),o.ee.on("fn-end",(function(){o.abortHandler&&!this.thrown&&o.skipNext>0&&(o.skipNext-=1)})),o.ee.on("internal-error",(function(t){(0,s.p)("ierr",[t,(0,p.z)(),!0],void 0,e.D.jserrors,o.ee)})),this.origOnerror=c._A.onerror,c._A.onerror=this.onerrorHandler.bind(this),c._A.addEventListener("unhandledrejection",(t=>{const r=function(e){let t="Unhandled Promise Rejection: ";if(e instanceof Error)try{return e.message=t+e.message,e}catch(t){return e}if(void 0===e)return new Error(t);try{return new Error(t+(0,D.P)(e))}catch(e){return new Error(t)}}(t.reason);(0,s.p)("err",[r,(0,p.z)(),!1,{unhandledPromiseRejection:1}],void 0,e.D.jserrors,this.ee)}),(0,O.m$)(!1,this.removeOnAbort?.signal)),(0,k.gy)(this.ee),(0,k.BV)(this.ee),(0,k.em)(this.ee),(0,t.OP)(r).xhrWrappable&&(0,k.Kf)(this.ee),this.abortHandler=this.#e,this.importAggregator()}#e(){this.removeOnAbort?.abort(),this.abortHandler=void 0}onerrorHandler(t,r,n,i,o){"function"==typeof this.origOnerror&&this.origOnerror(...arguments);try{this.skipNext?this.skipNext-=1:(0,s.p)("err",[o||new F(t,r,n),(0,p.z)()],void 0,e.D.jserrors,this.ee)}catch(t){try{(0,s.p)("ierr",[t,(0,p.z)(),!0],void 0,e.D.jserrors,this.ee)}catch(e){}}return!1}}function F(e,t,r){this.message=e||"Uncaught error with no additional information",this.sourceURL=t,this.line=r}let U=1;const q="nr@id";function G(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===c._A?0:(0,I.X)(e,q,(function(){return U++}))}function V(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,D.P)(e).length}catch(e){return}}}var X=i(7243);class W{constructor(e){this.agentIdentifier=e,this.generateTracePayload=this.generateTracePayload.bind(this),this.shouldGenerateTrace=this.shouldGenerateTrace.bind(this)}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var r=(0,t.DL)(this.agentIdentifier);if(!r)return null;var n=(r.accountID||"").toString()||null,i=(r.agentID||"").toString()||null,o=(r.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,_.M)(),s=(0,_.Ht)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof c._A?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,D.P)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var r=!1,n={};if((0,t.Mt)(this.agentIdentifier,"distributed_tracing")&&(n=(0,t.P_)(this.agentIdentifier).distributed_tracing),e.sameOrigin)r=!0;else if(n.allowed_origins instanceof Array)for(var i=0;i 2&&void 0!==arguments[2])||arguments[2];super(r,n,Z.t,i),(0,t.OP)(r).xhrWrappable&&(this.dt=new W(r),this.handler=(e,t,r,n)=>(0,s.p)(e,t,r,n,this.ee),(0,k.u5)(this.ee),(0,k.Kf)(this.ee),function(r,n,i,o){function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=E,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){_(t,e)}),(0,O.m$)(!1)),c.IF||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,O.m$)(!1))}function s(e){this.params={method:e[0]},T(this,e[1]),this.metrics={}}function u(e,n){var i=(0,t.DL)(r);i.xpid&&this.sameOrigin&&n.setRequestHeader("X-NewRelic-ID",i.xpid);var a=o.generateTracePayload(this.parsedOrigin);if(a){var s=!1;a.newrelicHeader&&(n.setRequestHeader("newrelic",a.newrelicHeader),s=!0),a.traceContextParentHeader&&(n.setRequestHeader("traceparent",a.traceContextParentHeader),a.traceContextStateHeader&&n.setRequestHeader("tracestate",a.traceContextStateHeader),s=!0),s&&(this.dt=a)}}function d(e,t){var r=this.metrics,i=e[0],o=this;if(r&&i){var a=V(i);a&&(r.txSize=a)}this.startTime=(0,p.z)(),this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof o.end)&&o.end(t)}catch(e){try{n.emit("internal-error",[e])}catch(e){}}};for(var s=0;s 1?e[1]=i:e.push(i)}else e[0]&&e[0].headers&&s(e[0].headers,n)&&(this.dt=n);function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function x(e,t){this.params={},this.metrics={},this.startTime=(0,p.z)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof Y?r=i.url:c._A?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),T(this,r);var o=(""+(i&&i instanceof Y&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.txSize=V(n.body)||0}function A(t,r){var n;this.endTime=(0,p.z)(),this.params||(this.params={}),this.params.status=r?r.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);var o={txSize:this.txSize,rxSize:n,duration:(0,p.z)()-this.startTime};i("xhr",[this.params,o,this.startTime,this.endTime,"fetch"],this,e.D.ajax)}function E(t){var r=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var o=0;o 2&&void 0!==arguments[2])||arguments[2];super(e,t,we.t,r),this.importAggregator()}}new class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,_.ky)(16);c._A?(this.agentIdentifier=t,this.sharedAggregator=new y({agentIdentifier:this.agentIdentifier}),this.features={},this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(m),Object.assign(this,(0,a.j)(this.agentIdentifier,e,e.loaderType||"agent")),this.start()):(0,l.Z)("Failed to initial the agent. Could not determine the runtime environment.")}get config(){return{info:(0,t.C5)(this.agentIdentifier),init:(0,t.P_)(this.agentIdentifier),loader_config:(0,t.DL)(this.agentIdentifier),runtime:(0,t.OP)(this.agentIdentifier)}}start(){const t="features";try{const r=n(this.agentIdentifier),i=[...this.desiredFeatures];i.sort(((t,r)=>e.p[t.featureName]-e.p[r.featureName])),i.forEach((t=>{if(r[t.featureName]||t.featureName===e.D.pageViewEvent){const n=function(t){switch(t){case e.D.ajax:return[e.D.jserrors];case e.D.sessionTrace:return[e.D.ajax,e.D.pageViewEvent];case e.D.sessionReplay:return[e.D.sessionTrace];case e.D.pageViewTiming:return[e.D.pageViewEvent];default:return[]}}(t.featureName);n.every((e=>r[e]))||(0,l.Z)("".concat(t.featureName," is enabled but one or more dependent features has been disabled (").concat((0,D.P)(n),"). This may cause unintended consequences or missing data...")),this.features[t.featureName]=new t(this.agentIdentifier,this.sharedAggregator)}})),(0,T.Qy)(this.agentIdentifier,this.features,t)}catch(e){(0,l.Z)("Failed to initialize all enabled instrument classes (agent aborted) -",e);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,T.fP)();return delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.[t],delete this.sharedAggregator,r.ee?.abort(),delete r.ee?.get(this.agentIdentifier),!1}}}({features:[J,m,S,class extends h{static featureName=oe;constructor(t,r){if(super(t,r,oe,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]),!c.il)return;const n=this.ee;let i;(0,k.QU)(n),this.eventsEE=(0,k.em)(n),this.eventsEE.on(se,(function(e,t){this.bstStart=(0,p.z)()})),this.eventsEE.on(ae,(function(t,r){(0,s.p)("bst",[t[0],r,this.bstStart,(0,p.z)()],void 0,e.D.sessionTrace,n)})),n.on(ce+ne,(function(e){this.time=(0,p.z)(),this.startPath=location.pathname+location.hash})),n.on(ce+ie,(function(t){(0,s.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,e.D.sessionTrace,n)}));try{i=new PerformanceObserver((t=>{const r=t.getEntries();(0,s.p)(te,[r],void 0,e.D.sessionTrace,n)})),i.observe({type:re,buffered:!0})}catch(e){}this.importAggregator({resourceObserver:i})}},C,xe,B,class extends h{static featureName=de;constructor(e,r){if(super(e,r,de,!(arguments.length>2&&void 0!==arguments[2])||arguments[2]),!c.il)return;if(!(0,t.OP)(e).xhrWrappable)return;try{this.removeOnAbort=new AbortController}catch(e){}let n,i=0;const o=this.ee.get("tracer"),a=(0,k._L)(this.ee),s=(0,k.Lg)(this.ee),u=(0,k.BV)(this.ee),d=(0,k.Kf)(this.ee),f=this.ee.get("events"),l=(0,k.u5)(this.ee),h=(0,k.QU)(this.ee),g=(0,k.Gm)(this.ee);function m(e,t){h.emit("newURL",[""+window.location,t])}function v(){i++,n=window.location.hash,this[ve]=(0,p.z)()}function b(){i--,window.location.hash!==n&&m(0,!0);var e=(0,p.z)();this[pe]=~~this[pe]+e-this[ve],this[ye]=e}function y(e,t){e.on(t,(function(){this[t]=(0,p.z)()}))}this.ee.on(ve,v),s.on(be,v),a.on(be,v),this.ee.on(ye,b),s.on(ge,b),a.on(ge,b),this.ee.buffer([ve,ye,"xhr-resolved"],this.featureName),f.buffer([ve],this.featureName),u.buffer(["setTimeout"+le,"clearTimeout"+fe,ve],this.featureName),d.buffer([ve,"new-xhr","send-xhr"+fe],this.featureName),l.buffer([me+fe,me+"-done",me+he+fe,me+he+le],this.featureName),h.buffer(["newURL"],this.featureName),g.buffer([ve],this.featureName),s.buffer(["propagate",be,ge,"executor-err","resolve"+fe],this.featureName),o.buffer([ve,"no-"+ve],this.featureName),a.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),y(l,me+fe),y(l,me+"-done"),y(a,"new-jsonp"),y(a,"jsonp-end"),y(a,"cb-start"),h.on("pushState-end",m),h.on("replaceState-end",m),window.addEventListener("hashchange",m,(0,O.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",m,(0,O.m$)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){m(0,i>1)}),(0,O.m$)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#e,this.importAggregator()}#e(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}],loaderType:"spa"})})(),window.NRBA=o})(); window.jQuery || document.write(' ') CKEDITOR_BASEPATH='https://f1000research.com/js/vendor/ckeditor/' window.reactTheme = 'research'; window.MathJax = { CommonHTML: { linebreaks: { automatic: true } }, 'HTML-CSS': { linebreaks: { automatic: true } }, SVG: { linebreaks: { automatic: true } }, AuthorInit: function() { MathJax.Hub.Register.MessageHook('End Process', function () { let timeout = false; // holder for timeout id const delay = 250; // delay after event is "complete" to run callback const reflowMath = function() { const dispFormulas = document.querySelectorAll('.disp-formula.panel'); if (!dispFormulas) { return; } for (const dispFormula of dispFormulas) { const child = dispFormula.querySelector('.MathJax_Preview').nextSibling.firstChild; const isMultiline = MathJax.Hub.getAllJax(dispFormula)[0].root.isMultiline; if (dispFormula.offsetWidth < child.offsetWidth || isMultiline) { MathJax.Hub.Queue(['Rerender', MathJax.Hub, dispFormula]); } } }; window.addEventListener('resize', function() { clearTimeout(timeout); // clear the timeout timeout = setTimeout(reflowMath, delay); // start timing for event "completion" }); }); }, }; if (window.location.hash == '#_=_'){ window.location = window.location.href.split('#')[0] } !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function() {n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)} ;if(!f._fbq)f._fbq=n; n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '1641728616063202'); fbq('track', "PixelInitialized", {}); (function(h,o,t,j,a,r){ h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; h._hjSettings={hjid:2318163,hjsv:6}; a=o.getElementsByTagName('head')[0]; r=o.createElement('script');r.async=1; r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; a.appendChild(r); })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv='); search file_upload Submit your research search menu close search Browse Gateways & Collections How to Publish Submit your Research My Submissions Article Guidelines Article Guidelines (New Versions) Open Data, Software and Code Guidelines Open Data and Accessible Source Materials Guidelines (HSS) Open Data, Software and Code Guidelines (PSE) Prepublication Checks Production Process Posters and Slides Guidelines Document Guidelines Article Processing Charges Peer Review Finding Article Reviewers About How it Works For Reviewers Our Advisors Policies Glossary FAQs For Developers Newsroom Contact My Research Submissions Content and Tracking Alerts My Details Sign In file_upload Submit your research { "@context": "https://schema.org", "@type": "ScholarlyArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://f1000research.com/articles/13-169" }, "headline": "Translating nanoEHS data using EPA NaKnowBase and the resource description framework", "datePublished": "2024-03-08T16:23:45", "dateModified": "2024-03-08T16:23:45", "author": [ { "@type": "Person", "name": "Holly M. Mortensen" }, { "@type": "Person", "name": "Bradley Beach" }, { "@type": "Person", "name": "Weston Slaughter" }, { "@type": "Person", "name": "Jonathan Senn" }, { "@type": "Person", "name": "Antony J. Williams" }, { "@type": "Person", "name": "William Boyes" } ], "publisher": { "@type": "Organization", "name": "F1000Research", "logo": { "@type": "ImageObject", "url": "https://f1000research.com/img/AMP/F1000Research_image.png", "height": 480, "width": 60 } }, "image": { "@type": "ImageObject", "url": "https://f1000research.com/img/AMP/F1000Research_image.png", "height": 1200, "width": 150 }, "description": " Background The U.S. Federal Government has supported the generation of extensive amounts of nanomaterials and related nano Environmental Health and Safety (nanoEHS) data, there is a need to make these data available to stakeholders. With recent efforts, a need for improved interoperability, translation, and sustainability of Federal nanoEHS data in the United States has been realized. The NaKnowBase (NKB) is a relational database containing experimental results generated by the EPA Office of Research and Development (ORD) regarding the actions of engineered nanomaterials on environmental and biological systems. Through the interaction of the National Nanotechnology Initiative’s Nanotechnology Environmental Health Implications (NEHI) Working Group, and the Database and Informatics Interest Group (DIIG), a U.S. Federal nanoEHS Consortium has been formed. Methods The primary goal of this consortium is to establish a “common language” for nanoEHS data that aligns with FAIR data standards. A second goal is to overcome nomenclature issues inherent to nanomaterials data, ultimately allowing data sharing and interoperability across the diverse U.S. Federal nanoEHS data compendium, but also in keeping a level of consistency that will allow interoperability with U.S. and European partners. The most recent version of the EPA NaKnowBase (NKB) has been implemented for semantic integration. Computational code has been developed to use each NKB record as input, modify and filter table data, and subsequently output each modified record to a Research Description Framework (RDF). To improve the accuracy and efficiency of this process the EPA has created the OntoSearcher tool. This tool partially automates the ontology mapping process, thereby reducing onerous manual curation. Conclusions Here we describe the efforts of the US EPA in promoting FAIR data standards for Federal nanoEHS data through semantic integration, as well as in the development of NAMs (computational tools) to facilitate these improvements for nanoEHS data at the Federal partner level. " } { "@context": "http://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": "1", "item": { "@id": "https://f1000research.com/", "name": "Home" } }, { "@type": "ListItem", "position": "2", "item": { "@id": "https://f1000research.com/browse/articles", "name": "Browse" } }, { "@type": "ListItem", "position": "3", "item": { "@id": "https://f1000research.com/articles/13-169/v1", "name": "Translating nanoEHS data using EPA NaKnowBase and the resource description..." } } ] } Home Browse Translating nanoEHS data using EPA NaKnowBase and the resource description... ALL Metrics - Views Downloads Get PDF Get XML Cite How to cite this article Mortensen HM, Beach B, Slaughter W et al. Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.12688/f1000research.141056.1 ) NOTE: If applicable, it is important to ensure the information in square brackets after the title is included in all citations of this article. Close Copy Citation Details Export Export Citation Sciwheel EndNote Ref. Manager Bibtex ProCite Sente EXPORT Select a format first Track Share ▬ ✚ Data Note Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] Holly M. Mortensen https://orcid.org/0000-0002-3180-5229 1 , Bradley Beach 2 , Weston Slaughter 2,3 , Jonathan Senn 4,5 , Antony J. Williams https://orcid.org/0000-0002-2668-4821 6 , William Boyes https://orcid.org/0000-0002-3598-0032 1 Holly M. Mortensen https://orcid.org/0000-0002-3180-5229 1 , Bradley Beach 2 , [...] Weston Slaughter 2,3 , Jonathan Senn 4,5 , Antony J. Williams https://orcid.org/0000-0002-2668-4821 6 , William Boyes https://orcid.org/0000-0002-3598-0032 1 PUBLISHED 08 Mar 2024 Author details Author details 1 ORD-CPHEA, US Environmental Protection agency, Research Triangle Park, NC, 27711, USA 2 Appointee at the Office of Research and Development, US Environmental Protection Agency, Oak Ridge Institute for Science and Education (ORISE), Research Triangle Park, NC, 27711, USA 3 Department of Biology, Duke University, Durham, NC, USA 4 Oak Ridge Associated Universities, Oak Ridge, Tennessee, USA 5 Metabolon, Inc. Precision Metabolomics, Durham, NC, USA 6 ORD-CCTE, US Environmental Protection Agency, RTP, NC, 27711, USA Holly M. Mortensen Roles: Conceptualization, Data Curation, Formal Analysis, Funding Acquisition, Investigation, Methodology, Project Administration, Resources, Software, Supervision, Validation, Visualization, Writing – Original Draft Preparation, Writing – Review & Editing Bradley Beach Roles: Data Curation, Formal Analysis, Software, Validation, Visualization, Writing – Original Draft Preparation Weston Slaughter Roles: Formal Analysis, Investigation, Software, Validation Jonathan Senn Roles: Software, Validation Antony J. Williams Roles: Data Curation, Investigation, Methodology, Visualization William Boyes Roles: Writing – Original Draft Preparation OPEN PEER REVIEW DETAILS REVIEWER STATUS This article is included in the Nanoscience & Nanotechnology gateway. This article is included in the Nanotoxicology collection. Abstract Background The U.S. Federal Government has supported the generation of extensive amounts of nanomaterials and related nano Environmental Health and Safety (nanoEHS) data, there is a need to make these data available to stakeholders. With recent efforts, a need for improved interoperability, translation, and sustainability of Federal nanoEHS data in the United States has been realized. The NaKnowBase (NKB) is a relational database containing experimental results generated by the EPA Office of Research and Development (ORD) regarding the actions of engineered nanomaterials on environmental and biological systems. Through the interaction of the National Nanotechnology Initiative’s Nanotechnology Environmental Health Implications (NEHI) Working Group, and the Database and Informatics Interest Group (DIIG), a U.S. Federal nanoEHS Consortium has been formed. Methods The primary goal of this consortium is to establish a “common language” for nanoEHS data that aligns with FAIR data standards. A second goal is to overcome nomenclature issues inherent to nanomaterials data, ultimately allowing data sharing and interoperability across the diverse U.S. Federal nanoEHS data compendium, but also in keeping a level of consistency that will allow interoperability with U.S. and European partners. The most recent version of the EPA NaKnowBase (NKB) has been implemented for semantic integration. Computational code has been developed to use each NKB record as input, modify and filter table data, and subsequently output each modified record to a Research Description Framework (RDF). To improve the accuracy and efficiency of this process the EPA has created the OntoSearcher tool. This tool partially automates the ontology mapping process, thereby reducing onerous manual curation. Conclusions Here we describe the efforts of the US EPA in promoting FAIR data standards for Federal nanoEHS data through semantic integration, as well as in the development of NAMs (computational tools) to facilitate these improvements for nanoEHS data at the Federal partner level. READ ALL READ LESS Keywords nanomaterial; database; ontology Corresponding Author(s) Holly M. Mortensen ( [email protected] ) Close Corresponding author: Holly M. Mortensen Competing interests: No competing interests were disclosed. Grant information: This work is supported by the United States Environmental Protection Agency’s National Research Program in Chemical Sustainability (CSS) under two research areas of the 2023-2026 Strategic Action Research Plan, 1. Research area 4: Emerging Materials and Technologies (EMT), CSS 403 Evaluation of environmental impacts of emerging materials on human and ecological species, CSS 403.1.4 Improved NaKnowBase Data Integration to Meet Program and Partner Needs; and 2. Research area 8: Integration, Translation and Knowledge Delivery (ITK), CSS 408 Knowledge delivery and interoperability in support of chemical safety decisions, CSS 408.2.22 Development of infrastructure support for EPA NaKnowBase. The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. Copyright: © 2024 Mortensen HM et al . This is an open access article distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. How to cite: Mortensen HM, Beach B, Slaughter W et al. Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.12688/f1000research.141056.1 ) First published: 08 Mar 2024, 13 :169 ( https://doi.org/10.12688/f1000research.141056.1 ) Latest published: 08 Mar 2024, 13 :169 ( https://doi.org/10.12688/f1000research.141056.1 ) Introduction Engineered nanomaterials (ENM), usually defined as purpose-built materials with at least one dimension between approximately 1-100 nm, are a central component of the nanotechnology revolution and are increasingly used in a wide variety of industrial and commercial applications. The diverse applications of ENM include such widespread sectors as industrial catalysts and intermediates, electronics, health care, automotive materials, food containers, drugs, personal care products such as toothpaste and skin creams, sporting equipment, nano-enabled pesticides, and many more. The overall market size for nanotechnology is estimated to be $1.76 billion in 2020 and projected to exceed $33 billion by 2030 ( Allied Market Research 2021 ). Responsible development of nanotechnology must include consideration of the potential implications for environmental health and safety (EHS). The widespread manufacture and application of ENM raises the potential for release of ENM at various points along the product life cycles ranging from initial synthesis and manufacture to product use, end-of-life and disposal. The release of ENM brings possible exposures to environmental species or humans ( Boyes, Thornton et al. 2017 ). The US federal government includes numerous agencies responsible for assuring the safety of the public and/or the natural environment, according to applicable statutes, including any potential risks associated with applications of ENM. For example, federal agencies may consider potential exposures in the workplace (NIOSH and OSHA), via foods, drugs and cosmetics (FDA), consumer products (CPSC), in hazardous waste sites (ATSDR), and via air, water, pesticides or as regulated toxic substances (EPA). The efforts of federal agencies to support the advancement of nanotechnology is coordinated through the National Nanotechnology Initiative (NNI, https://www.nano.gov/ ), and the evaluation of Environmental Health and Safety (EHS), coordinated through the Subcommittee on Nanoscale Science, Engineering, and Technology, and the Nanomaterial Environmental Health Implications (NEHI) workgroup under the NNI. The various agencies responsible for ENM EHS have complementary interests in assessing the potential hazards of ENM. Uniformly, these assessments are challenged by limitations of data regarding the actions of ENM across their life cycle. This is true despite a large and growing scientific literature on nanotoxicology. There is a need for coordination and integration of nano EHS data to facilitate safety and risk assessments, and to further nanomaterial science through “big-data” assessments such as meta-analyses and quantitative structure-activity relationships. Nanoinformatics, the compilation, integration, and assessment of nanoEHS data, is an important component of nanoEHS, and has been the focus of concerted international efforts ( Haase 2018 ). The US-EU roadmap outlines a vision for data standards and organization that allows for computational re-use; however, all but a single contributed dataset at the time of writing is generated by EU initiatives. Nanoinformatics efforts in the US have primarily been agency specific, whereby datasets are not interoperable and most often not accessible outside of any given agency. Efforts to coordinate data have been hindered by diversity of information, and format incongruities. The NEHI Database and Informatics Interest Group (DIIG) has recently formed a federal consortium to establish a standard protocol for the mapping of controlled vocabularies that is both consistent amongst the US Federal partner datasets, and between US and International efforts [NNI 2011 Research Strategy Update, 2023; Conference Proceedings, 2023]. The US EPA has contributed computational tools and training materials to further this effort. The US EPA developed NaKnowBase (NKB), a database containing nanoEHS results published in peer-reviewed journals by EPA’s Office of Research and Development (ORD) ( Boyes, Beach et al. 2022 ). The NKB is currently implemented as a relational database using the structured query language (SQL). Though SQL is a universal language, access to the data included in a database requires some knowledge of the language, and potentially further manipulation of the data that may be beyond the capabilities of some potential users. Short of creating a graphical user interface (GUI) and hosting individual datasets externally, which is not a cost- effective solution for any one dataset, it has become important to provide NKB information in a more accessible format. One way this has been accomplished by the US EPA is by providing NKB data to EPA’s CompTox Chemicals Dashboard (CCD) [ Williams et al. 2017 ; Lowe and Williams, 2021 ], whereby NKB nanomaterials are linked to multiple points of information related to chemical toxicity. The process of coordinating EPA NKB data with data from other US federal agencies, or other external databases, and CCD, requires consistency in nomenclature, and the ability to translate diverse terminology to common terms. This “Common Language” for nanoEHS parallels similar current efforts in the health sciences ( NIEHS 2023 ) and, to our knowledge is the first effort in the “FAIRification” of nanoEHS data. The goals and expected outcome of this work and subsequent efforts are to enable improved assembly of nanoEHS data for computational use (e.g., modeling and discovery), improved consistency for data interpretation, sharing, and interoperability, increased findability and longevity of data, support for sharing and transfer of knowledge between US federal partners and further scientific communities. To address the need for a consistent nomenclature for nanomaterials, here we discuss the creation of a consistent naming convention for EPA tested nanomaterials, with a focus on data included in the EPA NKB. We discuss our work with ISA-TAB-Nano and how this relates/improves input/output and data sharing. Further, we discuss semantic mapping and the NKB Resource Description Framework (RDF), as well as our creation of the EPA OntoSearcher tool that allows for automated ontology mapping. We illustrate here, through NKB use case examples, how this work contributes to a common language for nanoEHS data, which can be applied to other nanomaterials datasets, and is in support of FAIR data standards. Methods EPA-specific Nomenclature and Data Interoperability We have implemented an EPA-internal naming convention for nanomaterials using the Natural Language Processing (NLP) approach ( Figure 1 ), which incorporates chemical, physical, and mercantile elements of each material. A prefix of “nano” denotes that this is a nanomaterial, followed by the core material and any shell or coating information. Given the unique qualities of nanomaterials are often due to their size, we include the diameter. Any information on the supplier ID for the material (product or lot numbers) are subsequent, followed by an incrementing designation to track the number of separate materials with the said parameter in our dataset. Figure 2 illustrates how the substance name maps onto a definition of the makeup of the chemical. We have mapped all chemical substances in the NKB to the EPA CCD ( Figure 3 ). Figure 1. Unique names for materials in the NKB were generated using natural language processing (NLP) descriptions of the materials. These descriptions included physical, chemical, and commercial traits. Figure 2. The NaKnowBase chemical substance list is accessible through the CompTox Chemicals Dashboard at https://comptox.epa.gov/dashboard/chemical-lists/naknowbase and provides access to each member of the list and their related substances. Figure 3. The name “nano-silver_na_citrate_75_nanometers_nanocomposix_na_6” maps onto the definition displayed in the Figure. We have developed Python code (version 3; ( Van Rossum 2009 )) to automate formatting of ENM data into the standard and universally accepted ISO-TAB Nano format ( Marchese Robinson, Cronin et al. 2015 ). We have written this code to both WRITE (export) NKB data in ISO-TAB Nano format, entitled NKBtoITN.py, as well as READ (input) external data already in the ISO-TAB Nano format for potential inclusion into NKB, entitled ITNtoNKB.py. We have developed an application, entitled the EPA “OntoSearcher”. The OntoSearcher was developed in Python (version 3; ( Van Rossum 2009 )) and is compatible with all major operating systems. Two types of input files are required to run the application: one or more .owl files (a standard format for ontology files, typically provided by an ontology owner when disseminated) and the user’s dataset in.csv format. If the user’s data were originally in a.sql format, one.csv file should be provided per table. Each data field should be a column, and each set of entries should be a row. Ontosearcher requires the packages ‘rdflib’ ( Boettiger 2018 ) to create and manage the graph, ‘rapidfuzz’ ( Bachmann 2021 ) to handle fuzzy matching during searches, and ‘owlready2’ ( Lamy 2017 ) to assign ontologies. OntoSearcher workflows for term matching and graph creation are provided in Figure 4 and Figure 5 , respectively. Figures 6 illustrates the data tables resulting from the semantic mapping of NKB. Figure 4. The first phase of the OntoSearcher workflow is an iterative exploration performed by the user and assisted by OntoSearcher. The user manually selects one or more ontologies, uses matcher() to see how well they cover the terms in the dataset, and is provided with suggestions for additional ontologies by bioportal_search(). This process continues until the user is satisfied with the coverage provided by the selected ontologies. Figure 5. The second phase of the OntoSearcher workflow is a software-guided mapping of the dataset. The user processes each table from their dataset individually. The table is converted to triples, and the results of the matcher() method are used to automatically convert as many terms as possible into their equivalents from the ontologies. The remaining unmapped terms are reported to the user for manual curation. Once the manual mappings are supplied to Ontosearcher, it finishes handling the replacements. Figure 6. In each table, the first, vertically-alligned column lists the shared subject. The second column lists the predicate. The third column lists the object of the triple, which is either a simple object or a “bag” of triples sharing a common theme. Bags are further extended to show their predicates and objects. Connections are made through a combination of DOIs and IDs, represented by the lines in the schema. Since all data in the NKB is sourced from a paper, all types of data draw their DOI from the Publication triples. The IDs are used for differentiation of mediums, materials, and assays within a DOI. Mediums are marked in orange, materials are in blue, and assays are in green. This schema trims each table in the interest of space. Interactive tutorials ( S1, S2 ) have been developed using the Jupyter Notebook document format ( Thomas Kluyver 2016 ). Use of OntoSearcher requires an Application Programming Interface (API) key to grant software access to a service and for the BioPortal web service ( Whetzel, Noy et al. 2011 ). Input files are required in the.csv and.owl formats. An intermediate file is created in.json format. Output files are written in terse RDF triple language format or.ttl (( W3C team 2011 ); http://www.w3.org/TeamSubmission/turtle/ ), which is a text file format. The resulting.ttl file can be used directly by parties of interest, or alternatively, used to establish a SPARQL endpoint (( W3C team 2013 ); https://www.w3.org/TR/sparql11-overview/ ) for distribution and sharing of the RDF. Table 1 lists the publicly available ontologies and vocabularies used the in semantic mapping of NKB, each sources prefix in RDF and associated IRIs. Table 1. Overview of ontologies, vocabularies, and other data sources present in the NKB RDF. Name Prefix in RDF IRI Biomedical Informatics Research Network Project Lexicon birnlex http://bioontology.org/projects/ontologies/birnlex# Dublin Core Metadata Element Set dc http://purl.org/dc/elements/1.1/ Dublin Core Terms dcterms http://purl.org/dc/terms/ EDAM Ontology Ison et al. (2013) edam http://edamontology.org/ eNanoMapper Ontology enm http://purl.enanomapper.org/onto/ National Cancer Institute Thesaurus ncit http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl# NanoParticle Ontology npo http://purl.bioontology.org/ontology/npo# Berkeley Bioinformatics Open-source Projects Ontologies obo http://purl.obolibrary.org/obo/ The Gene Ontology oboInOwl http://www.geneontology.org/formats/oboInOwl# DataONE Ontologies odo http://purl.dataone.org/odo/ RDF Concepts Vocabulary rdf http://www.w3.org/1999/02/22-rdf-syntax-ns# RDF Schema Vocabulary rdfs http://www.w3.org/2000/01/rdf-schema# Semantic Science Integrated Ontology sio http://semanticscience.org/resource/ Results The NKB schema ( Boyes, Beach et al. 2022 ) was designed to capture a material, the parameters of experiments performed upon it, and the results of those experiments. In order to improve the interoperability of NKB and other datasets, we implemented an EPA-internal naming convention for nanomaterials, depicted in Figure 1 . This naming scheme was established using the Natural Language Processing (NLP) approach, which incorporates chemical, physical, and mercantile elements of each material. The utility of this approach is illustrated in Figure 2 , whereby name of the substance maps onto a definition of the makeup of the chemical. While this naming convention is useful for EPA internal cases, such as connecting with the EPA CCD, it is not ideal for expanded comparisons because it may not contain enough information to remain distinguishable against other datasets (e.g., data that may not have particular parameters contained within NKB or CCD). Currently, we have 373 chemical structures mapped on the EPA CCD, available at https://comptox.epa.gov/dashboard/chemical_lists/NAKNOWBASE , and illustrated in Figure 3 . This collaborative, cross EPA-ORD effort is updated as NKB ENMs are made available and added for curation. We have implemented the spreadsheet-based format for nanomaterials sharing, ISA-Tab-Nano, which was inspired by the high-throughput genomics community ( Thomas, Gaheen et al. 2013 ). Both pieces of code WRITE/OUTPUT (NKBtoITN.py), and READ/INPUT (ITNtoNKB.py) and corresponding documentation are made available to the public via EPA ORD and Data.gov and available for download ( CSS_3.2.2.1_NKB_IsoTabNano.zip ) at https://catalog.data.gov/dataset/css-3-2-2-1-naknowbase . Though this code is useful for specifically NKB to ISA-Tab-Nano conversion, we found that extending this code to other datasets was problematic; whereby, other data would have to be re-formatted to NKB format or code would need to be rewritten to accept alternate input formats. To continue to improve NKB interoperability, we have developed an application, entitled “OntoSearcher”, that automates ontological term mapping for a given ENM dataset. We have developed this python code to read in ENM data from NKB, and generically for other data sources, map those data to ontological terms, and provide a corresponding diagnostic report on speed and accuracy of the mapping. The code and corresponding documentation for the tool and application, as well as training materials, are made available to the public via EPA ORD and Data.gov and available for download (OntoSearcher_Training_Materials.zip) at https://catalog.data.gov/dataset/naknowbase-interoperability-tools . Schematics of two OntoSearcher workflows, Phase 1 and Phase 2 are presented in Figure 4 and Figure 5 , respectively. As illustrated in Figure 4 , the Phase 1 OntoSearcher workflow illustrates the conversion of an existing dataset into an RDF. This process required two types of input files (i.e., .owl and.csv). The OntoSearcher ‘ matcher ’ method evaluates how well the supplied ontologies cover the dataset. In order to provide additional coverage of the dataset, ontologies are identified by bioportal search ( Noy, Shah et al. 2009 ) in a ‘ search ’. The user iterates between ‘ matcher ’ and ‘ search ’ until their collection of ontologies covers a strong majority of their dataset. Lastly, when percentage of matches is achieved, the combined ontologies are output to file. In the second phase, shown in Figure 5 , the dataset is added in table increments, to a graph. The ‘ matcher ’ method is used again, this time to determine which terms have been matched by the finalized ontologies and identify those terms that require manual curation. Terms are returned as either a matched group or an unmatched group, allowing the curator to review the automated matches. Term replacements are performed on the graph, whereby the natural language terms are swapped out from the raw data with the matching terms from the compiled ontologies. Next, the curator consults their ontologies to find matches for the unmatched terms. When the list of manual curations is complete, it is applied to the graph. In some cases, implied relationships between columns in the dataset will need to be explicitly stated by the curator by using the graph search method, such as a ‘nodebag’ method (e.g., ‘ diameter value’ and ‘ diameter units’ columns are both related to the concept of “diameter” to a human reader, but such relationships are not observed by the computer). Once the data have been matched to and replaced by the correct ontology terms, they are ready to be serialized into a.ttl file. Figure 6 illustrates the NKB RDF schema produced using the OntoSearcher tool and following the above procedures for semantic mapping of ten NKB tables that correspond to Boyes, et al. ( Boyes, Beach et al. 2022 ) (i.e., Assay; Parameters; Result; Molecular Result; Material; Material FG; Contam; Publication; Medium; Additive). The NKB RDF has 10,261,162 triples, documenting 22,329 assays performed on a combined 373 materials from 128 publications. Table 1 lists each of the established and publicly available ontologies and vocabularies used in mapping, manual and automated, to terms in NKB tables illustrated in Figure 6 . Figure 7 Illustrates a local (NKB) SPARQL use case query for publications included in NKB that contain data on ‘Titanium Dioxide core’, specifically. Results of this query are requested by publication DOI, and limited to 5 for illustration purposes. Figure 8 illustrates a federated SPARQL query across two EPA datasets, NKB ( Boyes, Beach et al. 2022 ) and AOP-DB ( Mortensen, Senn et al. 2021 ), where the user is inquiring as to which NKB nanomaterial is associated with the highest number of biological pathways in AOP-DB. Results are again limited to 5 for ease of illustration. Figure 7. A simple query on the NaKnowBase RDF. This query finds all materials in the NaKnowBase listed as having a Titanium Dioxide core, then groups the results by source publication and limits the display to the top 5. Figure 8. A federated query using the NaKnowBase RDF and the AOPDB SPARQL endpoint. This query calls to the AOPDB SPARQL endpoint for information on the relationships between materials (by CASRN), genes, and pathways. Then, locally, the results are used to query the NaKnowBase RDF and determine which NKB materials correspond to the results from the AOPDB. The results show the 5 material-gene combinations that impact the most pathways, as well as the DOI of the source paper for that material in the NKB. The materials are reported by link to the CompTox Chemicals Dashboard. Discussion In an effort to improve the EPA NKB from the relational database presented by Boyes et al. (2022) , we have developed tools and applications which promote the development of a common language for ENMs and contribute to “FAIRification” of US Federal ENM data. The purpose of these tools are to enable improved assembly of nanoEHS data for computational use with minimized human curation, improved consistency of data format for interoperability, increased findability and longevity of nanoEHS data, and to enable support for sharing and transfer of knowledge between US Federal partners and further scientific communities. Because manual curation for even a small dataset is not trivial, we created EPA OntoSearcher to semi-automate the process of mapping pre-defined ontological terms to individual datasets, and thereby minimizing manual input from the curator. We have developed code to read in ENM data from NKB and other data sources, and map those data to ontological terms, as well as providing a corresponding diagnostic report on speed and accuracy of the mapping. We walk the user through this process, as illustrated in the OntoSearcher workflows presented in Figures 4 and 5 . We present our own use of the tool, with the EPA NKB semantic mapping illustrated in Figure 6 , using the ontologies listed in Table 1 . Multiple queries were performed on the NKB RDF using the locally stored.ttl file. Figure 7 contains a simple example, in which the.ttl file is queried for information on every instance of Titanium Dioxide in the dataset. Figure 8 contains a more advanced, federated query example, showing the benefits of the RDF format in traversing across datasets. Since the AOP-DB RDF is available through a SPARQL endpoint ( Mortensen, Martens et al. 2022 ), we were able to perform a query directly on both datasets, listing any materials from the NKB that are involved in AOPs derived from the AOP-Wiki, and include information on which genes are relevant to the interaction. With the RDF, formatting is reduced to an object, a relationship, and the target of that relationship (i.e., the “ triple ”). All data, however complex, can be reduced to some number of sets of these triples. The terms used as each part of a triple are drawn from rigidly-defined ontologies. Many ontologies already exist to provide structure to scientific vocabularies. Some of these ontologies, such as the Chemical Information Ontology (cheminf) (( Fu 2021 ); https://www.ebi.ac.uk/ols/ontologies/cheminf ), are broad enough to be useful for reducing some aspects of nanomaterial data to triples ( Hastings, Jeliazkova et al. 2015 ). However, unique disciplines require additional support for total coverage. With the increase in study of nanomaterials over the last decades, we have seen an increase in nano-related databases, knowledgebases, web-based libraries, and registry repositories ( Ayadi, Rose et al. 2021 ) for review). Further, the importance of nanomaterial-specific ontologies in relation to data-sharing has been recognized in many nano and nano-related subject areas ( Thomas, Klaessig et al. 2011 , Hastings, Jeliazkova et al. 2015 , Jeliazkova, Chomenidis et al. 2015 , Karcher, Willighagen et al. 2018 , Ayadi 2020 , Ayadi, Rose et al. 2021 ). Given the vast breadth of information, and format across these datasets, it becomes impractical and even untenable to carry out any data integration exercise that would allow a concerted observation, such as that necessary for regulatory decision-making. This observation prompts a dramatic need for a shift in thinking from recent nanoinformatics initiatives and efforts at nanomaterial data curation for specific purposes ( National Science and Technology Council 2011 , Hendren, Powers et al. 2015 , Karcher, Willighagen et al. 2018 , Yan, Sedykh et al. 2020 ). Further, given the current speed at which nanomaterials enter the marketplace, collecting and curating data on emerging nanomaterials is expected to become more difficult over time. Both the number of nanomaterials and the scope of characteristics to catalog are constantly increasing. Tools that assist and automate aspects of data processing, like EPA OntoSearcher, will become increasingly useful in our ability to maintain consistent curation standards, interpret, analyze and share data, while reducing risk of computer-introduced errors or biases. For example, automated tools can compare a term against thousands of definitions and synonym lists in the time it takes the human curator to compare against a single definition. Proper use of these tools reduces the curator’s workload to merely validating the matches made by the tool and handling whatever terms were absent from ontologies. Rapid integration of disparate data sources, enabled by these sorts of toolkits, will greatly affect nanoinformatics on all levels from the data customer, creator, and curator, to the analyst or assessor. Our ability to scrutinize multiple data sources consecutively allows for more efficient and timely understanding of emerging nanomaterials, while underlining the central role of data standardization, interoperability and FAIR practices in our ability to meet the incoming needs for interpretation of the effects of nanomaterials on the environment and public health. Conclusions The methods, tools and applications described here will be implemented for the inclusion, processing and FAIRification of novel EPA data related to nanomaterials. EPA and other Federal partners, as part of the NEHI DIIG, have proposed a federal nanoEHS consortium to create interoperable formats for federal nanoEHS data. The results of this effort are forthcoming. Author contributions HM: Conceived of, directed the study and analyses, and wrote and edited the manuscript; BB: revised the NKB RDF to version 2, improved the OntoSearcher tool, developed training documents, produced figures, wrote and edited the manuscript; WS: developed code for the initial version of OntoSearcher; JS: provided technical support and expertise for the first version of OntoSearcher and NKB RDF version 1; AW: Performed the NLP and mapping of NKB materials to DSSTox, assisted in creating the EPA nomenclature for NKB, created the NKB nanomaterial linkages in CCD and wrote and edited the manuscript; WB: wrote and edited the manuscript. EPA disclaimer This manuscript has been reviewed by the Center for Public Health and Environmental Assessment, United States Environmental Protection Agency and approved for publication. Approval does not signify that the contents necessarily reflect the views and policies of the Agency nor does mention of trade names or commercial products constitute endorsement or recommendation for use. The authors declare no conflict of interest. ORISE disclaimer This research was supported in part by an appointment to the U.S. Environmental Protection Agency (EPA) Research Participation Program administered by the Oak Ridge Institute for Science and Education (ORISE) through an interagency agreement between the U.S. Department of Energy (DOE) and the U.S. Environmental Protection Agency. ORISE is managed by ORAU under DOE contract number DE-SC0014664. All opinions expressed in this paper are the author’s and do not necessarily reflect the policies and views of US EPA, DOE, or ORAU/ORISE. Data availability The U.S. EPA has made NaKnowBase data files, and all related code and training materials discussed here, publicly available through the EPA Office of Research’s Science Hub at: DOI: http://10.0.92.167/1523156 , which feeds to Data.gov at https://catalog.data.gov/dataset/naknowbase-interoperability-tools . Source data Source data for the entire NaKnowBase relational database ( Boyes, Beach et al. 2022 ) is available at: https://catalog.data.gov/dataset/css-3-2-2-1-naknowbase , and at: https://gaftp.epa.gov/EPADataCommons/ORD/NaKnowBase/ . Acknowledgements The authors would like to acknowledge and thank Chris Grulke (previously affiliated with the US EPA/ORD) for his contribution to the early establishment of the EPA nomenclature for nanomaterials in NKB and those submitted to the CCD; Egon Willighagen and Amar Amar (University of Maastricht, BIGCAT) for their direction and comment on early versions of the OntoSearcher tool. We are also grateful for the internal EPA reviewers, Daniel Chang and Candice Lavelle, for their thoughtful review and critical comments on the manuscript. Bibliography Allied Market Research: Nanotechnology Market By Type (Nanosensor and Nanodevice) and Application (Electronics, Energy, Chemical Manufacturing, Aerospace & Defense, Healthcare, and Others): Global Opportunity Analysis and Industry Forecast, 2021-2030.2021. Reference Source Ayadi A, Auffan M, Rose J: Ontology-based NLP information extraction to enrich nanomaterial environmental exposure database. Procedia Comput. Sci. 2020; 176 : 360–369. Publisher Full Text Ayadi A, Rose J, de Garidel-Thoron C , et al. : MESOCOSM: A mesocosm database management system for environmental nanosafety. NanoImpact. 2021; 21 : 100288. PubMed Abstract | Publisher Full Text Bachmann M: RapidFuzz. Zenodo. 2021. Boettiger C: rdflib: A high level wrapper around the redland package for common rdf applications. Zenodo. 2018. Boyes WK, Beach B, Chan G, et al. : An EPA database on the effects of engineered nanomaterials-NaKnowBase. Sci. Data. 2022; 9 (1): 12. PubMed Abstract | Publisher Full Text | Free Full Text Boyes WK, Thornton BLM, Al-Abed SR, et al. : A comprehensive framework for evaluating the environmental health and safety implications of engineered nanomaterials. Crit. Rev. Toxicol. 2017; 47 (9): 767–810. PubMed Abstract | Publisher Full Text Fu G, Munteanu C, Davies M, et al. : cheminf.2021. Haase AKF e: EU US Roadmap Nanoinformatics 2030. EU Nanosafety Cluster; 2018. Hastings J, Jeliazkova N, Owen G, et al. : eNanoMapper: harnessing ontologies to enable data integration for nanomaterial risk assessment. J. Biomed. Semantics. 2015; 6 : 10. PubMed Abstract | Publisher Full Text | Free Full Text Hendren CO, Powers CM, Hoover MD, et al. : The Nanomaterial Data Curation Initiative: A collaborative approach to assessing, evaluating, and advancing the state of the field. Beilstein J. Nanotechnol. 2015; 6 : 1752–1762. Publisher Full Text Jeliazkova N, Chomenidis C, Doganis P, et al. : The eNanoMapper database for nanomaterial safety information. Beilstein J. Nanotechnol. 2015; 6 : 1609–1634. PubMed Abstract | Publisher Full Text | Free Full Text Karcher S, Willighagen EL, Rumble J, et al. : Integration among databases and data sets to support productive nanotechnology: Challenges and recommendations. NanoImpact. 2018; 9 : 85–101. PubMed Abstract | Publisher Full Text | Free Full Text Lamy JB: Owlready: Ontology-oriented programming in Python with automatic classification and high level constructs for biomedical ontologies. Artif. Intell. Med. 2017; 80 : 11–28. PubMed Abstract | Publisher Full Text Lowe CN, Williams AJ: Enabling High-Throughput Searches for Multiple Chemical Data Using the U.S.-EPA CompTox Chemicals Dashboard. J. Chem. Inf. Model. 2021; 61 (2): 565–570. PubMed Abstract | Publisher Full Text | Free Full Text Marchese Robinson RL, Cronin MT, Richarz AN, et al. : An ISA-TAB-Nano based data collection framework to support data-driven modelling of nanotoxicology. Beilstein J. Nanotechnol. 2015; 6 : 1978–1999. PubMed Abstract | Publisher Full Text | Free Full Text Mortensen HM, Martens M, Senn J, et al. : The AOP-DB RDF: Applying FAIR Principles to the Semantic Integration of AOP Data Using the Research Description Framework. Front. Toxicol. 2022; 4 : 803983. PubMed Abstract | Publisher Full Text | Free Full Text Mortensen HM, Senn J, Levey T, et al. : The 2021 update of the EPA’s adverse outcome pathway database. Sci. Data. 2021; 8 (1): 169. PubMed Abstract | Publisher Full Text | Free Full Text National Science and Technology Council: Materials Genome Initiative for Global Competitiveness. National Science and Technology Council, Office of Science and Technology Policy; 2011. NIEHS: Environmental Health Language Collaborative.2023. Reference Source Noy NF, Shah NH, Whetzel PL, et al. : BioPortal: ontologies and integrated data resources at the click of a mouse. Nucleic Acids Res. 2009; 37 (Web Server issue): W170–W173. PubMed Abstract | Publisher Full Text | Free Full Text Thomas DG, Gaheen S, Harper SL, et al. : ISA-TAB-Nano: a specification for sharing nanomaterial research data in spreadsheet-based format. BMC Biotechnol. 2013; 13 : 2. PubMed Abstract | Publisher Full Text | Free Full Text Thomas DG, Klaessig F, Harper SL, et al. : Informatics and standards for nanomedicine technology. Wiley Interdiscip. Rev. Nanomed. Nanobiotechnol. 2011; 3 (5): 511–532. PubMed Abstract | Publisher Full Text | Free Full Text Thomas Kluyver BR-K, Pérez F, Granger B, et al. : Jupyter Notebooks-a publishing format for reproducible computational workflows. Loizides F, Schmidt B, editors. Positioning and Power in Academic Publishing: Players, Agents and Agendas; 2016; 87–90. Van Rossum GD, Fred L: Python 3 Reference Manual. Scotts Valley, CA: CreateSpace; 2009. W3C team: Turtle - Terse RDF Triple Language. Berners-Lee: D. Beckett and T; 2011. W3C team: SPARQL 1.1 Overview. T. W. C. S. W. Group; 2013. Whetzel PL, Noy NF, Shah NH, et al. : BioPortal: enhanced functionality via new Web services from the National Center for Biomedical Ontology to access and use ontologies in software applications. Nucleic Acids Res. 2011; 39 (Web Server issue): W541–W545. PubMed Abstract | Publisher Full Text | Free Full Text Williams AJ, Grulke CM, Edwards J., et al. : The CompTox Chemistry Dashboard: a community data resource for environmental chemistry. J. Cheminform. 2017; 9 (1): 61. PubMed Abstract | Publisher Full Text | Free Full Text Yan X, Sedykh A, Wang W, et al. : Construction of a web-based nanomaterial database by big data curation and modeling friendly nanostructure annotations. Nat. Commun. 2020; 11 (1): 2519. PubMed Abstract | Publisher Full Text | Free Full Text Comments on this article Comments (0) Version 1 VERSION 1 PUBLISHED 08 Mar 2024 ADD YOUR COMMENT Comment Author details Author details 1 ORD-CPHEA, US Environmental Protection agency, Research Triangle Park, NC, 27711, USA 2 Appointee at the Office of Research and Development, US Environmental Protection Agency, Oak Ridge Institute for Science and Education (ORISE), Research Triangle Park, NC, 27711, USA 3 Department of Biology, Duke University, Durham, NC, USA 4 Oak Ridge Associated Universities, Oak Ridge, Tennessee, USA 5 Metabolon, Inc. Precision Metabolomics, Durham, NC, USA 6 ORD-CCTE, US Environmental Protection Agency, RTP, NC, 27711, USA Holly M. Mortensen Roles: Conceptualization, Data Curation, Formal Analysis, Funding Acquisition, Investigation, Methodology, Project Administration, Resources, Software, Supervision, Validation, Visualization, Writing – Original Draft Preparation, Writing – Review & Editing Bradley Beach Roles: Data Curation, Formal Analysis, Software, Validation, Visualization, Writing – Original Draft Preparation Weston Slaughter Roles: Formal Analysis, Investigation, Software, Validation Jonathan Senn Roles: Software, Validation Antony J. Williams Roles: Data Curation, Investigation, Methodology, Visualization William Boyes Roles: Writing – Original Draft Preparation Competing interests No competing interests were disclosed. Grant information This work is supported by the United States Environmental Protection Agency’s National Research Program in Chemical Sustainability (CSS) under two research areas of the 2023-2026 Strategic Action Research Plan, 1. Research area 4: Emerging Materials and Technologies (EMT), CSS 403 Evaluation of environmental impacts of emerging materials on human and ecological species, CSS 403.1.4 Improved NaKnowBase Data Integration to Meet Program and Partner Needs; and 2. Research area 8: Integration, Translation and Knowledge Delivery (ITK), CSS 408 Knowledge delivery and interoperability in support of chemical safety decisions, CSS 408.2.22 Development of infrastructure support for EPA NaKnowBase. The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. Article Versions (1) version 1 Published: 08 Mar 2024, 13:169 https://doi.org/10.12688/f1000research.141056.1 Copyright © 2024 Mortensen HM et al . This is an open access article distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Download Export To Sciwheel Bibtex EndNote ProCite Ref. Manager (RIS) Sente metrics Views Downloads F1000Research - - PubMed Central info_outline Data from PMC are received and updated monthly. - - Citations open_in_new 0 open_in_new 0 open_in_new SEE MORE DETAILS CITE how to cite this article Mortensen HM, Beach B, Slaughter W et al. Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.12688/f1000research.141056.1 ) NOTE: If applicable, it is important to ensure the information in square brackets after the title is included in all citations of this article. COPY CITATION DETAILS track receive updates on this article Track an article to receive email alerts on any updates to this article. TRACK THIS ARTICLE Share Open Peer Review Current Reviewer Status: ? Key to Reviewer Statuses VIEW HIDE Approved The paper is scientifically sound in its current form and only minor, if any, improvements are suggested Approved with reservations A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit. Not approved Fundamental flaws in the paper seriously undermine the findings and conclusions Version 1 VERSION 1 PUBLISHED 08 Mar 2024 Views 0 Cite How to cite this report: Doganis P. Reviewer Report For: Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.5256/f1000research.154467.r269340 ) The direct URL for this report is: https://f1000research.com/articles/13-169/v1#referee-response-269340 NOTE: it is important to ensure the information in square brackets after the title is included in this citation. Close Copy Citation Details Reviewer Report 25 May 2024 Philip Doganis , Unit of Process Control and Informatics, School of Chemical Engineering, National Technical University of Athens, Athens, Greece Approved VIEWS 0 https://doi.org/10.5256/f1000research.154467.r269340 This work presents methods and tools to include, process and FAIRify NM data, whether new or not published in a machine-readable format with sufficient accompanying information. It provides an efficient and easy to use workflow that can lead to FAIR ... Continue reading READ ALL This work presents methods and tools to include, process and FAIRify NM data, whether new or not published in a machine-readable format with sufficient accompanying information. It provides an efficient and easy to use workflow that can lead to FAIR datasets. As with all automatic tools, the semantic integration OntoSearcher tool has some limitations inherent in the rationale structured into it, but if a tool can handle the straightforward terms and leave some ontology terms for the researcher that is great help in an otherwise daunting task. Perhaps an explanation of the parameterisation of the tool would be needed, so more experienced users can intervene. Overall, this is needed work that solves an existing problem. Change ISOTAB to ISATAB in linked documents, (i.e. in https://catalog.data. gov/dataset/css-3-2-2-1-naknowbase ) Brief mention of background and need for this and its interactions with existing work. interoperability with U.S. and European partners ? US-EU roadmap, is there a citation? p.4 “Efforts to coordinate data have been hindered by diversity of information, and format incongruities. “ Also mention missing or partial description of protocols since modelling is mentioned, are there scripts that enable easy extraction in a ready-to-model format? p5. Define the connection to, or possible assignment of, DTXSIDs for the NMs. Will they be usable in the EPA tools (i.e. CCTE ?) Fig.6 provide in higher resolution or provide an external link where it is legible p.8, 10 How does Ontosearcher handle multiple ontology results for a term? (does it choose the first?) p.8 The phrase “(e.g., ‘diameter value’ and ‘diameter units’ columns are both related to the concept of “diameter” to a human reader, but such relationships are not observed by the computer)” should be rephrased for clarity. By refering “are not observed by the computer” does this refer to the processing of the data? For example, there this entry: https://bioportal.bioontology.org/ontologies/OM?p=classes&conceptid=http%3A%2F%2Fwww.ontology-of-units-of-measure.org%2Fresource%2Fom-2%2FDiameter which is an example of the possibility to refer to diameter units of measure. Is the rationale for creating the dataset(s) clearly described? Yes Are the protocols appropriate and is the work technically sound? Yes Are sufficient details of methods and materials provided to allow replication by others? Yes Are the datasets clearly presented in a useable and accessible format? Yes Competing Interests: No competing interests were disclosed. I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard. Close READ LESS CITE CITE HOW TO CITE THIS REPORT Doganis P. Reviewer Report For: Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.5256/f1000research.154467.r269340 ) The direct URL for this report is: https://f1000research.com/articles/13-169/v1#referee-response-269340 NOTE: it is important to ensure the information in square brackets after the title is included in all citations of this article. COPY CITATION DETAILS Report a concern Respond or Comment COMMENT ON THIS REPORT Views 0 Cite How to cite this report: Lobaskin V. Reviewer Report For: Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.5256/f1000research.154467.r263181 ) The direct URL for this report is: https://f1000research.com/articles/13-169/v1#referee-response-263181 NOTE: it is important to ensure the information in square brackets after the title is included in this citation. Close Copy Citation Details Reviewer Report 08 May 2024 Vladimir Lobaskin , University College Dublin, Dublin, Leinster, Ireland Approved VIEWS 0 https://doi.org/10.5256/f1000research.154467.r263181 The manuscript describes new tools facilitating the annotation and integration of nanomaterials data from EPA NaKnowBase. The motivation part outlines the current challenges in the NanoEHS area and proposes a solution following the FAIR principles and direction from the EU-US ... Continue reading READ ALL The manuscript describes new tools facilitating the annotation and integration of nanomaterials data from EPA NaKnowBase. The motivation part outlines the current challenges in the NanoEHS area and proposes a solution following the FAIR principles and direction from the EU-US Nanoinformatics Roadmap. The developed methodology and software have obvious utility and are indispensable for current and future nanosafety research. The methodology is well justified and illustrated, and, most importantly, linked to the web resources. I am happy to recommend this paper with the following minor amendments. It would be good to mention the paper on the latest major EU-US effort (Maier D, et al., 2023 [Ref 1]) Typos: Page 3: “Nanoinformatics, the compilation, integration, and assessment of nanoEHS data” - Generally, nanoinformatics entails more than this. It also includes data processing and management, annotation, ontologies, modelling tools, etc. I suggest rephrasing it as follows: “Nanoinformatics, the field concerning in particular the compilation, integration, and assessment of nanoEHS data” or add a more complete definition. Page 4: “agency specific” -> agency-specific Page 4: “and, to our knowledge is” -> and, to our knowledge, is Page 4,5: “ISO-TAB Nano” (3 instances) > ISA-TAB-Nano Page 5: “in.csv format. If the user’s data were originally in a.sql format, one.csv file should be provided per table.” - > in .csv format. If the user’s data were originally in a .sql format, one .csv file should be provided per table. Page 5: “Ontosearcher” -> OntoSearcher Page 5: “Figures 6 illustrates” -> Figure 6 illustrates Page 5: “the.csv and.owl” -> the .csv and .owl Page 5: “ in.json”, “resulting.ttl”, “or.ttl” -> in .json, resulting .ttl, or .ttl Page 6, Figures 4,5: redraw to remove the underlining of “bioportal_search()”, “.ttl” Page 6: “Natural Language Processing (NLP) approach (Figure 1), which incorporates chemical, physical, and mercantile elements of each material.” - repetition of a sentence from the Methods section. Page 7: “ISA-Tab-Nano” -> ISA-TAB-Nano. Page 8: “and.csv” -> and .csv Page 8: “when percentage of matches is achieved” – desired percentage or final percentage? It is better to be specific. Page 8: “The purpose of these tools are” -> The purpose of these tools is Page 8: “stored.ttl”, “the.ttl” - > stored .ttl, the .ttl Page 10: “registry repositories (Ayadi, Rose et al. 2021) for review).” -> registry repositories (see (Ayadi, Rose et al. 2021) for review). Page 11: “Haase AKF e” -> Haase A, Klaessig F Is the rationale for creating the dataset(s) clearly described? Yes Are the protocols appropriate and is the work technically sound? Yes Are sufficient details of methods and materials provided to allow replication by others? Yes Are the datasets clearly presented in a useable and accessible format? Yes References 1. Maier D, Exner T, Papadiamantis A, Ammar A, et al.: Harmonising knowledge for safer materials via the “NanoCommons” Knowledge Base. Frontiers in Physics . 2023; 11 . Publisher Full Text Competing Interests: No competing interests were disclosed. Reviewer Expertise: Nanoinformatics, Materials science, Condensed Matter Physics I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard. Close READ LESS CITE CITE HOW TO CITE THIS REPORT Lobaskin V. Reviewer Report For: Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.5256/f1000research.154467.r263181 ) The direct URL for this report is: https://f1000research.com/articles/13-169/v1#referee-response-263181 NOTE: it is important to ensure the information in square brackets after the title is included in all citations of this article. COPY CITATION DETAILS Report a concern Respond or Comment COMMENT ON THIS REPORT Comments on this article Comments (0) Version 1 VERSION 1 PUBLISHED 08 Mar 2024 ADD YOUR COMMENT Comment keyboard_arrow_left keyboard_arrow_right Open Peer Review Reviewer Status info_outline Alongside their report, reviewers assign a status to the article: Approved The paper is scientifically sound in its current form and only minor, if any, improvements are suggested Approved with reservations A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit. Not approved Fundamental flaws in the paper seriously undermine the findings and conclusions Reviewer Reports Invited Reviewers 1 2 Version 1 08 Mar 24 read read Vladimir Lobaskin , University College Dublin, Dublin, Ireland Philip Doganis , National Technical University of Athens, Athens, Greece Comments on this article All Comments (0) Add a comment Sign up for content alerts Sign Up You are now signed up to receive this alert Browse by related subjects keyboard_arrow_left Back to all reports Reviewer Report 0 Views copyright © 2024 Doganis P. This is an open access peer review report distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. 25 May 2024 | for Version 1 Philip Doganis , Unit of Process Control and Informatics, School of Chemical Engineering, National Technical University of Athens, Athens, Greece 0 Views copyright © 2024 Doganis P. This is an open access peer review report distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. format_quote Cite this report speaker_notes Responses (0) Approved info_outline Alongside their report, reviewers assign a status to the article: Approved The paper is scientifically sound in its current form and only minor, if any, improvements are suggested Approved with reservations A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit. Not approved Fundamental flaws in the paper seriously undermine the findings and conclusions This work presents methods and tools to include, process and FAIRify NM data, whether new or not published in a machine-readable format with sufficient accompanying information. It provides an efficient and easy to use workflow that can lead to FAIR datasets. As with all automatic tools, the semantic integration OntoSearcher tool has some limitations inherent in the rationale structured into it, but if a tool can handle the straightforward terms and leave some ontology terms for the researcher that is great help in an otherwise daunting task. Perhaps an explanation of the parameterisation of the tool would be needed, so more experienced users can intervene. Overall, this is needed work that solves an existing problem. Change ISOTAB to ISATAB in linked documents, (i.e. in https://catalog.data. gov/dataset/css-3-2-2-1-naknowbase ) Brief mention of background and need for this and its interactions with existing work. interoperability with U.S. and European partners ? US-EU roadmap, is there a citation? p.4 “Efforts to coordinate data have been hindered by diversity of information, and format incongruities. “ Also mention missing or partial description of protocols since modelling is mentioned, are there scripts that enable easy extraction in a ready-to-model format? p5. Define the connection to, or possible assignment of, DTXSIDs for the NMs. Will they be usable in the EPA tools (i.e. CCTE ?) Fig.6 provide in higher resolution or provide an external link where it is legible p.8, 10 How does Ontosearcher handle multiple ontology results for a term? (does it choose the first?) p.8 The phrase “(e.g., ‘diameter value’ and ‘diameter units’ columns are both related to the concept of “diameter” to a human reader, but such relationships are not observed by the computer)” should be rephrased for clarity. By refering “are not observed by the computer” does this refer to the processing of the data? For example, there this entry: https://bioportal.bioontology.org/ontologies/OM?p=classes&conceptid=http%3A%2F%2Fwww.ontology-of-units-of-measure.org%2Fresource%2Fom-2%2FDiameter which is an example of the possibility to refer to diameter units of measure. Is the rationale for creating the dataset(s) clearly described? Yes Are the protocols appropriate and is the work technically sound? Yes Are sufficient details of methods and materials provided to allow replication by others? Yes Are the datasets clearly presented in a useable and accessible format? Yes Competing Interests No competing interests were disclosed. I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard. reply Respond to this report Responses (0) Doganis P. Peer Review Report For: Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.5256/f1000research.154467.r269340) NOTE: it is important to ensure the information in square brackets after the title is included in this citation. The direct URL for this report is: https://f1000research.com/articles/13-169/v1#referee-response-269340 keyboard_arrow_left Back to all reports Reviewer Report 0 Views copyright © 2024 Lobaskin V. This is an open access peer review report distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. 08 May 2024 | for Version 1 Vladimir Lobaskin , University College Dublin, Dublin, Leinster, Ireland 0 Views copyright © 2024 Lobaskin V. This is an open access peer review report distributed under the terms of the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. format_quote Cite this report speaker_notes Responses (0) Approved info_outline Alongside their report, reviewers assign a status to the article: Approved The paper is scientifically sound in its current form and only minor, if any, improvements are suggested Approved with reservations A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit. Not approved Fundamental flaws in the paper seriously undermine the findings and conclusions The manuscript describes new tools facilitating the annotation and integration of nanomaterials data from EPA NaKnowBase. The motivation part outlines the current challenges in the NanoEHS area and proposes a solution following the FAIR principles and direction from the EU-US Nanoinformatics Roadmap. The developed methodology and software have obvious utility and are indispensable for current and future nanosafety research. The methodology is well justified and illustrated, and, most importantly, linked to the web resources. I am happy to recommend this paper with the following minor amendments. It would be good to mention the paper on the latest major EU-US effort (Maier D, et al., 2023 [Ref 1]) Typos: Page 3: “Nanoinformatics, the compilation, integration, and assessment of nanoEHS data” - Generally, nanoinformatics entails more than this. It also includes data processing and management, annotation, ontologies, modelling tools, etc. I suggest rephrasing it as follows: “Nanoinformatics, the field concerning in particular the compilation, integration, and assessment of nanoEHS data” or add a more complete definition. Page 4: “agency specific” -> agency-specific Page 4: “and, to our knowledge is” -> and, to our knowledge, is Page 4,5: “ISO-TAB Nano” (3 instances) > ISA-TAB-Nano Page 5: “in.csv format. If the user’s data were originally in a.sql format, one.csv file should be provided per table.” - > in .csv format. If the user’s data were originally in a .sql format, one .csv file should be provided per table. Page 5: “Ontosearcher” -> OntoSearcher Page 5: “Figures 6 illustrates” -> Figure 6 illustrates Page 5: “the.csv and.owl” -> the .csv and .owl Page 5: “ in.json”, “resulting.ttl”, “or.ttl” -> in .json, resulting .ttl, or .ttl Page 6, Figures 4,5: redraw to remove the underlining of “bioportal_search()”, “.ttl” Page 6: “Natural Language Processing (NLP) approach (Figure 1), which incorporates chemical, physical, and mercantile elements of each material.” - repetition of a sentence from the Methods section. Page 7: “ISA-Tab-Nano” -> ISA-TAB-Nano. Page 8: “and.csv” -> and .csv Page 8: “when percentage of matches is achieved” – desired percentage or final percentage? It is better to be specific. Page 8: “The purpose of these tools are” -> The purpose of these tools is Page 8: “stored.ttl”, “the.ttl” - > stored .ttl, the .ttl Page 10: “registry repositories (Ayadi, Rose et al. 2021) for review).” -> registry repositories (see (Ayadi, Rose et al. 2021) for review). Page 11: “Haase AKF e” -> Haase A, Klaessig F Is the rationale for creating the dataset(s) clearly described? Yes Are the protocols appropriate and is the work technically sound? Yes Are sufficient details of methods and materials provided to allow replication by others? Yes Are the datasets clearly presented in a useable and accessible format? Yes References 1. Maier D, Exner T, Papadiamantis A, Ammar A, et al.: Harmonising knowledge for safer materials via the “NanoCommons” Knowledge Base. Frontiers in Physics . 2023; 11 . Publisher Full Text Competing Interests No competing interests were disclosed. Reviewer Expertise Nanoinformatics, Materials science, Condensed Matter Physics I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard. reply Respond to this report Responses (0) Lobaskin V. Peer Review Report For: Translating nanoEHS data using EPA NaKnowBase and the resource description framework [version 1; peer review: 2 approved] . F1000Research 2024, 13 :169 ( https://doi.org/10.5256/f1000research.154467.r263181) NOTE: it is important to ensure the information in square brackets after the title is included in this citation. The direct URL for this report is: https://f1000research.com/articles/13-169/v1#referee-response-263181 Alongside their report, reviewers assign a status to the article: Approved - the paper is scientifically sound in its current form and only minor, if any, improvements are suggested Approved with reservations - A number of small changes, sometimes more significant revisions are required to address specific details and improve the papers academic merit. Not approved - fundamental flaws in the paper seriously undermine the findings and conclusions Adjust parameters to alter display View on desktop for interactive features Includes Interactive Elements View on desktop for interactive features Competing Interests Policy Provide sufficient details of any financial or non-financial competing interests to enable users to assess whether your comments might lead a reasonable person to question your impartiality. Consider the following examples, but note that this is not an exhaustive list: Examples of 'Non-Financial Competing Interests' Within the past 4 years, you have held joint grants, published or collaborated with any of the authors of the selected paper. You have a close personal relationship (e.g. parent, spouse, sibling, or domestic partner) with any of the authors. You are a close professional associate of any of the authors (e.g. scientific mentor, recent student). You work at the same institute as any of the authors. You hope/expect to benefit (e.g. favour or employment) as a result of your submission. You are an Editor for the journal in which the article is published. Examples of 'Financial Competing Interests' You expect to receive, or in the past 4 years have received, any of the following from any commercial organisation that may gain financially from your submission: a salary, fees, funding, reimbursements. You expect to receive, or in the past 4 years have received, shared grant support or other funding with any of the authors. You hold, or are currently applying for, any patents or significant stocks/shares relating to the subject matter of the paper you are commenting on. Stay Updated Sign up for content alerts and receive a weekly or monthly email with all newly published articles Register with F1000Research Already registered? Sign in Not now, thanks close PLEASE NOTE If you are an AUTHOR of this article, please check that you signed in with the account associated with this article otherwise we cannot automatically identify your role as an author and your comment will be labelled as a “User Comment”. If you are a REVIEWER of this article, please check that you have signed in with the account associated with this article and then go to your account to submit your report, please do not post your review here. If you do not have access to your original account, please contact us . All commenters must hold a formal affiliation as per our Policies . The information that you give us will be displayed next to your comment. User comments must be in English, comprehensible and relevant to the article under discussion. We reserve the right to remove any comments that we consider to be inappropriate, offensive or otherwise in breach of the User Comment Terms and Conditions . Commenters must not use a comment for personal attacks. When criticisms of the article are based on unpublished data, the data should be made available. I accept the User Comment Terms and Conditions Please confirm that you accept the User Comment Terms and Conditions. Affiliation ✕ refresh Please enter your institution. Note: To add your institution or organisation, start typing the name and then select the correct name from the list. Where applicable, the name will appear in both the original language and in English. Do not paste in the name. If the name does not appear in the drop-down list, we will display the information you have entered. ✕ refresh Country/Region * USA UK Canada China France Germany Afghanistan Aland Islands Albania Algeria American Samoa Andorra Angola Anguilla Antarctica Antigua and Barbuda Argentina Armenia Aruba Australia Austria Azerbaijan Bahamas Bahrain Bangladesh Barbados Belarus Belgium Belize Benin Bermuda Bhutan Bolivia Bosnia and Herzegovina Botswana Bouvet Island Brazil British Indian Ocean Territory British Virgin Islands Brunei Bulgaria Burkina Faso Burundi Cambodia Cameroon Canada Cape Verde Cayman Islands Central African Republic Chad Chile China Christmas Island Cocos (Keeling) Islands Colombia Comoros Congo Cook Islands Costa Rica Cote d'Ivoire Croatia Cuba Cyprus Czech Republic Democratic Republic of the Congo Denmark Djibouti Dominica Dominican Republic Ecuador Egypt El Salvador Equatorial Guinea Eritrea Estonia Ethiopia Falkland Islands Faroe Islands Federated States of Micronesia Fiji Finland France French Guiana French Polynesia French Southern Territories Gabon Georgia Germany Ghana Gibraltar Greece Greenland Grenada Guadeloupe Guam Guatemala Guernsey Guinea Guinea-Bissau Guyana Haiti Heard Island and Mcdonald Islands Holy See (Vatican City State) Honduras Hong Kong Hungary Iceland India Indonesia Iran Iraq Ireland Israel Italy Jamaica Japan Jersey Jordan Kazakhstan Kenya Kiribati Kosovo (Serbia and Montenegro) Kuwait Kyrgyzstan Lao People's Democratic Republic Latvia Lebanon Lesotho Liberia Libya Liechtenstein Lithuania Luxembourg Macao Madagascar Malawi Malaysia Maldives Mali Malta Marshall Islands Martinique Mauritania Mauritius Mayotte Mexico Minor Outlying Islands of the United States Moldova Monaco Mongolia Montenegro Montserrat Morocco Mozambique Myanmar Namibia Nauru Nepal Netherlands Antilles New Caledonia New Zealand Nicaragua Niger Nigeria Niue Norfolk Island North Korea North Macedonia Northern Mariana Islands Norway Oman Pakistan Palau Palestinian Territory Panama Papua New Guinea Paraguay Peru Philippines Pitcairn Poland Portugal Puerto Rico Qatar Reunion Romania Russian Federation Rwanda Saint Helena Saint Kitts and Nevis Saint Lucia Saint Pierre and Miquelon Saint Vincent and the Grenadines Samoa San Marino Sao Tome and Principe Saudi Arabia Senegal Serbia Seychelles Sierra Leone Singapore Slovakia Slovenia Solomon Islands Somalia South Africa South Georgia and the South Sandwich Is South Korea South Sudan Spain Sri Lanka Sudan Suriname Svalbard and Jan Mayen Swaziland Sweden Switzerland Syria Taiwan Tajikistan Tanzania Thailand The Gambia The Netherlands Timor-Leste Togo Tokelau Tonga Trinidad and Tobago Tunisia Turkey Turkmenistan Turks and Caicos Islands Tuvalu UK USA Uganda Ukraine United Arab Emirates United States Virgin Islands Uruguay Uzbekistan Vanuatu Venezuela Vietnam Wallis and Futuna West Bank and Gaza Strip Western Sahara Yemen Zambia Zimbabwe Please select your country/region. You must enter a comment. Competing Interests Please disclose any competing interests that might be construed to influence your judgment of the article's or peer review report's validity or importance. Competing Interests Policy Provide sufficient details of any financial or non-financial competing interests to enable users to assess whether your comments might lead a reasonable person to question your impartiality. Consider the following examples, but note that this is not an exhaustive list: Examples of 'Non-Financial Competing Interests' Within the past 4 years, you have held joint grants, published or collaborated with any of the authors of the selected paper. You have a close personal relationship (e.g. parent, spouse, sibling, or domestic partner) with any of the authors. You are a close professional associate of any of the authors (e.g. scientific mentor, recent student). You work at the same institute as any of the authors. You hope/expect to benefit (e.g. favour or employment) as a result of your submission. You are an Editor for the journal in which the article is published. Examples of 'Financial Competing Interests' You expect to receive, or in the past 4 years have received, any of the following from any commercial organisation that may gain financially from your submission: a salary, fees, funding, reimbursements. You expect to receive, or in the past 4 years have received, shared grant support or other funding with any of the authors. You hold, or are currently applying for, any patents or significant stocks/shares relating to the subject matter of the paper you are commenting on. Please state your competing interests The comment has been saved. An error has occurred. Please try again. Cancel Post var lTitle = "Translating nanoEHS data using EPA NaKnowBase...".replace("'", ''); var linkedInUrl = "http://www.linkedin.com/shareArticle?url=https://f1000research.com/articles/13-169/v1" + "&title=" + encodeURIComponent(lTitle) + "&summary=" + encodeURIComponent('Read the article by '); var deliciousUrl = "https://del.icio.us/post?url=https://f1000research.com/articles/13-169/v1&title=" + encodeURIComponent(lTitle); var redditUrl = "http://reddit.com/submit?url=https://f1000research.com/articles/13-169/v1" + "&title=" + encodeURIComponent(lTitle); linkedInUrl += encodeURIComponent('Mortensen HM et al.'); var offsetTop = /chrome/i.test( navigator.userAgent ) ? 4 : -10; var addthis_config = { ui_offset_top: offsetTop, services_compact : "facebook,twitter,www.linkedin.com,www.mendeley.com,reddit.com", services_expanded : "facebook,twitter,www.linkedin.com,www.mendeley.com,reddit.com", services_custom : [ { name: "LinkedIn", url: linkedInUrl, icon:"/img/icon/at_linkedin.svg" }, { name: "Mendeley", url: "http://www.mendeley.com/import/?url=https://f1000research.com/articles/13-169/v1/mendeley", icon:"/img/icon/at_mendeley.svg" }, { name: "Reddit", url: redditUrl, icon:"/img/icon/at_reddit.svg" }, ] }; var addthis_share = { url: "https://f1000research.com/articles/13-169", templates : { twitter : "Translating nanoEHS data using EPA NaKnowBase and the resource.... Mortensen HM et al., published by " + "@F1000Research" + ", https://f1000research.com/articles/13-169/v1" } }; if (typeof(addthis) != "undefined"){ addthis.addEventListener('addthis.ready', checkCount); addthis.addEventListener('addthis.menu.share', checkCount); } $(".f1r-shares-twitter").attr("href", "https://twitter.com/intent/tweet?text=" + addthis_share.templates.twitter); $(".f1r-shares-facebook").attr("href", "https://www.facebook.com/sharer/sharer.php?u=" + addthis_share.url); $(".f1r-shares-linkedin").attr("href", addthis_config.services_custom[0].url); $(".f1r-shares-reddit").attr("href", addthis_config.services_custom[2].url); $(".f1r-shares-mendelay").attr("href", addthis_config.services_custom[1].url); function checkCount(){ setTimeout(function(){ $(".addthis_button_expanded").each(function(){ var count = $(this).text(); if (count !== "" && count != "0") $(this).removeClass("is-hidden"); else $(this).addClass("is-hidden"); }); }, 1000); } close How to cite this report {{reportCitation}} Cancel Copy Citation Details $(function(){R.ui.buttonDropdowns('.dropdown-for-downloads');}); $(function(){R.ui.toolbarDropdowns('.toolbar-dropdown-for-downloads');}); $.get("/articles/acj/141056/154467") new F1000.Clipboard(); new F1000.ThesaurusTermsDisplay("articles", "article", "154467"); $(document).ready(function() { $( "#frame1" ).on('load', function() { var mydiv = $(this).contents().find("div"); var h = mydiv.height(); console.log(h) }); var tooltipLivingFigure = jQuery(".interactive-living-figure-label .icon-more-info"), titleLivingFigure = tooltipLivingFigure.attr("title"); tooltipLivingFigure.simpletip({ fixed: true, position: ["-115", "30"], baseClass: 'small-tooltip', content:titleLivingFigure + " " }); tooltipLivingFigure.removeAttr("title"); $("body").on("click", ".cite-living-figure", function(e) { e.preventDefault(); var ref = $(this).attr("data-ref"); $(this).closest(".living-figure-list-container").find("#" + ref).fadeIn(200); }); $("body").on("click", ".close-cite-living-figure", function(e) { e.preventDefault(); $(this).closest(".popup-window-wrapper").fadeOut(200); }); $(document).on("mouseup", function(e) { var metricsContainer = $(".article-metrics-popover-wrapper"); if (!metricsContainer.is(e.target) && metricsContainer.has(e.target).length === 0) { $(".article-metrics-close-button").click(); } }); var articleId = $('#articleId').val(); if($("#main-article-count-box").attachArticleMetrics) { $("#main-article-count-box").attachArticleMetrics(articleId, { articleMetricsView: true }); } }); var figshareWidget = $(".new_figshare_widget"); if (figshareWidget.length > 0) { window.figshare.load("f1000", function(Widget) { // Select a tag/tags defined in your page. In this tag we will place the widget. _.map(figshareWidget, function(el){ var widget = new Widget({ articleId: $(el).attr("figshare_articleId") //height:300 // this is the height of the viewer part. [Default: 550] }); widget.initialize(); // initialize the widget widget.mount(el); // mount it in a tag that's on your page // this will save the widget on the global scope for later use from // your JS scripts. This line is optional. //window.widget = widget; }); }); } close Error Close Add Reset F1000.MICROSERVICES.AFFILIATION = ''; $(document).ready(function () { $('.js-affiliations-form').each((index, form) => { new AffiliationForm({ formId: form.id, institutionErrorSelector: '.comment-enter-institution', departmentErrorSelector: '.comment-enter-department', placeSelector: '.js-add-comment-place', stateSelector: '.js-add-comment-state', zipCodeSelector: '.js-add-comment-zipcode', countrySelector: '.js-add-comment-country', countryErrorSelector: '.comment-enter-country', }); }); }); $(document).ready(function () { var reportIds = { "274436": 0, "263175": 0, "274432": 0, "274433": 0, "258566": 0, "274434": 0, "274435": 0, "258564": 0, "263180": 0, "258570": 0, "263181": 11, "263182": 0, "263183": 0, "258568": 0, "263176": 0, "258574": 0, "263177": 0, "263178": 0, "263179": 0, "258572": 0, "258578": 0, "258576": 0, "263184": 0, "258582": 0, "258580": 0, "269340": 6, "269341": 0, "269342": 0, "269343": 0, "269338": 0, "269348": 0, "269344": 0, "269345": 0, "269346": 0, "269347": 0, "274428": 0, "274429": 0, "274430": 0, "274431": 0, "274427": 0, }; $(".referee-response-container,.js-referee-report").each(function(index, el) { var reportId = $(el).attr("data-reportid"), reportCount = reportIds[reportId] || 0; $(el).find(".comments-count-container,.js-referee-report-views").html(reportCount); }); var uuidInput = $("#article_uuid"), oldUUId = uuidInput.val(), newUUId = "d1f5287a-4a7f-49b0-bad9-39485682ce85"; uuidInput.val(newUUId); $("a[href*='article_uuid=']").each(function(index, el) { var newHref = $(el).attr("href").replace(oldUUId, newUUId); $(el).attr("href", newHref); }); }); An innovative open access publishing platform offering rapid publication and open peer review, whilst supporting data deposition and sharing. Browse Gateways Collections How it Works Contact For Developers Cookie Notice Privacy Notice RSS Submit Your Research Follow us © 2012-2026 F1000 Research Ltd. ISSN 2046-1402 | Legal | Partner of Research4Life • CrossRef • ORCID • FAIRSharing R.templateTests.simpleTemplate = R.template(' $text $text $text $text $text '); R.templateTests.runTests(); var F1000platform = new F1000.Platform({ name: "f1000research", displayName: "F1000Research", hostName: "f1000research.com", id: "1", editorialEmail: "
[email protected]", infoEmail: "
[email protected]", usePmcStats: true }); $(function(){R.ui.dropdowns('.dropdown-for-authors, .dropdown-for-about, .dropdown-for-myresearch');}); // $(function(){R.ui.dropdowns('.dropdown-for-referees');}); $(document).ready(function () { if ($(".cookie-warning").is(":visible")) { $(".sticky").css("margin-bottom", "35px"); $(".devices").addClass("devices-and-cookie-warning"); } $(".cookie-warning .close-button").click(function (e) { $(".devices").removeClass("devices-and-cookie-warning"); $(".sticky").css("margin-bottom", "0"); }); $("#tweeter-feed .tweet-message").each(function (i, message) { var self = $(message); self.html(linkify(self.html())); }); $(".partner").on("mouseenter mouseleave", function() { $(this).find(".gray-scale, .colour").toggleClass("is-hidden"); }); }); Sign In Remember me Forgotten your password? Sign In Cancel Email or password not correct. Please try again Please wait... $(function(){ // Note: All the setup needs to run against a name attribute and *not* the id due the clonish // nature of facebox... $("a[id=googleSignInButton]").click(function(event){ event.preventDefault(); $("input[id=oAuthSystem]").val("GOOGLE"); $("form[id=oAuthForm]").submit(); }); $("a[id=facebookSignInButton]").click(function(event){ event.preventDefault(); $("input[id=oAuthSystem]").val("FACEBOOK"); $("form[id=oAuthForm]").submit(); }); $("a[id=orcidSignInButton]").click(function(event){ event.preventDefault(); $("input[id=oAuthSystem]").val("ORCID"); $("form[id=oAuthForm]").submit(); }); }); If you've forgotten your password, please enter your email address below and we'll send you instructions on how to reset your password. The email address should be the one you originally registered with F1000. Email address not valid, please try again You registered with F1000 via Google, so we cannot reset your password. To sign in, please click here . If you still need help with your Google account password, please click here . You registered with F1000 via Facebook, so we cannot reset your password. To sign in, please click here . If you still need help with your Facebook account password, please click here . Code not correct, please try again Reset password Cancel Email us for further assistance. Server error, please try again. If your email address is registered with us, we will email you instructions to reset your password. If you think you should have received this email but it has not arrived, please check your spam filters and/or contact for further assistance. Please wait... Register $(document).ready(function () { signIn.createSignInAsRow($("#sign-in-form-gfb-popup")); $(".target-field").each(function () { var uris = $(this).val().split("/"); if (uris.pop() === "login") { $(this).val(uris.toString().replace(",","/")); } }); });
Text is read by the "Ask this paper" AI Q&A widget below.
Extraction quality varies by source — PMC NXML preserves structure
cleanly, OA-HTML may include some navigation residue, and OA-PDF can
have broken hyphenation. The publisher copy
(via DOI)
is the canonical version.