You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by mc...@apache.org on 2002/08/18 02:32:51 UTC

cvs commit: jakarta-avalon-site/docs type_1_1.dtd

mcconnell    2002/08/17 17:32:51

  Added:       docs     type_1_1.dtd
  Log:
  Publication of the Type DTD updated version 1.1. that includes all Avalon Meta Mode and Phoenix features.
  
  Revision  Changes    Path
  1.1                  jakarta-avalon-site/docs/type_1_1.dtd
  
  Index: type_1_1.dtd
  ===================================================================
  <!--
  
     This is the DTD defining the Avalon Meta Model Type 1.0
     descriptor (XML) file format/syntax.
  
     Author: Stephen McConnell <mc...@apache.org>
     Author: Peter Donald <pe...@apache.org>
  
     An xinfo file is an XML file used to describe component types and is located side-by-side with
     the .class file of the component. It describes the services the component requires to operate
     (its dependecies), the services the component is capable of offerring other component, the 
     context entrys that component requires, logging catagories that the compoent may use, stage 
     depedencies, supplied extension haddlers, and management control points and other support meta 
     data in the form of attributes.
  
     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.
  
    -->
  
  <!--
  A type element 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
  stages       the lifecycle stage extensions that this component is depenent on
  extensions   the lifecycle extensions that this component provides
  controls     the set of management control points
  
  -->
  
  <!ELEMENT type (component, loggers?, context?, services?, dependencies?, stages?, extensions?)>
  
  <!--
  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.
  version	     the version of the component in (in the format #.#.#, #.# or # where
               # is a integer
  -->
  <!ELEMENT component      (name?,version,attributes?)>
    <!ELEMENT name         (#PCDATA) >
    <!ELEMENT version      (#PCDATA) >
  
  <!--
  The logger element defines the loggers that are available to component.
  The element has one attribute specifying name of Logger. It contains:
  
  attributes	  Optional attributes about logger
  -->
  <!ELEMENT logger   (attributes?) >
    <!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
  attributes	  Optional attributes about service
  -->
  <!ELEMENT context   (entry*,attributes?) >
    <!ATTLIST context type CDATA #IMPLIED >
  
  <!--
  The service element defines a service that the component
  can provide to other component.
  It contains:
  
  reference     the reference to service.
  attributes	  Optional attributes about service
  -->
  <!ENTITY % ref "(service-ref|reference)">
  <!ELEMENT service   (%ref;,attributes?) >
  
  <!--
  The reference element defines a reference to a versioned interface.
  It defines:
  
  type         the class of the interface. This must be equal to the class name of the
               interface.
  version	 the version of the interface in (in the format #.#.#, #.# or # where
               # is a integer
  -->
  <!ELEMENT reference   EMPTY >
    <!ATTLIST reference
         type CDATA #REQUIRED
         version CDATA #IMPLIED >
  
  <!--
  The extension element defines a lifecycle extension stage supplied by a type:
  
  name  the extension name.
  reference  the version lifecycle interface supported
  attributes	  Optional attributes about the extension
  -->
  <!ENTITY % stage.attribute "stage (CREATE|ACCESS|RELEASE|DESTROY|ALL|INNER|OUTER) 'ALL'">
  <!ELEMENT extension      (name,reference,attributes?)>
  <!ATTLIST extension
         %stage.attribute; >
  
  <!--
  The control element defines an optional management access point that a component may provide.
  It contains:
  
  reference     a reference to a version management interface
  attributes	  Optional attributes about the management access point
  -->
  <!ELEMENT control      (reference,attributes?)>
  
  <!--
  The controls element contains a list of control elements that this component proivides.
  -->
  <!ELEMENT controls    (control*)>
  
  
  <!--
  The stage element defines a lifecycle extension stage that this component is dependent on.
  It contains:
  
  name  the stage name.
  interface  the client stage interface
  attributes	  Optional attributes about the stage
  -->
  <!ELEMENT stage      (reference,attributes?)>
  
  <!--
  The stages element contains a list of stages that this component id dependent on.
  It contains stage elements.
  -->
  <!ELEMENT stages    (stage*)>
  
  <!--
  The extensions element contains a list of extensions that the component provides.
  -->
  <!ELEMENT extensions    (extension*)>
  
  <!--
  The service dependency describes a service that the component
  requires. It defines:
  
  role         the role of the service. This is the value that is used to lookup the
               service in the ComponentManager. If not provided it defaults to the
               value specified in the name attribute of service element
  service-ref  the service that is required
  -->
  <!ELEMENT dependency  (role?,%ref;,attributes?) >
    <!ATTLIST dependency optional CDATA #IMPLIED >
    <!ELEMENT role        (#PCDATA) >
  
  
  <!--
  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 attributes element contains a list of attributes for feature.
  -->
  <!ELEMENT attributes    (attribute*)>
  
  <!--
  The attribute element defines an attribute (an opaque key-value pair for a feature).
  It defines:
  
  key          the key for attribute.
  value  	     the value of attribute.
  -->
  <!ELEMENT attribute   EMPTY >
    <!ATTLIST attribute
         key CDATA #REQUIRED
         value CDATA #REQUIRED
    >
  
  <!--
  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   EMPTY >
    <!ATTLIST entry
         key CDATA #REQUIRED
         type CDATA #REQUIRED
         optional CDATA #IMPLIED
    >
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>