ISO/IEC JTC1/SC21/WG3 N1677 SQL/MM SOU-002 Date: March, 1994 ISO International Organization for Standardization ISO/IEC JTC1/SC21 Information Retrieval, Transfer and Management for OSI WG3 Database Secretariat: Canada (SCC) Project: 1.21.3.6 (Subject to Change) Title: SQL Multimedia and Application Packages (SQL/MM) Project Plan Author: Paul Cotton (Editor) References: 1) ISO/IEC JTC1/SC21 N8205, "SQL Multimedia and Application Packages (SQL/MM) Project Plan (Revised) Yokohama, Japan, June, 1993" 2) ISO/IEC JTC1/SC21 WG3 N1663, "Minutes of SQL/MM Meeting," Munich, Germany, Jan., 1994 3) ISO/IEC JTC1/SC21 N6931, "(ISO/ANSI) Working Draft Database Language SQL3," July, 1992 4) ISO/IEC JTC1/SC21 WG3 N1454, "Proposed Six-week Rule for DBL Contributions", Nov., 1992. 5) ISO/IEC JTC1/SC21 WG3 N1555, "Electronic Mail Balloting Procedures", June, 1993. SQL/MM SOU-002 Contents Page 1 Introduction ..........................................1 2 Scope and field of application ........................1 3 Purpose and justification .............................1 3.1 Needs ..........................................1 3.2 Existing practice ..............................2 3.3 Expected stability .............................2 3.4 Impact on existing user practice/investment ....2 3.5 Impact on supplier products and support ........2 3.6 Technology and costs for compliance verification ........................................3 3.7 Legal consideration ............................3 3.8 Expected useful life of standard ..............3 4 Overall Plan ..........................................3 4.1 Type of document ...............................3 4.2 Dependencies ...................................4 4.3 Work directives ................................4 4.4 Concepts and terminology .......................6 5 Program descriptions ..................................6 5.1 Framework and general purpose facilities .......6 5.2 Full-text ......................................7 5.3 Spatial ........................................8 Appendix A: Relevant documents ..........................10 A.1 Existing international standards ...............10 A.2 Emerging international standards ...............10 A.3 Initial project input documents ................11 Appendix B: Cooperation and liaison .....................12 B.1 International standards efforts for close liaison .............................................12 B.2 Other related international standards efforts ..12 B.3 Other related domestic standards efforts .......12 Appendix C: Environment of Work .........................13 C.1 Resources ......................................13 C.2 Frequency and during of meetings ...............13 C.3 Six-week rule for contributions ................13 C.4 Electronic mail balloting procedures ...........13 ii SQL/MM SOU-002 Contents SQL/MM SOU-002 1 Introduction This document describes the work plan for the SQL Multimedia and Application Packages (SQL/MM) project. This document is a revision of reference [1] and reflects the decisions of the last meeting of the SQL/MM Rapporteur Group [2]. 2 Scope and field of application Specify packages of SQL abstract data types for use in various application areas. Pay particular attention to packages such as Full-Text and Spatial. Future packages for consideration include Still Graphics, Still Images, Animation, Full Motion Video, Audio, Euclidean Geometry, Seismic, Geography, Music, Mathematical Structures, etc. Specify each package of abstract data type (ADT) definitions using the facilities for ADT definition provided in the emerging Database Language SQL enhancement (ISO/IEC Project 1.21.3.4). Rely on other ISO/IEC and CCITT standards as the basis of definition for SQL ADTs and provide transformations to and from standard external representations whenever appropriate. The main intent of standardizing is to allow SQL applications to use the same ADTs across different application areas, thereby promoting interoperability and sharing of data, and encouraging performance optimization over a manageable collection of types. It is best if many of the needed packages are developed under a single coordinated effort to avoid duplication or incompatible specification of the more elementary ADTs that get used in a number of different application areas. 3 Purpose and justification 3.1 Needs Database Language SQL (ISO/IEC 9075:1989) has become a very important standard in many application areas. The recently published SQL 1992 enhancement (ISO/IEC 9075:1992) adds new features and facilities to make SQL a comprehensive language for definition, manipulation, protection, and administration of table-structured data. A second substantial enhancement (ISO/IEC Project 1.21.3.4), often called SQL3, is currently at the working draft stage with standardization expected in the 1996 time frame. The SQL3 specification [3] is a forward-looking SQL enhancement that intends to provide a computationally complete language for defining and managing persistent objects. SQL3 also contains Triggers and SQL/MM SOU-002 Project Plan 1 SQL/MM SOU-002 Assertions that can form the basis of "intelligent" database management systems. An important feature in the SQL3 specification is known as object oriented extensions of the SQL language including user-defined, abstract data types (ADT), including methods, object identifiers, subtypes and inheritance, polymorphism, type templates, and integration with existing facilities. The base data types in SQL3 include: fixed-length and variable-length character strings, fixed-length and variable-length bit strings, fixed and floating point numerics, dates, times, time stamps, intervals, Booleans, and enumerations. It is expected that the following generator data types, known as complex object support, will be added to the SQL3 specification: List, Set, and Array. It is possible that other generator data types such as those specified in the emerging ISO/IEC JTC1/SC22 Common Language-Independent Data type (CLID) specification (e.g., Choice, Record) will also be added to the SQL3 specification. The SQL generator types can be applied to any base data type or to any previously defined generated data type to create a new data type. The components of an ADT can then be defined in terms of one or more of the base data types, or any generated type. Thus the SQL ADT facility will serve the basic needs of application areas handling complex, structured data. Since SQL is used extensively in many different application areas, there is a remaining need to define robust packages of specific SQL-based packages of specific objects and functions for use in these areas. A comprehensive collection of application packages is needed that has document management applicability, general scientific or engineering applicability, or tools for the management of multimedia objects such as image, voice, and video. Some application packages will have broad appeal across different application areas and could benefit from specification in a single International Standard, i.e. the one described herein. Other SQL packages have limited appeal within a single application area and could be defined and standardized within their own special application areas. 3.2 Existing practice Today, each application area defines its own basic data types from the data definition facilities provided by its underlying database system and programming languages. Since there is no existing standard for generic structures and operations, each application area (e.g., spatial information) must build its own complex data structures from 2 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 the very general capabilities provided by the database or programming language. This sometimes leads to gross inefficiencies. Each application currently defines its own basic types, even if those types are used in many other related application areas. For example, engineering and spatial applications both need Euclidean geometry, but right now there is no standard that would allow them to build on common ADT definitions. Even with the new "generator" capabilities specified in SQL, there are no agreed SQL definitions for objects and functions used in multiple application areas. 3.3 Expected stability Specifications in this standard will be derived from classical definitions in different application areas, or from newly emerging standards in other technical committees, and their interface will be defined using standard SQL definitional mechanisms. Packages will be designed to be extensible so that new structures and/or operations can be added in an upward-compatible manner. These specifications will be stable as long as the SQL standard itself is stable. 3.4 Impact on existing user practice/investment Existing applications will not be able to take advantage of this standard immediately, but future software developers will be able to use SQL application packages to define portable and interoperable applications. Further, they will take full advantage of database management system for sharing and keeping integrity of data. 3.5 Impact on supplier products and support Suppliers of many commercial SQL database products already provide various application-specific packages for customer use. They will now be able to provide standard packages that facilitate greater data sharing and interoperability and simplify support requirements. Translations to and from existing application packages will protect the investment already made. 3.6 Technology and costs for compliance verification Each SQL application package will be defined using facilities from the emerging SQL3 standard. Compliance verification can be based upon straight-forward extensions of SQL test suites already in existence. SQL/MM SOU-002 Project Plan 3 SQL/MM SOU-002 3.7 Legal consideration The SQL3 basis of definition is an emerging ISO and IEC standard (ISO/IEC Project 1.21.3.4). Application specific definitions and terminology will be taken from existing or emerging International Standards, from non-proprietary sources, or from classical references. 3.8 Expected useful life of standard Applications developed using this standard may have an intended life cycle of up to twenty years. Each version of this standard will be upward compatible with previous versions in order to support software life cycles of this duration. 4 Overall Plan 4.1 Type of document This will be a multi-part International Standard consisting of an evolving number of parts. Part 1 will be entitled Framework and General Purpose Facilities. The framework will specify how the other parts shall be constructed and will require that all packages be specified using the definitional mechanisms of the emerging SQL3 standard (ISO/IEC Project 1.21.3.4). The resulting definitions can either be processed by conforming SQL implementations or implemented by systems that can then interoperate with conforming SQL implementations. The General Purpose Facilities of Part 1 defines ADTs that are common to more than one application package in the standard. Each of the other parts will be devoted to a specific SQL application package. The parts will be "separable" so that they can be separately processed and maintained according to JTC1 procedures. The following are the parts that are being initially considered: Part 1 Framework and General Purpose Facilities Part 2 Full-Text Part 3 Spatial Now that this project has been approved by JTC1, it is expected that SC21 will approve additional sub projects for each part of the standard. 4 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 The following topics are candidates for additional parts in this standard: Still Graphics Animation Still Image Full Motion Video Audio Seismic Music Mathematical Structures 4.2 Dependencies This International Standard is proposed as a "companion" standard to the emerging SQL3 standard (ISO/IEC Project 1.21.3.4). Therefore processing of this standard is dependent upon processing of SQL3, currently projected for the 1996 time frame. The initial parts of this standard will follow the SQL3 standard by no more than one step in the ISO/IEC development process. 4.3 Work directives Work with national and international SQL development committees (JTC1/SC21/WG3 Database Languages) to ensure that SQL definitions are used properly and to ensure that SQL contains the appropriate "generator" data types and other definitional mechanisms to enable successful specification of robust SQL application packages. Work with JTC1/SC22/WG11 (Language Bindings) to try to ensure that the non-SQL-specific results of this project can be translated to any environment that supports the "generator" data types of the CLID specification (ISO/IEC CD 11404). If this liaison effort is successful, then objects and methods defined by this International Standard can more easily interoperate or interchange with analogous objects in any programming language or processing environment that supports CLID. Work with the ASN.1 Rapporteur Group in JTC1/SC21/WG6 to try to ensure that abstract data types derived for these SQL application packages can be translated smoothly to ASN.1 (ISO/IEC 8824) and transmitted as ASN.1 packages (ISO/IEC 8825) to remote sites in a communications network. Work with JTC1/SC24 Working Groups on Computer Graphics Metafile (CGM) and Image Processing to specify appropriate structures and methods for SQL Still Graphics and Still Image data types and to develop SQL CAST functions that SQL/MM SOU-002 Project Plan 5 SQL/MM SOU-002 enable translations of these SQL data types into appropriate CGM or Image representations. Work with JTC1/SC18 WG1, WG3, and WG8 to specify the appropriate methods on SQL Full-Text data types and to develop SQL CAST functions that enable translations of SQL Full-Text ADTs into appropriate SGML, HyTime, or ODIF representations. Work with JTC1/SC29 Working Groups on Audio, Picture, and Multimedia/Hypermedia Encodings to develop SQL CAST functions that enable translations of related SQL data types into appropriate representations for interchange. Work with JTC1/SC22/WG21 (C++) to try to ensure that SQL ADTs are not incompatible with any emerging ADTs in the C++ class libraries. If this liaison effort is successful, then it becomes more possible for users to manipulate these ADTs in either SQL or C++ and to define additional methods that are invocable from either SQL or C++. Work with data modeling groups such as IRDS, PDES, OMG, and OSI Managed Objects groups, to determine if various SQL application packages might address some of their requirements. Invite existing application area groups, e.g., working groups on Spatial Systems, Computer Graphics, or Full-Text processing systems, to participate actively in the development of this standard. Invite such groups to provide definitions for application-specific structures and operations to be supported as SQL abstract data types by various parts of this standard. 6 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 4.4 Concepts and terminology All definitions of concepts and special terminology will be taken from the SQL standard, from other international standards or from classical references in each application area. 5 Program descriptions 5.1 Framework and general purpose facilities 5.1.1 Description of program Part 1 of this standard is entitled Framework and General Purpose Facilities. The Framework section specifies how the other parts shall be constructed and requires that all packages be specified using the definitional mechanisms of the emerging SQL3 standard (ISO/IEC Project 1.21.3.4). The Concepts clause of the Framework section defines terminology required in the Framework or in more than one part of the standard. The Framework section describes how to specify a SQL/MM package using the Abstract Data Type (ADT) facilities of SQL3. This description includes a tutorial example to permit developers of new parts of the standard to development packages without having to acquire and fully understand the complete SQL3 document. The Framework section also defines new keyword-based infix notation for invoking a SQL/MM package as an alternative to the supported prefix functional notation supported by SQL3. The General Purpose Facilities section of Part 1 specifies SQL/MM ADTs that have general purpose applicability in a number of different application areas. These may include numeric functions, especially trigonometric, exponential, and logarithmic, as well as various other general purpose ADTs such as tree, graphs, stacks and queues. More to be supplied as required. 5.1.2 Target dates Part 1: Framework and General Purpose Facilities will follow the SQL3 standard by no more than one step in the ISO/IEC development process. SQL/MM SOU-002 Project Plan 7 SQL/MM SOU-002 The following are the current target dates for Part 1: Framework: Start June 1993 Working Draft August 1994 Committee Draft June 1995 DIS 1997 IS 1998 8 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 5.1.3 Resource requirements Part 1: Framework is being developed by the SC21/WG3 SQL/MM Rapporteur Group. This Rapporteur Group includes several National Body's representatives from the SC21/WG3 Database Languages Rapporteur Group to ensure that the Framework document is correctly aligned with the emerging SQL3 standard. 5.1.4 Work directives Work with national and international SQL development committees (JTC1/SC21/WG3 Database Languages) to ensure that SQL definitions are used properly and to ensure that SQL contains the appropriate "generator" data types and other definitional mechanisms to enable successful specification of robust SQL application packages. Work with data modeling groups such as IRDS, PDES, OMG, and OSI Managed Objects groups, to determine if various SQL application packages might address some of their requirements. 5.2 Full-text 5.2.1 Description of program Part 2 of this standard describes full-text abstract data types including "simple" multi-column full-text searching. Support is provided for full-text techniques such as phrases, soundex, forward and backward term truncation, soundex and proximity searching. Support for thesaurus operations such as searching for broader, narrow and related terms is based on the appropriate ISO standards. Thesaurus operations not currently supported by another ISO standard will be completely specified in Part 2. Part 2 will define various full-text search result specifications including match codes and relevance ranking. Work will initially be carried out to support the full-text operations described above for languages supported directly by ISO 8859-1. Further work will then be carried out to extend these operations to languages supported by other character sets such ISO 10646. This work will be based on the SQL3 character set facilities. Part 2 will define an infix syntax for the supported operations based on the mechanisms defined in Part 1: Framework. SQL/MM SOU-002 Project Plan 9 SQL/MM SOU-002 Work will be carried out to extend this Part to handle structured documents created according to other ISO standards such as SGML and ODA. 5.2.2 Target dates Part 2: Full-Text will follow the SQL3 standard by no more than one step in the ISO/IEC development process. It is expected that the Part 2: Full-Text will be progressed in conjunction with Part 1: Framework and General Purpose Facilities. 10 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 The following are the current target dates for Part 2: Full- Text: Start June 1993 Working Draft August 1994 Committee Draft June 1995 DIS 1997 IS 1998 5.2.3 Resource requirements Part 2: Full-Text is being developed by the SC21/WG3 SQL/MM Rapporteur Group. This part of the standard will only be progressed on schedule if National Body full-text experts are available to participate in the SQL/MM Rapporteur Group. The SQL/MM Rapporteur Group includes several National Body's representatives from the SC21/WG3 Database Languages Rapporteur Group to ensure that the full-text ADT requirements are correctly aligned with the emerging SQL3 standard. 5.2.4 Work directives Invite existing full-text groups, e.g., IEEE SFQL and Japan's Full-Text Multimedia Database Committee, to participate actively in the development of this part. Invite such groups to provide definitions for full-text- specific structures and operations to be supported by the full-text abstract data types. Work with JTC1/SC18 WG1, WG3, and WG8 to specify the appropriate methods on SQL Full-Text data types and to develop SQL CAST functions that enable translations of Full- Text ADTs into appropriate SGML, HyTime, or ODIF representations. Work with the SC responsible for ISO 10162/10163: Search and Retrieval to determine possible overlap of interests and functionalities. Work with JTC1/SC2 to try to ensure that the abstract data types defined for the full-text application package consider various character set issues managed by SC2. 5.3 Spatial 5.3.1 Description of program Part 3 of this standard describes abstract data types for spatial and geographic information systems. SQL/MM SOU-002 Project Plan 11 SQL/MM SOU-002 The objective of this part is to define a Geographic Object data type that is in turn based on data types that describe the geometry and other metadata for the spatial object. The Geographic Object data type supports operations such as Disjoint, Intersects, Coincides, etc. This part also defines a Temporal Object data type that supports functions such as Equals, Before, After, etc. Research is being carried out to determine if this part should define a set of ADTs for temporal operations or whether this ADT should be a common facility of the whole standard or of the associated standard SQL3. This part also defines a set of basic data types (e.g., various geometric types) which are used in building the more complicated data types described above. Early research into this part has identified several requirements that are not supported by the facilities currently defined in SQL3. "Work arounds" may have to be developed for these problem areas if the required SQL3 facilities are not forthcoming. 5.3.2 Target dates It is expected that the Part 3: Spatial will be progressed in conjunction with Part 1: Framework and General Purpose Facilities. The following are the current target dates for Part 3: Spatial: Start June 1993 Working Draft August 1994 Committee Draft June 1995 DIS 1997 IS 1998 5.3.3 Resource requirements Part 3: Spatial is being developed by the SC21/WG3 SQL/MM Rapporteur Group. This part of the standard will only be progressed on schedule if National Body spatial and geographic system experts are available to participate in the SQL/MM Rapporteur Group. The SQL/MM Rapporteur Group includes several National Body's representatives from the SC21/WG3 Database Languages Rapporteur Group to ensure that the Spatial ADT requirements are correctly aligned with the emerging SQL3 standard. 5.3.4 Work directives 12 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 Invite existing spatial and geographic groups, e.g., SCC Database Working Group (Canada) and ANSI X3L1 (USA), to participate actively in the development of this part. Invite such groups to provide definitions for spatial- specific structures and operations to be supported by the spatial abstract data types. SQL/MM SOU-002 Project Plan 13 SQL/MM SOU-002 Appendix A: Relevant documents A.1 Existing international standards ISO/IEC 9075:1992 Database Language SQL ISO/IEC 8632:1987 Computer Graphics Metafile (CGM) ISO/IEC 8879:1986 Standard Generalized Markup Language (SGML) ISO/IEC 8824:1987 Abstract Syntax Notation One (ASN.1) ISO/IEC 8825:1987 Encoding rules for ASN.1 A.2 Emerging international standards SQL3 A follow-on SQL revision expected in 1995-96, currently a Working Draft in JTC1/SC21. CLID Common language-independent data types, currently a Committee Draft in JTC1/SC22/WG11, ISO/IEC CD 11404. ASN.2 Follow-on extensions to ISO 8824 and ISO 8825 for additional data types, currently proposed Draft Addendums in JTC1/SC21. STEP Standard for the exchange of product model data, under development in ISO TC184. ODIF Office Document Interchange Form, under development in ISO/IEC JTC1/SC18, Text and Office systems. Images Computer Graphics - Image Processing and Interchange, under development in ISO/IEC JTC1/SC24 with documents IM-100 (Issues), IM-101 (Architecture), IM-102 (Application Program Interface), and IM-103 (Interchange Format). Photos The JPEG standard for stored representation, transmission, and compression and decompression of photographic images, under development in ISO/IEC JTC1/SC29/WGxx, Coded Representation of Picture Information. Movies The MPEG standard for stored representation, transmission, and compression and decompression of motion pictures, under development in ISO/IEC JTC1/SC29/WGxx, Coded Representation of Motion Picture Information. MHEG The Multimedia, Hypermedia Experts Group, new projects under development in ISO/IEC 14 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 JTC1/SC29/WGxx, Coded Representation of Multimedia and Hypermedia Information. MIDI Musical Instrument Digital Interface, under development by the International MIDI Association. DSSSL Document Style Semantics and Specification Language, under development in JTC1/SC18, ISO/IEC DIS 10179. SMDL Standard Music Description Language, under development in JTC1/SC18, ISO/IEC CD 10743. HyTime Hypermedia/Time-based Structuring Language, under development in JTC1/SC18, ISO/IEC DIS 10744. A.3 Initial project input documents 1) SC21/WG3 N1252, Recommendation of the WG3 ad hoc group for the study of Q3/002 - Support for Full Text Manipulation in Structured Data, dated 15 November 1991. 2) SC21/WG3 N1299, SQL Generic ADT packages, a working paper describing possible ADTs for consideration, formerly numbered DBL KAW-17rev1, dated 24 October 1991. 3) SC21/WG3 N1291, Liaison Statement from SC18/WG3 and SC18/WG8 on Full Text Manipulation in Structured Data, dated 4 December 1991. 4) SC21/WG3 FTMMDB-TOK-16, Structured Full-Text Query Language (SFQL), Air Transport Association document ATA 89-9C.SFQL2, version 2, revision 2, July 19, 1991. 5) SC21/WG3 FTMMDB-TOK-10, Document Query Language, under development by JIS Full-Text Multimedia Database Committee. SQL/MM SOU-002 Project Plan 15 SQL/MM SOU-002 Appendix B: Cooperation and liaison B.1 International standards efforts for close liaison SC21/WG3 Database Language SQL SC24/WGxx CGM and Image Processing Working Groups SC29/WGxx Audio, Picture, Multimedia & Hypermedia Working Groups SC18/WG1 Hypermedia, Multimedia Model Framework SC18/WG3 Abstract Interfaces for Manipulation of ODA Documents SC18/WG8 Document Database Access SC22/WG11 CLID SC22/WG21 C++ ISO TC184/SC5 PDES -- Architecture and Communications B.2 Other related international standards efforts ASN JTC1/SC21/WG6 ODP JTC1/SC21/WG7 IRDS JTC1/SC21/WG3 OSI JTC1/SC21/WG4 -- OSI Managed Objects Library ISO TC46 B.3 Other related domestic standards efforts Full-Text Multimedia Database Committee -- Japan IEEE SFQL Committee -- USA Object Information Management (OIM) -- USA X3H7 Product data exchange using STEP -- PDES, Inc. Object Management Group -- OMG, Inc. 16 SQL/MM SOU-002 Project Plan SQL/MM SOU-002 Appendix C: Environment of Work C.1 Resources The principal resources for this project will be drawn from the established membership of ISO/IEC JTC1/SC21/WG3 (Database), with assistance from experts in various application areas. WG3 has approximately 60 participants with a wide range of expertise in all areas of database, data modeling, information resource management, and remote database access. Approximately 10 National Bodies have direct and continuing participation in WG3. Most of these National Bodies have firmly established domestic input committees that meet frequently to develop contributions and positions on WG3 projects. The following National Body domestic committees have already expressed an interest in contributing to this project: Australia, Canada, France, Japan, Korea, Netherlands, UK (pending), and US. C.2 Frequency and during of meetings WG3 typically meets for approximately 10 days every year (in approximately May-June) along with other SC21 working groups. Each project usually meets one additional time per year (in approximately November) for 5 days, at the invitation of some participating National Body. C.3 Six-week rule for contributions At its Munich, Germany interim meeting in January, 1994 the SQL/MM Rapporteur Group adopted a procedure that requires that "on-time" contributions must be distributed at least six weeks prior to the commencement of a SQL/MM meeting. This rule is identical to the 6-week rule used by the DBL Rapporteur Group and the procedures for this rule are defined in document WG3 N1454 [4]. C.4 Electronic mail balloting procedures At its Munich, Germany interim meeting in January, 1994 the SQL/MM Rapporteur Group adopted procedures that define how to carry out electronic mail discussions and ballots for "late" contributions or contributions submitted between RG meetings. These procedures are identical to the electronic mail procedures used by the DBL Rapporteur Group and are clearly defined in document WG3 N1555 [5]. These procedures SQL/MM SOU-002 Project Plan 17 SQL/MM SOU-002 will come into affect beginning after_the RG's meeting in Southampton in July, 1994.