[6785] | 1 | <!-- |
---|
| 2 | Licensed to the Apache Software Foundation (ASF) under one or more |
---|
| 3 | contributor license agreements. See the NOTICE file distributed with |
---|
| 4 | this work for additional information regarding copyright ownership. |
---|
| 5 | The ASF licenses this file to You under the Apache License, Version 2.0 |
---|
| 6 | (the "License"); you may not use this file except in compliance with |
---|
| 7 | the License. You may obtain a copy of the License at |
---|
| 8 | |
---|
| 9 | http://www.apache.org/licenses/LICENSE-2.0 |
---|
| 10 | |
---|
| 11 | Unless required by applicable law or agreed to in writing, software |
---|
| 12 | distributed under the License is distributed on an "AS IS" BASIS, |
---|
| 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
---|
| 14 | See the License for the specific language governing permissions and |
---|
| 15 | limitations under the License. |
---|
| 16 | --> |
---|
| 17 | <!-- The DOCTYPE should be as follows for metadata documents. |
---|
| 18 | <!DOCTYPE jdo |
---|
| 19 | PUBLIC "-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 3.0//EN" |
---|
| 20 | "http://java.sun.com/dtd/jdo_3_0.dtd"> |
---|
| 21 | --> |
---|
| 22 | <!ELEMENT jdo (extension*, (package|query|fetch-plan)+, extension*)> |
---|
| 23 | <!ATTLIST jdo catalog CDATA #IMPLIED> |
---|
| 24 | <!ATTLIST jdo schema CDATA #IMPLIED> |
---|
| 25 | |
---|
| 26 | <!ELEMENT package (extension*, (interface|class|sequence)+, extension*)> |
---|
| 27 | <!ATTLIST package name CDATA ''> |
---|
| 28 | <!ATTLIST package catalog CDATA #IMPLIED> |
---|
| 29 | <!ATTLIST package schema CDATA #IMPLIED> |
---|
| 30 | |
---|
| 31 | <!ELEMENT interface (extension*, datastore-identity?, primary-key?, inheritance?, version?, join*, foreign-key*, index*, unique*, property*, query*, fetch-group*, extension*)> |
---|
| 32 | <!ATTLIST interface name CDATA #REQUIRED> |
---|
| 33 | <!ATTLIST interface table CDATA #IMPLIED> |
---|
| 34 | <!ATTLIST interface identity-type (datastore|application|nondurable) #IMPLIED> |
---|
| 35 | <!ATTLIST interface objectid-class CDATA #IMPLIED> |
---|
| 36 | <!ATTLIST interface requires-extent (true|false) 'true'> |
---|
| 37 | <!ATTLIST interface detachable (true|false) 'false'> |
---|
| 38 | <!ATTLIST interface embedded-only (true|false) #IMPLIED> |
---|
| 39 | <!ATTLIST interface catalog CDATA #IMPLIED> |
---|
| 40 | <!ATTLIST interface schema CDATA #IMPLIED> |
---|
| 41 | <!ATTLIST interface cacheable (true|false) 'true'> |
---|
| 42 | <!ATTLIST interface serialize-read (true|false) 'false'> |
---|
| 43 | |
---|
| 44 | <!ELEMENT property (extension*, (array|collection|map)?, join?, embedded?, element?, key?, value?, order?, column*, foreign-key?, index?, unique?, extension*)> |
---|
| 45 | <!ATTLIST property name CDATA #REQUIRED> |
---|
| 46 | <!ATTLIST property persistence-modifier (persistent|transactional|none) #IMPLIED> |
---|
| 47 | <!ATTLIST property default-fetch-group (true|false) #IMPLIED> |
---|
| 48 | <!ATTLIST property load-fetch-group CDATA #IMPLIED> |
---|
| 49 | <!ATTLIST property null-value (default|exception|none) 'none'> |
---|
| 50 | <!ATTLIST property dependent (true|false) #IMPLIED> |
---|
| 51 | <!ATTLIST property embedded (true|false) #IMPLIED> |
---|
| 52 | <!ATTLIST property primary-key (true|false) 'false'> |
---|
| 53 | <!ATTLIST property value-strategy CDATA #IMPLIED> |
---|
| 54 | <!ATTLIST property sequence CDATA #IMPLIED> |
---|
| 55 | <!ATTLIST property serialized (true|false) #IMPLIED> |
---|
| 56 | <!ATTLIST property field-type CDATA #IMPLIED> |
---|
| 57 | <!ATTLIST property table CDATA #IMPLIED> |
---|
| 58 | <!ATTLIST property column CDATA #IMPLIED> |
---|
| 59 | <!ATTLIST property delete-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 60 | <!ATTLIST property indexed (true|false|unique) #IMPLIED> |
---|
| 61 | <!ATTLIST property unique (true|false) #IMPLIED> |
---|
| 62 | <!ATTLIST property mapped-by CDATA #IMPLIED> |
---|
| 63 | <!ATTLIST property recursion-depth CDATA #IMPLIED> |
---|
| 64 | <!ATTLIST property field-name CDATA #IMPLIED> |
---|
| 65 | <!ATTLIST property cacheable (true|false) 'true'> |
---|
| 66 | |
---|
| 67 | <!ELEMENT class (extension*, implements*, datastore-identity?, primary-key?, inheritance?, version?, join*, foreign-key*, index*, unique*, column*, field*, property*, query*, fetch-group*, extension*)> |
---|
| 68 | <!ATTLIST class name CDATA #REQUIRED> |
---|
| 69 | <!ATTLIST class identity-type (application|datastore|nondurable) #IMPLIED> |
---|
| 70 | <!ATTLIST class objectid-class CDATA #IMPLIED> |
---|
| 71 | <!ATTLIST class table CDATA #IMPLIED> |
---|
| 72 | <!ATTLIST class requires-extent (true|false) 'true'> |
---|
| 73 | <!ATTLIST class persistence-capable-superclass CDATA #IMPLIED> |
---|
| 74 | <!ATTLIST class detachable (true|false) 'false'> |
---|
| 75 | <!ATTLIST class embedded-only (true|false) #IMPLIED> |
---|
| 76 | <!ATTLIST class persistence-modifier (persistence-capable|persistence-aware|non-persistent) #IMPLIED> |
---|
| 77 | <!ATTLIST class catalog CDATA #IMPLIED> |
---|
| 78 | <!ATTLIST class schema CDATA #IMPLIED> |
---|
| 79 | <!ATTLIST class cacheable (true|false) 'true'> |
---|
| 80 | <!ATTLIST class serialize-read (true|false) 'false'> |
---|
| 81 | |
---|
| 82 | <!ELEMENT primary-key (extension*, column*, extension*)> |
---|
| 83 | <!ATTLIST primary-key name CDATA #IMPLIED> |
---|
| 84 | <!ATTLIST primary-key column CDATA #IMPLIED> |
---|
| 85 | |
---|
| 86 | <!ELEMENT join (extension*, primary-key?, column*, foreign-key?, index?, unique?, extension*)> |
---|
| 87 | <!ATTLIST join table CDATA #IMPLIED> |
---|
| 88 | <!ATTLIST join column CDATA #IMPLIED> |
---|
| 89 | <!ATTLIST join outer (true|false) 'false'> |
---|
| 90 | <!ATTLIST join delete-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 91 | <!ATTLIST join indexed (true|false|unique) #IMPLIED> |
---|
| 92 | <!ATTLIST join unique (true|false) #IMPLIED> |
---|
| 93 | |
---|
| 94 | <!ELEMENT version (extension*, column*, index?, extension*)> |
---|
| 95 | <!ATTLIST version strategy CDATA #IMPLIED> |
---|
| 96 | <!ATTLIST version column CDATA #IMPLIED> |
---|
| 97 | <!ATTLIST version indexed (true|false|unique) #IMPLIED> |
---|
| 98 | |
---|
| 99 | <!ELEMENT datastore-identity (extension*, column*, extension*)> |
---|
| 100 | <!ATTLIST datastore-identity column CDATA #IMPLIED> |
---|
| 101 | <!ATTLIST datastore-identity strategy CDATA 'native'> |
---|
| 102 | <!ATTLIST datastore-identity sequence CDATA #IMPLIED> |
---|
| 103 | |
---|
| 104 | <!ELEMENT implements (extension*, property*, extension*)> |
---|
| 105 | <!ATTLIST implements name CDATA #REQUIRED> |
---|
| 106 | |
---|
| 107 | <!ELEMENT inheritance (extension*, join?, discriminator?, extension*)> |
---|
| 108 | <!ATTLIST inheritance strategy CDATA #IMPLIED> |
---|
| 109 | |
---|
| 110 | <!ELEMENT discriminator (extension*, column*, index?, extension*)> |
---|
| 111 | <!ATTLIST discriminator column CDATA #IMPLIED> |
---|
| 112 | <!ATTLIST discriminator value CDATA #IMPLIED> |
---|
| 113 | <!ATTLIST discriminator strategy CDATA #IMPLIED> |
---|
| 114 | <!ATTLIST discriminator indexed (true|false|unique) #IMPLIED> |
---|
| 115 | |
---|
| 116 | <!ELEMENT column (extension*)> |
---|
| 117 | <!ATTLIST column name CDATA #IMPLIED> |
---|
| 118 | <!ATTLIST column target CDATA #IMPLIED> |
---|
| 119 | <!ATTLIST column target-field CDATA #IMPLIED> |
---|
| 120 | <!ATTLIST column jdbc-type CDATA #IMPLIED> |
---|
| 121 | <!ATTLIST column sql-type CDATA #IMPLIED> |
---|
| 122 | <!ATTLIST column length CDATA #IMPLIED> |
---|
| 123 | <!ATTLIST column scale CDATA #IMPLIED> |
---|
| 124 | <!ATTLIST column allows-null (true|false) #IMPLIED> |
---|
| 125 | <!ATTLIST column default-value CDATA #IMPLIED> |
---|
| 126 | <!ATTLIST column insert-value CDATA #IMPLIED> |
---|
| 127 | |
---|
| 128 | <!ELEMENT field (extension*, (array|collection|map)?, join?, embedded?, element?, key?, value?, order?, column*, foreign-key?, index?, unique?, extension*)> |
---|
| 129 | <!ATTLIST field name CDATA #REQUIRED> |
---|
| 130 | <!ATTLIST field persistence-modifier (persistent|transactional|none) #IMPLIED> |
---|
| 131 | <!ATTLIST field field-type CDATA #IMPLIED> |
---|
| 132 | <!ATTLIST field table CDATA #IMPLIED> |
---|
| 133 | <!ATTLIST field column CDATA #IMPLIED> |
---|
| 134 | <!ATTLIST field primary-key (true|false) 'false'> |
---|
| 135 | <!ATTLIST field null-value (exception|default|none) 'none'> |
---|
| 136 | <!ATTLIST field default-fetch-group (true|false) #IMPLIED> |
---|
| 137 | <!ATTLIST field embedded (true|false) #IMPLIED> |
---|
| 138 | <!ATTLIST field serialized (true|false) #IMPLIED> |
---|
| 139 | <!ATTLIST field dependent (true|false) #IMPLIED> |
---|
| 140 | <!ATTLIST field value-strategy CDATA #IMPLIED> |
---|
| 141 | <!ATTLIST field delete-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 142 | <!ATTLIST field indexed (true|false|unique) #IMPLIED> |
---|
| 143 | <!ATTLIST field unique (true|false) #IMPLIED> |
---|
| 144 | <!ATTLIST field sequence CDATA #IMPLIED> |
---|
| 145 | <!ATTLIST field load-fetch-group CDATA #IMPLIED> |
---|
| 146 | <!ATTLIST field recursion-depth CDATA #IMPLIED> |
---|
| 147 | <!ATTLIST field mapped-by CDATA #IMPLIED> |
---|
| 148 | <!ATTLIST field cacheable (true|false) 'true'> |
---|
| 149 | |
---|
| 150 | <!ELEMENT foreign-key (extension*, (column* | field* | property*), extension*)> |
---|
| 151 | <!ATTLIST foreign-key table CDATA #IMPLIED> |
---|
| 152 | <!ATTLIST foreign-key deferred (true|false) #IMPLIED> |
---|
| 153 | <!ATTLIST foreign-key delete-action (restrict|cascade|null|default|none) 'restrict'> |
---|
| 154 | <!ATTLIST foreign-key update-action (restrict|cascade|null|default|none) 'restrict'> |
---|
| 155 | <!ATTLIST foreign-key unique (true|false) #IMPLIED> |
---|
| 156 | <!ATTLIST foreign-key name CDATA #IMPLIED> |
---|
| 157 | |
---|
| 158 | <!ELEMENT collection (extension*)> |
---|
| 159 | <!ATTLIST collection element-type CDATA #IMPLIED> |
---|
| 160 | <!ATTLIST collection embedded-element (true|false) #IMPLIED> |
---|
| 161 | <!ATTLIST collection dependent-element (true|false) #IMPLIED> |
---|
| 162 | <!ATTLIST collection serialized-element (true|false) #IMPLIED> |
---|
| 163 | |
---|
| 164 | <!ELEMENT map (extension)*> |
---|
| 165 | <!ATTLIST map key-type CDATA #IMPLIED> |
---|
| 166 | <!ATTLIST map embedded-key (true|false) #IMPLIED> |
---|
| 167 | <!ATTLIST map dependent-key (true|false) #IMPLIED> |
---|
| 168 | <!ATTLIST map serialized-key (true|false) #IMPLIED> |
---|
| 169 | <!ATTLIST map value-type CDATA #IMPLIED> |
---|
| 170 | <!ATTLIST map embedded-value (true|false) #IMPLIED> |
---|
| 171 | <!ATTLIST map dependent-value (true|false) #IMPLIED> |
---|
| 172 | <!ATTLIST map serialized-value (true|false) #IMPLIED> |
---|
| 173 | |
---|
| 174 | <!ELEMENT key (extension*, embedded?, column*, foreign-key?, index?, unique?, extension*)> |
---|
| 175 | <!ATTLIST key column CDATA #IMPLIED> |
---|
| 176 | <!ATTLIST key table CDATA #IMPLIED> |
---|
| 177 | <!ATTLIST key delete-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 178 | <!ATTLIST key update-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 179 | <!ATTLIST key indexed (true|false|unique) #IMPLIED> |
---|
| 180 | <!ATTLIST key unique (true|false) #IMPLIED> |
---|
| 181 | <!ATTLIST key mapped-by CDATA #IMPLIED> |
---|
| 182 | |
---|
| 183 | <!ELEMENT value (extension*, embedded?, column*, foreign-key?, index?, unique?, extension*)> |
---|
| 184 | <!ATTLIST value column CDATA #IMPLIED> |
---|
| 185 | <!ATTLIST value table CDATA #IMPLIED> |
---|
| 186 | <!ATTLIST value delete-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 187 | <!ATTLIST value update-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 188 | <!ATTLIST value indexed (true|false|unique) #IMPLIED> |
---|
| 189 | <!ATTLIST value unique (true|false) #IMPLIED> |
---|
| 190 | <!ATTLIST value mapped-by CDATA #IMPLIED> |
---|
| 191 | |
---|
| 192 | <!ELEMENT array (extension*)> |
---|
| 193 | <!ATTLIST array element-type CDATA #IMPLIED> |
---|
| 194 | <!ATTLIST array embedded-element (true|false) #IMPLIED> |
---|
| 195 | <!ATTLIST array dependent-element (true|false) #IMPLIED> |
---|
| 196 | <!ATTLIST array serialized-element (true|false) #IMPLIED> |
---|
| 197 | |
---|
| 198 | <!ELEMENT element (extension*, embedded?, column*, foreign-key?, index?, unique?, extension*)> |
---|
| 199 | <!ATTLIST element column CDATA #IMPLIED> |
---|
| 200 | <!ATTLIST element table CDATA #IMPLIED> |
---|
| 201 | <!ATTLIST element delete-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 202 | <!ATTLIST element update-action (restrict|cascade|null|default|none) #IMPLIED> |
---|
| 203 | <!ATTLIST element indexed (true|false|unique) #IMPLIED> |
---|
| 204 | <!ATTLIST element unique (true|false) #IMPLIED> |
---|
| 205 | <!ATTLIST element mapped-by CDATA #IMPLIED> |
---|
| 206 | |
---|
| 207 | <!ELEMENT order (extension*, column*, index?, extension*)> |
---|
| 208 | <!ATTLIST order column CDATA #IMPLIED> |
---|
| 209 | <!ATTLIST order mapped-by CDATA #IMPLIED> |
---|
| 210 | |
---|
| 211 | <!ELEMENT fetch-group (extension*, (fetch-group|field|property)*, extension*)> |
---|
| 212 | <!ATTLIST fetch-group name CDATA #REQUIRED> |
---|
| 213 | <!ATTLIST fetch-group post-load (true|false) #IMPLIED> |
---|
| 214 | |
---|
| 215 | <!ELEMENT fetch-plan (fetch-group*)> |
---|
| 216 | <!ATTLIST fetch-plan name CDATA #REQUIRED> |
---|
| 217 | <!ATTLIST fetch-plan max-fetch-depth CDATA #IMPLIED> |
---|
| 218 | <!ATTLIST fetch-plan fetch-size CDATA #IMPLIED> |
---|
| 219 | |
---|
| 220 | <!ELEMENT embedded (extension*, (field|property)*, extension*)> |
---|
| 221 | <!ATTLIST embedded owner-field CDATA #IMPLIED> |
---|
| 222 | <!ATTLIST embedded null-indicator-column CDATA #IMPLIED> |
---|
| 223 | <!ATTLIST embedded null-indicator-value CDATA #IMPLIED> |
---|
| 224 | |
---|
| 225 | <!ELEMENT sequence (extension*)> |
---|
| 226 | <!ATTLIST sequence name CDATA #REQUIRED> |
---|
| 227 | <!ATTLIST sequence datastore-sequence CDATA #IMPLIED> |
---|
| 228 | <!ATTLIST sequence factory-class CDATA #IMPLIED> |
---|
| 229 | <!ATTLIST sequence strategy (nontransactional|contiguous|noncontiguous) #REQUIRED> |
---|
| 230 | |
---|
| 231 | <!ELEMENT index (extension*, (column* | field* | property*), extension*)> |
---|
| 232 | <!ATTLIST index name CDATA #IMPLIED> |
---|
| 233 | <!ATTLIST index table CDATA #IMPLIED> |
---|
| 234 | <!ATTLIST index unique (true|false) 'false'> |
---|
| 235 | |
---|
| 236 | <!ELEMENT query (#PCDATA|extension)*> |
---|
| 237 | <!ATTLIST query name CDATA #REQUIRED> |
---|
| 238 | <!ATTLIST query language CDATA #IMPLIED> |
---|
| 239 | <!ATTLIST query unmodifiable (true|false) 'false'> |
---|
| 240 | <!ATTLIST query unique (true|false) #IMPLIED> |
---|
| 241 | <!ATTLIST query result-class CDATA #IMPLIED> |
---|
| 242 | <!ATTLIST query fetch-plan CDATA #IMPLIED> |
---|
| 243 | |
---|
| 244 | <!ELEMENT unique (extension*, (column* | field* | property*), extension*)> |
---|
| 245 | <!ATTLIST unique name CDATA #IMPLIED> |
---|
| 246 | <!ATTLIST unique table CDATA #IMPLIED> |
---|
| 247 | <!ATTLIST unique deferred (true|false) 'false'> |
---|
| 248 | |
---|
| 249 | <!ELEMENT extension ANY> |
---|
| 250 | <!ATTLIST extension vendor-name CDATA #REQUIRED> |
---|
| 251 | <!ATTLIST extension key CDATA #IMPLIED> |
---|
| 252 | <!ATTLIST extension value CDATA #IMPLIED> |
---|
| 253 | |
---|