File: protocol_parser.exsd

package info (click to toggle)
eclipse-emf 2.42.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 73,344 kB
  • sloc: java: 711,198; xml: 12,829; makefile: 5
file content (126 lines) | stat: -rw-r--r-- 4,508 bytes parent folder | download | duplicates (4)
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
<?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="protocol_parser" name="URI Protocol Parser Registry"/>
      </appInfo>
      <documentation>
         This extension point is used to define the resource factory that handles a specific URI scheme (protocol). The global EMF resource factory registry, &lt;samp&gt;Resource.Factory.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="parser" 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="parser">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="protocolName"/>
         </appInfo>
      </annotation>
      <complexType>
         <attribute name="protocolName" type="string" use="required">
            <annotation>
               <documentation>
                  A scheme (protocol) of URIs to be handled by a resource factory.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  A fully qualified name of the Java class implementing &lt;samp&gt;org.eclipse.emf.ecore.resource.Resource.Factory
&lt;/samp&gt;.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn=":org.eclipse.emf.ecore.resource.Resource.Factory"/>
               </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 URI scheme can be registered: 
&lt;pre&gt;
  &lt;extension point=&quot;org.eclipse.emf.ecore.protocol_parser&quot; &gt;
    &lt;parser protocolName=&quot;java&quot; class=&quot;org.eclipse.java.JavaDocumentParser&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 implements &lt;samp&gt;org.eclipse.emf.ecore.resource.Resource.Factory&lt;/samp&gt;.
&lt;p&gt;
A URI scheme can be also registered from the source code with the &lt;samp&gt;Resource.Factory.Registry.INSTANCE&lt;/samp&gt; as follows:
&lt;/p&gt;
&lt;pre&gt;
  Resource.Factory.Registry.INSTANCE.getProtocolToFactoryMap().put(&quot;java&quot;, new JavaResourceFactoryImpl());
&lt;/pre&gt;
      </documentation>
   </annotation>


   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2002, 2004 IBM Corporation 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>