environmental molecular sciences laboratory electronic laboratory notebook elena s. mendoza 5/19/98...
TRANSCRIPT
![Page 1: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/1.jpg)
Environmental Molecular Sciences Laboratory
Electronic Laboratory Notebook
Elena S. Mendoza
5/19/98
Environmental Molecular Sciences LaboratoryComputing & Information Sciences
Pacific Northwest National Laboratory
![Page 2: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/2.jpg)
Environmental Molecular Sciences Laboratory
Overview
ā¢ Project Background
ā¢ What is an āElectronic Notebookā?
ā¢ How does it work?
ā¢ APIās
ā¢ Technologies
ā¢ Wrap-up
![Page 3: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/3.jpg)
Environmental Molecular Sciences Laboratory
Projects
ā¢ Collaboration Management (ANL, PNNL): Real-Time Session Management from both a session based metaphor and a space based metaphor.
ā¢ Electronic Notebooks (LBNL, ORNL, PNNL): Weāre developing an Electronic Notebook system to provide a shareable, multimedia version of the traditional paper scientific notebook.
ā¢ Collaboratory Interoperability Framework (ANL, LBNL, PNNL, SNL): Technologies to allow scientific instruments, notebooks, and real-time collaboration tools to work together.
Structural Biology LDRD Researchers collaborating electronically to perform NMR experiments.
DOE2000
EMSL Operations Use of the Collaboratory tool suite as a portion of the EMSL Research Facility.
![Page 4: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/4.jpg)
Environmental Molecular Sciences Laboratory
Collaborative Electronic Notebook Systems Association (CENSA)Rich Lysakowski - www.censa.org
Chemical and Pharmaceutical companies promoting the development of commercial EN systems
![Page 5: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/5.jpg)
Environmental Molecular Sciences Laboratory
DOE2000 Electronic Notebook Project
LBNL
ORNL
PNNL
![Page 6: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/6.jpg)
Environmental Molecular Sciences Laboratory
DOE2000 EN Approach
ā¢ Started with 3 separate prototypes at 3 labs
ā¢ Defined common architecture and all are migrating towards it (e.g. editor interface, import/export)
ā¢ Providing prototypes and support now(install, docs, help, SDKs, ...)
ā¢ New functionality available every ~6 months
ā¢ Revolutionize over 3 years
![Page 7: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/7.jpg)
Environmental Molecular Sciences Laboratory
Types of Notebooks/ Purposes of a Notebook
ā¢ Researcherās Laboratory Notebook (Scientific Observations)
ā¢ Design Notebook (New Ideas)
ā¢ Instrument Log Book (Maintenance)
ā¢ Experiment Log Book (Time/Cost Accounting)
ā¢ Legal Recordā Invention Reports (Intellectual Property)
ā Sample Tracking
ā¢ Notepad
ā¢ Group Workspace
![Page 8: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/8.jpg)
Environmental Molecular Sciences Laboratory
Sources of Notebook Information
ā¢ Instruments, Analysis/Visualization/Modeling Softwareā Data files/ Results files in ānativeā format (lossless)
ā Summaries - Images, Tables, ā¦(lossy)
ā Metadata/ Processing history/ Parameter files
ā¢ Researchers (individual)ā Notes - structured and unstructured text
ā Sketches/ Diagrams/ Schematics
ā¢ Groupsā Presentations
ā Conversations(A/V, Whiteboard, Shared Screeen, ā¦)
![Page 9: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/9.jpg)
Environmental Molecular Sciences Laboratory
EMSL Electronic Notebook
ā¢ WWW based access to EMSL data and meta-data
ā¢ Automation of data/metadata input from instruments and calculations
ā¢ Querying/ Searching
ā¢ Simple, secure access to full datasets
ā¢ Interactive input of results into notebook from the WWW
ā¢ Rich media types (text, images, files, 3D structures, voice, animations, video, ...)
ā¢ Extensible - 3rd party API for new data types
![Page 10: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/10.jpg)
Environmental Molecular Sciences Laboratory
A Common Architecture
Notebook Client
Common Input Editors/Viewersā¢Textā¢Imagesā¢Equationsā¢Sketchesā¢Data Type Nā¢...
OODBMS RDBMS
Files
Common Notebook Engine
Data Storage Interface
Resource DiscoverySigning...
CORBAHTTPJAVA
Advanced Features
DataAcquisitionSystems (many) Input interfaces (few)
migratedAdvanced Features
![Page 11: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/11.jpg)
Environmental Molecular Sciences Laboratory
How Does it Work?
ā¢ Server - Perl/cgi
ā generates html on the fly
ā¢ Client - java
ā application and/or applets
ā¢ Communication
ā Sockets and http
ā¢ Security
ā DFSWeb/cookies
ā Signed Applets/Certificates
ā SSL - https
ā¢ Export/Import
ā multi-part mime
![Page 12: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/12.jpg)
Environmental Molecular Sciences Laboratory
Object Diagram
INObINOb
NOb
NObList1+
![Page 13: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/13.jpg)
Environmental Molecular Sciences Laboratory
NOb Interfacepackage eln.nob;
import java.lang.*;import java.io.*;import java.awt.*;import java.util.*;
public interface INOb { public Object get(String key); public Object put(String key, Object value); public Enumeration keys(); public void remove(String key);
}
![Page 14: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/14.jpg)
Environmental Molecular Sciences Laboratory
Notebook Object Fields
ā¢ String authorName
ā¢ String objectID
ā¢ String dateTime
ā¢ String label
ā¢ MIME dataType
ā¢ Byte data[]
ā¢ URL dataRef
ā¢ Version
ā¢ OID
ā¢ Instrument ID
ā¢ Author Certificate
ā¢ Author DN
ā¢ NB Engine DN
ā¢ NB Certificate
ā¢ Signature - author
ā¢ Signature - witness
ā¢ Signature - timestamp
Defined TBD (non-standard)
![Page 15: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/15.jpg)
Environmental Molecular Sciences Laboratory
Notebook Objects and Editors
![Page 16: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/16.jpg)
Environmental Molecular Sciences Laboratory
Editor/Viewer API
ā¢ Bean like
ā¢ Extensible - add editors to the CLASSPATH
ā¢ Add editors on the fly
ā¢ Render any ātypeā of data
public interface INBEditor {
public Image getIcon(); public String getLabel(); public void Launch(INOb aNOb); public void setClient(INBClient aClient);
}
![Page 17: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/17.jpg)
Environmental Molecular Sciences Laboratory
Viewer Interface###PAR### file viewer######### ProcPar: Viewer for Varian NMR procpar files######### Jim Myers 3/98sub rend_par{ local($filename) = @_; local($visvar); #Clear the visualization variable. This holds rendered content. $visvar = āā;
#Parse out just the name of the file itself from the $filename variable (which includes path info) if ($filename =~ m#.*/([^/]*)$# )
{local($filen) = $1;
$visvar .= ā<hr>ā;$visvar .= ā<center><table border=1 width = 400 height = 150><td>\nā;$visvar .= ā<applet codebase=\ā$server$relapplets/procpar\ā code=nmr.Pro
cparā;$visvar .= ā\r\nARCHIVE = \āprocpar.jar\ā\r\nā;
$visvar .= ā width = 400 height = 150 vspace=0 hspace=0>\nā;
$visvar .= ā<param name=ProcParURL value=\ā$server$relnotebook/$notebook/$folder/$experiment/$filen\ā >\nā;
$visvar .= ā<param name=NumLines value=\ā5\ā >\nā;
$visvar .= āThe Procpar viewer applet is not responding, is java enabled ?\nā;
$visvar .= ā</applet>\nā;
$visvar .= ā</table></center>\nā;
} else {##cgierror(āOUCH: canāt find filename in: $filenameā );
$visvar .= ā<P>Sorry, canāt find usable filename in: $filename<P>\nā;
}$visvar;
}1;
_.
![Page 18: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/18.jpg)
Environmental Molecular Sciences Laboratory
Signed Appletsā¢ Sandbox - How to get out of it
ā¢ Capabilities APItry { PrivilegeManager.enablePrivilege("UniversalPropertyRead"); PrivilegeManager.enablePrivilege("UniversalFileRead"); } catch (netscape.security.ForbiddenTargetException e) { System.err.println("\tFailed! Permission to read system properties denied by user."); } catch (Exception e) { System.err.println("\tFailed! Unknown exception while enabling privilege."); e.printStackTrace(System.err); }
> signtool -k emslCertificate -Z ClientApplet.jar .
![Page 19: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/19.jpg)
Environmental Molecular Sciences Laboratory
Certificate Example
![Page 20: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/20.jpg)
Environmental Molecular Sciences Laboratory
LiveConnect
ā¢ Talking from Java to JavaScriptā JSObject jsroot = JSObject.getWindow(theApplet);
ā JSObject jsdocument = (JSObject)jsroot.getMember("document");
ā¢ Using JavaScript to get and set cookies
public String getCookies() { Object tmpCookies = mJsDocument.getMember("cookie"); String cookies = tmpCookies.toString(); return cookies; }
public void setCookies(String[] theCookies) { mJsDocument.setMember("cookie", theCookies[0]); mJsDocument.setMember("cookie", theCookies[1]); }
![Page 21: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/21.jpg)
Environmental Molecular Sciences Laboratory
Export/Import
ā¢ Export Nobs and NobLists to well-defined multi-part mime
ā¢ Read and write Mime from Java
ā¢ Use internally written encoders/decoders
![Page 22: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/22.jpg)
Environmental Molecular Sciences Laboratory
Current Team Members
EMSL Collaboratory Details
Jim MyersBrett DidierKen Yates
Elena MendozaShelly Harris
Shawn Merriman
Debbie PayneTom Valdez
Kelly KeatingRay Bair
http://www.emsl.pnl.gov:2080/docs/collabWeb Address
![Page 23: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/23.jpg)
Environmental Molecular Sciences Laboratory
For more information
ā¢ C&IS Technical Exchange 5/19/98 9:00am EMSL
ā¢ Send me mail
ā¢ http://www.emsl.pnl.gov:2080/docs/collab
![Page 24: Environmental Molecular Sciences Laboratory Electronic Laboratory Notebook Elena S. Mendoza 5/19/98 Environmental Molecular Sciences Laboratory Computing](https://reader036.vdocuments.us/reader036/viewer/2022062516/56649e5e5503460f94b56fac/html5/thumbnails/24.jpg)
Environmental Molecular Sciences Laboratory
Acknowledgments
ā¢ U.S. Department of Energyā Mathematical, Information and Computational Sciences Division of the Office of
Energy Research
ā Office of Biological & Environmental Research of the Office of Energy Research
ā Pacific Northwest National Laboratory (PNNL) Laboratory Directed Research and Development (LDRD)
Pacific Northwest National Laboratory is a multiprogram national laboratory operated by Battelle Memorial Institute for the U.S. Department of Energy under Contract DE-AC06-76RLO 1830.