[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