configure
¶
Because ZCML is XML, and because XML requires a single root tag for
each document, every ZCML file used by Pyramid must contain a configure
container directive, which acts as the root XML tag. It is a "container"
directive because its only job is to contain other directives.
Attributes¶
xmlns
The default XML namespace used for subdirectives.
Example¶
1<configure xmlns="http://pylonshq.com/pyramid">
2
3 <!-- other directives -->
4
5</configure>
A Word On XML Namespaces¶
Usually, the start tag of the <configure>
container tag has a
default XML namespace associated with it. This is usually
http://pylonshq.com/pyramid
, named by the xmlns
attribute of
the configure
start tag.
Using the http://pylonshq.com/pyramid
namespace as the default XML
namespace isn't strictly necessary; you can use a different default namespace
as the default. However, if you do, the declaration tags which are defined
by Pyramid such as the view
declaration tag will need to be defined in
such a way that the XML parser that Pyramid uses knows which namespace the
pyramid
tags are associated with. For example, the following files
are all completely equivalent:
Use of A Non-Default XML Namespace
1 <configure xmlns="http://namespaces.zope.org/zope"
2 xmlns:pyramid="http://pylonshq.com/pyramid">
3
4 <include package="pyramid.includes" />
5
6 <pyramid:view
7 view="helloworld.hello_world"
8 />
9
10 </configure>
Use of A Per-Tag XML Namespace Without A Default XML Namespace
1 <configure>
2
3 <include package="pyramid.includes" />
4
5 <view xmlns="https://trypyramid.com"
6 view="helloworld.hello_world"
7 />
8
9 </configure>
For more information about XML namespaces, see this older, but simple XML.com article.
The conventions in this document assume that the default XML namespace
is https://trypyramid.com
.
Alternatives¶
None.
See Also¶
See also Hello World, Goodbye World (Declarative).