<?xml encoding="US-ASCII"?>

<!--
#=============================================================================
#
# 5639-D57,  (C) COPYRIGHT International Business Machines Corp., 1999
# All Rights Reserved * Licensed Materials - Property of IBM
#
# This program may be used, executed, copied, modified and distributed
# without royalty for the purpose of developing, using, marketing, or 
# distributing.
#
#=============================================================================
  -->

<!ELEMENT ejb-JAR	(input-file,
			 output-file,
			 (entity-bean | session-bean)+)>

<!ELEMENT input-file	(#PCDATA)>

<!ELEMENT output-file	(#PCDATA)>


<!ELEMENT entity-bean	(primary-key,
			 re-entrant?,
			 container-managed*,
                         home-interface,
			 remote-interface,
			 enterprise-bean,
			 jndi-name?,
			 transaction-attr?,
			 isolation-level?,
			 run-as-mode?,
			 run-as-id?,
			 method-control*,
			 env-prop*,
			 dependency*)>

<!ATTLIST entity-bean	 dname CDATA #REQUIRED>

<!ELEMENT session-bean	(session-timeout?,
			 state-management,
                         home-interface,
			 remote-interface,
			 enterprise-bean,
			 jndi-name?,
			 transaction-attr?,
			 isolation-level?,
			 run-as-mode?,
			 run-as-id?,
			 method-control*,
			 env-prop*,
			 dependency*)>

<!ATTLIST session-bean	 dname CDATA #REQUIRED>


<!ELEMENT primary-key (#PCDATA)>

<!ELEMENT re-entrant EMPTY>
<!ATTLIST re-entrant value
		(true | false | TRUE | FALSE | True | False) #REQUIRED>

<!ELEMENT container-managed (#PCDATA)>


<!ELEMENT session-timeout (#PCDATA)>

<!ELEMENT state-management (#PCDATA)>

<!ELEMENT home-interface (#PCDATA)>

<!ELEMENT remote-interface (#PCDATA)>

<!ELEMENT enterprise-bean (#PCDATA)>

<!ELEMENT jndi-name (#PCDATA)>

<!ELEMENT transaction-attr EMPTY>
<!ATTLIST transaction-attr value
		(TX_NOT_SUPPORTED	| 
		 TX_BEAN_MANAGED	|
		 TX_REQUIRED		|
		 TX_REQUIRES_NEW	|
		 TX_MANDATORY		|
		 TX_SUPPORTS)
		#REQUIRED>

<!ELEMENT isolation-level EMPTY>
<!ATTLIST isolation-level value
		(READ_UNCOMMITTED	|
		 READ_COMMITTED		|
		 REPEATABLE_READ	|
		 SERIALIZABLE)
		#REQUIRED>

<!ELEMENT run-as-mode EMPTY>
<!ATTLIST run-as-mode value
		(SYSTEM_IDENTITY	|
		 CLIENT_IDENTITY	|
		 SPECIFIED_IDENTITY)
		#REQUIRED>

<!ELEMENT run-as-id EMPTY>
<!ATTLIST run-as-id value CDATA #REQUIRED>

<!ELEMENT method-control	(method-name,
				 parameter*,
				 transaction-attr?,
				 isolation-level?,
				 run-as-mode?,
				 run-as-id?
				)>

<!ELEMENT method-name	(#PCDATA)>

<!ELEMENT parameter	(#PCDATA)>

<!ELEMENT dependency	(#PCDATA)>
<!ATTLIST dependency	comment	CDATA #IMPLIED>

<!ELEMENT comment	(#PCDATA)>

<!ELEMENT env-prop	(#PCDATA)>
<!ATTLIST env-prop	name	CDATA #REQUIRED 
			comment CDATA #IMPLIED>

<!--
#=============================================================================
# END OF JetAceDTD.dtd
#=============================================================================
  -->
