<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.emf.ecore.edit" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.emf.ecore.edit" id="annotation_item_provider_adapter_factory" name="Annotation Item Provider Adapter Factory"/>
      </appInfo>
      <documentation>
         This extension point is used to define an annotation item provider adapter factory for creating item providers for annotations with the specified annotation source as well as item providers for their details. The global EMF annotation item provider adapter factory registry, &lt;samp&gt;EAnnotationItemProviderAdapterFactory.Registry.INSTANCE&lt;/samp&gt;, is used to record the registration.
      </documentation>
   </annotation>

   <element name="extension">
      <annotation>
         <appInfo>
            <meta.element />
         </appInfo>
      </annotation>
      <complexType>
         <sequence>
            <element ref="factory" minOccurs="1" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  A fully qualified identifier of the target extension point.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  An optional identifier of the extension instance.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  An optional name of the extension instance.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="factory">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="id"/>
         </appInfo>
      </annotation>
      <complexType>
         <attribute name="uri" type="string" use="required">
            <annotation>
               <documentation>
                  A URI identifying the annotation source of the annotation to be extended
               </documentation>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  The fully qualified name of a Java class extending &lt;samp&gt;org.eclipse.emf.ecore.provider.annotation.EAnnotationItemProviderAdapterFactory&lt;/samp&gt;.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.emf.ecore.provider.annotation.EAnnotationItemProviderAdapterFactory:"/>
               </appInfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="since"/>
      </appInfo>
      <documentation>
         2.14.0
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         Following is an example of how a annotation item provider adapter factory can be registered: 
&lt;pre&gt;
  &lt;extension point=&quot;org.eclipse.emf.ecore.annotation_item_provider_adapter_factory&quot;&gt;
    &lt;factory uri=&quot;http://www.eclipse.org/emf/2002/Ecore&quot; class=&quot;org.eclipse.emf.ecore.provider.annotation.EcoreAnnotationItemProviderAdapterFactory&quot;/&gt; 
  &lt;/extension&gt;
&lt;/pre&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         The value of the class attribute must represent a class that extends &lt;samp&gt;org.eclipse.emf.ecore.provider.annotation.EAnnotationItemProviderAdapterFactory&lt;/samp&gt; and has a no argument contructor.
&lt;p&gt;
An annotation item provider adapter factory can be also registered from the source code with the &lt;samp&gt;EAnnotationItemProviderAdapterFactory&lt;/samp&gt; as follows:
&lt;/p&gt;
&lt;pre&gt;
  EAnnotationItemProviderAdapterFactory.Registry.INSTANCE.put(&quot;http://www.eclipse.org/emf/2002/Ecore&quot;, new EcoreAnnotationItemProviderAdapterFactory());
&lt;/pre&gt;
      </documentation>
   </annotation>


   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2017 Eclipse contributors and others.&lt;br&gt;
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v2.0 which accompanies this distribution, and is available at &lt;a 
href=&quot;http://www.eclipse.org/legal/epl-v20.html&quot;&gt;http://www.eclipse.org/legal/epl-v20.html&lt;/a&gt;
      </documentation>
   </annotation>

</schema>
