<?xml version="1.0" encoding="UTF-8"?>
<!-- 
/*******************************************************************************
 * Copyright (c) 2002-2005 IBM Corporation and others.
 * All rights reserved.   This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *   IBM - Initial API and implementation
 *******************************************************************************/
--> 

<plugin>
   <extension-point id="wsivalidator" name="%_WSI_VALIDATOE_NAME" schema="schema/wsivalidator.exsd"/>
   <extension-point id="tads" name="%_TEST_ASSERTION_DOCUMENTS_NAME" schema="schema/tads.exsd"/>
   <extension-point id="reportArtifactTypes" name="%_REPORT_ARTIFACT_TYPES_NAME" schema="schema/reportArtifactTypes.exsd"/>
     
   <extension
         id="wsdlWSIValidator"
         name="%_UI_WSDL_WSI_VALIDATOR"
         point="org.eclipse.wst.wsdl.validation.extvalidator">
      <extvalidator
            namespace="http://schemas.xmlsoap.org/wsdl/"
            class="org.eclipse.wst.wsi.internal.validate.wsdl.WSDLValidator">
      </extvalidator>
   </extension>
   <extension
           id="uddiValidator"
           name="%_UI_WSI_FRAMEWORK_UDDI_VALIDATOR"
           point="org.eclipse.wst.wsi.wsivalidator">
        <wsivalidator
           class="org.eclipse.wst.wsi.internal.core.profile.validator.impl.uddi.UDDIValidatorImpl"/>
   </extension>
   <extension
           id="wsdlValidator"
           name="%_UI_WSI_FRAMEWORK_WSDL_VALIDATOR"
           point="org.eclipse.wst.wsi.wsivalidator">
        <wsivalidator
           class="org.eclipse.wst.wsi.internal.core.profile.validator.impl.wsdl.WSDLValidatorImpl"/>
   </extension>
   <extension
           id="messageValidator"
           name="%_UI_WSI_FRAMEWORK_MESSAGE_VALIDATOR"
           point="org.eclipse.wst.wsi.wsivalidator">
        <wsivalidator
           class="org.eclipse.wst.wsi.internal.core.profile.validator.impl.message.MessageValidatorImpl"/>
   </extension>
   <extension
           id="envelopeValidator"
           name="%_UI_WSI_FRAMEWORK_ENVELOPE_VALIDATOR"
           point="org.eclipse.wst.wsi.wsivalidator">
        <wsivalidator
           class="org.eclipse.wst.wsi.internal.core.profile.validator.impl.envelope.EnvelopeValidatorImpl"/>
   </extension>
   <extension
           id="bpTads"
           name="%_UI_WSI_BP_TADS"
           point="org.eclipse.wst.wsi.tads">
        <tad
           name="Basic Profile Test Assertions"
           version="1.1.0"/>
        <tad
           name="Basic Profile 1.1 Test Assertions"
           version="1.1.0"/>
        <tad
           name="Simple Soap Binding Profile [1.0] (with Basic Profile [1.1]) Test Assertions"
           version="1.0.0"/>
        <tad
           name="Attachments Profile [1.0] (with Basic Profile [1.1] and Simple Soap Binding Profile [1.0]) Test Assertions"
           version="1.0.0"/>
   </extension>
   <extension
           id="bpReportArtifacts"
           name="%_UI_WSI_BP_REPORT_ARTIFACTS"
           point="org.eclipse.wst.wsi.reportArtifactTypes">
        <reportArtifactType
           artifactType="message"/>
   </extension> 
</plugin>
