Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
a8db61f8
Commit
a8db61f8
authored
Sep 07, 2006
by
Bruce Momjian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add XML documentation.
parent
d5111347
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
149 additions
and
1 deletion
+149
-1
doc/src/sgml/datatype.sgml
doc/src/sgml/datatype.sgml
+149
-1
No files found.
doc/src/sgml/datatype.sgml
View file @
a8db61f8
<!-- $PostgreSQL: pgsql/doc/src/sgml/datatype.sgml,v 1.17
1 2006/08/21 16:23:46 tgl
Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/datatype.sgml,v 1.17
2 2006/09/07 00:04:48 momjian
Exp $ -->
<chapter id="datatype">
<title id="datatype-title">Data Types</title>
...
...
@@ -3295,6 +3295,154 @@ SELECT * FROM pg_attribute
</sect1>
<sect1 id="datatype-xml">
<title><acronym>XML</> Document Support</title>
<indexterm zone="datatype">
<primary>xml</primary>
</indexterm>
<para>
<acronym>XML</> (eXtensible Markup Language) support is not one
capability, but a variety of features supported by a database
system. These capabilities include storage, import/export,
validation, indexing, efficiency of modification, searching,
transforming, and <acronym>XML</> to <acronym>SQL</> mapping.
<productname>PostgreSQL</> supports some but not all of these
<acronym>XML</> capabilities. Future releases of
<productname>PostgreSQL</> will continue to improve <acronym>XML</>
support. For an overview of <acronym>XML</> use in databases, see <ulink
url="http://www.rpbourret.com/xml/XMLAndDatabases.htm"></>.
</para>
<variablelist>
<varlistentry>
<term>Storage</term>
<listitem>
<para>
PostgreSQL does not have a specialized <acronym>XML</> data type.
Users should store <acronym>XML</> documents in ordinary
<type>TEXT</> fields. If you need the document split apart into
its component parts so each element is stored separately, you must
use a middle-ware solution to do that, but once done, the data
becomes relational and has to be processed accordingly.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Import/Export</term>
<listitem>
<para>
There is no facility for mapping <acronym>XML</> to relational
tables. An external tool must be used for this. One simple way to
export <acronym>XML</> is to use <application>psql</> in
<acronym>HTML</> mode (<literal>\pset format html</>), and convert
the <acronym>XHTML</> output to XML using an external tool.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Validation</term>
<listitem>
<para>
<filename>/contrib/xml2</> has a function called
<function>xml_valid()</> that can be used in a <literal>CHECK</>
constraint to enforce that a field contains valid <acronym>XML</>.
It does not support validation against a specific <acronym>XML</>
schema. A server-side language with <acronym>XML</> capabilities
could be used to do schema-specific <acronym>XML</> checks.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Indexing</term>
<listitem>
<para>
<filename>/contrib/xml2</> functions can be used in expression
indexes to index specific <acronym>XML</> fields. To index the
full contents of <acronym>XML</> documents, the full-text indexing
tool <filename>/contrib/tsearch2</> can be used. Of course,
tsearch2 indexes have no <acronym>XML</> awareness so additional
<filename>/contrib/xml2</> checks should be added to queries.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Modification</term>
<listitem>
<para>
If an <command>UPDATE</> does not modify an <acronym>XML</> field,
the <acronym>XML</> data is shared between the old and new rows.
However, if the <command>UPDATE</> modifies an <acronym>XML</>
field, a full modified copy of the <acronym>XML</> field must be
created internally.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Searching</term>
<listitem>
<para>
XPath searches are implemented using <filename>/contrib/xml2</>.
It processes <acronym>XML</> text documents and returns results
based on the requested query.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Transforming</term>
<listitem>
<para>
<filename>/contrib/xml2</> supports <acronym>XSLT</> (XML
Stylesheet Language Transformation).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>XML to SQL Mapping</term>
<listitem>
<para>
This involves converting <acronym>XML</> data to and from
relational structures. <productname>PostgreSQL</> has no internal
support for such mapping, and relies on external tools to do such
conversions.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Missing Features</term>
<listitem>
<para>
Missing features include XQuery, SQL/XML syntax (ISO/IEC
9075-14), and an <acronym>XML</> data type optimized for
<acronym>XML</> storage.
</para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
</chapter>
<!-- Keep this comment at the end of the file
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment