XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] SQL4

Dmitry,

Interesting note.  Thanks for sharing it with us.  I have several 
comments that I hope will be useful.

During the development period of what became SQL:2003 (that is, the 
edition of the SQL standard published in 2003), much of the world 
referred to the expected standard as "SQL4".  I fear that your choice 
of that same name for your effort might confuse some people and give 
you less attention that you might want (because people might assume 
that "SQL4" means "SQL:2003").

More importantly, it seems like you might not be aware of SQL/XML, 
part 14 of the SQL:2003 standard (revised in 2006, with another 
revision of the whole SQL standard expected in 2008).  SQL/XML 
(ISO/IEC 9075-14:2006 and ANSI/ISO/IEC 9075-14:2006) provides 
language to transform SQL tables into XML trees and vice versa, as 
well as providing the ability to invoke XQuery from with SQL 
statements.  It has proven to be extremely popular with customers of 
Oracle, IBM, and Microsoft database systems, and several other 
database system publishers (including Hitachi in Japan) are known to 
be working on it.  I believe that at least one of the open source SQL 
systems is in the process of implementing it, but I wouldn't want to 
imply that I know this for a fact.   (FULL DISCLOSURE: I work for 
Oracle; in addition, I am the editor for all parts of the SQL 
standard, including part 14, for both ANSI and ISO.)

SQL/XML provides capabilities that are SQL-centric in the sense that 
they depend on an SQL engine for processing of SQL data and for 
handling the SQL statements that manipulate both non-SQL (XML) and 
SQL data together.  But it provides both "paradigms": using XML data 
as though it were ordinary SQL data, and using SQL data as though it 
were ordinary XML data.  Because of this, we have made it possible 
for people to write their applications from the SQL viewpoint, even 
if they are not comfortable in the XML world, and possible for others 
to write their applications from the XML point of view, even if they 
are not comfortable in the SQL world.

Of course, the SQL language has nothing at all to do with HTTP (or 
vice versa), and one can access an SQL database system over whatever 
network protocol one wishes, as long as there is a "listener" for the 
chosen protocol that can provide an interface to the DBMS.

If I understand your work correctly, the significant difference 
between SQL/XML and your language is that you use foreign key 
relationships implicitly to perform joins, using the notation 
T1.T2.T3, which is roughly equivalent to ((T1 JOIN T2 ON T2.FK=T1.PK) 
JOIN T3 ON T3.FK=T2.PK).  (I say "roughly" because I did not attempt 
to show an entire query expression and all of the syntax 
details.)  Importantly, your syntax IMPLICITLY uses the primary key 
(PK) - foreign key (FK) relationships to construct the joins, while 
the syntax I sketched requires EXPLICIT specification of the columns 
to be used for the join relationships.  As your work observes, it is 
sometimes necessary using your syntax to explicitly identify the FK 
columns to be used.

I should note here that the SQL standard does *not* provide syntax to 
perform joins based on PK-FK relationships specified in the 
DDL.  There was an effort to define that capability several years 
ago, but it never went anywhere for reasons I've since 
forgotten.  The closest that SQL provides is the relational operator 
NATURAL JOIN which depends on columns that have the same name in two tables.

My conclusion about your work is that you have done two things: 
You've chosen a non-SQL-like notation to express SQL constructs (in 
SQL, a.b.c means "column c of table b in schema a", but it your 
syntax is means "join tables a, b, and c based on their PK/FK 
relationships"), and you've mixed in at least one completely 
orthogonal concept -- the network protocol that a client application 
might use to connect to a DBMS.  I think that the former, however 
compact, is a fatal error in the SQL community, and I think that the 
latter is more properly the domain of a database system 
implementation than a database language.

It seems that you know that ISO/IEC JTC1/SC32 is responsible for data 
management, and you must know that includes SQL.  It is true, and 
very regrettable, that Russia never participated in SC32.  Russia has 
been an Observer member of SC32 for several years.  I visited Moscow 
a few years ago to give some talks to a database users group, to an 
Oracle customer group, and to some academicians in the database 
field.  At that time, I implored them to work with the Russian 
standards organizations to become active in SC32, and they said that 
they would try.  Unfortunately, nothing ever came of it.

