<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT product (title?,detail?,requires-addon-id*,product-id-required*,
incompatible-product-id*,incompatible-addon-id*,named-datasource*,
product-addon-group*,product-addon-combo*,server-instance-type*,
server-instance*) >
<!ATTLIST product
id CDATA #REQUIRED
extends CDATA #IMPLIED
priority CDATA #IMPLIED
>
<!ELEMENT title (#PCDATA)>
<!ATTLIST title
resource-key CDATA #IMPLIED
resource-params CDATA #IMPLIED
>
<!ELEMENT detail (#PCDATA)>
<!ATTLIST detail
resource-key CDATA #IMPLIED
resource-params CDATA #IMPLIED
>
<!ELEMENT requires-addon-id EMPTY>
<!ATTLIST requires-addon-id
id CDATA #REQUIRED
>
<!ELEMENT incompatible-product-id EMPTY>
<!ATTLIST incompatible-product-id
id CDATA #REQUIRED
>
<!ELEMENT incompatible-addon-id EMPTY>
<!ATTLIST incompatible-addon-id
id CDATA #REQUIRED
>
<!ELEMENT named-datasource (title,detail?,jndi?)>
<!ATTLIST named-datasource
id CDATA #REQUIRED
modulelist-server-instance-type CDATA #REQUIRED
extends CDATA #IMPLIED
>
<!ELEMENT jndi (#PCDATA)>
<!ELEMENT product-addon-group (title,detail?,product-id-required*,
requires-product-addon*,incompatible-addon-id*,product-addon+)>
<!ATTLIST product-addon-group
id CDATA #REQUIRED
min-occurs CDATA #IMPLIED
max-occurs CDATA #IMPLIED
>
<!ELEMENT product-id-required EMPTY>
<!ATTLIST product-id-required
id CDATA #REQUIRED
>
<!ELEMENT requires-product-addon EMPTY>
<!ATTLIST requires-product-addon
id CDATA #REQUIRED
>
<!ELEMENT product-addon (title,detail?,(modify-server-instance-type|
modify-server-instance)*)>
<!ATTLIST product-addon
id CDATA #REQUIRED
>
<!ELEMENT product-addon-combo (combo-product-addon+,
modify-server-instance-type*,modify-server-instance*)>
<!ATTLIST product-addon-combo
id CDATA #REQUIRED
>
<!ELEMENT combo-product-addon EMPTY>
<!ATTLIST combo-product-addon
id CDATA #REQUIRED
>
<!ELEMENT modify-server-instance-type ((prepend-module|append-module|
remove-module|add-named-datasource|add-server-instance|
remove-named-datasource|remove-server-instance)*)>
<!ATTLIST modify-server-instance-type
id CDATA #REQUIRED
>
<!ELEMENT modify-server-instance ((add-appassembler-option|
remove-appassembler-option)*)>
<!ATTLIST modify-server-instance
id CDATA #REQUIRED
>
<!ELEMENT prepend-module EMPTY>
<!ATTLIST prepend-module
name CDATA #REQUIRED
>
<!ELEMENT append-module EMPTY>
<!ATTLIST append-module
name CDATA #REQUIRED
before CDATA #IMPLIED
>
<!ELEMENT remove-module EMPTY>
<!ATTLIST remove-module
name CDATA #REQUIRED
>
<!ELEMENT add-named-datasource EMPTY>
<!ATTLIST add-named-datasource
id CDATA #REQUIRED
>
<!ELEMENT remove-named-datasource EMPTY>
<!ATTLIST remove-named-datasource
id CDATA #REQUIRED
>
<!ELEMENT add-server-instance EMPTY>
<!ATTLIST add-server-instance
id CDATA #REQUIRED
>
<!ELEMENT remove-server-instance EMPTY>
<!ATTLIST remove-server-instance
id CDATA #REQUIRED
>
<!ELEMENT add-appassembler-option EMPTY>
<!ATTLIST add-appassembler-option
name CDATA #REQUIRED
value CDATA #IMPLIED
>
<!ELEMENT remove-appassembler-option EMPTY>
<!ATTLIST remove-appassembler-option
name CDATA #REQUIRED
>
<!ELEMENT server-instance-type (title,detail?,append-module*,
add-named-datasource*,add-server-instance*,config-directory?,
optional-config-directory*)>
<!ATTLIST server-instance-type
id CDATA #REQUIRED
extends CDATA #IMPLIED
>
<!ELEMENT optional-config-directory (title,detail?,(property-file|step)*)>
<!ATTLIST optional-config-directory
id CDATA #REQUIRED
>
<!ELEMENT server-instance (title,detail?,ear-file-name,server-instance-name,
config-directory,post-deployment?,post-deployment-option*)>
<!ATTLIST server-instance
id CDATA #REQUIRED
type CDATA #REQUIRED
min-occurs CDATA #IMPLIED
max-occurs CDATA #IMPLIED
>
<!ELEMENT ear-file-name (#PCDATA)>
<!ELEMENT server-instance-name (#PCDATA)>
<!ELEMENT config-directory (property-file|step)*>
<!ELEMENT property-file (comment?,property-group*)>
<!ATTLIST property-file
file CDATA #REQUIRED
>
<!ELEMENT property-group ((requires-addon-id|pass-validation)*,property*)>
<!ATTLIST property-group
id CDATA #REQUIRED
>
<!ELEMENT pass-validation (property)*>
<!ATTLIST pass-validation
id CDATA #REQUIRED
class CDATA #REQUIRED
>
<!ELEMENT post-deployment (step*)>
<!ELEMENT post-deployment-option (title,detail?,(requires-addon-id|requires-app-
server)*,step*)>
<!ATTLIST post-deployment-option
id CDATA #REQUIRED
>
<!ELEMENT requires-app-server (#PCDATA)>
<!ELEMENT step (title?,detail?,property*,navoptionprovider?,(task|validator|
navoption)*,error?)>
<!ATTLIST step
id CDATA #REQUIRED
type (template) #IMPLIED
class CDATA #IMPLIED
>
<!ELEMENT comment (#PCDATA)>
<!ELEMENT property (value?, input?)>
<!ATTLIST property
name CDATA #REQUIRED
persist-key CDATA #IMPLIED
>
<!ELEMENT if-true (command*)>
<!ELEMENT if-false (command*)>
<!ELEMENT validator (property*,error-message?,if-true?,if-false?)>
<!ATTLIST validator
id CDATA #REQUIRED
phase (PRESTEP|PREINPUT|POSTINPUT|PRENAVIGATION|POSTSTEP) #IMPLIED
>
<!ELEMENT error-message (#PCDATA)>
<!ELEMENT value (#PCDATA)>
<!ELEMENT label (#PCDATA)>
<!ATTLIST label
resource-key CDATA #IMPLIED
resource-params CDATA #IMPLIED
>
<!ELEMENT command (label?)>
<!ATTLIST command
type (EXECUTE_STEP_TASKS|DROP_STEP_TASKS|ADD_STEP_TASKS_TO_QUEUE|
EXECUTE_QUEUED_TASKS|DELETE_QUEUED_TASKS|UNDO_STEP_TASKS|ADD_TASK|
REMOVE_TASK|GOTO_STEP|NEXT_STEP|PREVIOUS_STEP|QUIT|REDO_STEP|LOAD_PROCESS|
PROCESS_COMPLETE|LAUNCH_WIZARD|LAUNCH_TEMPLATE|TEMPLATE_COMPLETE|
WIZARD_COMPLETE|DROP_REDO|EXECUTE_NEXT|EXECUTE_GOTO|DISPLAY_TEXT|
REDO_INPUT) #REQUIRED
value CDATA #IMPLIED
>
<!ELEMENT input (label, validator*)>
<!ATTLIST input
type (text | password | path | class) #REQUIRED
>
<!ELEMENT navoption (label,command+)>
<!ATTLIST navoption
id CDATA #REQUIRED
default (true|false) #IMPLIED
>
<!ELEMENT navoptionprovider (property*)>
<!ATTLIST navoptionprovider
class CDATA #REQUIRED
>
<!ELEMENT error (step)>
<!ELEMENT task (property*)>
<!ATTLIST task
id CDATA #REQUIRED
>