<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://www.bea.com/ns/weblogic/60" elementFormDefault="qualified" xmlns:j2ee="http://java.sun.com/xml/ns/javaee" xmlns:wls="http://www.bea.com/ns/weblogic/60" xmlns="http://www.w3.org/2001/XMLSchema">
  <import namespace="http://java.sun.com/xml/ns/javaee" schemaLocation="http://java.sun.com/xml/ns/javaee/javaee_5.xsd"/>
  <!--FIXME: the following is taken from ../wls90/weblogic-j2ee.xsd: figure out how to make this work later-->
  <complexType name="true-falseType">
    <annotation>
      <documentation>This simple type designates a boolean with permissible values
	- true/false
	- yes/no
	- 1/0</documentation>
    </annotation>
    <simpleContent>
      <restriction base="j2ee:xsdBooleanType">
        <pattern value="(true|True|TRUE|false|False|FALSE|yes|Yes|YES|Y|no|No|NO|N|1|0)"/>
      </restriction>
    </simpleContent>
  </complexType>
  <element name="weblogic-rdbms-jar" type="wls:weblogic-rdbms-jarType"></element>
  <complexType name="weblogic-rdbms-jarType">
    <sequence>
      <element name="weblogic-rdbms-bean" type="wls:weblogic-rdbms-beanType" maxOccurs="unbounded"/>
      <element name="create-default-dbms-tables" type="wls:true-falseType" minOccurs="0"/>
      <element name="validate-db-schema-with" type="wls:validate-db-schema-withType" minOccurs="0"/>
      <element name="database-type" type="wls:database-typeType" minOccurs="0"/>
    </sequence>
  </complexType>
  <complexType name="cmp-fieldType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="data-source-jndi-nameType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="database-typeType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="dbms-columnType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="ejb-nameType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="field-mapType">
    <sequence>
      <element name="cmp-field" type="wls:cmp-fieldType"/>
      <element name="dbms-column" type="wls:dbms-columnType"/>
    </sequence>
    <attribute name="id" type="ID"/>
  </complexType>
  <complexType name="finderType">
    <sequence>
      <element name="finder-name" type="wls:finder-nameType"/>
      <element name="finder-param" type="wls:finder-paramType" minOccurs="0" maxOccurs="unbounded"/>
      <element name="finder-query" type="wls:finder-queryType" minOccurs="0"/>
      <element name="finder-sql" type="wls:finder-sqlType" minOccurs="0"/>
      <element name="find-for-update" type="wls:true-falseType" minOccurs="0"/>
    </sequence>
    <attribute name="id" type="ID"/>
  </complexType>
  <complexType name="finder-nameType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="finder-paramType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="finder-queryType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="finder-sqlType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="pool-nameType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="table-nameType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="validate-db-schema-withType">
    <simpleContent>
      <extension base="string">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="weblogic-rdbms-beanType">
    <sequence>
      <element name="ejb-name" type="wls:ejb-nameType"/>
      <choice>
        <element name="pool-name" type="wls:pool-nameType"/>
        <element name="data-source-jndi-name" type="wls:data-source-jndi-nameType"/>
      </choice>
      <element name="table-name" type="wls:table-nameType"/>
      <element name="field-map" type="wls:field-mapType" minOccurs="0" maxOccurs="unbounded"/>
      <element name="finder" type="wls:finderType" minOccurs="0" maxOccurs="unbounded"/>
      <element name="enable-tuned-updates" type="wls:true-falseType" minOccurs="0"/>
    </sequence>
    <attribute name="id" type="ID"/>
  </complexType>
</schema>
