From 4c488e857eca84948d0d3057ec87296f92bce944 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut <peter_e@gmx.net> Date: Sat, 3 Feb 2007 17:59:36 +0000 Subject: [PATCH] Update SQL conformance information about XML features. --- doc/src/sgml/features.sgml | 40 ++++++++-------- src/backend/catalog/information_schema.sql | 14 +++--- src/backend/catalog/sql_features.txt | 55 ++++++++++++++++++++++ 3 files changed, 83 insertions(+), 26 deletions(-) diff --git a/doc/src/sgml/features.sgml b/doc/src/sgml/features.sgml index 26979adf525..eae4ba5a11b 100644 --- a/doc/src/sgml/features.sgml +++ b/doc/src/sgml/features.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/features.sgml,v 2.26 2007/01/31 20:56:17 momjian Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/features.sgml,v 2.27 2007/02/03 17:59:35 petere Exp $ --> <appendix id="features"> <title>SQL Conformance</title> @@ -14,19 +14,21 @@ <para> The formal name of the SQL standard is ISO/IEC 9075 <quote>Database Language SQL</quote>. A revised version of the standard is released - from time to time; the most recent one appearing in late 2003. That - version is referred to as ISO/IEC 9075:2003, or simply as SQL:2003. - The versions prior to that were SQL:1999 and SQL-92. Each version + from time to time; the most recent full update appearing in 2003, + with a partial update appearing in 2006. The 2003 version is + referred to as ISO/IEC 9075:2003, or simply as SQL:2003. The + versions prior to that were SQL:1999 and SQL-92. Each version replaces the previous one, so claims of conformance to earlier versions have no official merit. <productname>PostgreSQL</productname> development aims for conformance with the latest official version of the standard where such conformance does not contradict traditional features or common - sense. The PostgreSQL project was not represented in the ISO/IEC - 9075 Working Group during the preparation of SQL:2003. Even so, - many of the features required by SQL:2003 are already supported, - though sometimes with slightly differing syntax or function. - Further moves towards conformance should be expected in later releases. + sense. The PostgreSQL project is not represented in the ISO/IEC + 9075 Working Group during the preparation of the SQL standard + releases, but even so, many of the features required by the SQL + standard are supported, though sometimes with slightly differing + syntax or function. Further moves towards conformance can be + expected over time. </para> <para> @@ -56,20 +58,20 @@ are not consecutively numbered. <itemizedlist> - <listitem><para>ISO/IEC 9075-1 Framework (<acronym>SQL/Framework</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-2 Foundation (<acronym>SQL/Foundation</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-3 Call Level Interface (<acronym>SQL/CLI</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-4 Persistent Stored Modules (<acronym>SQL/PSM</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-9 Management of External Data (<acronym>SQL/MED</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-10 Object Language Bindings (<acronym>SQL/OLB</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-11 Information and Definition Schemas (<acronym>SQL/Schemata</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-13 Routines and Types using the Java Language (<acronym>SQL/JRT</acronym>)</para></listitem> - <listitem><para>ISO/IEC 9075-14 XML-related specifications (<acronym>SQL/XML</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-1 Framework (SQL/Framework)</para></listitem> + <listitem><para>ISO/IEC 9075-2 Foundation (SQL/Foundation)</para></listitem> + <listitem><para>ISO/IEC 9075-3 Call Level Interface (SQL/CLI)</para></listitem> + <listitem><para>ISO/IEC 9075-4 Persistent Stored Modules (SQL/PSM)</para></listitem> + <listitem><para>ISO/IEC 9075-9 Management of External Data (SQL/MED)</para></listitem> + <listitem><para>ISO/IEC 9075-10 Object Language Bindings (SQL/OLB)</para></listitem> + <listitem><para>ISO/IEC 9075-11 Information and Definition Schemas (SQL/Schemata)</para></listitem> + <listitem><para>ISO/IEC 9075-13 Routines and Types using the Java Language (SQL/JRT)</para></listitem> + <listitem><para>ISO/IEC 9075-14 XML-related specifications (SQL/XML)</para></listitem> </itemizedlist> </para> <para> - <productname>PostgreSQL</productname> covers parts 1, 2, and 11. + <productname>PostgreSQL</productname> covers parts 1, 2, 11, and 14. Part 3 is similar to the ODBC interface, and part 4 is similar to the <application>PL/pgSQL</application> programming language, but exact conformance is not specifically intended or verified in either diff --git a/src/backend/catalog/information_schema.sql b/src/backend/catalog/information_schema.sql index a41801b5ac7..7401e21c074 100644 --- a/src/backend/catalog/information_schema.sql +++ b/src/backend/catalog/information_schema.sql @@ -4,7 +4,7 @@ * * Copyright (c) 2003-2007, PostgreSQL Global Development Group * - * $PostgreSQL: pgsql/src/backend/catalog/information_schema.sql,v 1.40 2007/01/16 18:32:26 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/catalog/information_schema.sql,v 1.41 2007/02/03 17:59:35 petere Exp $ */ /* @@ -1615,12 +1615,12 @@ CREATE TABLE sql_parts ( INSERT INTO sql_parts VALUES ('1', 'Framework (SQL/Framework)', 'NO', NULL, ''); INSERT INTO sql_parts VALUES ('2', 'Foundation (SQL/Foundation)', 'NO', NULL, ''); INSERT INTO sql_parts VALUES ('3', 'Call-Level Interface (SQL/CLI)', 'NO', NULL, ''); -INSERT INTO sql_parts VALUES ('4', 'Persistent Stored Modules (SQL/PSM)', NULL, ''); -INSERT INTO sql_parts VALUES ('9', 'Management of External Data (SQL/MED)', NULL, ''); -INSERT INTO sql_parts VALUES ('10', 'Object Language Bindings (SQL/OLB)', NULL, ''); -INSERT INTO sql_parts VALUES ('11', 'Information and Definition Schema (SQL/Schemata)', NULL, ''); -INSERT INTO sql_parts VALUES ('13', 'Routines and Types Using the Java Programming Language (SQL/JRT)', NULL, ''); -INSERT INTO sql_parts VALUES ('14', 'XML-Related Specifications (SQL/XML)', NULL, ''); +INSERT INTO sql_parts VALUES ('4', 'Persistent Stored Modules (SQL/PSM)', 'NO', NULL, ''); +INSERT INTO sql_parts VALUES ('9', 'Management of External Data (SQL/MED)', 'NO', NULL, ''); +INSERT INTO sql_parts VALUES ('10', 'Object Language Bindings (SQL/OLB)', 'NO', NULL, ''); +INSERT INTO sql_parts VALUES ('11', 'Information and Definition Schema (SQL/Schemata)', 'NO', NULL, ''); +INSERT INTO sql_parts VALUES ('13', 'Routines and Types Using the Java Programming Language (SQL/JRT)', 'NO', NULL, ''); +INSERT INTO sql_parts VALUES ('14', 'XML-Related Specifications (SQL/XML)', 'YES', NULL, ''); /* diff --git a/src/backend/catalog/sql_features.txt b/src/backend/catalog/sql_features.txt index ab83fcc2fdf..5766049797d 100644 --- a/src/backend/catalog/sql_features.txt +++ b/src/backend/catalog/sql_features.txt @@ -437,3 +437,58 @@ T652 SQL-dynamic statements in SQL routines NO T653 SQL-schema statements in external routines NO T654 SQL-dynamic statements in external routines NO T655 Cyclically dependent routines NO +X010 XML type YES +X011 Arrays of XML type YES +X012 Multisets of XML type NO +X013 Distinct types of XML type NO +X014 Attributes of XML type NO +X015 Fields of XML type NO +X016 Persistent XML values YES +X020 XML concatenation YES +X031 XMLElement YES +X032 XMLForest YES +X033 XMLRoot YES +X034 XMLAgg YES +X035 XMLAgg: ORDER BY option NO +X036 XMLComment YES +X037 XMLPI YES +X041 Basic table mapping: nulls absent NO +X042 Basic table mapping: null as nil NO +X043 Basic table mapping: table as forest NO +X044 Basic table mapping: table as element NO +X045 Basic table mapping: with target namespace NO +X046 Basic table mapping: data mapping NO +X047 Basic table mapping: metadata mapping NO +X048 Basic table mapping: base64 encoding of binary strings NO +X049 Basic table mapping: hex encoding of binary strings NO +X051 Advanced table mapping: nulls absent NO +X052 Advanced table mapping: null as nil NO +X053 Advanced table mapping: table as forest NO +X054 Advanced table mapping: table as element NO +X055 Advanced table mapping: target namespace NO +X056 Advanced table mapping: data mapping NO +X057 Advanced table mapping: metadata mapping NO +X058 Advanced table mapping: base64 encoding of binary strings NO +X059 Advanced table mapping: hex encoding of binary strings NO +X060 XMLParse: CONTENT option YES +X061 XMLParse: DOCUMENT option YES +X062 XMLParse: explicit WHITESPACE option YES +X070 XMLSerialize: CONTENT option YES +X071 XMLSerialize: DOCUMENT option YES +X080 Namespaces in XML publishing NO +X081 Query-level XML namespace declarations NO +X082 XML namespace declarations in DML NO +X083 XML namespace declarations in DDL NO +X084 XML namespace declarations in compound statements NO +X090 XML document predicate YES +X100 Host language support for XML: CONTENT option NO +X101 Host language support for XML: DOCUMENT option NO +X110 Host language support for XML: VARCHAR mapping NO +X111 Host language support for XML: CLOB mapping NO +X120 XML parameters in SQL routines YES +X121 XML parameters in external routines YES +X131 Query-level XMLBINARY clause NO +X132 XMLBINARY clause in DML NO +X133 XMLBINARY clause in DDL NO +X134 XMLBINARY clause in compound statements NO +X135 XMLBINARY clause in subqueries NO -- GitLab