1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.emf.ecore" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.emf.ecore" id="generated_package" name="Ecore Package Registry for Generated Packages"/>
</appInfo>
<documentation>
This extension point is used to register a generated Ecore package against a namespace URI (Uniform Resource Identifier) in EMF's global package registry, <samp>EPackage.Registry.INSTANCE</samp>. When a model instance is loaded from its serialized form, this registry may be consulted in order to obtain the correct metamodel that is to be instantiated.
</documentation>
</annotation>
<element name="extension">
<annotation>
<appInfo>
<meta.element />
</appInfo>
</annotation>
<complexType>
<sequence>
<element ref="package" 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="package">
<annotation>
<appInfo>
<meta.element labelAttribute="class"/>
</appInfo>
</annotation>
<complexType>
<attribute name="uri" type="string" use="required">
<annotation>
<documentation>
A URI that uniquely identifies an Ecore package.
</documentation>
</annotation>
</attribute>
<attribute name="genModel" type="string">
<annotation>
<documentation>
The plugin relative URI of the generator model resource for the package.
</documentation>
<appInfo>
<meta.attribute kind="resource"/>
</appInfo>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
A fully qualified name of the generated Java package interface.
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn=":org.eclipse.emf.ecore.EPackage"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="since"/>
</appInfo>
<documentation>
1.0.0
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
Following is an example of how a package can be registered:
<pre>
<extension point="org.eclipse.emf.ecore.generated_package" >
<package uri="http://www.eclipse.org/xsd/2002/XSD" class="org.eclipse.xsd.XSDPackage"/>
</extension>
</pre>
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
The value of the class attribute must represent a generated package interface that extends <samp>org.eclipse.emf.ecore.EPackage</samp> and has a static <samp>eINSTANCE</samp> singleton field.
<p>
An EMF package can also be registered from the source code with the <samp>EPackage.Registry.INSTANCE</samp> as follows:
</p>
<pre>
EPackage.Registry.INSTANCE.put(companyPackage.getNsURI(), companyPackage);
</pre>
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
This plug-in extends this extension point to register the following three required Ecore packages: <samp>EcorePackage</samp>, <samp>XMLTypePackage</samp> and <samp>XMLNamespacePackage</samp>. In addition, for any model plug-in generated by EMF, an extension to this point is included in the manifest file, to register packages in that model.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
Copyright (c) 2002, 2004 IBM Corporation and others.<br>
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 <a
href="http://www.eclipse.org/legal/epl-v20.html">http://www.eclipse.org/legal/epl-v20.html</a>
</documentation>
</annotation>
</schema>
|