| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- Schema file written by PDE --> |
| <schema targetNamespace="org.eclipse.core.runtime" xmlns="http://www.w3.org/2001/XMLSchema"> |
| <annotation> |
| <appinfo> |
| <meta.schema plugin="org.eclipse.core.runtime" id="contentTypes" name="Content Types"/> |
| </appinfo> |
| <documentation> |
| <p> |
| <b>WARNING: This extension point is DEPRECATED.</b><br> |
| Do not use this extension point, it will be removed in future versions of this product. |
| Instead, use the extension point <a href="org.eclipse.core.contenttype.contentTypes.html">org.eclipse.core.contenttype.contentTypes</a> |
| </p> |
| The content types extension point allows plug-ins to contribute to the platform content type catalog. There are two forms of contributions: <cite>content types</cite> and <cite>file associations</cite>. |
| <ul> |
| <li> |
| a content type represents a file format and its naming conventions. Content types can be defined from scratch, or can inherit from existing ones, specializing them. Also, a content type can be made into an alias for another content type (see the <code>alias-for</code> attribute). When this feature is used: |
| <ul><li>if the target is absent, the alias content type is processed |
| as a normal content type;</li> |
| <li>if the target is present, all references to the alias type are automatically |
| transformed into references to the target type, and the alias type cannot be |
| accessed nor is exposed through the API.</li></ul> |
| </li> |
| <li> |
| a file association extends an existing content type by associating new file names and/or extensions to it</li> |
| </ul> |
| </documentation> |
| </annotation> |
| |
| <element name="extension"> |
| <annotation> |
| <appinfo> |
| <meta.element deprecated="true" replacement="org.eclipse.core.contenttype.contentTypes" /> |
| </appinfo> |
| </annotation> |
| <complexType> |
| <sequence> |
| <element ref="content-type" minOccurs="0" maxOccurs="unbounded"/> |
| <element ref="file-association" 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="content-type"> |
| <complexType> |
| <sequence> |
| <element ref="describer" minOccurs="0" maxOccurs="1"/> |
| <element ref="property" minOccurs="0" maxOccurs="unbounded"/> |
| </sequence> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the identifier for this content type (either a simple id unique for content types within the extension namespace, or a fully qualified id). The token cannot contain whitespace |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="base-type" type="string"> |
| <annotation> |
| <documentation> |
| the fully qualified identifier of this content type's base type. This content type will inherit its base type's file associations, content describer and default charset, unless they are redefined |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the human-readable name of this content type |
| </documentation> |
| <appinfo> |
| <meta.attribute translatable="true"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="file-extensions" type="string"> |
| <annotation> |
| <documentation> |
| a comma-separated list of file extensions to be associated with this content type |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="file-names" type="string"> |
| <annotation> |
| <documentation> |
| a comma-separated list of file names to be associated with this content type |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="priority" use="default" value="normal"> |
| <annotation> |
| <documentation> |
| the priority for this content type. Priorities are used to solve conflicts (when two content types are associated to the same file name/extension) |
| </documentation> |
| </annotation> |
| <simpleType> |
| <restriction base="string"> |
| <enumeration value="low"> |
| </enumeration> |
| <enumeration value="normal"> |
| </enumeration> |
| <enumeration value="high"> |
| </enumeration> |
| </restriction> |
| </simpleType> |
| </attribute> |
| <attribute name="default-charset" type="string"> |
| <annotation> |
| <documentation> |
| the default charset for this content type, or an empty string, if this content type should not have a default charset even if the parent has one. This is a convenience attribute, equivalent to specifying: |
| <pre> |
| <content-type> |
| <property name="org.eclipse.core.runtime.charset" default="charset-name"/> |
| </content-type> |
| </pre> |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="describer" type="string"> |
| <annotation> |
| <documentation> |
| the fully qualified name of a class that implements <samp>org.eclipse.core.runtime.content.IContentDescriber</samp> or <samp>org.eclipse.core.runtime.content.ITextContentDescriber</samp>, or an empty string, if this content type should not have a describer even if the parent has one |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="alias-for" type="string"> |
| <annotation> |
| <documentation> |
| the fully qualified identifier of the content type this content type is an alias for |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="describer"> |
| <annotation> |
| <documentation> |
| If the describer attribute is used in the content-type element, this element is ignored. |
| </documentation> |
| </annotation> |
| <complexType> |
| <sequence> |
| <element ref="parameter" minOccurs="0" maxOccurs="unbounded"/> |
| </sequence> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the fully qualified name of a class that implements <samp>org.eclipse.core.runtime.content.IContentDescriber</samp> or <samp>org.eclipse.core.runtime.content.ITextContentDescriber</samp>, or an empty string, if this content type should not have a describer even if the parent has one |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.core.runtime.content.IContentDescriber"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="plugin" type="string"> |
| <annotation> |
| <documentation> |
| the id for the plug-in providing the describer class |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="file-association"> |
| <complexType> |
| <attribute name="content-type" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the fully qualified identifier for the content type this file association contributes to |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="file-names" type="string"> |
| <annotation> |
| <documentation> |
| a comma-separated list of file names to be associated with the target content type |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="file-extensions" type="string"> |
| <annotation> |
| <documentation> |
| a comma-separated list of file extensions to be associated with the target content type |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="parameter"> |
| <complexType> |
| <attribute name="name" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the name of this parameter made available to instances of the specified content describer class |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="value" type="string" use="required"> |
| <annotation> |
| <documentation> |
| an arbitrary value associated with the given name and made available to instances of the specified content describer class |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="property"> |
| <annotation> |
| <documentation> |
| Declares a property related to this content type, optionally assigning a default value. See <samp>org.eclipse.core.runtime.content.IContentDescription</samp> for more information on properties. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="name" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the name of the property. If the property is being overriden and has been originally defined in a different namespace, a fully qualified property name must be used |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="default" type="string"> |
| <annotation> |
| <documentation> |
| the default value of the property, or an empty string, if this content type should not have a default value for this property even if a parent has one |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="since"/> |
| </appinfo> |
| <documentation> |
| 3.0 |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="examples"/> |
| </appinfo> |
| <documentation> |
| Following is an example of a XML-based content type declaration using <code>org.eclipse.core.runtime.content.XMLRootElementContentDescriber2</code>, |
| a built-in describer: |
| <p> |
| <pre> |
| <extension point="org.eclipse.core.runtime.contentTypes"> |
| <content-type id="ABC" |
| base-type="org.eclipse.core.runtime.xml" |
| file-extensions="a,b,c"> |
| <describer class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber2"> |
| <parameter name="element" value="abc"/> |
| </describer> |
| </content-type> |
| </extension> |
| </pre> |
| </p> |
| Here is an example of a simple text-based content type that has a specific file extension: |
| <p> |
| <pre> |
| <extension point="org.eclipse.core.runtime.contentTypes"> |
| <content-type id="MyText" |
| base-type="org.eclipse.core.runtime.text" |
| file-extensions="mytxt"/> |
| </extension> |
| </pre> |
| </p> |
| When there is need to associate new file names/extensions to an existing content type (as opposed to defining a new content type), a plug-in can contribute a file association as seen below. This has the effect of enhancing the definition of the text content type to include files with names following the "*.mytxt" pattern. |
| <p> |
| <pre> |
| <extension point="org.eclipse.core.runtime.contentTypes"> |
| <file-association |
| content-type="org.eclipse.core.runtime.text" |
| file-extensions="mytxt"/> |
| </extension> |
| </pre> |
| </p> |
| Here is an example of a content type that defines properties: |
| <pre> |
| <extension point="org.eclipse.core.runtime.contentTypes"> |
| <content-type id="MyContentType" |
| file-extensions="dat"> |
| <property name="file-format" value="1"/> |
| </content-type> |
| </extension> |
| </pre> |
| </p> |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="apiInfo"/> |
| </appinfo> |
| <documentation> |
| The value of the class attribute in the describer element must represent an |
| implementor of |
| <samp>org.eclipse.core.runtime.content.IContentDescriber</samp> or <samp>org.eclipse.core.runtime.content.ITextContentDescriber</samp>. |
| |
| <samp>org.eclipse.core.runtime.content.IContentDescription</samp> objects returned by the <samp>org.eclipse.core.runtime.content</samp> API |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="implementation"/> |
| </appinfo> |
| <documentation> |
| <p>The org.eclipse.core.runtime plug-in provides the following content types:<ul> |
| <li>org.eclipse.core.runtime.text</li> |
| <li>org.eclipse.core.runtime.xml</li> |
| </ul> |
| Other plug-ins in the platform contribute other content types. |
| </p> |
| <p> |
| Also, the org.eclipse.core.runtime plug-in provides ready-to-use implementations of content describers:<ul> |
| <li>org.eclipse.core.runtime.content.XMLRootElementContentDescriber2</li> |
| <li>org.eclipse.core.runtime.content.BinarySignatureDescriber</li> |
| </ul> |
| </p> |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="copyright"/> |
| </appinfo> |
| <documentation> |
| Copyright (c) 2004, 2008 IBM Corporation and others.<br> |
| |
| 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 |
| <a |
| href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-v20.html</a>/ |
| |
| SPDX-License-Identifier: EPL-2.0 |
| </documentation> |
| </annotation> |
| |
| </schema> |