donaldp 2002/11/12 20:02:31
Added: docs/excalibur/info componentinfo.dtd.txt sample.html
Log:
Add in DTD and start of sample.
Revision Changes Path
1.1 jakarta-avalon-site/docs/excalibur/info/componentinfo.dtd.txt
Index: componentinfo.dtd.txt
===================================================================
<!--
This is the DTD defining the Avalon ComponentInfo 1.0
descriptor (XML) file format/syntax.
Author: Peter Donald <peter at apache.org>
A BlockInfo is an XML file used to describe Components and located side-by-side
with
the Component .class file. It describes the services the Component requires to
operate,
the services the Component is capable of offerring other Component, the context
entrys
that Component requires and other support meta data.
Copyright (C) The Apache Software Foundation. All rights reserved.
This software is published under the terms of the Apache Software License
version 1.1, a copy of which has been included with this distribution in
the LICENSE.txt file.
-->
<!--
The component-info is the document root, it defines:
component the specifc details about this component
loggers the loggers used by this component
context the context required by this component
services the services offered by this component
dependencies the services that this component require to operate
schema the configuration/parameters schema that this component
validates against
-->
<!ELEMENT component-info (component, loggers?, context?, services?, dependencies?,
schema?)>
<!--
!ATTLIST component-info id ID #IMPLIED
xmlns CDATA #FIXED "http://jakarta.apache.org/avalon/componentinfo_1_0.dtd"
-->
<!--
The service-info is the document root for service info file, it defines:
service the specifc details about this service
methods the methods declared by this service
-->
<!ELEMENT service-info (service, methods?)>
<!--
The component element describes the component, it defines:
name the human readable name of component type. Must be a string
containing alphanumeric characters, '.', '_' and starting
with a letter.
-->
<!ELEMENT component (attribute*)>
<!ATTLIST component type CDATA #REQUIRED >
<!--
The schema element defines the schema for the component, it defines:
category either "configuration" or "parameters" depending on what
the schema is being used to validate against.
location the location of the schema relative the the component
-->
<!ELEMENT schema (attribute*)>
<!ATTLIST schema category CDATA #REQUIRED >
<!ATTLIST schema location CDATA #REQUIRED >
<!--
The logger element defines the loggers that are available to component.
The element has one attribute specifying name of Logger. It contains:
attribute Optional attributes about logger
-->
<!ELEMENT logger (attribute*) >
<!ATTLIST logger name CDATA #IMPLIED >
<!--
The context element defines what values and type of context
is available to component.
It contains:
entrys Key value pairs that component uses
attribute Optional attributes about service
-->
<!ELEMENT context (entry*,attribute*) >
<!ATTLIST context type CDATA #IMPLIED >
<!--
The service element defines a service that the component
can provide to other component.
type the name of the service. This is usually equal to the class
name of the interface that defines the service.
It contains:
attribute Optional attributes about service
-->
<!ELEMENT service (attribute*) >
<!ATTLIST service type CDATA #REQUIRED >
<!--
The service dependency describes a service that the component
requires. It defines:
key the key used to lookup service. If not provided it defaults
to the value specified in the name attribute of service element
-->
<!ELEMENT dependency (attribute*) >
<!ATTLIST dependency
key CDATA #IMPLIED
type CDATA #REQUIRED
optional CDATA #IMPLIED >
<!--
The loggers element contains a list of loggers that component uses.
-->
<!ELEMENT loggers (logger*)>
<!--
The services element contains a list of services that this component supports.
It contains service elements.
-->
<!ELEMENT services (service*)>
<!--
The dependencies element contains a list of services that this component requires.
It contains dependency elements.
-->
<!ELEMENT dependencies (dependency*)>
<!--
The methods element contains a list of methods declared by service.
-->
<!ELEMENT methods (method*)>
<!--
The entry element defines entry in context.
It defines:
key the key for entry.
value the value of entry.
optional is entry optional
-->
<!ELEMENT entry (attribute*) >
<!ATTLIST entry
key CDATA #REQUIRED
type CDATA #REQUIRED
optional CDATA #IMPLIED
>
<!ELEMENT method (parameter*,attribute*) >
<!ATTLIST method
name CDATA #REQUIRED
return-type CDATA #REQUIRED >
<!ELEMENT parameter (attribute*) >
<!ATTLIST parameter type CDATA #REQUIRED >
<!--
The method element defines a method.
It defines:
key the key for entry.
value the value of entry.
optional is entry optional
-->
<!ELEMENT attribute (param*) >
<!ATTLIST attribute name CDATA #REQUIRED >
<!--
The param element defines an parameter to a attribute.
It defines:
name the name of attribute.
value the value of attribute.
-->
<!ELEMENT param EMPTY >
<!ATTLIST param
name CDATA #REQUIRED
value CDATA #REQUIRED
>
1.1 jakarta-avalon-site/docs/excalibur/info/sample.html
Index: sample.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<!-- This is a generated file. Do not edit. -->
<html>
<head>
<style type="text/css">
@import url("./css/tigris.css");
@import url("./css/site.css");
</style>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<meta name="author" value="Peter Donald">
<meta name="email" value="peter at apache.org">
<title>Avalon Info - Overview</title>
</head>
<body marginwidth="0" marginheight="0" class="composite">
<div id="banner">
<table border="0" cellspacing="0" cellpadding="8" width="100%">
<!-- TOP IMAGE -->
<tr>
<td> <td colspan="2">
<a href="http://jakarta.apache.org"><img
src="http://jakarta.apache.org/images/jakarta-logo.gif" align="left" border="0"/></a>
</td>
</td>
<td><div align="right" valign="bottom"><b><font size="+3">Avalon
Info</font></b></div></td>
</tr>
</table>
</div>
<table border="0" cellspacing="0" cellpadding="8" width="100%" id="main">
<tr valign="top">
<!-- LEFT SIDE NAVIGATION -->
<td id="leftcol" width="20%">
<div id="navcolumn">
<div>
<strong>About</strong>
<div><small> <a href="./index.html">Overview</a>
</small></div>
<div><small> <a
href="http://jakarta.apache.org/avalon/excalibur/index.html">Excalibur Home</a>
</small></div>
<div><small> <a
href="http://jakarta.apache.org/builds/jakarta-avalon-excalibur/release">Download</a>
</small></div>
<div><small> <a href="./api/">API Docs</a>
</small></div>
</div>
<div>
<strong>Specifications</strong>
<div><small> <a href="./componentinfo.dtd.txt">Info DTD</a>
</small></div>
<div><small> <a href="./attributes.html">Common Attributes</a>
</small></div>
<div><small> <a href="./context.html">Context Entry Spec</a>
</small></div>
<div><small> <a href="./features.html">Features</a>
</small></div>
</div>
<div>
<strong>Tools</strong>
<div><small> <a href="./tasks.html">Ant Tasks</a>
</small></div>
<div><small> <a href="./doclet.html">Doclet Markup</a>
</small></div>
</div>
<div>
<strong>Example</strong>
<div><small> <a href="./sample.html">Sample Component Info</a>
</small></div>
</div>
</div>
</td>
<td><div id="bodycol"><div class="app">
<div class="h3">
<h3><a name="Introduction">Introduction</a></h3>
<p
> Below is a sample xml descriptor that includes documentation
describing the elements of the descriptor.
</p>
</div>
<div class="h3">
<h3><a name="Example">Example</a></h3>
<div id="source">
<pre><?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE component-info
PUBLIC "-//AVALON/Component Info DTD Version 1.0//EN"
"http://jakarta.apache.org/avalon/dtds/info/componentinfo_1_0.dtd" >
<component-info>
<!--
The following element defines the name of the components class.
-->
<component type="com.biz.MyComponent"/>
<!--
The loggers section defines a set of loggers that the component will
use. Names of loggers are hierarchial using a '.' to separate each
element in the hierarchy. The component gets passed a logger that
is conceptually named "" (empty string). They can retrieve child
loggers
via the Logger.getChildLogger(String name) method. The name that they
pass into logger is the next name in the hierarchy. So the below example
indicates that the component will retrieve the "auth" logger and use
it
to log messages, such as;
getLogger().getChildLogger("auth").warn( "Some message!" );
-->
<loggers>
<logger/>
<logger name="auth"/>
</loggers>
<context>
<entry key="component.classloader"
type="java.lang.ClassLoader"/>
</context>
<services>
<service type="com.biz.Service1"/>
</services>
<dependencies>
<dependency type="com.biz.Service2"/>
<dependency key="com.biz.Service1/Variation"
type="com.biz.Service1"
optional="true"/>
</dependencies>
<schema category="configuration"
location="MyComponent-schema.xml"/>
</component-info></pre>
</div>
</div>
</div>
<div align="right" id="authors">
by <a href="mailto:peter at apache.org">Peter Donald</a>
</div>
</div></td>
</tr>
</table>
<!-- FOOTER -->
<div id="footer">
<table border="0" cellspacing="0" cellpadding="4">
<tr>
<td>Copyright © 1999-2002, Apache Software Foundation</td>
</tr>
</table>
</div>
</body>
</html>
--
To unsubscribe, e-mail: <mailto:avalon-cvs-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-cvs-help@;jakarta.apache.org>