<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.adempiere.base" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
      <appinfo>
         <meta.schema plugin="org.adempiere.base" id="org.adempiere.base.ModelValidator" name="Model Validator"/>
      </appinfo>
      <documentation>
         Extension point for bundle to contribute model validator implementation. Use the {extension id} syntax in AD_ModelValidator.ModelValidationClass to reference the extension that will provide the  concrete ModelValidator instance ( replace {extension id} with your actual extension id ). This extension point is provided to ease migration of pre-OSGi ADempiere code, new code is recommended to use the IEventManager service to listen to model and document event( see event.test project for example ).
      </documentation>
   </annotation>

   <element name="extension">
      <annotation>
         <appinfo>
            <meta.element />
         </appinfo>
      </annotation>
      <complexType>
         <choice>
            <element ref="listener"/>
         </choice>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
               <appinfo>
                  <meta.attribute translatable="true"/>
               </appinfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="listener">
      <complexType>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  Implementation class name for the org.compiere.model.ModelValidator interface
               </documentation>
               <appinfo>
                  <meta.attribute kind="java" basedOn=":org.compiere.model.ModelValidator"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="priority" type="string">
            <annotation>
               <documentation>
                  numeric priority value, higher value is of higher priority
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appinfo>
         <meta.section type="since"/>
      </appinfo>
      <documentation>
         1.0.0
      </documentation>
   </annotation>

   <annotation>
      <appinfo>
         <meta.section type="examples"/>
      </appinfo>
      <documentation>
         &lt;pre&gt;
&lt;extension
         id=&quot;org.adempiere.extend.myModelValidator&quot;
         name=&quot;My Model Validator&quot;
         point=&quot;org.adempiere.base.ModelValidator&quot;&gt;
      &lt;listener
            class=&quot;org.adempiere.extend.MyModelValidator&quot;
            priority=&quot;0&quot;&gt;
      &lt;/listener&gt;
&lt;/extension&gt;

AD_ModelValidator.ModelValidationClass=&quot;org.adempiere.extend.myModelValidator&quot;
&lt;/pre&gt;
      </documentation>
   </annotation>

   <annotation>
      <appinfo>
         <meta.section type="apiinfo"/>
      </appinfo>
      <documentation>
         The class attribute must represent an implementor of org.compiere.model.ModelValidator
      </documentation>
   </annotation>


   <annotation>
      <appinfo>
         <meta.section type="copyright"/>
      </appinfo>
      <documentation>
         This file is part of Adempiere ERP Bazaar http://www.adempiere.org.
                                                                           
 Copyright (C) Jorg Viola.
 Copyright (C) Contributors.
                                                                           
 This program is free software; you can redistribute it and/or modify it   
 under the terms version 2 of the GNU General Public License as published  
 by the Free Software Foundation. This program is distributed in the hope  
 that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.          
 See the GNU General Public License for more details.                      
 You should have received a copy of the GNU General Public License along   
 with this program; if not, write to the Free Software Foundation, Inc.,   
 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
      </documentation>
   </annotation>

</schema>