[Zodb-checkins] CVS: Packages/ZConfig/doc - zconfig.tex:1.42
Fred L. Drake, Jr.
fred@zope.com
Tue, 7 Jan 2003 16:38:23 -0500
Update of /cvs-repository/Packages/ZConfig/doc
In directory cvs.zope.org:/tmp/cvs-serv22574
Modified Files:
zconfig.tex
Log Message:
Preliminary description of the schema component library.
=== Packages/ZConfig/doc/zconfig.tex 1.41 => 1.42 ===
--- Packages/ZConfig/doc/zconfig.tex:1.41 Tue Jan 7 02:14:24 2003
+++ Packages/ZConfig/doc/zconfig.tex Tue Jan 7 16:38:19 2003
@@ -242,6 +242,38 @@
XXX to be written
+\section{Libraries of Schema Components \label{schema-library}}
+
+XXX need more explanation
+
+\module{ZConfig} supports a library of extensible schema components
+that can be provided by disparate components, and allows them to be
+knit together into concrete schema for applications. Neither
+components nor extensions can add additional keys or sections in the
+application schema.
+
+A schema \dfn{component} is allowed to define new section groups and
+section types. It is not allowed to extend application types or
+include additional types in application-provided section groups.
+Components are identified using a dotted-name, similar to a Python
+module name. For example, one component may be \code{zodb.storage}.
+There is no relationship between the schema component namespace and
+the Python module namespace.
+
+A schema component \dfn{extension} is allowed to define new section
+types, extend types provided by the component it extends, and include
+new concrete types in section groups provided by the component.
+
+A library of schema components is stored as a directory tree, where
+each component is located in a directory within the tree. That
+directory must contain a file named \file{component.xml} which defines
+the types provided by that component; it must have a \code{component}
+element as the document element. Extensions to a component are stored
+in immediate subdirectories; a file \file{extension.xml} provides the
+extension types. Extensions must have an \code{extension} element as
+the document element.
+
+
\section{Standard \module{ZConfig} Datatypes\label{standard-datatypes}}
There are a number of data types which can be identified using the