From jporter@nsf.gov Mon May 22 15:17:10 1995 Status: RO X-VM-v5-Data: ([nil nil nil nil nil nil nil nil nil] ["1168" "Mon" "22" "May" "1995" "13:16:38" "-0400" "Larry Brandt" "lbrandt@nsf.gov" nil "32" "Metadata" "^Resent-Message-Id:" nil nil "5" nil nil nil nil] nil) Return-Path: Received: from cv3.cv.nrao.edu by fits.cv.nrao.edu (4.1/DDN-CV/1.8) id AA24817; Mon, 22 May 95 15:17:08 EDT Received: from ocfmail.ocf.llnl.gov by cv3.cv.nrao.edu (4.1/DDN-DLB/1.13) id AA00427; Mon, 22 May 95 15:17:07 EDT Received: from pierce.llnl.gov by ocfmail.ocf.llnl.gov (4.1/SMI-4.0) id AA07433; Mon, 22 May 95 11:57:29 PDT Received: by pierce.llnl.gov (8.6.10/LLNL-1.18/llnl.gov-03.95) id LAA02065; Mon, 22 May 1995 11:56:28 -0700 Received: from note1.nsf.gov by pierce.llnl.gov (8.6.10/LLNL-1.18/llnl.gov-03.95) id LAA02044; Mon, 22 May 1995 11:56:24 -0700 Received: by note1.nsf.gov id AA32215 (5.65c/IDA-1.4.4 for metadata@llnl.gov); Mon, 22 May 1995 14:58:54 -0400 X-Mailer: Mail User's Shell (7.2.3 5/22/91) Received: from NEMO.NCSL.NIST.GOV by mailman.nsf.gov with SMTP id AA18280 (5.65c/IDA-1.4.4 for ); Mon, 22 May 1995 13:17:27 -0400 Received: by nemo.ncsl.nist.gov (4.1/NIST(rds)) id AA06690; Mon, 22 May 95 13:15:12 EDT Organization: National Institute of Standards and Technology (NIST) Sub-Organization: Computer Systems Laboratory (CSL) Disclaimer: Opinions expressed are those of the sender and do not reflect NIST policy or agreement. Received: from mailman.nsf.gov by nemo.ncsl.nist.gov (4.1/NIST(rds)) id AA06684; Mon, 22 May 95 13:15:04 EDT Received: from [128.150.53.6] (bagpipe.cise.nsf.gov) by mailman.nsf.gov with SMTP id AA21324 (5.65c/IDA-1.4.4 for ); Mon, 22 May 1995 13:16:42 -0400 X-Sender: lbrandt@popsrvr.nsf.gov Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Precedence: bulk Resent-Message-Id: <199505221856.LAA02044@pierce.llnl.gov> Resent-From: jporter@nsf.gov (John H. Porter) Resent-Date: Mon, 22 May 1995 14:58:54 EDT Resent-To: metadata@llnl.gov From: lbrandt@nsf.gov (Larry Brandt) Sender: owner-mfc-reps@nemo.ncsl.nist.gov To: mfc-reps@nemo.ncsl.nist.gov Subject: Metadata Date: Mon, 22 May 1995 13:16:38 -0400 Colleagues, I mentioned in one of our recent meetings that I had attended a meeting on "data about data" or Metadata, at OCLC in Dublin Ohio, co-hosted by NCSA. The goal of the meeting was to bring together many of the players in library, internet, SGML, and other communities to discuss the definition of a core set of metadata elements. Several of the participating institutions expect to implement code on the basis of those elements. The following URL, gopher://marvel.loc.gov:70/00/.listarch/usmarc/dp86.doc points to an interesting paper by one of the participants from the Library of Congress on how the Dublin metadata tags could be mapped to the USMARC record tags. USMARC has been around for a long time, is quite complex, and is used extensively in the library community. If we are to be able to find data we need, the problems of indexing and describing data are increasingly critical as the web and the internet continue growing. The Government Information Locator Service specifications, which all federal agencies with public data must adhere to, will also be able to be mapped to the Dublin core set. Hope you enjoy the paper. >>>Larry From bburns@milisant.CV.NRAO.EDU Tue Jan 24 14:17:06 1995 Status: RO X-VM-v5-Data: ([nil nil nil nil nil nil nil nil nil] ["11937" "Tue" "24" "January" "1995" "14:17:03" "EST" "Bob Burns" "bburns@milisant.cv.nrao.edu" nil "254" "forwarded message from Bob Baird" "^From:" nil nil "1" nil nil nil nil] nil) Return-Path: Received: from milisant.cv.nrao.edu by fits.cv.nrao.edu (4.1/DDN-DLB/1.5) id AA18111; Tue, 24 Jan 95 14:17:04 EST Received: by milisant.cv.nrao.edu (4.1/DDN-DLB/1.7) id AA01799; Tue, 24 Jan 95 14:17:03 EST Message-Id: <9501241917.AA01799@milisant.cv.nrao.edu> From: bburns@milisant.CV.NRAO.EDU (Bob Burns) To: ghunt@milisant.CV.NRAO.EDU, dwells@milisant.CV.NRAO.EDU Subject: forwarded message from Bob Baird Date: Tue, 24 Jan 95 14:17:03 EST ------- start of forwarded message (RFC 934 encapsulation) ------- Return-Path: Received: from cv3.cv.nrao.edu by milisant.cv.nrao.edu (4.1/DDN-DLB/1.5) id AA01208; Thu, 19 Jan 95 20:28:43 EST Received: from express.larc.nasa.gov by cv3.cv.nrao.edu (4.1/DDN-DLB/1.13) id AA25267; Thu, 19 Jan 95 20:28:42 EST Received: from telford.nsa.hp.com (really, unknown [15.255.88.33]) by express.larc.nasa.gov with SMTP id BA29798 (SMTP/Lite-1.20) for ; Thu, 19 Jan 95 20:08:23 -0500 Received: from aspen.nsa.hp.com by telford.nsa.hp.com with ESMTP (1.37.109.10G/16.2) id AA098864071; Thu, 19 Jan 1995 17:07:51 -0800 Received: by aspen.nsa.hp.com (1.37.109.10G/16.2) id AA294304071; Thu, 19 Jan 1995 17:07:51 -0800 Message-Id: <199501200107.AA294304071@aspen.nsa.hp.com> Mailer: Elm [revision: 72.14] From: Bob Baird To: ieee+mss@LaRC.NASA.GOV Subject: RFP for Base Data Types Date: Thu, 19 Jan 95 17:07:50 PST Proposal for Base Data Types Bob Baird Hewlett-Packard Company January 19, 1995 This is a response to the IEEE 1244 RFP for base data types. The response defines what is meant by base data types and provides C declarations for the base data types proposed. 1.0 Proposal for 1244 Base Data Types 1.1 Definition 1. 1244 base data types are those data types from which all other data types are derived. 2. No 1244 base data type is derived from another 1244 base data type. 3. 1244 base data types must be defined for any given programming environment in terms of the primitive data types of the particular programming environment. A 1244 base data type has its own special semantics although it's variables may be the same size or have the same internal structure as another 1244 base data type. The 1244 base data types proposed here continue the IEEE practice of making the length of all data types explicit. Wherever possible, the proposed1244 based data types are the same as existing IEEE data types or extensions to them. A type's length determines the amount of space required for a variable of the given type. Other semantics determine the operations that can be performed on a variable of the given type or the transformation that must be done when the variable is copied from one environment to another. Although several 1244 base data types may be derived from the same primitive data type of a given programming environment each 1244 base data type may be derived differently in different environments. 1.2 Base Data Types unsigned8 an 8 bit unsigned integer value unsigned16 a 16 bit unsigned integer value unsigned32 a 32 bit unsigned integer value unsigned64 a 64 bit unsigned integer value signed8 an 8 bit signed integer value signed16 a 16 bit signed integer value signed32 a 32 bit signed integer value signed64 a 64 bit signed integer value opaque16 a 16 bit opaque token opaque24 a 24 bit opaque token opaque32 a 32 bit opaque token opaque40 a 40 bit opaque token opaque48 a 48 bit opaque token opaque56 a 56 bit opaque token opaque64 a 64 bit opaque token char a text character byte an opaque data byte text_string a 1 to 256 byte area with leading length code (0 - 255) followed by 1 to 255 bytes. May optionally be "\n" terminated. Bytes preceeding "\n" terminator are text. byte_string a 1 to 256 byte area with leading length code (0 - 255) followed by 1 to 255 bytes. May contain "\n" bytes. The following base types might also be required if they are needed to define interfaces or durable data structures. So far, there is no need. ieee_float32 an ieee 32 bit floating-point value ieee_float64 an ieee 64 bit floating-point value packed16 a 16 bit packed decimal number; 3 decimal digits packed32 a 32 bit packed decimal number; 7 decimal digits packed64 a 64 bit packed decimal number; 15 decimal digits pointer16 a 16 bit pointer for storing 16 bit addresses/offsets in durable data structures pointer32 a 32 bit pointer for storing 16 or 32 bit address/offsets in durable data structures pointer64 a 64 bit pointer for storing 16, 32, or 64 bit addresses in durable data structures The actual definition of the proposed base data types in various environments depends on the environment. The definition in any given environment must be standardized. The following environments should be considered: Client applications written in C or C++ on various platforms. Server implementations using DCE IDL, MicroSoft IDL, ONC RPCGEN, or SNMP MIB compilers on various platforms. Run-time client-stubs using DCE IDL, MicroSoft IDL, ONC RPCGEN, or SNMP MIB compilers on various platforms. 1.3 Common 1244 Data Types Various 1244 components should share the declaration of any derived data type whose variables might be exchanged between 1244 components. All 1244 common data types must be derived from the standard 1244 base data types. The 1244 common data types must also be portable across all ANSI C or C++ programming environments. Naming of common 1244 derived data types follows the following convention: Names of constants have a MSS_ prefix and all letters are capitalized. e.g; MSS_CONSTANT Names of other data types have a Mss_ prefix and the first letter of each term is capitalized. Simple data types have a _t suffix. e.g.; Mss_SimpleType_t Structures have a _s suffix. e.g.; Mss_Structure_s Unions have a _u suffix. e.g.; Mss_Union_u Names of members within structures or unions have no prefix or suffix, but they have the first letter of each term capitalized. e.g,; MemberOfStructure The preceeding conventions are proposed to make code involving the 1244 standard easily read. The response to another RFP will describe a more comprehensive proposal for syntax and naming conventions. Definitions of proposed 1244 common data types follow: typedef opaque32 Mss_DateMDY_t; /* MO-DA-YR */ typedef opaque32 Mss_DateYMD_t; /* YR-MO-DA */ typedef opaque32 Mss_DateJulian_t; /* YR-DAY */ typedef opaque32 Mss_TimeOf Day_t; /* HR-MIN-SEC-HUNDRETHS */ typedef unsigned32 Mss_ElapsedTime_t; /* SECONDS-HUNDRETHS_*/ typedef text_string Mss_ClientName_t; /* Client name */ typedef text_string Mss_LocationName_t; /* Name of physical geographic location */ typedef text_string Mss_ProductName_t; /* Name of product */ typedef text_string Mss_ServerName_t; /* Server name */ typedef char Mss_Vendor_t[8]; /* Vendor Id assigned by standards body */ typedef char Mss_Platform_t[16]; /* Platform Id assigned by standards body */ typedef signed8 Mss_Status_t; /* Request status */ const Mss_Status_t MSS_NORMAL = 0; /* Normal request completion */ const Mss_Status_t MSS_ABNORM = -1; /* Abnormal request completion */ const Mss_Status_t MSS_PENDING = 1; /* Request completion pending */ typedef signed8 Mss_Dot_t; /* Component Id assigned by standards body */ const Mss_Dot_t MSS_NULL = 0; const Mss_Dot_t MSS_PVL = 2; /* 1244.2 */ const Mss_Dot_t MSS_PVR = 3; /* 1244.3 */ const Mss_Dot_t MSS_MVR = 4; /* 1244.4 */ const Mss_Dot_t MSS_SSM = 5; /* 1244.5 */ const Mss_Dot_t MSS_VSS = 6; /* 1244.6 */ const Mss_Dot_t MSS_ENV_RPC = 25; /* Environment's RPC mechanism */ const Mss_Dot_t MSS_ENV_NET = 26; /* Environment's network components */ const Mss_Dot_t MSS_ENV_OS = 27; /* Environment's operating system kernel */ const Mss_Dot_t MSS_ENV_DEV = 28; /* Environment's storage devices */ const Mss_Dot_t MSS_ENV_DEV = 29; /* Environment's other peripheral devices */ const Mss_Dot_t MSS_ENV_CPU = 30; /* Environment's CPU */ const Mss_Dot_t MSS_ENV_UNK = 31; /* Unknown component in environment */ typedef opaque16 Mss_RpcProt_t; /* Protocol codes assigned by standards body */ const Mss_RpcProt_t MSS_RPC_NULL = 0; /* Server local to client */ const Mss_RpcProt_t MSS_RPC_DCE = 1; /* DCE RPC */ const Mss_RpcProt_t MSS_RPC_MS = 2; /* Microsoft RPC */ const Mss_RpcProt_t MSS_RPC_ONC = 4; /* ONC RPC */ const Mss_RpcProt_t MSS_RPC_NW = 8; /* Netwise RPC */ const Mss_RpcProt_t MSS_RPC_SNMP = 16; /* SNMP communication */ typedef unsigned8 Mss_IoClass_t; /* I/O functional class */ const Mss_IoClass_t MSS_RO = 1; /* Read-only: CD-ROM */ const Mss_IoClass_t MSS_RWO = 2; /* Read, write-once: WORM */ const Mss_IoClass_t MSS_RWT = 3; /* Read, write-truncate: MAG-TAPE */ const Mss_IoClass_t MSS_RWE = 4; /* Read, erase-before-update: FLASH */ const Mss_IoClass_t MSS_RWU = 5; /* Read, update in-place: MAG-DISK */ const Mss_IoClass_t MSS_RMW = 6; /* Read, read-modify-write */ typedef struct /* Fault code */ { Mss_Dot_t Dot; /* Component that generated the fault */ signed8 Class; /* Class of object that generated the fault */ signed16 Reason; /* Reason code: +n=warning, -n=error */ } Mss_Fault_s; typedef struct /* Server type */ { Mss_Dot_t Dot; /* Component defining the server standard */ unsigned8 Version; /* Interface version. */ unsigned16 Release; /* Product release. */ Mss_RpcProt_t Protocols; /* RPC protocols supported by the server */ Mss_Vendor_t Vendor; /* Vendor Id: `DEC','IBM','HP', ... */ } Mss_ServerType_s; typedef struct /* Data structure header */ { unsigned8 Length; /* Bytes in the data structure: none = 0 */ Mss_Dot_t Dot; /* Id of component defining the data structure */ signed8 Type; /* Type of data structure that the header identifies */ unsigned8 Version; /* Interface version */ } Mss_Header_s; typedef struct /* OID header */ { unsigned8 Count; /* Number of tokens in the OID: none = 0 */ Mss_Dot_t Dot; /* Id of component defining the OID */ signed8 Class; /* Class of object the OID identifies */ opaque8 Flag; /* Byte defined by the owning component */ } Mss_OidHdr_s; typedef struct /* SOID: Numeric form of OID. Contains integer values */ { Mss_OidHdr_t Header; /* Standard header for OIDs */ unsigned32 Tokens[]; /* Array of unsigned32 tokens */ } Mss_NOID_s; typedef struct /* OOID: Opaque form of OID. Could contain a UUID */ { Mss_OidHdr_t Header; /* Standard header for OIDs */ opaque32 Tokens[]; /* Array of opaque32 tokens */ } Mss_OOID_s; typedef struct { unsigned16 AreaLen; /* Area length; One character = 1 */ char Area[]; /* 1 to 64534 text characters */ } Mss_LongText_s /* Text may optionally be "\n" terminated */ /* Bytes preceeding "\n" are text */ typedef struct { unsigned16 AreaLen; /* Area length; One byte = 1 */ unsigned16 DataLen; /* DataLen <= AreaLen */ char Area[]; /* 0 to 64532 opaque data bytes */ } Mss_LongArea_s /* Data may contain "\n" bytes */ ------- end -------