<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>

<!--
/**
 * <copyright>
 *
 * Copyright (c) 2002-2004 IBM Corporation and others.
 * All rights reserved.   This program and the accompanying materials
 * are made available under the terms of the Common Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/cpl-v10.html
 * 
 * Contributors: 
 *   IBM - Initial API and implementation
 *
 * </copyright>
 *
 * $Id: plugin.xml,v 1.6 2004/12/22 21:24:10 marcelop Exp $
 */
-->

<plugin
    name = "%pluginName"
    id = "org.eclipse.xsd.test"
    version = "2.1.0"
    provider-name = "%providerName">
    
  <requires>
    <import plugin="org.eclipse.core.runtime"/>
    <import plugin="org.eclipse.xsd" export="true"/>
  </requires>

  <runtime>
    <library name="runtime/xsd.test.jar">
      <export name="*"/>
    </library>
  </runtime>

  <extension id="XSDMainTest" point="org.eclipse.core.runtime.applications">
    <application>
      <run class="org.eclipse.xsd.test.XSDMainTest$Runnable"/>
    </application>
  </extension>

  <extension id="XSDGenerateHTML" point="org.eclipse.core.runtime.applications">
    <application>
      <run class="org.eclipse.xsd.test.XSDGenerateHTML"/>
    </application>
  </extension>

</plugin>
