📄 rfc610.txt
字号:
given its own description. These descriptions are similar to those givenfor stored data. At a minimum this description must contain enoughinformation for the datacomputer to parse the incoming bit stream. Italso may contain data validation information as well. To store data atthe datacomputer, the stored data must also have a description. Theuser supplies the mapping between the descriptions of the stored andtransmitted data.Winter, Hill & Greiff [Page 17]RFC 610 Further Datalanguage Design Concepts December 1973 _____________________________________| | / /| ______ ___________ | \ \| | |---| | | / /| | | | DATA | | \ \| | | |DESCRIPTION| _______ | DATALANGUAGE ___________| | | |___________| | |<-------------------->| || |STORED| |________| USER | | PATH |APPLICATION|| | DATA |__________________|REQUEST| | | PROGRAM || | | |_______|<----!--------------->|___________|| | | ___________ | ! DATA PATH| | | | | | ! / /| | | | PORT |-----! \ \| | | |DESCRIPTION| | / /| |______| |___________| | \ \|_____________________________________| / / NETWORK Figure 2-1 A Model of Datacomputer/User Interaction2.7.2 Application Features for Data SharingIn using data stored at the datacomputer, users may supply a descriptionof the data which is customized to the application. This description ismapped onto the description of the stored data. These descriptions maybe at different levels. That is, one may merely rearrange the order ofcertain items, while another could call for a total restructuring of thestored representation. So that each user may be able to build upon thedescriptions of another, data entities should be given named types.These type definitions are of course to be stored along with the datathey describe. In addition, certain functions are so closely tied tothe data (in fact may be the data in the virtual description case -- seesection 3), that they must also reside in the datacomputer and their tiewith the data items should be maintained by the datacomputer. Forexample, one user can describe a data base as made up of structurescontaining data of the types _latitude_ and _longitude_. He could alsodescribe functions for comparing data of this type. Other users, notconcerned with the structure of the _latitude_ component itself, butinterested in using this information simply to extract other fields ofinterest can then use the commonly provided definitions and functions.Furthermore, by adopting this strategy as many users as possible can bemade insensitive to changes in the file which are tangential to theirmain interests. For example, _latitudes_ could be changed from binaryrepresentation to a character form and if use of that field wererestricted to its definitions and associated functions, existingWinter, Hill & Greiff [Page 18]RFC 610 Further Datalanguage Design Concepts December 1973application systems would be unaffected. Conversion functions could bedefined to eliminate the impact on currently operating programs. Theability of such definitional facilities means that groups of users candevelop common functions and descriptions for dealing with shared dataand that conventions for use of shared data can be enforced by thedatacomputer. These facilities are discussed under _extensibility_ inSection 3. ___________________________________________ _______________| ____________ | | ___________ || |APPLICATION | | | |APPLICATION| || _| DATA |_|____|_| PROGRAM | || | |DESCRIPTIONS| | | |___________| || | |____________| | |_______________|| | ^ | HOST 1| ______ | | || | | | _____|______ || | | | | DATA | || | | | | FUNCTIONS | || | | | |____________| | _______________| | | ___________ | ____________ | | ___________ || | | | STORED |__| | | | | |APPLICATION| || | |__| DATA |____| |_|____|_| PROGRAM | || |STORED| |DESCRIPTION|__ | | | | |___________| || | DATA | |___________| | |____________| | | || | | ^ | ____________ | | ___________ || | | | | | | | | |APPLICATION| || | | _____|_____ | | |_|____|_| PROGRAM | || | | | DATA | |_| | | | |___________| || | | | FUNCTIONS | |____________| | |_______________|| |______| |___________| | HOST 2|___________________________________________| DATACOMPUTER Figure 2-2 Multiple User Interaction with the Datacomputer2.7.3 Communication ModelWe intend that datalanguage, while at a high level conceptually, will beat a low level syntactically. Datalanguage provides a set of primitivefunctions, and a set of commonly used higher level functions (seesection 4 on the datalanguage model). In addition, users can definetheir own functions so that they can communicate with the datacomputerat a level as conceptually close to the application as possible.Winter, Hill & Greiff [Page 19]RFC 610 Further Datalanguage Design Concepts December 1973There are two reasons for datalanguage being at a low levelsyntactically. First, it is undesirable to have programs composingrequests into an elaborate format only to be decomposed by thedatacomputer. Second, by choosing a specific high level syntax, thedatacomputer would be imposing a set of conventions and terminologywhich would not necessarily correspond to those of most users. DATACOMPUTER ENVIRONMENT | OUTSIDE ENVIRONMENT | _______ | |____ | __|GENERAL|____ | | DMS |____ | | |_______| _________ ________ _________ || | | HIGHER | | |__| _______ ________|PRIMITIVE|___| LEVEL |___|LOW-LEVEL|_____|COBOL | | COBOL ||LANGUAGE | |LANGUAGE| | SYNTAX |__ |SERVER |___|PROGRAM ||_________| |________| |_________| | |_______| |________| | | _______ |__|ON LINE| | | QUERY |_______ |_______| | | ___|____ |TERMINAL| | | USERS | |________| | APPLICATION APPLICATIONS | SERVERS Figure 2-3 Datacomputer/User Working Environment2.8 SummaryIn this section we have presented the major considerations which haveinfluenced the current datalanguage design effort. The datacomputer hasmuch in common with most large-scale shared data management systems, butalso has a number of overriding concerns unique to the datacomputerconcept. The most important of these are the existence of a separatebox containing both hardware and software, the control of an extremelylarge storage device, and embedding in a computer network environment.Data sharing in such an environment is a central concern of the design.Both extensive data description facilities and high level communicationWinter, Hill & Greiff [Page 20]RFC 610 Further Datalanguage Design Concepts December 1973between user and datacomputer are necessary for data integrity and fordatacomputer optimization of user requests. In addition, the expecteduse of the datacomputer involves satisfying several conflictingconstraints for different modes of operation. One way of satisfyingvarious user needs is to provide datalanguage features so that users maydevelop their own application packages within datalanguage.Winter, Hill & Greiff [Page 21]RFC 610 Further Datalanguage Design Concepts December 19733. Principal Language ConceptsThis section discusses the principal facilities of datalanguage.Specific details of the language are not presented, however, thediscussion includes the motivation behind the inclusion of the variouslanguage features and also defines, in an informal way, the terms weuse.3.1 Basic Data ItemsBasic data are the atomic level of all data constructions; they cannotbe decomposed. All higher level data structures are fundamentallycomposed of basic data items. Many types of basic data items will beprovided. The type of an item determines what operations can beperformed on the item and the meaning of those operations. Datalanguagewill provide those primitive types of data items which are commonly usedin computing systems to model the real world.The following basic types of data will be available in datalanguage:_fixed_point_numbers_, _floating_point_numbers_, _characters_,_booleans_, and _bits_. These types of items are "understood" by thedatacomputer system to the extent that operations are based on the typeof an item. Datalanguage will also include an _uninterpreted_ type ofitem, for data which will only be moved (including transmitted) from oneplace to another. This type of data will only be understood in thetrivial sense that the datacomputer can determine if two items of theuninterpreted type are identical. Standard operations on the basictypes of items will be available. Operations will be included so thatthe datacomputer user can describe a wide range of data managementfunctions. They are not included with the intent of encouraging use ofthe datacomputer for the solving of highly computational problems.3.2 Data AggregatesData aggregates are compositions of basic data items and possibly otherdata aggregates. The types of data aggregates which are provided allowfor the construction of hierarchical relationships of data. Theaggregates which will definitely be available are classified as_structs_, _arrays_, _strings_, _lists_, and _directories_.A struct is a static aggregate of data items (called _components_). Astruct is static in the sense that the components of a struct cannot beadded or deleted from the struct, they are inextricably bound to thestruct. Associated with each component of the struct is a name by whichthat component may be referenced relative to the struct. The structaggregate may be used to model what is often thought of as a record,Winter, Hill & Greiff [Page 22]RFC 610 Further Datalanguage Design Concepts December 1973with each component being a field of that record. A struct can also beused to group components of a record which are more strongly related,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -