SQL5 budget

Started by Dmitry Turinabout 17 years ago19 messages
#1Dmitry Turin
dmitry.turin@belarusbank.minsk.by

Hi, all.

I had preliminary conversation with my employer about implementation of SQL5 [1]http://sql50.euro.ru/sql5.16.4.pdf Brief description of SQL5 is on http://blogs.ingres.com/technology/2008/07/31/bringing-dbms-in-line-with-modern-communication-requirements-sql2009 or on http://sql50.euro.ru/site/sql50/en/author/resume_eng.htm without "Driven Scene" [2]http://computer20.euro.ru/driven-scene.pdf Brief description of SQL5 is on http://blogs.ingres.com/technology/2008/07/31/new-step-in-office-technologies-driven-scene or on http://computer20.euro.ru/site/computer20/en/author/driven-scene_eng.htm. He needs concrete budget.
So i'm asking you to estimate and say, how much will it cost.
In particular, speach goes about implemention of slides # 17-42, 47-56, 63, 102-109, 114-143,
147-157, 160-177, 180-197 of "sql5.16.4.pdf", and about implementation of http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

[1]: http://sql50.euro.ru/sql5.16.4.pdf Brief description of SQL5 is on http://blogs.ingres.com/technology/2008/07/31/bringing-dbms-in-line-with-modern-communication-requirements-sql2009 or on http://sql50.euro.ru/site/sql50/en/author/resume_eng.htm
Brief description of SQL5 is on
http://blogs.ingres.com/technology/2008/07/31/bringing-dbms-in-line-with-modern-communication-requirements-sql2009
or on
http://sql50.euro.ru/site/sql50/en/author/resume_eng.htm

[2]: http://computer20.euro.ru/driven-scene.pdf Brief description of SQL5 is on http://blogs.ingres.com/technology/2008/07/31/new-step-in-office-technologies-driven-scene or on http://computer20.euro.ru/site/computer20/en/author/driven-scene_eng.htm
Brief description of SQL5 is on
http://blogs.ingres.com/technology/2008/07/31/new-step-in-office-technologies-driven-scene
or on
http://computer20.euro.ru/site/computer20/en/author/driven-scene_eng.htm

#2Dmitry Turin
dmitry.turin@belarusbank.minsk.by
In reply to: Dmitry Turin (#1)
Re: SQL5 budget

I had preliminary conversation with my employer about implementation of SQL5 [1] without "Driven Scene" [2]. He needs concrete budget.
So i'm asking you to estimate and say, how much will it cost.
In particular, speach goes about implemention of slides # 17-42, 47-56, 63, 102-109, 114-143,
147-157, 160-177, 180-197 of "sql5.16.4.pdf", and about implementation of
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

Changes of two related projects (SQL5 & HTML6), not reflected in documentation yet.

===50

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #31,etc)

in addition to mentioned in pdf-document, statement
SELECT ... COMMENTING.
extracts additional record from table as first xml-element,
attributes of which contain comments, specified for each field earlier by statement
COMMENT tab/@fld BY "column title";
this first xml-element contains additional service xml-attribute '_=comment'.
usually comments are specified for html-tables, instead of html-trees

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #18)
http://html60.euro.ru/site/html60/en/author/tabfile_eng.htm (Sending of form)
http://html60.euro.ru/site/html60/en/author/cube_eng.htm (Sending of form)

Obtaining single xml-element (instead of xml-tree) with primary key (PK) for DBMS table (specified in some xml-attribute) means the following:
*) if this PK is already in DBMS table, then DBMS *updates* fields of record with this PK
*) if this PK is not in table (this usually means, that record with this PK was already deleted),
then DBMS *inserts* this xml-element under new PK (obtained from sequence for this PK), i.e. PK will be changed during insertion.

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #31-32, 39(Another output), 40)
http://html60.euro.ru/site/html60/en/author/forxml_eng.htm
http://html60.euro.ru/site/html60/en/author/quest_eng.htm#webforms_data (<data id="records">...</data>)

Each 'select ...' extracts data into LAN or WAN.
(instead of 'insert ... select ...' and 'select ... into ...', coping data into internal DBMS table).
Each 'select ... union ... select ...' interpreted as single extraction of xml into LAN or WAN.
Each extraction of data into LAN or WAN is automatically:
*) anticipated by content of field 'beginning' of system table 'SysXmlFormatting'
*) ended by content of field 'end' of system table 'SysXmlFormatting' and
*) by bament <?newdocument/?> (to inform client, e.g. browser, about end of document)
P.S.
Other field of system table 'SysXmlFormatting' is URL
(which specifies browser URL; 'null' means all URL and is applied,
only if 'SysXmlFormatting' does not contain record with exact URL).

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #173)

Authentification (obtaining username and password, slide #173) must be implemented by baments
(look at slides #26-27) and is described nowhere.

--other SQL5 additions

in addition to mentioned in pdf-document, each 'select ...' (extracting data into LAN/WAN) is savepoint.
DBMS rollbacks to this savepoint, having obtained bament
<?back/?>

in addition to mentioned in pdf-document, permissions for field are controlled
GRANT/REVOKE SELECT/INSERT/UPDATE ON tab/@fld FOR user1;

in addition to mentioned in pdf-document, if table "b" below is created
--------------------------
| b1 | b2 | b3 |
|------------------------|
| | a1 | a2 | a3 |
|------------------------|
| |
| |
--------------------------
then expression
IMPLY b/@b3 as b/@b3/@a2;
influence so, that any 'SELECT @b3 FROM b' will extract only one elementary field (@a2)
instead of all branch elementary fields (@a1, @a2, @a3),
i.e. mentioned statement will be equivalent to 'SELECT @b3/@a2 FROM b'.
it's for multi-language applications (@a1, @a2, @a3 contain notes in different languages)

DBMS creates separete CSS-file "username.css" for each user "username" in local (for DBMS) directory.
All accessable database fields (for user "username") are listed in this file as ¶fieldname
[instead of §fieldname, because DBMS does not know,
what fields are service (like @colspan, @rowspan) or
are values of properties (like in http://html60.euro.ru/site/html60/en/author/chart_eng.htm),
and what fields contain data for visualization -
so mark ¶ acts like comment for this xml-attribute),
except fields, which are primary keys in database, and which are always specified (and never ignored) as invisible.
Fields, calculated upon other fields and don't saved really, specified as calculated by browser upon other fields.
CSS-files are available for editing for DBMS administrator.

===60

in regard to
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<table name="M" action="./scriptM.cgi" portion="50" visual="20" id="id1">
<table name="S" action="./scriptS.cgi" portion="40" visual="10" master="id1">
the following construction must be implemented
<table name="M">
<table name="S">
with CSS
table[name=M] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M }
communication must be implemented via SQL5 over TCP
(look at slides #27-28 of http://sql50.euro.ru/sql5.16.4.pdf)
without closing TCP-connection after obtaining XML-document

as well as instead of
<table name="M" action="./scriptM.cgi" portion="50" visual="20" id="id1">
<table name="N" action="./scriptN.cgi" portion="50" visual="20" id="id2">
<table name="P" action="./scriptP.cgi" portion="50" visual="20" id="id3">
<table name="S" action="./scriptS.cgi" portion="40" visual="10" master="id1 id2 id3">
the following construction must be implemented
<table name="M">
<table name="N">
<table name="P">
<table name="S">
with CSS
table[name=M] { online:yes; portion:50; visual:20 }
table[name=N] { online:yes; portion:50; visual:20 }
table[name=P] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M N P }

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>
because saments are saved in database, but baments are not
(we don't need to save temporary service information)

as well as instead of
<_ name= event= arg= >
<a a1= a2= a3=>
the following construction must be sent
<?mtd name= event= arg= >
<a a1= a2= a3=>
</?mtd>

as well as instead of
<_ name="S" event="TableDown" arg="40">
<m m1="v15_1" m2="v15_2" m3="v15_3">
<n n1="v23_1" n2="v23_2" n3="v23_3">
<p p1="v47_1" p2="v47_2" p3="v47_3">
the following construction must be sent
<?mtd name= event= arg= >
<m m1= m2= m3= >
<n n1= n2= n3= >
<p p1= p2= p3= >
</?mtd>

instead of
<a a1= a2= a3="tiger.jpg">
<file name="a3" filename="tiger.jpg">Y29udGVudHMgb2YgZmlsZTEudHh0</file>
the following construction must be implemented
<a a1= a2= a3="tiger.jpg">
<?file attr="a3" value="tiger.jpg" xml:size= >Y29udGVudHMgb2YgZmlsZTEudHh0</file>

instead of
<table name="A" action="./script.cgi" portion="50" visual="20">
<select name="B" action="./script2.cgi" portion="40" visual="10">a2</select>
</table>
the following construction must be implemented
<table name="A"/>
with CSS
table [name=A] { online:yes; portion:50; visual:20 }
table [name=A] { §a2: B } /* 'portion', 'visual' are inherited */

in addition to mentioned, statement
table [name=A] { §a2: B C }
means, that "C" is master table for "B", "B" is master table for "§a2",
and that browser represents content "C" before content "B" to choose sub-set of "B"

in addition to mentioned in paper (HTML6), each 1-st click on column header
(e.g. concerning to xml-attribute @a2) sends bament
<?mtd name= event=asc arg=a2/?>
each 2-nd click sends bament
<?mtd name= event=dsc arg=a2/?>
each 3-rd click sends bament
<?mtd name= event=none arg=a2/?>

in addition to mentioned in paper (MTD),
following bament forces to resent data, having appended ascendant sorting by field @a2
<?mtd name= event=asc arg=a2/?>
following bament forces to resent data, having appended descendant sorting by field @a2
<?mtd name= event=dsc arg=a2/?>
and following bament forces to resent data, having subtracted sorting by field @a2
<?mtd name= event=none arg=a2/?>

---

in regard to
http://html60.euro.ru/site/html60/en/author/combo_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<select name="C" action="./script2.cgi" portion="40">
the following element must be implemented
<select name="C">
with CSS
ul[name=A] { online:yes; portion:40 }
communication must be implemented via SQL5 over TCP
(look at slides #27-28 of http://sql50.euro.ru/sql5.16.4.pdf)
without closing TCP-connection after obtaining XML-document

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>
because saments are saved in database, but baments are not
(we don't need to save temporary service information)

as well as instead of
<_ name= event= arg= >
<option id= value=>word40<option>
the following construction must be sent
<?mtd name= event= arg= >
<option id= value=>word40<option>
</?mtd>

---

in regard to
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<ul name="A" action="./script.cgi">
the following element must be implemented
<ul name="A">
with CSS
ul[name=A] { online:yes }
communication must be implemented via SQL5 over TCP
(look at slides #27-28 of http://sql50.euro.ru/sql5.16.4.pdf)
without closing TCP-connection after obtaining XML-document

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>
because saments are saved in database, but baments are not
(we don't need to save temporary service information)

---

in regard to
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

in addition to mentioned in papers, tree as master element for table is possible
ul [name=A] { online:yes }
table[name=S] { online:yes; portion:40; visual:10; master:A }
and browser sends at user actions
<?mtd name=S event= arg= >
<li id=1>
</?mtd>
it's supposed, that foreign key of database table "S" refers to
primary key of database table "A"

database table, corresponding to HTML-tree, consists of only two fields -
of primary key (extracted as @id), and of any other field with any name
(extracted as content of element LI)

--other HTML6 additions

pressing browser botton "back" not only display previos XML-document, but also sends bament
<?back/?>
(which rollback transaction in DBMS to previos 'select ...')

bottons to append and remove table row must be implemented in menu of browser window
(implementation in way of WebForms2 is optional)

property 'save' means, that at pressing ^S, html/xml-document will be saved with entered values
input { save:yes }

Dmitry (SQL50, HTML60)

#3Dmitry Turin
dmitry.turin@belarusbank.minsk.by
In reply to: Dmitry Turin (#2)
Re: SQL5 budget

Hi, Pgsql-hackers.

Full list of changes of two related projects (SQL5 & HTML6) at current moment
(not reflected in documentation yet).

===terms

master table is table, to primary key of which this (slave) table refers
(terms "master" and "slave" are used only for MTD).
if master table is not represented in the same html-document,
where slave is (created by "select '<table name="A">'"),
then new separate browser window will appear, and content of master table will shown in it.
master and slave table must be bound by only one foreing key in database.

communication - must be implemented via SQL5 over TCP
(look at slides #27-28 of http://sql50.euro.ru/sql5.16.4.pdf)
without closing TCP-connection after obtaining XML-document

because saments are saved in database, but baments are not
(we don't need to save temporary service information), instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

===60

in regard to
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<table name="M" action="./scriptM.cgi" portion="50" visual="20" id="id1">
<table name="S" action="./scriptS.cgi" portion="40" visual="10" master="id1">
the following construction must be implemented
<table name="M">
<table name="S">
with CSS
table[name=M] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M }

as well as instead of
<table name="M" action="./scriptM.cgi" portion="50" visual="20" id="id1">
<table name="N" action="./scriptN.cgi" portion="50" visual="20" id="id2">
<table name="P" action="./scriptP.cgi" portion="50" visual="20" id="id3">
<table name="S" action="./scriptS.cgi" portion="40" visual="10" master="id1 id2 id3">
the following construction must be implemented
<table name="M">
<table name="N">
<table name="P">
<table name="S">
with CSS
table[name=M] { online:yes; portion:50; visual:20 }
table[name=N] { online:yes; portion:50; visual:20 }
table[name=P] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M N P }
or (if slave table refers to one master table by 3 own fields)
table[name=M] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M/§s3 N/§s4 P/§s5 }
where §s3, §s4, §s5 are fields of table "S"

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

as well as instead of
<_ name= event= arg= >
<a a1= a2= a3=>
the following construction must be sent
<?mtd name= event= arg= >
<a a1= a2= a3=>
</?mtd>

as well as instead of
<_ name="S" event="TableDown" arg="40">
<m m1= m2= m3= >
<n n1= n2= n3= >
<p p1= p2= p3= >
the following construction must be sent
<?mtd name= event= arg= >
<m m1= m2= m3= >
<n n1= n2= n3= >
<p p1= p2= p3= >
</?mtd>

instead of
<a a1= a2= a3="tiger.jpg">
<file name="a3" filename="tiger.jpg">Y29udGVudHMgb2YgZmlsZTEudHh0</file>
the following construction must be implemented
<a a1= a2= a3="tiger.jpg">
<?file attr="a3" value="tiger.jpg" xml:size= >Y29udGVudHMgb2YgZmlsZTEudHh0</file>

instead of
<table name="A" action="./script.cgi" portion="50" visual="20">
<select name="B" action="./script2.cgi" portion="40" visual="10">a2</select>
</table>
the following construction must be implemented
<table name="A"/>
with CSS
table [name=A] { online:yes; portion:50; visual:20 }
table [name=A] { §a2: B } /* 'portion', 'visual' are inherited */

in addition to mentioned, statement
table [name=A] { §a2: B C }
means, that "C" is master table for "B", "B" is master table for "§a2",
and that browser represents content "C" before content "B" to choose sub-set of "B"

in addition to mentioned in paper, each 1-st click on column header
(e.g. concerning to xml-attribute @a2) sends bament
<?mtd name= event=asc arg=a2/?>
each 2-nd click sends bament
<?mtd name= event=dsc arg=a2/?>
each 3-rd click sends bament
<?mtd name= event=none arg=a2/?>

in addition to mentioned in paper, master table rise appearance of new separete browser window
and displaying content of slave table in it, if
*) additional virtual column is specified in CSS for master table
(slave field is specified too, if several fields of slave table refer to one master table)
table[name=M] §m20::after { slave:S/§s5 }
*) user make double-click on this virtual column
Relation "master-slave" is served by the same saments, as relation "slave-master";
but refering key will be specified
<?mtd name= event= arg= >
<m/§s3 m1= m2= m3= >
</?mtd>

---

in regard to
http://html60.euro.ru/site/html60/en/author/combo_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<select name="C" action="./script2.cgi" portion="40">
the following element must be implemented
<select name="C">
with CSS
ul[name=A] { online:yes; portion:40 }

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

as well as instead of
<_ name= event= arg= >
<option id= value=>word40<option>
the following construction must be sent
<?mtd name= event= arg= >
<option id= value=>word40<option>
</?mtd>

---

in regard to
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<ul name="A" action="./script.cgi">
the following element must be implemented
<ul name="A">
with CSS
ul[name=A] { online:yes }

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

---

in regard to
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

in addition to mentioned in papers, tree as master element for table is possible
ul [name=A] { online:yes }
table[name=S] { online:yes; portion:40; visual:10; master:A }
and browser sends at user actions
<?mtd name=S event= arg= >
<li id=1>
</?mtd>
it's supposed, that foreign key of database table "S" refers to
primary key of database table "A"

database table, corresponding to HTML-tree, consists of only two fields -
of primary key (extracted as @id), and of any other field with any name
(extracted as content of element LI)

===other HTML6 additions

pressing browser botton "back" not only display previos XML-document, but also sends bament
<?back/?>
(which rollback transaction in DBMS to previos 'select ...')

--

bottons to append and remove table row must be implemented in menu of browser window
(implementation in way of WebForms2 is optional)

--

botton to commit transaction must be implemented in menu of browser window, pressing on which will send
<?commit/?>

--

property 'save' means, that at pressing ^S, html/xml-document will be saved with entered values
input { save:yes }

===50

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #31,etc)

in addition to mentioned in pdf-document, statement
SELECT ... COMMENTING.
extracts additional record from table as first xml-element,
attributes of which contain comments, specified for each field earlier by statement
COMMENT tab/@fld BY "column title";
this first xml-element contains additional service xml-attribute '_=comment'.
usually comments are specified for html-tables, instead of html-trees

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #18 )
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://html60.euro.ru/site/html60/en/author/tabfile_eng.htm (Sending of form)
http://html60.euro.ru/site/html60/en/author/cube_eng.htm (Sending of form)

in addition to mentioned in pdf-document, obtaining single xml-element (instead of xml-tree)
with primary key (PK) for DBMS table (specified in some xml-attribute) means the following:
*) if this PK is already in DBMS table, then DBMS *updates* fields of record with this PK
*) if this PK is not in table (this usually means, that record with this PK was already deleted),
then DBMS *inserts* this xml-element under new PK (obtained from sequence for this PK), i.e. PK will be changed during insertion.

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #31-32, 39(Another output), 40)
http://html60.euro.ru/site/html60/en/author/looker_eng.htm (for "select '<table name="A">'", i.e. extracting HTML )
http://html60.euro.ru/site/html60/en/author/combo_eng.htm
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://html60.euro.ru/site/html60/en/author/forxml_eng.htm (for "select * from A", i.e. extracting XML)
http://html60.euro.ru/site/html60/en/author/quest_eng.htm#webforms_data (<data id="records">...</data>)

each 'select ...' extracts data into LAN or WAN
(instead of 'insert ... select ...' and 'select ... into ...', coping data into internal DBMS table).
each 'select ... union ... select ...' interpreted as single extraction of xml into LAN or WAN.

in addition to mentioned in pdf-document,
each extraction of data into LAN or WAN is automatically:
*) anticipated by content of field 'beginning' of system table 'SysXmlFormatting'
*) ended by content of field 'end' of system table 'SysXmlFormatting' and
*) by bament <?new/?> (to inform client, e.g. browser, about end of parcel [sent by MTD]
and end of document [sent by "select * from A"] )
P.S.
Other field of system table 'SysXmlFormatting' is URL
(which specifies browser URL; 'null' means all URL and is applied,
only if 'SysXmlFormatting' does not contain record with exact URL).

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #173)

authentification (obtaining username and password, slide #173) must be implemented by baments
(look at slides #26-27) and is described nowhere.

---

in regard to
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm
http://html60.euro.ru/site/html60/en/author/looker_eng.htm

in addition to mentioned in paper,
following bament forces to resent data, having appended ascendant sorting by field @a2
<?mtd name= event=asc arg=a2/?>
following bament forces to resent data, having appended descendant sorting by field @a2
<?mtd name= event=dsc arg=a2/?>
and following bament forces to resent data, having subtracted sorting by field @a2
<?mtd name= event=none arg=a2/?>

===other SQL5 additions

in addition to mentioned in pdf-document, each 'select ...' (extracting data into LAN/WAN) is savepoint.
DBMS rollbacks to this savepoint, having obtained bament
<?back/?>

--

accepting bament
<?commit/?>
DBMS commits current transaction to point of previous 'select ...'

--

in addition to mentioned in pdf-document, if table "b" below is created
--------------------------
| b1 | b2 | b3 |
|------------------------|
| | a1 | a2 | a3 |
|------------------------|
| |
| |
--------------------------
then expression
IMPLY b/@b3 as b/@b3/@a2;
influence so, that any 'SELECT @b3 FROM b' will extract only one elementary field (@a2)
instead of all branch elementary fields (@a1, @a2, @a3),
i.e. mentioned statement will be equivalent to 'SELECT @b3/@a2 FROM b'.
it's for multi-language applications (@a1, @a2, @a3 contain notes in different languages)

--

in addition to mentioned in pdf-document, permissions for field are controlled:
GRANT/REVOKE SELECT/INSERT/UPDATE ON tab/@fld FOR user1;

--

in regard to
http://html60.euro.ru/site/html60/en/author/forxml_eng.htm
http://www.whatwg.org/specs/web-forms/current-work/#the-output
http://lists.w3.org/Archives/Public/public-html/2007May/0173.html

DBMS creates separete CSS-file "username.css" for each user "username" in local (for DBMS) directory.
table fields are specified as ¶fieldname in it instead of §fieldname, because DBMS does not know,
what fields are service (like @colspan, @rowspan) or
are values of properties (like in http://html60.euro.ru/site/html60/en/author/chart_eng.htm),
and what fields contain data for visualization - so mark ¶ acts like comment for this xml-attribute

all master tables are specified for each slave table in it,
i.e. if database table "S" refers to database tables "M", "N", "P",
then the following lines are in CSS
table[name=M] { online:yes }
table[name=N] { online:yes }
table[name=P] { online:yes }
table[name=S] { online:yes; master:M N P }
all slave tables are specified for each master table after last column
table[name=M] ¶m20::after { online:yes; slave:S1; }
table[name=M] ¶m20::after::after { online:yes; slave:S2; }
table[name=M] ¶m20::after::after::after { online:yes; slave:S3; }
table[name=M][_] ¶m20::after { content:"s1_fk_comment" }
table[name=M][_] ¶m20::after::after { content:"s2_fk_comment" }
table[name=M][_] ¶m20::after::after::after { content:"s3_fk_comment" }

all accessable database fields (for user "username") are listed in this file for
select * from tab;
except fields, which are primary keys in database, and which are always specified (and never ignored) as invisible
¶pk { display: none}
if user can update database field, than corresponding xml-attribute will be specified as re-writable
t { display: table-row }
¶t1, ¶t2, ¶t3 { display: table-cell input} /* read-write */
if user cannot update database field
REVOKE update ON t FOR user1;
then corresponding xml-attribute will be specified as read-only
t { display: table-row }
¶t1, ¶t2, ¶t3 { display: table-cell } /* read only */
fields, calculated upon other fields and don't saved really, specified in CSS as calculated
via @onforminput, implemented in browser as property (pay attention at "§" inside braces)
¶t1 { onforminput="value=§t2.value*§t3.value" }

CSS-files are available for editing for DBMS administrator.
DBMS does not re-write corrections, made manually.

Dmitry (SQL50, HTML60)

#4Decibel!
decibel@decibel.org
In reply to: Dmitry Turin (#3)
Re: SQL5 budget

I think you're barking up the wrong tree here; the community can't
really do hacking for hire. If you want to pay for something to be
implemented (which is great!), you'll need to talk to companies that
do Postgres consulting. You can find examples on the website and
through google. You could also try posting to pgsql-jobs.

On Nov 5, 2008, at 6:33 AM, Dmitry Turin wrote:

Hi, Pgsql-hackers.

Full list of changes of two related projects (SQL5 & HTML6) at
current moment
(not reflected in documentation yet).

===terms

master table is table, to primary key of which this (slave) table
refers
(terms "master" and "slave" are used only for MTD).
if master table is not represented in the same html-document,
where slave is (created by "select '<table name="A">'"),
then new separate browser window will appear, and content of
master table will shown in it.
master and slave table must be bound by only one foreing key in
database.

communication - must be implemented via SQL5 over TCP
(look at slides #27-28 of http://sql50.euro.ru/sql5.16.4.pdf)
without closing TCP-connection after obtaining XML-document

because saments are saved in database, but baments are not
(we don't need to save temporary service information), instead of
sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

===60

in regard to
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<table name="M" action="./scriptM.cgi" portion="50" visual="20"
id="id1">
<table name="S" action="./scriptS.cgi" portion="40" visual="10"
master="id1">
the following construction must be implemented
<table name="M">
<table name="S">
with CSS
table[name=M] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M }

as well as instead of
<table name="M" action="./scriptM.cgi" portion="50" visual="20"
id="id1">
<table name="N" action="./scriptN.cgi" portion="50" visual="20"
id="id2">
<table name="P" action="./scriptP.cgi" portion="50" visual="20"
id="id3">
<table name="S" action="./scriptS.cgi" portion="40" visual="10"
master="id1 id2 id3">
the following construction must be implemented
<table name="M">
<table name="N">
<table name="P">
<table name="S">
with CSS
table[name=M] { online:yes; portion:50; visual:20 }
table[name=N] { online:yes; portion:50; visual:20 }
table[name=P] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M N P }
or (if slave table refers to one master table by 3 own fields)
table[name=M] { online:yes; portion:50; visual:20 }
table[name=S] { online:yes; portion:40; visual:10; master:M/§s3 N/
§s4 P/§s5 }
where §s3, §s4, §s5 are fields of table "S"

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

as well as instead of
<_ name= event= arg= >
<a a1= a2= a3=>
the following construction must be sent
<?mtd name= event= arg= >
<a a1= a2= a3=>
</?mtd>

as well as instead of
<_ name="S" event="TableDown" arg="40">
<m m1= m2= m3= >
<n n1= n2= n3= >
<p p1= p2= p3= >
the following construction must be sent
<?mtd name= event= arg= >
<m m1= m2= m3= >
<n n1= n2= n3= >
<p p1= p2= p3= >
</?mtd>

instead of
<a a1= a2= a3="tiger.jpg">
<file name="a3" filename="tiger.jpg">Y29udGVudHMgb2YgZmlsZTEudHh0</
file>
the following construction must be implemented
<a a1= a2= a3="tiger.jpg">
<?file attr="a3" value="tiger.jpg" xml:size=

Y29udGVudHMgb2YgZmlsZTEudHh0</file>

instead of
<table name="A" action="./script.cgi" portion="50" visual="20">
<select name="B" action="./script2.cgi" portion="40"
visual="10">a2</select>
</table>
the following construction must be implemented
<table name="A"/>
with CSS
table [name=A] { online:yes; portion:50; visual:20 }
table [name=A] { §a2: B } /* 'portion',
'visual' are inherited */

in addition to mentioned, statement
table [name=A] { §a2: B C }
means, that "C" is master table for "B", "B" is master table for
"§a2",
and that browser represents content "C" before content "B" to
choose sub-set of "B"

in addition to mentioned in paper, each 1-st click on column header
(e.g. concerning to xml-attribute @a2) sends bament
<?mtd name= event=asc arg=a2/?>
each 2-nd click sends bament
<?mtd name= event=dsc arg=a2/?>
each 3-rd click sends bament
<?mtd name= event=none arg=a2/?>

in addition to mentioned in paper, master table rise appearance
of new separete browser window
and displaying content of slave table in it, if
*) additional virtual column is specified in CSS for master table
(slave field is specified too, if several fields of slave
table refer to one master table)
table[name=M] §m20::after { slave:S/§s5 }
*) user make double-click on this virtual column
Relation "master-slave" is served by the same saments, as
relation "slave-master";
but refering key will be specified
<?mtd name= event= arg= >
<m/§s3 m1= m2= m3= >
</?mtd>

---

in regard to
http://html60.euro.ru/site/html60/en/author/combo_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<select name="C" action="./script2.cgi" portion="40">
the following element must be implemented
<select name="C">
with CSS
ul[name=A] { online:yes; portion:40 }

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

as well as instead of
<_ name= event= arg= >
<option id= value=>word40<option>
the following construction must be sent
<?mtd name= event= arg= >
<option id= value=>word40<option>
</?mtd>

---

in regard to
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

instead of
<ul name="A" action="./script.cgi">
the following element must be implemented
<ul name="A">
with CSS
ul[name=A] { online:yes }

instead of sament
<_ name= event= arg= >
the following bament must be sent
<?mtd name= event= arg= /?>

---

in regard to
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm

in addition to mentioned in papers, tree as master element for
table is possible
ul [name=A] { online:yes }
table[name=S] { online:yes; portion:40; visual:10; master:A }
and browser sends at user actions
<?mtd name=S event= arg= >
<li id=1>
</?mtd>
it's supposed, that foreign key of database table "S" refers to
primary key of database table "A"

database table, corresponding to HTML-tree, consists of only two
fields -
of primary key (extracted as @id), and of any other field with
any name
(extracted as content of element LI)

===other HTML6 additions

pressing browser botton "back" not only display previos XML-
document, but also sends bament
<?back/?>
(which rollback transaction in DBMS to previos 'select ...')

--

bottons to append and remove table row must be implemented in
menu of browser window
(implementation in way of WebForms2 is optional)

--

botton to commit transaction must be implemented in menu of
browser window, pressing on which will send
<?commit/?>

--

property 'save' means, that at pressing ^S, html/xml-document
will be saved with entered values
input { save:yes }

===50

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #31,etc)

in addition to mentioned in pdf-document, statement
SELECT ... COMMENTING.
extracts additional record from table as first xml-element,
attributes of which contain comments, specified for each field
earlier by statement
COMMENT tab/@fld BY "column title";
this first xml-element contains additional service xml-attribute
'_=comment'.
usually comments are specified for html-tables, instead of html-
trees

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #18 )
http://html60.euro.ru/site/html60/en/author/looker_eng.htm
http://html60.euro.ru/site/html60/en/author/tabfile_eng.htm
(Sending of form)
http://html60.euro.ru/site/html60/en/author/cube_eng.htm
(Sending of form)

in addition to mentioned in pdf-document, obtaining single xml-
element (instead of xml-tree)
with primary key (PK) for DBMS table (specified in some xml-
attribute) means the following:
*) if this PK is already in DBMS table, then DBMS *updates* fields
of record with this PK
*) if this PK is not in table (this usually means, that record with
this PK was already deleted),
then DBMS *inserts* this xml-element under new PK (obtained from
sequence for this PK), i.e. PK will be changed during insertion.

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #31-32, 39(Another
output), 40)
http://html60.euro.ru/site/html60/en/author/looker_eng.htm (for
"select '<table name="A">'", i.e. extracting HTML )
http://html60.euro.ru/site/html60/en/author/combo_eng.htm
http://html60.euro.ru/site/html60/en/author/tree_eng.htm
http://html60.euro.ru/site/html60/en/author/forxml_eng.htm (for
"select * from A", i.e. extracting XML)
http://html60.euro.ru/site/html60/en/author/
quest_eng.htm#webforms_data (<data id="records">...</data>)

each 'select ...' extracts data into LAN or WAN
(instead of 'insert ... select ...' and 'select ... into ...',
coping data into internal DBMS table).
each 'select ... union ... select ...' interpreted as single
extraction of xml into LAN or WAN.

in addition to mentioned in pdf-document,
each extraction of data into LAN or WAN is automatically:
*) anticipated by content of field 'beginning' of system table
'SysXmlFormatting'
*) ended by content of field 'end' of system table
'SysXmlFormatting' and
*) by bament <?new/?> (to inform client, e.g. browser, about end of
parcel [sent by MTD]
and end of document [sent by "select * from A"] )
P.S.
Other field of system table 'SysXmlFormatting' is URL
(which specifies browser URL; 'null' means all URL and is applied,
only if 'SysXmlFormatting' does not contain record with exact URL).

--

in regard to
http://sql50.euro.ru/sql5.16.4.pdf (slide #173)

authentification (obtaining username and password, slide #173)
must be implemented by baments
(look at slides #26-27) and is described nowhere.

---

in regard to
http://sql50.euro.ru/site/sql50/en/author/mtd_eng.htm
http://html60.euro.ru/site/html60/en/author/looker_eng.htm

in addition to mentioned in paper,
following bament forces to resent data, having appended ascendant
sorting by field @a2
<?mtd name= event=asc arg=a2/?>
following bament forces to resent data, having appended
descendant sorting by field @a2
<?mtd name= event=dsc arg=a2/?>
and following bament forces to resent data, having subtracted
sorting by field @a2
<?mtd name= event=none arg=a2/?>

===other SQL5 additions

in addition to mentioned in pdf-document, each
'select ...' (extracting data into LAN/WAN) is savepoint.
DBMS rollbacks to this savepoint, having obtained bament
<?back/?>

--

accepting bament
<?commit/?>
DBMS commits current transaction to point of previous 'select ...'

--

in addition to mentioned in pdf-document, if table "b" below is
created
--------------------------
| b1 | b2 | b3 |
|------------------------|
| | a1 | a2 | a3 |
|------------------------|
| |
| |
--------------------------
then expression
IMPLY b/@b3 as b/@b3/@a2;
influence so, that any 'SELECT @b3 FROM b' will extract only one
elementary field (@a2)
instead of all branch elementary fields (@a1, @a2, @a3),
i.e. mentioned statement will be equivalent to 'SELECT @b3/@a2
FROM b'.
it's for multi-language applications (@a1, @a2, @a3 contain notes
in different languages)

--

in addition to mentioned in pdf-document, permissions for field
are controlled:
GRANT/REVOKE SELECT/INSERT/UPDATE ON tab/@fld FOR user1;

--

in regard to
http://html60.euro.ru/site/html60/en/author/forxml_eng.htm
http://www.whatwg.org/specs/web-forms/current-work/#the-output
http://lists.w3.org/Archives/Public/public-html/2007May/0173.html

DBMS creates separete CSS-file "username.css" for each user
"username" in local (for DBMS) directory.
table fields are specified as ¶fieldname in it instead of
§fieldname, because DBMS does not know,
what fields are service (like @colspan, @rowspan) or
are values of properties (like in http://html60.euro.ru/site/
html60/en/author/chart_eng.htm),
and what fields contain data for visualization - so mark ¶ acts
like comment for this xml-attribute

all master tables are specified for each slave table in it,
i.e. if database table "S" refers to database tables "M", "N", "P",
then the following lines are in CSS
table[name=M] { online:yes }
table[name=N] { online:yes }
table[name=P] { online:yes }
table[name=S] { online:yes; master:M N P }
all slave tables are specified for each master table after last
column
table[name=M] ¶m20::after { online:yes; slave:S1; }
table[name=M] ¶m20::after::after { online:yes; slave:S2; }
table[name=M] ¶m20::after::after::after { online:yes; slave:S3; }
table[name=M][_] ¶m20::after { content:"s1_fk_comment" }
table[name=M][_] ¶m20::after::after { content:"s2_fk_comment" }
table[name=M][_] ¶m20::after::after::after { content:"s3_fk_comment" }

all accessable database fields (for user "username") are listed
in this file for
select * from tab;
except fields, which are primary keys in database, and which are
always specified (and never ignored) as invisible
¶pk { display: none}
if user can update database field, than corresponding xml-
attribute will be specified as re-writable
t { display: table-row }
¶t1, ¶t2, ¶t3 { display: table-cell input} /* read-write */
if user cannot update database field
REVOKE update ON t FOR user1;
then corresponding xml-attribute will be specified as read-only
t { display: table-row }
¶t1, ¶t2, ¶t3 { display: table-cell } /* read only */
fields, calculated upon other fields and don't saved really,
specified in CSS as calculated
via @onforminput, implemented in browser as property (pay
attention at "§" inside braces)
¶t1 { onforminput="value=§t2.value*§t3.value" }

CSS-files are available for editing for DBMS administrator.
DBMS does not re-write corrections, made manually.

Dmitry (SQL50, HTML60)

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

--
Decibel!, aka Jim C. Nasby, Database Architect decibel@decibel.org
Give your computer some brain candy! www.distributed.net Team #1828

#5Jonah H. Harris
jonah.harris@gmail.com
In reply to: Decibel! (#4)
Re: SQL5 budget

On Sun, Nov 9, 2008 at 7:41 PM, Decibel! <decibel@decibel.org> wrote:

I think you're barking up the wrong tree here; the community can't really do
hacking for hire. If you want to pay for something to be implemented (which
is great!), you'll need to talk to companies that do Postgres consulting.
You can find examples on the website and through google. You could also try
posting to pgsql-jobs.

I would suggest submitting it to pgsql-jobs.

--
Jonah H. Harris, Senior DBA
myYearbook.com

#6Chris Browne
cbbrowne@acm.org
In reply to: Dmitry Turin (#3)
Re: SQL5 budget

jonah.harris@gmail.com ("Jonah H. Harris") writes:

On Sun, Nov 9, 2008 at 7:41 PM, Decibel! <decibel@decibel.org> wrote:

I think you're barking up the wrong tree here; the community can't really do
hacking for hire. If you want to pay for something to be implemented (which
is great!), you'll need to talk to companies that do Postgres consulting.
You can find examples on the website and through google. You could also try
posting to pgsql-jobs.

I would suggest submitting it to pgsql-jobs.

Except that it's not a job offer - it's more of a "solicitation for
implementation of something," so I'm not sure that's the right place
either.

Some of the things suggested seem interesting, but many seem (to me)
to be overly tied to an "all XML all the time" view. I really rather
have PostgreSQL head towards being "more relational" (in the 3rd
Manifesto sense) than take the "all singing, all dancing XML" road.
--
select 'cbbrowne' || '@' || 'linuxfinances.info';
http://www3.sympatico.ca/cbbrowne/sgml.html
Rules of the Evil Overlord #114. "I will never accept a challenge from
the hero." <http://www.eviloverlord.com/&gt;

#7Josh Berkus
josh@agliodbs.com
In reply to: Chris Browne (#6)
Re: SQL5 budget

Chris Browne wrote:

jonah.harris@gmail.com ("Jonah H. Harris") writes:

On Sun, Nov 9, 2008 at 7:41 PM, Decibel! <decibel@decibel.org> wrote:

I think you're barking up the wrong tree here; the community can't really do
hacking for hire. If you want to pay for something to be implemented (which
is great!), you'll need to talk to companies that do Postgres consulting.
You can find examples on the website and through google. You could also try
posting to pgsql-jobs.

I would suggest submitting it to pgsql-jobs.

Except that it's not a job offer - it's more of a "solicitation for
implementation of something," so I'm not sure that's the right place
either.

No, but that's where the right people would see it.

Realistically, this means most likely contracting with 2nd Quadrant,
Command Prompt or Peter Eisentraut.

However, keep in mind that no hacker can guarentee you that any patch
will be accepted, even one based on the SQL standard.

BTW, why do you want these features?

--Josh

#8Joshua D. Drake
jd@commandprompt.com
In reply to: Josh Berkus (#7)
Re: SQL5 budget

On Mon, 2008-11-10 at 21:13 +0100, Josh Berkus wrote:

Chris Browne wrote:

No, but that's where the right people would see it.

Realistically, this means most likely contracting with 2nd Quadrant,
Command Prompt or Peter Eisentraut.

I would note that the individual has been hitting *everyone* directly
and via list. So either he is quite serious, doesn't understand
etiquette or is a spammer.

Joshua D. Drake

--

#9Josh Berkus
josh@agliodbs.com
In reply to: Joshua D. Drake (#8)
Re: SQL5 budget

Josh,

I would note that the individual has been hitting *everyone* directly
and via list. So either he is quite serious, doesn't understand
etiquette or is a spammer.

I think there is a language barrier at work.

--Josh

#10Joshua D. Drake
jd@commandprompt.com
In reply to: Josh Berkus (#9)
Re: SQL5 budget

On Mon, 2008-11-10 at 21:21 +0100, Josh Berkus wrote:

Josh,

I would note that the individual has been hitting *everyone* directly
and via list. So either he is quite serious, doesn't understand
etiquette or is a spammer.

I think there is a language barrier at work.

Oh certainly a possibility which is why I gave all three options :)

Joshua D. Drake

--Josh

--

#11David Rowley
dgrowley@gmail.com
In reply to: Josh Berkus (#7)
Re: SQL5 budget

Josh Berkus Wrote:

I would suggest submitting it to pgsql-jobs.

Except that it's not a job offer - it's more of a "solicitation for
implementation of something," so I'm not sure that's the right place
either.

No, but that's where the right people would see it.

Realistically, this means most likely contracting with 2nd Quadrant,
Command Prompt or Peter Eisentraut.

However, keep in mind that no hacker can guarentee you that any patch
will be accepted, even one based on the SQL standard.

BTW, why do you want these features?

--Josh

Joshua D. Drake wrote:

I would note that the individual has been hitting *everyone* directly
and via list. So either he is quite serious, doesn't understand
etiquette or is a spammer.

Joshua D. Drake

Apart from the post during a commitfest does this not fit in with the
details given here:

http://wiki.postgresql.org/wiki/How_to_sponsor_a_feature

Or is sponsoring a feature paying money to people that already plan to
implement something?

David.

#12Joshua D. Drake
jd@commandprompt.com
In reply to: David Rowley (#11)
Re: SQL5 budget

On Mon, 2008-11-10 at 20:48 +0000, David Rowley wrote:

Josh Berkus Wrote:

I would suggest submitting it to pgsql-jobs.

Apart from the post during a commitfest does this not fit in with the
details given here:

http://wiki.postgresql.org/wiki/How_to_sponsor_a_feature

Or is sponsoring a feature paying money to people that already plan to
implement something?

Actually that is a poorly worded page. It really should be something
like, "How to submit a patch" or "How to get your patch committed".

Joshua D. Drake

David.

--

#13Alvaro Herrera
alvherre@commandprompt.com
In reply to: David Rowley (#11)
Re: SQL5 budget

David Rowley escribi�:

Or is sponsoring a feature paying money to people that already plan to
implement something?

Nobody on their mind would plan to implement the features being proposed
here ... I didn't look very far but it seems mainly nonsense.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

#14Alvaro Herrera
alvherre@commandprompt.com
In reply to: Joshua D. Drake (#12)
Re: SQL5 budget

Joshua D. Drake escribi�:

On Mon, 2008-11-10 at 20:48 +0000, David Rowley wrote:

Josh Berkus Wrote:

I would suggest submitting it to pgsql-jobs.

Apart from the post during a commitfest does this not fit in with the
details given here:

http://wiki.postgresql.org/wiki/How_to_sponsor_a_feature

Actually that is a poorly worded page. It really should be something
like, "How to submit a patch" or "How to get your patch committed".

Yes -- this was reported when the page was created. We already have a
page for what you suggest:

http://wiki.postgresql.org/wiki/Submitting_a_Patch

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

#15Peter Eisentraut
peter_e@gmx.net
In reply to: Alvaro Herrera (#13)
Re: SQL5 budget

Alvaro Herrera wrote:

David Rowley escribi�:

Or is sponsoring a feature paying money to people that already plan to
implement something?

Nobody on their mind would plan to implement the features being proposed
here ... I didn't look very far but it seems mainly nonsense.

Yeah, I would have assumed that for most people in this discussion the
name Dmitry Turin would ring a bell. Search the archives for further
amusement.

#16Chris Browne
cbbrowne@acm.org
In reply to: Josh Berkus (#7)
Re: SQL5 budget

alvherre@commandprompt.com (Alvaro Herrera) writes:

David Rowley escribi�:

Or is sponsoring a feature paying money to people that already plan to
implement something?

Nobody on their mind would plan to implement the features being proposed
here ... I didn't look very far but it seems mainly nonsense.

Oh, dear... In searching back to the archives, it becomes evident that
I shouldn't have been as polite as I was, and that it is indeed mainly
nonsense.

There *would* be merit in supporting the work on recursive queries, in
8.4, as that will help when trying to build queries that are to return
hierarchical result sets.

But that's not what he noticed; what he's looking for is to somehow
use XML in lieu of, um, either SQL, PHP, libpq, or something like
that. (And the fact that those are 4 rather different things reveals
how confused the matter is.)

Apologies; I didn't realize how fragmented the kettle was[1]Or did I misspell "cracked" and "pot"? -- (reverse (concatenate 'string "ofni.secnanifxunil" "@" "enworbbc")) http://linuxfinances.info/info/ "I still maintain the point that designing a monolithic kernel in 1991 is a fundamental error. Be thankful you are not my student. You would not get a high grade for such a design :-)" -- Andrew Tanenbaum to Linus Torvalds...

[1]: Or did I misspell "cracked" and "pot"? -- (reverse (concatenate 'string "ofni.secnanifxunil" "@" "enworbbc")) http://linuxfinances.info/info/ "I still maintain the point that designing a monolithic kernel in 1991 is a fundamental error. Be thankful you are not my student. You would not get a high grade for such a design :-)" -- Andrew Tanenbaum to Linus Torvalds
--
(reverse (concatenate 'string "ofni.secnanifxunil" "@" "enworbbc"))
http://linuxfinances.info/info/
"I still maintain the point that designing a monolithic kernel in 1991
is a fundamental error. Be thankful you are not my student. You
would not get a high grade for such a design :-)" -- Andrew Tanenbaum
to Linus Torvalds

#17Bruce Momjian
bruce@momjian.us
In reply to: Peter Eisentraut (#15)
Re: SQL5 budget

Peter Eisentraut wrote:

Alvaro Herrera wrote:

David Rowley escribi?:

Or is sponsoring a feature paying money to people that already plan to
implement something?

Nobody on their mind would plan to implement the features being proposed
here ... I didn't look very far but it seems mainly nonsense.

Yeah, I would have assumed that for most people in this discussion the
name Dmitry Turin would ring a bell. Search the archives for further
amusement.

Seems he is asking Ingres as well:

http://blogs.ingres.com/technology/2008/07/31/bringing-dbms-in-line-with-modern-communication-requirements-sql2009/#more-18

It is a very details posting.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +

#18Dmitry Turin
dmitry.turin@belarusbank.minsk.by
In reply to: Chris Browne (#16)

Hi, Pgsql-hackers.

what he's looking for is to somehow
use XML in lieu of, um, either SQL, PHP, libpq, or something like
that. (And the fact that those are 4 rather different things reveals
how confused the matter is.)

http://lists.xml.org/archives/xml-dev/200802/msg00213.html

Dmitry (SQL50, HTML60)

#19Josh Berkus
josh@agliodbs.com
In reply to: Joshua D. Drake (#12)
Re: SQL5 budget

Josh,

Actually that is a poorly worded page. It really should be something
like, "How to submit a patch" or "How to get your patch committed".

Yeah, I told Bruce I was going to re-write that page but seem to have
been short some Round Tuits.

--Josh