Skip site navigation (1) Skip section navigation (2)

Re: New XML section for documentation

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: bruce(at)momjian(dot)us
Cc: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>, PostgreSQL-documentation <pgsql-docs(at)postgreSQL(dot)org>, Peter Eisentraut <peter_e(at)gmx(dot)net>
Subject: Re: New XML section for documentation
Date: 2006-09-07 00:06:08
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-docspgsql-hackers
I have added a modified version of this to the SGML documentation,
under data types.


bruce wrote:
> Here is an new XML section for our SGML documentation.  It explains the
> various XML capabilities, if we support them, and how to use them.
> Comments?
> ---------------------------------------------------------------------------
> XML Document Support
> ====================
> XML support is not one capability, but a variety of features supported
> by a database.  These capabilities include storage, import/export,
> validation, indexing, efficiency of modification,  searching,
> transformating, and XML to SQL mapping.  PostgreSQL supports some but
> not all of these XML capabilities.  Future releases of PostgreSQL will
> continue to improve XML support.
> Storage
> -------
> PostgreSQL stores XML documents as ordinary text documents.  It does not
> split apart XML documents into its component parts and store each
> element separately.  You can use middle-ware solutions to do that, but
> once done, the data becomes relational and has to be processed
> accordingly.
> Import/Export
> -------------
> Because XML documents are stored as normal text documents, they can be
> imported/exported with little complexity.  A simple TEXT field can hold
> up to 1 gigabyte of text, and large objects are available for larger
> documents.
> Validation
> ----------
> /contrib/xml2 has a function called xml_valid() that can be used in
> a CHECK constraint to enforce that a field contains valid XML.  It
> does not support validation against a specific XML schema.  A
> server-side language with XML capabilities could be used to do
> schema-specific XML checks.
> Indexing
> --------
> Because XML documents are stored as text, full-text indexing tool
> /contrib/tsearch2 can be used to index XML documents.  Of course, the
> searches are text searches, with no XML awareness, but tsearch2 can be
> used with other XML capabilities to dramatically reduce the amount of
> data processed at the XML level.
> Modification
> ------------ 
> If an UPDATE does not modify an XML field, the XML data is shared
> between the old and new rows.  However, if the UPDATE modifies a XML
> field, a full modified copy of the XML field must be created internally.
> Searching
> ---------
> XPath searches are implemented using /contrib/xml2.  It processes XML
> text documents and returns results based on the requested query.
> Transforming
> ------------
> /contrib/xml2 supports XSL transformations.
> XML to SQL Mapping
> -------------------
> This involves converting XML data to and from relational structures. 
> PostgreSQL has no internal support for such mapping, and relies on
> external tools to do such conversions.
> Missing Features
> ----------------
> 	o  XQuery
> 	o  SQL/XML syntax (ISO/IEC 9075-14)
> 	o  XML data type optimized for XML storage
> See also
> -- 
>   Bruce Momjian   bruce(at)momjian(dot)us
>   EnterpriseDB
>   + If your life is a hard drive, Christ can be your backup. +

  Bruce Momjian   bruce(at)momjian(dot)us

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

pgsql-docs by date

Next:From: James CloosDate: 2006-09-11 03:41:38
Subject: plperl and triggers
Previous:From: Nikolay SamokhvalovDate: 2006-09-05 07:58:36
Subject: Re: [HACKERS] New XML section for documentation

pgsql-hackers by date

Next:From: Bruce MomjianDate: 2006-09-07 00:12:36
Subject: Re: [HACKERS] Coding style for emacs
Previous:From: Jeff DavisDate: 2006-09-06 23:58:36
Subject: Re: New Linux Filesystem: NILFS

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group