1、Designation: E 2078 00 (Reapproved 2005)Standard Guide forAnalytical Data Interchange Protocol for MassSpectrometric Data1This standard is issued under the fixed designation E 2078; the number immediately following the designation indicates the year oforiginal adoption or, in the case of revision, t
2、he year of last revision. A number in parentheses indicates the year of last reapproval. Asuperscript epsilon (e) indicates an editorial change since the last revision or reapproval.1. Scope1.1 This guide covers the implementation of the MassSpectrometric Data Protocol in analytical software applica
3、-tions. Implementation of this protocol requires:1.1.1 Specification E 2077, which contains the full set ofdata definitions. The mass spectrometric data protocol is notbased upon any specific implementation; it is designed to beindependent of any particular implementation so that imple-mentations ca
4、n change as technology evolves. The protocol isimplemented in categories to speed its acceptance throughactual use.1.1.2 Specification E 2077 contains a full description of thecontents of the data communications protocol, including theanalytical information categories with data elements and theiratt
5、ributes for most aspects of mass spectrometric tests.1.2 The analytical information categories are a practicalconvenience for breaking down the standardization processinto smaller, more manageable pieces. It is easier for develop-ers to build consensus and produce working systems based onsmaller inf
6、ormation sets, without the burden and complexity ofthe hundreds of data elements contained in all the categories.The categories also assist vendors and end users in using theguide in their computing environments.1.3 The network common data format (NetCDF) data inter-change system is the container us
7、ed to communicate databetween applications in a way that is independent of bothcomputer architectures and end-user applications. In essence, itis a special type of application designed for data interchange.1.4 The common data language (CDL) template for massspectrometry is a language specification o
8、f the mass spectrom-etry dataset being interchanged. With the use of the NetCDFutilities, this human-readable template can be used to generatean equivalent binary file and the software subroutine callsneeded for input and output of data in analytical applications.2. Referenced Documents2.1 ASTM Stan
9、dards:2E 2077 Specification for Analytical Data Interchange Pro-tocol for Mass Spectrometric Data2.2 Other Standard:NetCDF Users Guide32.3 ISO Standards:48601:1988 Data elements and interchange formats, (Firstedition published 1988-06-15; with Technical Corrigen-dum 1 published 1991-05-01)3. List of
10、 Contents and Use3.1 NetCDF ToolkitThe protocol is an application pro-gramming interface (API) layered on top of the public domainNetCDF toolkit. NetCDF is a set of tools that facilitate readingor writing platform-independent, self-describing data files. Alldata in a NetCDF file is written using the
11、 external datarepresentation (XDR). XDR was developed by Sun Microsys-tems and is used for platform-independent file systems for allworkstations and personal computers. Each NetCDF dataelement is self-describing - it has a name, type, and dimen-sionality. A NetCDF file contains three parts: a dimens
12、ionssection, which defines the names and size of all dimensionsused to describe variables; a variables section, which definesthe names, data types, dimensionality, and attributes for allvariables used in the file; and finally, a data section, whichcontains the actual values assigned to the variables
13、. Attributesare numbers or strings which augment the description ofvariables or the file as a whole.3.1.1 For example, a variable “x_axis_ values” might con-tain an array of numbers representing the abscissa of atwo-dimensional data set. It would have a dimension, possibly1This guide is under the ju
14、risdiction of ASTM Committee E13 on MolecularSpectroscopy and Chromatography and is the direct responsibility of SubcommitteeE13.15 on Analytical Data.Current edition approved Sept. 1, 2005. Published November 2005. Originallyapproved in 2000. Last previous edition approved in 2000 as E 2078 00.2For
15、 referenced ASTM standards, visit the ASTM website, www.astm.org, orcontact ASTM Customer Service at serviceastm.org. For Annual Book of ASTMStandards volume information, refer to the standards Document Summary page onthe ASTM website.3Available for Russell K. Rew, Unidata Program Center, University
16、 Corporationfor Atmospheric Research, P.O. Box 3000, Boulder, CO 80307-3000.4Available from ISO, 1 Rue de Varembe, Case Postale 56, CH 1211, Geneve,Switzerland.1Copyright ASTM International, 100 Barr Harbor Drive, PO Box C700, West Conshohocken, PA 19428-2959, United States.named “x_axis_size,” whic
17、h would specify the number ofabscissa points. The variable might have some descriptiveattributes, such as “units” (with a value of“ Seconds,” perhaps),“scale_factor” (with a value of 1000.0, specifying that allstored abscissa values should be multiplied by 1000.0 to get theactual value), or “long_na
18、me” (with value“ Time”, whichmight be used to label the abscissa when drawing a plot).3.1.2 The NetCDF toolkit has been placed in the publicdomain by the Unidata Program Center, a non-profit softwaresupport organization for the University Corporation for Atmo-spheric Research. The Unidata Program Ce
19、nter is funded bythe National Science Foundation, National Center for Atmo-spheric Research, and other organizations and provides ongo-ing development and support of NetCDF and related tools.3.1.3 The NetCDF version currently supported in thisimplementation is 2.3.2.3.2 Data StructuresEach of the an
20、alytical informationclass tables in the specification document has a correspondingdata structure; however, not every field in each table has acorresponding data element in a structure, and the data struc-tures may have elements that do not appear in any class table.Most of these differences are due
21、to details of the implemen-tation which could not be hidden.3.2.1 The data structures provide the mapping between theattribute name and data type described in the specification andthe field and actual data type in the file. The actual NetCDFdimension, variable, and attribute names are hidden from th
22、eAPI level. These names in fact are irrelevant for applicationprograms; it is the data structure which provides the informa-tion interchange between the application and the file.3.2.2 Each data structure and its mapping to an analyticalinformation class are described in detail later in this guide.3.
23、2.3 Application Programming Interface Functions:3.2.3.1 The application programming interface providesprogrammatic access to the contents of the files. Mass spectraldata occurs in three forms: global information, which relates tothe contents of the entire file, information which describes eachpart o
24、f a multi-component instrument, and information whichchanges on a scan-by-scan basis for spectra and library entries.API functions are provided for opening a file for reading orwriting; closing a file; reading and writing global, per-component instrument, and per-scan spectral and library infor-mati
25、on; initializing and clearing data structure contents; and afew miscellaneous utility functions. Each of these functions isdescribed in detail in a later section of this guide.3.2.4 Enumerated SetsMany of the attributes listed in theAnalytical Data Interchange Protocol for Mass SpectrometricData spe
26、cification have an enumerated set of associated values.The attribute may take only one value from that restricted set.In the implementation, each such attribute is defined as aformal C type, and the allowed values are defined as anenumerated set of that formal type. Each enumerated value isassociate
27、d with a unique string literal, and it is these stringliterals, not the enumeration values, which are written to orread from the file. This practice both enforces the use of theproper enumeration values and follows the NetCDF dictumthat files be self-describing. If the enumeration values werewritten
28、 instead of the strings, then some lookup mechanismwould be required external to the NetCDF file to translate thenumber into something meaningful.4. Conventions4.1 The format convention adopted in this guide is asfollows:(1) Normal text is presented in this font (Times NewRoman).(2) API symbols (fun
29、ctions, formal types, etc.) are pre-sented in boldface Helvetica font.(3) Parameters to API functions are presented in italicHelvetica font.(4) Example code is presented in normal Helvetica font.4.2 Other ConventionsAll indices begin at zero (C con-vention). In several data structures, a scan_no or
30、inst_noelement must be loaded before reading or writing. Thisidentifies the scan or instrument component number for whichdata will be read or written. In all cases, scan or instrumentcomponent numbers begin at zero.4.2.1 All date/time stamps are formatted using the ISOstandard 8601 format referenced
31、 in the specification. An APIutility function is provided for conversion between date/timeinformation in numeric form and ISO-8601 string format (seems_convert_date(), below).5. Mass Spectrometric Data Protocol Distribution Kit5.1 It is intended that potential users of this implementationcan obtain
32、a complete NetCDF and API distribution kit fromvarious instrument vendors Web sites. Information on how toobtain the kit will be posted on the ASTM website(www.astm.org) under Committee E01.25.5.2 The Analytical Data Interchange Protocol for MassSpectrometric Data distribution kit contains:5.2.1 Sof
33、twareNetCDF distribution kit from Unidata(with the modified makefile needed to make the kit compile outof the box).5.2.2 NetCDF Users Guidesupplied by Unidata ProgramCenter.5.2.3 Specification E 2077.5.2.4 Guide E 2078.6. Hardware and Software6.1 This section describes the hardware and software con-
34、figurations used for testing. In general, the NetCDF systemputs very few requirements on the hardware because mostroutines are left on disk. Only routines being used at anyparticular time are kept in memory.Any limitations found weretypically those not imposed by NetCDF but ones imposed bythe operat
35、ing system or environment.6.1.1 Hardware (Personal Computers)The personal com-puter system hardware originally used for testing was:6.1.1.1 Intel 80286 processor,6.1.1.2 640K minimum,6.1.1.3 Monochrome, EGA, VGA graphics,6.1.1.4 20 megabyte minimum, 80 megabyte hard-disk istypical, and6.1.1.5 A mous
36、e (optional).E 2078 00 (2005)26.1.1.6 NetCDF works well on AT-class machines andhigher. NetCDF does not have the items in 6.1.1.1-6.1.1.5 asrequirements. These are just the minimum, base-level systemsthat were used.6.1.2 SoftwareNetCDF runs on MS-DOS, OS/2, Macin-tosh, Windows 95, and Windows NT ope
37、rating systems forpersonal computers. NetCDF was originally ported from UNIXto DOS running on an IBM-PS/2 Model 80. It was recentlyported to the Macintosh OS. NetCDF is written in the Cprogramming language, and there are FORTRAN jacketsavailable for applications that want to use FORTRAN calls.The pe
38、rsonal computer software originally employed for test-ing and developing NetCDF applications was:6.1.2.1 Microsoft DOS V3.3 or above,6.1.2.2 Microsoft C Compiler V6.0,6.1.2.3 Microsoft Windows V3.0,6.1.2.4 Microsoft Windows SDK, and6.1.2.5 NetCDF Version 2.0.1.6.1.3 Workstations and ServersNetCDF ru
39、ns easily onUNIX workstations such as Sun 3, Sun 4, VAXstations,DECstation 3100, VAXstation II running ULTRIX or VMS,and IBM RS/6000. There are no particular hardware require-ments for workstation class machines, since all workstationshave the minimum hardware outlined for personal computersin 6.1.1
40、.7. Significance and Use7.1 General Coding GuidelinesThe NetCDF libraries aresupplied to developers as source code. End users receive thelibraries in compiled binary form as part of a vendorsapplication.7.1.1 Developers setting out to write a program to converttheir data files to the Mass Spectromet
41、ric Data Protocol shouldconsider using the NetCDF utilities ncgen and ncdump. Afterdevelopers create the NetCDF file they should use the ncdumpprogram to generate the ASCII representation of the data file,and examine it to ensure the data are being correctly put intothe file.7.2 Make Files for NetCD
42、F Libraries and UtilitiesIngeneral the compilation is straightforward. The make files weremodified after they were received from the Unidata Corpora-tion, because they did not compile the first time on PCs. Thechanges needed to get the Unidata distribution to run on DOSare (1) rename the file MAKEFI
43、LE to UNIX.MK, and (2)rename MSOFT.MK to MAKEFILE, and then run NMAKE.The default switches in the Unidata distribution use theswitches for the floating point coprocessor and MicrosoftWindows options.7.2.1 The protocol kit contains some complete makefileexamples for Microsoft C V6.0 running on DOS. T
44、he Mi-crosoft C V6.0 compiler manual should be consulted for theexact meaning of the compiler and linker options.7.2.2 The VMS and SunOS compilation instructions are indirectories for those operating systems.7.3 NetCDF Library Build OrderThe NetCDF librariesmust be built in a specific order. The cor
45、rect order to build theNetCDF directories is:UTILXDRSRCNCDUMPNCGENNCTEST7.3.1 The UTIL and XDR makefiles work as distributedusing NMAKE with Microsoft C V6.0.8. CDL Template Structure8.1 A NetCDF template is built from CDL statements and isstructured into three sections: (1) dimension declarations,
46、(2)variable declarations, and (3) the data section.8.2 Afew points of clarification about the CDLlanguage aregiven here to facilitate its understanding. For more in-depthinformation on CDL, please consult the NetCDF Users Guide.8.2.1 A NetCDF template starts with the word “NetCDF”followed by the dat
47、aset name.8.2.2 CDL comments are indicated by two forward slashcharacters (/).8.2.3 Section indicators (dimensions:, variables:, and data:)end with a colon character (:). These are the only tokens thatend with a colon character.8.2.4 Statements within sections end with the semicoloncharacter (;).8.2
48、.5 Variable names beginning with numbers must bepreceded by an underline character (_). Otherwise the ncgenparser will flag an error.8.2.5.1 Underline characters were chosen for this protocolover hyphen characters, because some compilers may interprethyphens as subtraction operators. The feature of
49、CDL thatallows implicit numerical datatyping of attributes in not beingused in the first version of the template. Instead, all floatingpoint attributes are being handled as strings. This forcesprogrammers to explicitly type variables, thereby encouragingmore deliberate programming styles. For example:aia_template_revision = “0.8”; /M12345:netcdf_revision = “2.0.1”; /M12345Consult the NetCDF Users Guide for more completeinformation on CDL syntax and usage.8.2.6 Underline characters only can be used as separatorsbetween words within variable names, like:aia-templa
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1