While I cannot say whether other organizations would or would not be 
interested in your work, it seems very UNlikely that either SC32 or 
INCITS (the ANSI-accredited standards making organization responsible 
for information technology standards in the USA) would be interested, 
because they already publish a standard that accomplishes what you 
say is your primary focus.  I suppose that ISO/IEC JTC1/SC22 
(Programming languages) might be worth approaching, but they've 
always steered away from database languages, largely because that 
responsibility was already given to SC32.  Based on my decades of 
work in the ISO and ANSI arenas, I am skeptical that the programming 
language groups would be interested and, even if they are, that they 
would be permitted to work on such a project that is so clearly 
redundant with existing JTC1 and INCITS standards.

I also am sorry to tell you that X/Open no longer exists as an 
independent entity.  About a decade ago, perhaps a little more, 
X/Open merged into The Open Group, which terminated all of its SQL 
activities.  For a few years, discussions were held with The Open 
Group about some SQL-related activities (e.g., conformance testing), 
but they were clearly uninterested unless there was a lot of money 
given to them up front.  At this time, I have no idea at all what The 
Open Group does or what value it adds to the community.  It is no 
longer on my radar screen.

In summary, I regret to say that I do not believe that you've come up 
with anything sufficiently new to overcome existing standards and 
industry directions, or that any of the standards organizations 
you've cited are likely to be interested in pursuing what you are offering.

I wish you well in your on-going work and your efforts to have your 
work standardized.

Hope this helps,
    Jim

At 9/27/2007 11:51 PM, Dmitry Turin wrote:
>Good day.
>
>   I have invented programming language SQL4 for DBMS,
>which __simplifies e-business__ by merging SQL and XML:
>it put XML into database and get XML from database via HTTP
>(tree's model of data is over rational model).
>http://sql40.chat.ru/site/sql40/en/author/introduction_eng.htm
>http://sql40.chat.ru/site/sql40/en/author/determination_eng.htm
>http://sql40.chat.ru/site/sql40/en/author/inout_eng.htm
>   I already have wrote to SC32 to
>Mr. Dr. Timothy SCHOECHLE sc32-sec@jtc1sc32.org, timothy@schoechle.org,
>Mr. Bruce BARGMEYER bebargmeyer@lbl.gov,
>to Russian National Body to N.P.Pankratova info@gost.ru, npankratova@gost.ru
>and to SC22 to Sally Seitz SSeitz@ansi.org.
>Really Russian never took part in jtc1sc32 WG3 and others WG.
>Thus i must to find other organization (ANSI or X/Open) to standardaze.
>I don't find any Work Groups or mailing lists of ANSI or X/Open,
>so i ask you to help.
>
>Please prompt me how to standardize SQL4.
>What procedures i must to execute ?
>
>I will very thankfull to you for any help.
>
>
>Dmitry Turin
>SQL4      (4.3.0)  http://sql40.chat.ru
>HTML6     (6.4.1)  http://html60.chat.ru
>Unicode2  (2.1.0)  http://unicode2.chat.ru
>Computer2 (2.0.3)  http://computer20.chat.ru
>
>
>_______________________________________________________________________
>
>XML-DEV is a publicly archived, unmoderated list hosted by OASIS
>to support XML implementation and development. To minimize
>spam in the archives, you must subscribe before posting.
>
>[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
>Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
>subscribe: xml-dev-subscribe@lists.xml.org
>List archive: http://lists.xml.org/archives/xml-dev/
>List Guidelines: http://www.oasis-open.org/maillists/guidelines.php

========================================================================
Jim Melton --- Editor of ISO/IEC 9075-* (SQL)     Phone: +1.801.942.0144
   Co-Chair, W3C XML Query WG; F&O (etc.) editor    Fax : +1.801.942.3345
Oracle Corporation        Oracle Email: jim dot melton at oracle dot com
1930 Viscounti Drive      Standards email: jim dot melton at acm dot org
Sandy, UT 84093-1063 USA          Personal email: jim at melton dot name
========================================================================
=  Facts are facts.   But any opinions expressed are the opinions      =
=  only of myself and may or may not reflect the opinions of anybody   =
=  else with whom I may or may not have discussed the issues at hand.  =
========================================================================  



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS