blob: 7fc54e16d45414e53693722424ac07d823975c14 [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.compare" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.compare" id="structureCreators" name="Structure Creators"/>
</appInfo>
<documentation>
This extension point allows a plug-in to register a structure creator
for specific content types. The structure creator is expected to create
a tree of &lt;samp&gt;IStructureComparator&lt;/samp&gt;s for a given content.
This tree is used as the input for the structural compare.
The extension point must implement the interface &lt;samp&gt;org.eclipse.compare.structuremergeviewer.IStructureCreator&lt;/samp&gt;.
</documentation>
</annotation>
<element name="extension">
<annotation>
<appInfo>
<meta.element />
</appInfo>
</annotation>
<complexType>
<sequence>
<element ref="structureCreator" minOccurs="0" maxOccurs="unbounded"/>
<element ref="contentTypeBinding" minOccurs="0" 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>
<appInfo>
<meta.attribute translatable="true"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="structureCreator">
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
a unique identifier that can be used to reference the structure creator
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
a fully qualified name of a class that implements &lt;samp&gt;org.eclipse.compare.structuremergeviewer.IStructureCreator&lt;/samp&gt;
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn=":org.eclipse.compare.structuremergeviewer.IStructureCreator"/>
</appInfo>
</annotation>
</attribute>
<attribute name="extensions" type="string">
<annotation>
<documentation>
a comma separated list of file extensions e.g. &quot;java, properties&quot;
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="contentTypeBinding">
<annotation>
<documentation>
A &lt;code&gt;contentTypeBinding&lt;/code&gt; binds a structure creator to a content type.
</documentation>
</annotation>
<complexType>
<attribute name="contentTypeId" type="string" use="required">
<annotation>
<documentation>
The id of a content type defined using the &lt;code&gt;org.eclipse.core.contenttype.contentTypes&lt;/code&gt; extension point.
</documentation>
<appInfo>
<meta.attribute kind="identifier" basedOn="org.eclipse.core.contenttype.contentTypes/content-type/@id"/>
</appInfo>
</annotation>
</attribute>
<attribute name="structureCreatorId" type="string" use="required">
<annotation>
<documentation>
The id of a structure creator defined using the &lt;code&gt;structureCreator&lt;/code&gt; element of this extension point (i.e. &lt;code&gt;org.eclipse.compare.structureCreators&lt;/code&gt;)
</documentation>
<appInfo>
<meta.attribute kind="identifier" basedOn="org.eclipse.compare.structureCreators/structureCreator/@id"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
The following is an example of a structure creator for
java files (extension &quot;java&quot;):
&lt;p&gt;
&lt;pre&gt;
&lt;extension point = &quot;org.eclipse.compare.structureCreators&quot;&gt;
&lt;structureCreator
id=&quot;org.eclipse.compare.JavaStructureCreator&quot;
class=&quot;org.eclipse.compare.JavaStructureCreator&quot;
extensions=&quot;java&quot;
/&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
The contributed class must implement &lt;code&gt;org.eclipse.compare.structuremergeviewer.IStructureCreator&lt;/code&gt;
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
The Compare UI plugin defines a structure creator for zip archives.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
Copyright (c) 2000, 2010 IBM Corporation and others.&lt;br&gt;
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at &lt;a href=&quot;https://www.eclipse.org/legal/epl-2.0&quot;&gt;https://www.eclipse.org/legal/epl-v20.html&lt;/a&gt;/
SPDX-License-Identifier: EPL-2.0
</documentation>
</annotation>
</schema>