Article View: comp.databases.object
Article #30[SUMMARY] Standard Data Interchange Format
From: Jerome Guionnet
Date: Mon, 07 Mar 1994 13:04
Date: Mon, 07 Mar 1994 13:04
419 lines
19212 bytes
19212 bytes
I had interesting responses to my questions on Data Interchange
Format. A number of different approaches (and interpretations) were
taken of my questions but I had very interesting answer. Here is some
comments following by your answer. You can find the original news at the end.
Bento seems interesting but for a document or multi-media approach
(Correct me if I am wrong). Us, we want to exchange software structure
as a Person or an Address structure and its associated instances.
XDR & ASN.1 seems at a very low level. I think they are interesting
for upper level format which may be built over these standards.
We are going to take a look at Express/Step a standard ISO
Format. Indeed the ODMG & PCTE only propose exchange of Data structure and
not of instance. CDIF is not yet completly defined.
What seems interesting in this standard is that:
- It is a International standard: ISO 10303 (only for a couple of month)
- It allows us to exchange Structure and Data
- It defines a static data exchange way and also a dynamic dat
exchange way through an API
- It offers a bridge to the ODMG exchange format
- and more as mentionned in your answer below
For the moment I have not any other information other than these sent
by you but I asked the AFNOR (our French Normalisation Office which
distribute all standard in France) to send me a copy of the ISO 10303
document (Step/Express). When we will have read this document and make
a choice for our project I will inform some of you which seem
interesting by the same approach.
Last week I rapidly read an article in the proceedings of "Software
Engineering Environments" which deals with SGML and Data & Schema
Description in an OMS environment. If some of you are interesting here
is the reference.
Article Title: "Using an Object Oriented OMS for a software
Development Environment"
Author: Jan Neuhaus & Xuequn Wu
E-Mail: {Jean.Neuhaus, Xuequn.Wu}@ISST.FhG.DE
If you think I am wrong in what I mentionned above, let me knwon. Thank
you for all your interest and advice.
Jerome
PS:
PCTE is for Portable Common Tool Environment
ODMG Is for Object Database Management Group (a brother of
the OMG: Object Managment Group)
(For more information ask the mail-server: omg@omg.org with
help in the body)
+-----------------------------------------------------------------------------+
| Jerome Guionnet, Engineer in Grenoble Research Center of Cap Gemini |
| |
| Cap Gemini Innovation Voice: +33 76 76 47 32 |
| 7, Chemin du Vieux Chene Fax: +33 76 76 47 48 |
| ZIRST 4206, e-mail: guionnet@capsogeti.fr |
| 38942 MEYLAN CEDEX, France |
------------------------------------------------------------------------------+
HERE IS THE SUMMARY:
Yes; SGML is clearly a possible basis for your Data Interchange Format,
but you may need to design a document type declaration of your own to
suit your data. Doing so is quite rewarding, but learning enough
SGML to do so may be non-trivial. (Things are getting better, but there
is still a great need for better introductions.)
I would be interested to learn more about the project in which this
topic arises.
best regards
-C. M. Sperberg-McQueen
ACH / ACL / ALLC Text Encoding Initiative
University of Illinois at Chicago
-------------------------------------------
Hi,
I've come across a compound document format specification called
Bento. The Bento file format can store different types of objects
(e.g., SGML document, bitmaps, video) within the same file.
An applications can open _any_ Bento file and obtain the relevant
parts via an API. If you want to, you can implement your own storage
system under the API. But I think the standard Bento file format can be
used as an interchange file format. Each of these Bento parts can have
attributes associated with them, and can be searched using the
attributes (I think).
The Bento specification can be ftp'ed from cil.org where cil
stands for Component Integration Lab.
Standards/technologies based on Bento are:
IMA, OpenDoc, ScriptX
Products based on Bento are:
Lotus Notes 4.0 (not released yet)
Hope this helps.
Regards,
Jin-Ho
----------------------------------------------------
Hello Jerome,
One are you may want to consider is the ISO standard 10303. This is a standard
for the exchange of product model data.
The standard is quite large and is split into several parts.
The ones that are of most relevance to your question is
Part 1 Overview
Part 11 Defiintion of EXPRESS - Information modelling language that can be used
to generate a data base definition.
Part 21 Clear text encoding of the data exhange file (static)
Part 22 Step data access interface. - This is a defintion of an API that allows
you to manipulate the EXPRESS definions
that are stored in a database.(dynamic)
All these technologies are designed to be independent of any database, EXPRESS
can be used in a relational or OO based paradigm. The part 22 can be used to
access any database.
The other parts of the standards are information models, for the design and
manufacture of cars, planes, boats etc. Theres also a suite of parts that
defines the conformance requirements that must be met for a conforming
application.
The idea is that EXPRESS defines the Data Structure and that part 21 and 22
provide a mechanism for manipulating instances.
There is a lot of interest in this standard in the CAD world, i,e Autodesk,
Dassault, Mcdonnel, Digital, IBM, CV, SDRC etc. There is some interets form DB
vendors as well Object Design, Oracle are interested in this technology.
These standards are avialable from Afnor. We can help in the understanding of
these standards and also with software tools.
Mark Davies
Caddetc
Arndale House
Headingley
Leeds
LS6 2UU
tel +44 532 305005
tel +44 532 304488
------------------------------------------------
For most purposes SQL is a pretty standard format to exchange database
schema & data, particularly for dynamic data exchange. Using the same
format for static & dynamic exchange might be convenient, but isn't IMHO
critical.
SGML is primarily for document exchange, and basically describes the format
of documents. It inserts tags to define section numbers, titles, types of
sections etc., along with rules for how they may be assembled.
CDIF is the only non-proprietary format I know of for exchange of models in
CASE tools. It has semantics for Entity Relationship Diagrams (at least
Chen format) and for RTSA Data/Control Flow diagrams and associated State
Transition Diagrams. I don't believe the semantics have been extended to
cover any kind of Object modeling. As Cadre Technologies was instrumental
in defining CDIF, it is possible that they have extensions to cover
Shlaer/Mellor OOA/D.
===========================================================================
There are two kinds of a fool:
One says 'This is old and therefor good'
The other says 'This is new and therefor better'
---------------------------------------------------------------------------
Paul C. George pgeorge@bailey.com
Sr. Methods Specialist
Bailey Controls Co. (216)585-8675
Wickliffe OH
---------------------------------------------------------------------------
Disclaimer: I am neither a ventriloquist nor a dummy
===========================================================================
------------------------------------------
You may want to take a look at ASN.1 (Abstract Syntax Notation One)
and BER (Basic Encoding Rules) and PER (packed encoding rules). These
are ISO standards (8824 & 8825) that were initially developed for MHS
(X.400 email) but are now in use in many protocols (X.500, SNMP, wais,
kerberos).
ASN.1 is a data structure language and BER and PER are alternate ways
of representing instances of a data structure. Both BER and PER use a
serial encoding, ideal for communications or storing on disk. ASN.1
and its encoding rules have been carefully thought out and scale
extremely well (e.g. no assuptions about the size of integers).
There are both commercial and freely available ASN.1 compilers that
translate the ASN.1 into a C, C++, Pascal etc. data structure and
provide routines for translating between the C, C++, Pascal etc.
representation and the BER or PER representation. The
comp.protocols.iso news group is probably the best place to get more
opinions about ASN.1.
Hope this helps.
------------------------------------------------/\------------------
Mike Sample <msample@cs.ubc.ca> /\ /vv\/^\
Dept. of Computer Science / \/ \ \_______
University of British Columbia, Canada / climb/tele/jam on! \
---------------------------------
If I understand your question correctly, here's the answer:
The ISO standard way for data exchange is Abstract Syntax Notation 1 (ASN.1), described in
International Standard 8824 and 8825. The basic unit of exchange is the octet (8 bits, one byte);
everything else is built on that. Primitive types are:
INTEGER - Arbitrary length integer
BOOLEAN - TRUE or FALSE
BIT STRING - list of 0 or more bits
OCTET STRING - list of 0 or more bytes
ANY - union of all types
NULL - no type at all
OBJECT ID - object name
How to build data structures and such is all defined in the standard. I have no idea how to obtain
ISO documents, so your on your own there.
BTW, I visited France on business last spring (The Bull facility in Massy, near Paris).
Beautiful country.
--
Richard F. Masoner (217) 359-8010 x251
Central Data Corporation 1602 Newton Dr., Champaign, IL 61821
----------------------------------------------------------------------
"While you're rockin, God's still knockin." --Seen on a bumper sticker
-------------------------------------
Have you considered the two electronic data interchange standards,
X12 EDI and UN/EDIFACT? They are designed to exchange data in standard
formats. I am not sure how you would exchange schemas in any standard
other than as text. The value of these EDI standards is that they are
database and vendor independent.
Rich Goldschmidt
golds@teo.ao.gov
---
Rich Goldschmidt: uunet!fjcp60!golds or golds@teo.ao.gov
Commercialization of space is the best way to escape the zero-sum economy.
Disclaimer: I don't speak for the government, and it doesn't speak for me...
-----------------------------------------------
Hi Jerome !
There is a format called ASN.1 (Abstract Syntax Notation One).
It is usable for exchanging schema and instance data in that
it repeats the schema for each instance.
There is a book "ASN.1 Tutorial and Reference" by Douglas Steedman.
ISBN 1 871802 06 7.
Preview: " ASN.1 is a notation for specifying data types and values
of these types. Accordingly, its potential role in OSI is very broad,
being usable for defining protocols at any layer. Notwithstanding this,
ASN.1's prime use has been in the definition of application protocols.
[...] the presentation layer of OSI does in fact use ASN.1"
Hope this helps.
I would appreciate it if you could mail your summary directly to me
if that's possible.
Thanks
------------------------------------------------------------------------------
Gregor Klaus klaus@informatik.uni-stuttgart.de
Institute for Parallel and Distributed
High-Performance Systems phone +49-711-7816-357
IPVR, University of Stuttgart, Germany fax +49-711-7816-428
------------------------------------------------------------------------------
"Immortality is just a matter of time"
------------------------------------------------------------------------------
Je ne sais pas si cela vous sera d'une grande utilit{, mais des travaux
qui ressemblent aux votres sont en cours a l'AFNOR et @ EDIFRANCE. Leur
cadre est le BIM (Business Information Model) et le BSR (Basic Semantic
Repository). Il s'agit d'une tentative de description des {l{ments
"fondamentaux" manipulables par les diff{rents langages (EDIFACT, SGML, ...)
et de d{finir un m{canisme de passage d'un langage @ un autre. Le premier
usage devarit *tre le passage de ANSI X12 @ EDIFACT.
Si vous souhaitez plus d'information, la personne @ contacter est :
Mike CONROY, AFNOR-EDIFRANCE, tel : 1 42 91 57 19
il pourra vous fournir les contacts n{cessaires
Michel MASSIOU MASSIOU at FRESCP11
Groupe ESCP
79, avenue de la R{publique Tel : 1 49 23 21 06
75011 PARIS
---------------------------------------------------
Bonjour,
je me pre'sente rapidement. Je suis the'sard au CRIN a` Nancy, et je
travaille dans l'e'quipe Ge'nie Logiciel. Je travaille sur
l'inte'gration d'outils, et plus particulie`rement sur les aspects
donne'es et contro^le (CDIF, CORBA, SoftBench, ...).
J'ai e'tudie' CDIF et je ne sais pas trop quoi en penser. CDIF vient
de EDIF et les dernie`res releases que j'ai en ma possession montre
que le format n'est pas encore bien stable (nombreuses e'volutions,
domaines limite's). Cela de'pend en fait des donne'es que vous avez a`
traiter (DFD, ERA, ...). Ce qui me parait un mauvais point dans CDIF
concerne le fait que description (structure) et instances (donne'es)
sont me'lange'es. De plus, pas de v'erifications des contraintes
se'mantiques attache'es aux instances.
J'ai e'tudie' (plus rapidement) une autre proposition qui s'appelle
Express. Les re'fe'rences sont ISO TC184/SC4/WG5. C'est pas mal fait
et cela va plus loin que CDIF (distinction des diffe'rentes couches,
langage complet (types de donne'es, constructeurs, re`gles,
instructions), ve'rification de certaines contraintes
se'mantiques,...).
L'ODMG n'a pas grand chose a` proposer pour l'instant, rien de concret
en tout cas.
L'aspect statique et dynamique est un proble`me de'licat. Je pense que
des propositions comme CDIF ou Express sont pluto^t destine'es a` des
donne'es statiques, ne'cessitant des transformations complexes
(mapping d'un sche'ma a` un autre par exemple). Pour les donne'es
dynamiques, des propositions comme DCE ou CORBA sont a` mon humble
avis plus approprie'es. Malheureusement, le proble`me dans toutes ces
propositions concerne la se'mantique des donne'es que l'on veut
e'changer, et on ne peut pas automatiser totalement l'e'change
justement a` cause de ce proble`me (c'est les proble`emes d'homonymie,
de synonimie, de repre'sentations diffe'rentes,...un bon article
la`-dessus est fait par A. Sheth dans Interoperable Database Systems -
1993 IFIP).
Voila`, c'est ma maigre contribution. J'espe`re que c~a vous aidera.
Je reste inte'resse' par les re'ponses que vous pourriez avoir sur le
sujet, et par vos propres re'flexions. Merci d'avance.
Je reste a` votre disposition pour des renseignements comple`mentaires
ou des copies de papiers.
Olivier
--
+-----------------------------------------------------------------------------+
| Jerome Guionnet, Research Engineer & Consultant (OO, C++, OMT) |
| |
| Cap Gemini Innovation Voice: +33 76 76 47 32 |
| 7, Chemin du Vieux Chene Fax: +33 76 76 47 48 |
| ZIRST 4206, e-mail: guionnet@capsogeti.fr |
| 38942 MEYLAN CEDEX, France |
------------------------------------------------------------------------------+
--------------------- Original -----------------
Subject: NEED Standard Data Interchange Format
Hi,
I am currently working in a project which will used a repository (we
don't want to be linked with a particular one) to store structured
data (object & links). To be as independant as possible, we need to
define a abstract interface over this repository and also a standard
data interchange format, to exchange data.
To define the abstract interface, we will take a look at PCTE, ODMG
and I think we will find a standard solution.
The problem is to find a standard format to exchange data. Indeed, we
will have distributed tools over this repository with which we will
exchange data. We will communicate with this tools in two differents
way, in batch and interactivly. For both this way we think that we can
use the same format.
We need a Data Interchange Format to exchange both
Data structure (Database schema)
Data (instance)
MY QUESTIONS ARE:
- Do you know this kind of format ?
- Do you know about CDIF or SGML ?
- Do you known if the ODMG has something to propose (I think not for
the moment) ?
- What do you think of using the same format as for static and
dynamic exchange ?
Any experiences and remarks are welcomed.
Thank for your response by email guionnet@capsogeti.fr. I will make
a summary if I have sufficient answer.
Jerome
--
-----------------------------------------------------------------------------
Jerome Guionnet Voice: +33 76 76 47 32
Cap Gemini Innovation Fax: +33 76 76 47 48
7, Chemin du Vieux Chene, ZIRST 4206, e-mail: guionnet@capsogeti.fr
38942 MEYLAN CEDEX, France guionnet@csinn.UUCP
-----------------------------------------------------------------------------
Technical Details
Message-ID:
<2487@csinn.capsogeti.fr>Path:
arc1-ca.pugleaf.net!gmd.de!newsserver.jvnc.net!yale.edu!spool.mu.edu!howland.reston.ans.net!pipex!sunic!EU.net!julienas!csinn!capsogeti.fr!guionnetShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fa82c,b163fb208ab3b5bc,start X-Google-Attributes: gidfa82c,public X-Google-Thread: 10ce84,b163fb208ab3b5bc,start X-Google-Attributes: gid10ce84,public X-Google-Thread: f4bf8,b163fb208ab3b5bc,start X-Google-Attributes: gidf4bf8,public X-Google-Thread: ffda2,b163fb208ab3b5bc,start X-Google-Attributes: gidffda2,public X-Google-Thread: 1108a1,b163fb208ab3b5bc,start X-Google-Attributes: gid1108a1,public X-Google-Thread: 1145cb,b163fb208ab3b5bc,start X-Google-Attributes: gid1145cb,public X-Google-Thread: 1077b1,b163fb208ab3b5bc,start X-Google-Attributes: gid1077b1,public X-Google-Thread: fc5c9,b163fb208ab3b5bc,start X-Google-Attributes: gidfc5c9,public X-Google-ArrivalTime: 1994-03-07 05:04:53 PST Path: arc1-ca.pugleaf.net!gmd.de!newsserver.jvnc.net!yale.edu!spool.mu.edu!howland.reston.ans.net!pipex!sunic!EU.net!julienas!csinn!capsogeti.fr!guionnet From: guionnet@capsogeti.fr (Jerome Guionnet) Newsgroups: comp.databases.object,comp.databases,comp.databases.theory,comp.object,comp.dcom.servers,comp.std.misc,bit.listserv.edi-l,comp.text.sgml Subject: [SUMMARY] Standard Data Interchange Format Message-ID: <2487@csinn.capsogeti.fr> Date: 7 Mar 94 13:04:53 GMT Sender: news@csinn.capsogeti.fr Reply-To: guionnet@capsogeti.fr (Jerome Guionnet) Organization: Cap Gemini Innovation, Grenoble, France Lines: 421