binding.xjb 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <jaxb:bindings version="1.0"
  3. xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
  4. xmlns:xs="http://www.w3.org/2001/XMLSchema"
  5. xmlns:hj="http://hyperjaxb2.jvnet.org/customizations"
  6. xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
  7. jaxb:extensionBindingPrefixes="hj xjc">
  8. <jaxb:bindings schemaLocation="core.xsd" node="/xs:schema">
  9. <jaxb:globalBindings bindingStyle="modelGroupBinding" choiceContentProperty="true"
  10. generateIsSetMethod="false">
  11. <jaxb:javaType name="java.lang.Integer" xmlType="xs:int"/>
  12. <jaxb:javaType name="java.lang.Long" xmlType="xs:long"/>
  13. <!-- The SerializeableUID value should be set the the date
  14. (yyyymmdd) plus version (1, 2, 3, etc) to signify the
  15. unique version of these objects. -->
  16. <xjc:serializable uid="200905041"/>
  17. </jaxb:globalBindings>
  18. <jaxb:schemaBindings>
  19. <jaxb:package name="magoffin.matt.ieat.domain"/>
  20. </jaxb:schemaBindings>
  21. <jaxb:bindings node="xs:complexType[@name='base']">
  22. <hj:class>
  23. <hj:table name="base"/>
  24. <hj:cache usage="read-write"/>
  25. <hj:discriminator formula="'magoffin.matt.ieat.domain.Base'">
  26. <hj:no-column/>
  27. </hj:discriminator>
  28. </hj:class>
  29. <!-- Primary Key -->
  30. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='baseId']">
  31. <hj:id unsaved-value="null">
  32. <hj:column name="baseid" not-null="true"/>
  33. <hj:generator generatorClass="native">
  34. <hj:param name="sequence" value="hibernate_integer_seq"/>
  35. </hj:generator>
  36. </hj:id>
  37. </jaxb:bindings>
  38. </jaxb:bindings>
  39. <jaxb:bindings node="xs:complexType[@name='course']">
  40. <hj:class>
  41. <hj:table name="course"/>
  42. <hj:cache usage="read-write"/>
  43. <hj:discriminator formula="'magoffin.matt.ieat.domain.Course'">
  44. <hj:no-column/>
  45. </hj:discriminator>
  46. </hj:class>
  47. <!-- Primary Key -->
  48. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='courseId']">
  49. <hj:id unsaved-value="null">
  50. <hj:column name="courseid" not-null="true"/>
  51. <hj:generator generatorClass="native">
  52. <hj:param name="sequence" value="hibernate_integer_seq"/>
  53. </hj:generator>
  54. </hj:id>
  55. </jaxb:bindings>
  56. </jaxb:bindings>
  57. <jaxb:bindings node="xs:complexType[@name='difficulty']">
  58. <hj:class>
  59. <hj:table name="difficulty"/>
  60. <hj:cache usage="read-write"/>
  61. <hj:discriminator formula="'magoffin.matt.ieat.domain.Difficulty'">
  62. <hj:no-column/>
  63. </hj:discriminator>
  64. </hj:class>
  65. <!-- Primary Key -->
  66. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='difficultyId']">
  67. <hj:id unsaved-value="null">
  68. <hj:column name="difficultyid" not-null="true"/>
  69. <hj:generator generatorClass="native">
  70. <hj:param name="sequence" value="hibernate_integer_seq"/>
  71. </hj:generator>
  72. </hj:id>
  73. </jaxb:bindings>
  74. </jaxb:bindings>
  75. <jaxb:bindings node="xs:complexType[@name='ethnicity']">
  76. <hj:class>
  77. <hj:table name="ethnicity"/>
  78. <hj:cache usage="read-write"/>
  79. <hj:discriminator formula="'magoffin.matt.ieat.domain.Ethnicity'">
  80. <hj:no-column/>
  81. </hj:discriminator>
  82. </hj:class>
  83. <!-- Primary Key -->
  84. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='ethnicityId']">
  85. <hj:id unsaved-value="null">
  86. <hj:column name="ethnicityid" not-null="true"/>
  87. <hj:generator generatorClass="native">
  88. <hj:param name="sequence" value="hibernate_integer_seq"/>
  89. </hj:generator>
  90. </hj:id>
  91. </jaxb:bindings>
  92. </jaxb:bindings>
  93. <jaxb:bindings node="xs:complexType[@name='ingredient']">
  94. <hj:class>
  95. <hj:table name="ingredient"/>
  96. <hj:cache usage="read-write"/>
  97. <hj:discriminator formula="'magoffin.matt.ieat.domain.Ingredient'">
  98. <hj:no-column/>
  99. </hj:discriminator>
  100. </hj:class>
  101. <!-- Primary Key -->
  102. <jaxb:bindings node="xs:attribute[@name='ingredientId']">
  103. <hj:id unsaved-value="null">
  104. <hj:column name="ingredientid" not-null="true"/>
  105. <hj:generator generatorClass="native">
  106. <hj:param name="sequence" value="hibernate_integer_seq"/>
  107. </hj:generator>
  108. </hj:id>
  109. </jaxb:bindings>
  110. <!-- Elements -->
  111. <jaxb:bindings node="xs:sequence/xs:element[@name='description']">
  112. <hj:simpleSingleProperty>
  113. <hj:column name="description" length="512"/>
  114. </hj:simpleSingleProperty>
  115. </jaxb:bindings>
  116. <jaxb:bindings node="xs:sequence/xs:element[@name='name']">
  117. <hj:simpleSingleProperty>
  118. <hj:column name="ingr_name" length="128" not-null="true"/>
  119. </hj:simpleSingleProperty>
  120. </jaxb:bindings>
  121. </jaxb:bindings>
  122. <jaxb:bindings node="xs:complexType[@name='meal']">
  123. <hj:class>
  124. <hj:table name="meal"/>
  125. <hj:cache usage="read-write"/>
  126. <hj:discriminator formula="'magoffin.matt.ieat.domain.Meal'">
  127. <hj:no-column/>
  128. </hj:discriminator>
  129. </hj:class>
  130. <!-- Primary Key -->
  131. <jaxb:bindings node="xs:attribute[@name='mealId']">
  132. <hj:id unsaved-value="null">
  133. <hj:column name="mealid" not-null="true"/>
  134. <hj:generator generatorClass="native"/>
  135. </hj:id>
  136. </jaxb:bindings>
  137. <!-- Elements -->
  138. <jaxb:bindings node="xs:sequence/xs:element[@name='name']">
  139. <hj:simpleSingleProperty>
  140. <hj:column name="meal_name" length="128" not-null="true"/>
  141. </hj:simpleSingleProperty>
  142. </jaxb:bindings>
  143. <jaxb:bindings node="xs:sequence/xs:element[@name='owner']">
  144. <hj:complexSingleProperty>
  145. <hj:many-to-one foreign-key="meal_user_fk"
  146. insert="true" update="false" cascade="none">
  147. <hj:column name="ownerid"/>
  148. </hj:many-to-one>
  149. </hj:complexSingleProperty>
  150. </jaxb:bindings>
  151. <jaxb:bindings node="xs:sequence/xs:element[@name='recipe']">
  152. <hj:complexCollectionProperty lazy="false">
  153. <hj:cache usage="read-write"/>
  154. <hj:key foreign-key="mealrecipe_meal_fk">
  155. <hj:column name="mealid"/>
  156. </hj:key>
  157. <hj:list-index>
  158. <hj:column name="pos"/>
  159. </hj:list-index>
  160. <hj:one-to-many/>
  161. </hj:complexCollectionProperty>
  162. </jaxb:bindings>
  163. </jaxb:bindings>
  164. <jaxb:bindings node="xs:complexType[@name='meal-recipe']">
  165. <hj:class>
  166. <hj:table name="mealrecipe"/>
  167. <hj:cache usage="read-write"/>
  168. <hj:discriminator formula="'magoffin.matt.ieat.domain.MealRecipe'">
  169. <hj:no-column/>
  170. </hj:discriminator>
  171. </hj:class>
  172. <!-- Primary Key -->
  173. <hj:id unsaved-value="null">
  174. <hj:column name="mealrecipeid" not-null="true"/>
  175. <hj:generator generatorClass="native"/>
  176. </hj:id>
  177. <!-- Attributes -->
  178. <jaxb:bindings node="xs:attribute[@name='quantity']">
  179. <hj:simpleSingleProperty>
  180. <hj:column name="quantity"/>
  181. </hj:simpleSingleProperty>
  182. </jaxb:bindings>
  183. <!-- Elements -->
  184. <jaxb:bindings node="xs:sequence/xs:element[@name='recipe']">
  185. <hj:complexSingleProperty>
  186. <hj:many-to-one foreign-key="mealrecipe_recipe_fk"
  187. insert="true" update="true" cascade="none">
  188. <hj:column name="recipeid"/>
  189. </hj:many-to-one>
  190. </hj:complexSingleProperty>
  191. </jaxb:bindings>
  192. <jaxb:bindings node="xs:sequence/xs:element[@name='course']">
  193. <hj:complexSingleProperty>
  194. <hj:many-to-one foreign-key="mealrecipe_course_fk"
  195. insert="true" update="true" cascade="none">
  196. <hj:column name="courseid"/>
  197. </hj:many-to-one>
  198. </hj:complexSingleProperty>
  199. </jaxb:bindings>
  200. </jaxb:bindings>
  201. <jaxb:bindings node="xs:complexType[@name='prep-time']">
  202. <hj:class>
  203. <hj:table name="preptime"/>
  204. <hj:cache usage="read-write"/>
  205. <hj:discriminator formula="'magoffin.matt.ieat.domain.PrepTime'">
  206. <hj:no-column/>
  207. </hj:discriminator>
  208. </hj:class>
  209. <!-- Primary Key -->
  210. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='prepTimeId']">
  211. <hj:id unsaved-value="null">
  212. <hj:column name="preptimeid" not-null="true"/>
  213. <hj:generator generatorClass="native">
  214. <hj:param name="sequence" value="hibernate_integer_seq"/>
  215. </hj:generator>
  216. </hj:id>
  217. </jaxb:bindings>
  218. </jaxb:bindings>
  219. <jaxb:bindings node="xs:complexType[@name='recipe']">
  220. <hj:class>
  221. <hj:table name="recipe"/>
  222. <hj:cache usage="read-write"/>
  223. <hj:discriminator formula="'magoffin.matt.ieat.domain.Recipe'">
  224. <hj:no-column/>
  225. </hj:discriminator>
  226. </hj:class>
  227. <!-- Primary Key -->
  228. <jaxb:bindings node="xs:attribute[@name='recipeId']">
  229. <hj:id unsaved-value="null">
  230. <hj:column name="recipeid" not-null="true"/>
  231. <hj:generator generatorClass="native"/>
  232. </hj:id>
  233. </jaxb:bindings>
  234. <!-- Attributes -->
  235. <jaxb:bindings node="xs:attribute[@name='servingSize']">
  236. <hj:simpleSingleProperty>
  237. <hj:column name="servingsize" not-null="true"/>
  238. </hj:simpleSingleProperty>
  239. </jaxb:bindings>
  240. <jaxb:bindings node="xs:attribute[@name='createdDate']">
  241. <hj:simpleSingleProperty>
  242. <hj:column name="createddate"/>
  243. </hj:simpleSingleProperty>
  244. </jaxb:bindings>
  245. <jaxb:bindings node="xs:attribute[@name='modifiedDate']">
  246. <hj:simpleSingleProperty>
  247. <hj:column name="modifieddate"/>
  248. </hj:simpleSingleProperty>
  249. </jaxb:bindings>
  250. <!-- Elements -->
  251. <jaxb:bindings node="xs:sequence/xs:element[@name='base']">
  252. <hj:complexSingleProperty>
  253. <hj:many-to-one foreign-key="recipe_base_fk"
  254. insert="true" update="true" cascade="none">
  255. <hj:column name="baseid"/>
  256. </hj:many-to-one>
  257. </hj:complexSingleProperty>
  258. </jaxb:bindings>
  259. <jaxb:bindings node="xs:sequence/xs:element[@name='comment']">
  260. <hj:complexCollectionProperty lazy="false">
  261. <hj:cache usage="read-write"/>
  262. <hj:key foreign-key="recipecomment_recipe_fk">
  263. <hj:column name="recipeid"/>
  264. </hj:key>
  265. <hj:list-index>
  266. <hj:column name="pos"/>
  267. </hj:list-index>
  268. <hj:one-to-many/>
  269. </hj:complexCollectionProperty>
  270. </jaxb:bindings>
  271. <jaxb:bindings node="xs:sequence/xs:element[@name='course']">
  272. <hj:complexSingleProperty>
  273. <hj:many-to-one foreign-key="recipe_course_fk"
  274. insert="true" update="true" cascade="none">
  275. <hj:column name="courseid"/>
  276. </hj:many-to-one>
  277. </hj:complexSingleProperty>
  278. </jaxb:bindings>
  279. <jaxb:bindings node="xs:sequence/xs:element[@name='difficulty']">
  280. <hj:complexSingleProperty>
  281. <hj:many-to-one foreign-key="recipe_difficulty_fk"
  282. insert="true" update="true" cascade="none">
  283. <hj:column name="difficultyid"/>
  284. </hj:many-to-one>
  285. </hj:complexSingleProperty>
  286. </jaxb:bindings>
  287. <jaxb:bindings node="xs:sequence/xs:element[@name='directions']">
  288. <hj:simpleSingleProperty>
  289. <hj:column name="directions"/>
  290. <hj:type name="text"/>
  291. </hj:simpleSingleProperty>
  292. </jaxb:bindings>
  293. <jaxb:bindings node="xs:sequence/xs:element[@name='ethnicity']">
  294. <hj:complexSingleProperty>
  295. <hj:many-to-one foreign-key="recipe_ethnicity_fk"
  296. insert="true" update="true" cascade="none">
  297. <hj:column name="ethnicityid"/>
  298. </hj:many-to-one>
  299. </hj:complexSingleProperty>
  300. </jaxb:bindings>
  301. <jaxb:bindings node="xs:sequence/xs:element[@name='excerpt']">
  302. <hj:simpleSingleProperty>
  303. <hj:column name="excerpt"/>
  304. <hj:type name="text"/>
  305. </hj:simpleSingleProperty>
  306. </jaxb:bindings>
  307. <jaxb:bindings node="xs:sequence/xs:element[@name='image']">
  308. <hj:simpleSingleProperty>
  309. <hj:column name="image" length="255"/>
  310. </hj:simpleSingleProperty>
  311. </jaxb:bindings>
  312. <jaxb:bindings node="xs:sequence/xs:element[@name='ingredient']">
  313. <hj:complexCollectionProperty lazy="false">
  314. <hj:cache usage="read-write"/>
  315. <hj:key foreign-key="recipeingredient_recipe_fk">
  316. <hj:column name="recipeid"/>
  317. </hj:key>
  318. <hj:list-index>
  319. <hj:column name="pos"/>
  320. </hj:list-index>
  321. <hj:one-to-many/>
  322. </hj:complexCollectionProperty>
  323. </jaxb:bindings>
  324. <jaxb:bindings node="xs:sequence/xs:element[@name='name']">
  325. <hj:simpleSingleProperty>
  326. <hj:column name="recipe_name" length="128" not-null="true"/>
  327. </hj:simpleSingleProperty>
  328. </jaxb:bindings>
  329. <jaxb:bindings node="xs:sequence/xs:element[@name='owner']">
  330. <hj:complexSingleProperty>
  331. <hj:many-to-one foreign-key="recipe_user_fk"
  332. insert="true" update="false" cascade="none">
  333. <hj:column name="ownerid"/>
  334. </hj:many-to-one>
  335. </hj:complexSingleProperty>
  336. </jaxb:bindings>
  337. <jaxb:bindings node="xs:sequence/xs:element[@name='prep-time']">
  338. <hj:complexSingleProperty>
  339. <hj:many-to-one foreign-key="recipe_preptime_fk"
  340. insert="true" update="true" cascade="none">
  341. <hj:column name="preptimeid"/>
  342. </hj:many-to-one>
  343. </hj:complexSingleProperty>
  344. </jaxb:bindings>
  345. <jaxb:bindings node="xs:sequence/xs:element[@name='rating']">
  346. <hj:complexCollectionProperty lazy="false">
  347. <hj:cache usage="read-write"/>
  348. <hj:key foreign-key="reciperating_recipe_fk">
  349. <hj:column name="recipeid"/>
  350. </hj:key>
  351. <hj:list-index>
  352. <hj:column name="pos"/>
  353. </hj:list-index>
  354. <hj:one-to-many/>
  355. </hj:complexCollectionProperty>
  356. </jaxb:bindings>
  357. <jaxb:bindings node="xs:sequence/xs:element[@name='related-recipe']">
  358. <hj:complexCollectionProperty lazy="false">
  359. <hj:cache usage="read-write"/>
  360. <hj:key foreign-key="relatedrecipe_recipe_fk">
  361. <hj:column name="recipeid"/>
  362. </hj:key>
  363. <hj:list-index>
  364. <hj:column name="pos"/>
  365. </hj:list-index>
  366. <hj:one-to-many/>
  367. </hj:complexCollectionProperty>
  368. </jaxb:bindings>
  369. <jaxb:bindings node="xs:sequence/xs:element[@name='source']">
  370. <hj:simpleSingleProperty>
  371. <hj:column name="source" length="128"/>
  372. </hj:simpleSingleProperty>
  373. </jaxb:bindings>
  374. <jaxb:bindings node="xs:sequence/xs:element[@name='step']">
  375. <hj:complexCollectionProperty lazy="false">
  376. <hj:cache usage="read-write"/>
  377. <hj:key foreign-key="recipestep_recipe_fk">
  378. <hj:column name="recipeid"/>
  379. </hj:key>
  380. <hj:list-index>
  381. <hj:column name="pos"/>
  382. </hj:list-index>
  383. <hj:one-to-many/>
  384. </hj:complexCollectionProperty>
  385. </jaxb:bindings>
  386. <jaxb:bindings node="xs:sequence/xs:element[@name='system']">
  387. <hj:complexSingleProperty>
  388. <hj:many-to-one foreign-key="recipe_system_fk"
  389. insert="true" update="true" cascade="none">
  390. <hj:column name="systemid"/>
  391. </hj:many-to-one>
  392. </hj:complexSingleProperty>
  393. </jaxb:bindings>
  394. </jaxb:bindings>
  395. <jaxb:bindings node="xs:complexType[@name='recipe-comment']">
  396. <hj:class>
  397. <hj:table name="recipecomment"/>
  398. <hj:cache usage="read-write"/>
  399. <hj:discriminator formula="'magoffin.matt.ieat.domain.RecipeComment'">
  400. <hj:no-column/>
  401. </hj:discriminator>
  402. <hj:key foreign-key="recipecomment_recipe_fk"/>
  403. </hj:class>
  404. <!-- Primary Key -->
  405. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='commentId']">
  406. <hj:id unsaved-value="null">
  407. <hj:column name="commentid" not-null="true"/>
  408. <hj:generator generatorClass="native">
  409. <hj:param name="sequence" value="hibernate_integer_seq"/>
  410. </hj:generator>
  411. </hj:id>
  412. </jaxb:bindings>
  413. <!-- Attributes -->
  414. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='createdDate']">
  415. <hj:simpleSingleProperty>
  416. <hj:column name="createddate" not-null="true"/>
  417. </hj:simpleSingleProperty>
  418. </jaxb:bindings>
  419. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='userId']">
  420. <hj:simpleSingleProperty>
  421. <hj:column name="userid" not-null="true"/>
  422. </hj:simpleSingleProperty>
  423. </jaxb:bindings>
  424. </jaxb:bindings>
  425. <jaxb:bindings node="xs:complexType[@name='recipe-ingredient']">
  426. <hj:class>
  427. <hj:table name="recipeingredient"/>
  428. <hj:cache usage="read-write"/>
  429. <hj:discriminator formula="'magoffin.matt.ieat.domain.RecipeIngredient'">
  430. <hj:no-column/>
  431. </hj:discriminator>
  432. <hj:key foreign-key="recipeingredient_recipe_fk"/>
  433. </hj:class>
  434. <!-- Primary Key -->
  435. <hj:id unsaved-value="null">
  436. <hj:column name="recipeingredientid" not-null="true"/>
  437. <hj:generator generatorClass="native"/>
  438. </hj:id>
  439. <!-- Attributes -->
  440. <jaxb:bindings node="xs:attribute[@name='optional']">
  441. <hj:simpleSingleProperty>
  442. <hj:column name="optional" not-null="true"/>
  443. </hj:simpleSingleProperty>
  444. </jaxb:bindings>
  445. <jaxb:bindings node="xs:attribute[@name='quantity']">
  446. <hj:simpleSingleProperty>
  447. <hj:column name="quantity" not-null="true"/>
  448. </hj:simpleSingleProperty>
  449. </jaxb:bindings>
  450. <jaxb:bindings node="xs:attribute[@name='qualifier']">
  451. <hj:simpleSingleProperty>
  452. <hj:column name="qualifier" length="255"/>
  453. </hj:simpleSingleProperty>
  454. </jaxb:bindings>
  455. <!-- Elements -->
  456. <jaxb:bindings node="xs:sequence/xs:element[@name='ingredient']">
  457. <hj:complexSingleProperty>
  458. <hj:many-to-one foreign-key="recipeingredient_ingredient_fk"
  459. insert="true" update="true" cascade="none">
  460. <hj:column name="ingredientid"/>
  461. </hj:many-to-one>
  462. </hj:complexSingleProperty>
  463. </jaxb:bindings>
  464. <jaxb:bindings node="xs:sequence/xs:element[@name='recipe']">
  465. <hj:complexSingleProperty>
  466. <hj:many-to-one foreign-key="recipeingredient_ingredientrecipe_fk"
  467. insert="true" update="true" cascade="none">
  468. <hj:column name="ingredientrecipeid"/>
  469. </hj:many-to-one>
  470. </hj:complexSingleProperty>
  471. </jaxb:bindings>
  472. <jaxb:bindings node="xs:sequence/xs:element[@name='unit']">
  473. <hj:complexSingleProperty>
  474. <hj:many-to-one foreign-key="recipeingredient_unit_fk"
  475. insert="true" update="true" cascade="none">
  476. <hj:column name="unitid"/>
  477. </hj:many-to-one>
  478. </hj:complexSingleProperty>
  479. </jaxb:bindings>
  480. </jaxb:bindings>
  481. <jaxb:bindings node="xs:complexType[@name='recipe-rating']">
  482. <hj:class>
  483. <hj:table name="reciperating"/>
  484. <hj:cache usage="read-write"/>
  485. <hj:discriminator formula="'magoffin.matt.ieat.domain.RecipeRating'">
  486. <hj:no-column/>
  487. </hj:discriminator>
  488. <hj:key foreign-key="reciperating_recipe_fk"/>
  489. </hj:class>
  490. <!-- Primary Key -->
  491. <jaxb:bindings node="xs:attribute[@name='ratingId']">
  492. <hj:id unsaved-value="null">
  493. <hj:column name="ratingid" not-null="true"/>
  494. <hj:generator generatorClass="native"/>
  495. </hj:id>
  496. </jaxb:bindings>
  497. <!-- Attributes -->
  498. <jaxb:bindings node="xs:attribute[@name='createdDate']">
  499. <hj:simpleSingleProperty>
  500. <hj:column name="createddate" not-null="true"/>
  501. </hj:simpleSingleProperty>
  502. </jaxb:bindings>
  503. <jaxb:bindings node="xs:attribute[@name='rating']">
  504. <hj:simpleSingleProperty>
  505. <hj:column name="rating" not-null="true"/>
  506. </hj:simpleSingleProperty>
  507. </jaxb:bindings>
  508. <jaxb:bindings node="xs:attribute[@name='userId']">
  509. <hj:simpleSingleProperty>
  510. <hj:column name="userid" not-null="true"/>
  511. </hj:simpleSingleProperty>
  512. </jaxb:bindings>
  513. </jaxb:bindings>
  514. <jaxb:bindings node="xs:complexType[@name='recipe-step']">
  515. <hj:class>
  516. <hj:table name="recipestep"/>
  517. <hj:cache usage="read-write"/>
  518. <hj:discriminator formula="'magoffin.matt.ieat.domain.RecipeStep'">
  519. <hj:no-column/>
  520. </hj:discriminator>
  521. <hj:key foreign-key="recipestep_recipe_fk"/>
  522. </hj:class>
  523. <!-- Primary Key -->
  524. <hj:id unsaved-value="null">
  525. <hj:column name="stepid" not-null="true"/>
  526. <hj:generator generatorClass="native"/>
  527. </hj:id>
  528. </jaxb:bindings>
  529. <jaxb:bindings node="xs:complexType[@name='related-recipe']">
  530. <hj:class>
  531. <hj:table name="relatedrecipe"/>
  532. <hj:cache usage="read-write"/>
  533. <hj:discriminator formula="'magoffin.matt.ieat.domain.RelatedRecipe'">
  534. <hj:no-column/>
  535. </hj:discriminator>
  536. </hj:class>
  537. <!-- Primary Key -->
  538. <hj:id unsaved-value="null">
  539. <hj:column name="relatedrecipeid" not-null="true"/>
  540. <hj:generator generatorClass="native"/>
  541. </hj:id>
  542. <!-- Elements -->
  543. <jaxb:bindings node="xs:sequence/xs:element[@name='kind']">
  544. <hj:complexSingleProperty>
  545. <hj:many-to-one foreign-key="relatedrecipe_relationkind_fk"
  546. insert="true" update="true" cascade="none">
  547. <hj:column name="relationkindid"/>
  548. </hj:many-to-one>
  549. </hj:complexSingleProperty>
  550. </jaxb:bindings>
  551. <jaxb:bindings node="xs:sequence/xs:element[@name='recipe']">
  552. <hj:complexSingleProperty>
  553. <hj:many-to-one foreign-key="relatedrecipe_recipe_fk"
  554. insert="true" update="true" cascade="none">
  555. <hj:column name="recipeid"/>
  556. </hj:many-to-one>
  557. </hj:complexSingleProperty>
  558. </jaxb:bindings>
  559. </jaxb:bindings>
  560. <jaxb:bindings node="xs:complexType[@name='relation-kind']">
  561. <hj:class>
  562. <hj:table name="relationkind"/>
  563. <hj:cache usage="read-write"/>
  564. <hj:discriminator formula="'magoffin.matt.ieat.domain.RelationKind'">
  565. <hj:no-column/>
  566. </hj:discriminator>
  567. </hj:class>
  568. <!-- Primary Key -->
  569. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='relationKindId']">
  570. <hj:id unsaved-value="null">
  571. <hj:column name="relationkindid" not-null="true"/>
  572. <hj:generator generatorClass="native">
  573. <hj:param name="sequence" value="hibernate_integer_seq"/>
  574. </hj:generator>
  575. </hj:id>
  576. </jaxb:bindings>
  577. </jaxb:bindings>
  578. <jaxb:bindings node="xs:complexType[@name='system']">
  579. <hj:class>
  580. <hj:table name="measurement_system"/>
  581. <hj:cache usage="read-write"/>
  582. <hj:discriminator formula="'magoffin.matt.ieat.domain.System'">
  583. <hj:no-column/>
  584. </hj:discriminator>
  585. </hj:class>
  586. <!-- Primary Key -->
  587. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='systemId']">
  588. <hj:id unsaved-value="null">
  589. <hj:column name="systemid" not-null="true"/>
  590. <hj:generator generatorClass="native">
  591. <hj:param name="sequence" value="hibernate_integer_seq"/>
  592. </hj:generator>
  593. </hj:id>
  594. </jaxb:bindings>
  595. </jaxb:bindings>
  596. <jaxb:bindings node="xs:complexType[@name='unit']">
  597. <hj:class>
  598. <hj:table name="unit"/>
  599. <hj:cache usage="read-write"/>
  600. <hj:discriminator formula="'magoffin.matt.ieat.domain.Unit'">
  601. <hj:no-column/>
  602. </hj:discriminator>
  603. </hj:class>
  604. <!-- Primary Key -->
  605. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='unitId']">
  606. <hj:id unsaved-value="null">
  607. <hj:column name="unitid" not-null="true"/>
  608. <hj:generator generatorClass="native">
  609. <hj:param name="sequence" value="hibernate_integer_seq"/>
  610. </hj:generator>
  611. </hj:id>
  612. </jaxb:bindings>
  613. <!-- Attributes -->
  614. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='abbreviation']">
  615. <hj:simpleSingleProperty>
  616. <hj:column name="abbreviation" not-null="true" length="8"/>
  617. </hj:simpleSingleProperty>
  618. </jaxb:bindings>
  619. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='mass']">
  620. <hj:simpleSingleProperty>
  621. <hj:column name="mass" not-null="true"/>
  622. </hj:simpleSingleProperty>
  623. </jaxb:bindings>
  624. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='systemId']">
  625. <hj:simpleSingleProperty>
  626. <hj:column name="systemid"/>
  627. </hj:simpleSingleProperty>
  628. </jaxb:bindings>
  629. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='toImperial']">
  630. <hj:simpleSingleProperty>
  631. <hj:column name="toimperial"/>
  632. </hj:simpleSingleProperty>
  633. </jaxb:bindings>
  634. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='toMetric']">
  635. <hj:simpleSingleProperty>
  636. <hj:column name="tometric"/>
  637. </hj:simpleSingleProperty>
  638. </jaxb:bindings>
  639. <jaxb:bindings node="xs:simpleContent/xs:extension/xs:attribute[@name='toUS']">
  640. <hj:simpleSingleProperty>
  641. <hj:column name="tous"/>
  642. </hj:simpleSingleProperty>
  643. </jaxb:bindings>
  644. </jaxb:bindings>
  645. <jaxb:bindings node="xs:complexType[@name='user']">
  646. <hj:class>
  647. <hj:table name="users"/>
  648. <hj:cache usage="read-write"/>
  649. <hj:discriminator formula="'magoffin.matt.ieat.domain.User'">
  650. <hj:no-column/>
  651. </hj:discriminator>
  652. </hj:class>
  653. <!-- Primary Key -->
  654. <jaxb:bindings node="xs:attribute[@name='userId']">
  655. <hj:id unsaved-value="null">
  656. <hj:column name="userid" not-null="true"/>
  657. <hj:generator generatorClass="native">
  658. <hj:param name="sequence" value="hibernate_integer_seq"/>
  659. </hj:generator>
  660. </hj:id>
  661. </jaxb:bindings>
  662. <!-- Attributes -->
  663. <jaxb:bindings node="xs:attribute[@name='accessLevel']">
  664. <hj:simpleSingleProperty>
  665. <hj:column name="accesslevel"/>
  666. </hj:simpleSingleProperty>
  667. </jaxb:bindings>
  668. <jaxb:bindings node="xs:attribute[@name='country']">
  669. <hj:simpleSingleProperty>
  670. <hj:column name="country" not-null="true" length="3"/>
  671. </hj:simpleSingleProperty>
  672. </jaxb:bindings>
  673. <jaxb:bindings node="xs:attribute[@name='createdDate']">
  674. <hj:simpleSingleProperty>
  675. <hj:column name="createddate" not-null="true"/>
  676. </hj:simpleSingleProperty>
  677. </jaxb:bindings>
  678. <jaxb:bindings node="xs:attribute[@name='language']">
  679. <hj:simpleSingleProperty>
  680. <hj:column name="language" not-null="true" length="3"/>
  681. </hj:simpleSingleProperty>
  682. </jaxb:bindings>
  683. <jaxb:bindings node="xs:attribute[@name='lastLoginDate']">
  684. <hj:simpleSingleProperty>
  685. <hj:column name="lastlogindate"/>
  686. </hj:simpleSingleProperty>
  687. </jaxb:bindings>
  688. <jaxb:bindings node="xs:attribute[@name='login']">
  689. <hj:simpleSingleProperty>
  690. <hj:column name="login" not-null="true" length="32"/>
  691. </hj:simpleSingleProperty>
  692. </jaxb:bindings>
  693. <!-- Elements -->
  694. <jaxb:bindings node="xs:sequence/xs:element[@name='email']">
  695. <hj:simpleSingleProperty>
  696. <hj:column name="email" length="128" not-null="true"/>
  697. </hj:simpleSingleProperty>
  698. </jaxb:bindings>
  699. <jaxb:bindings node="xs:sequence/xs:element[@name='name']">
  700. <hj:simpleSingleProperty>
  701. <hj:column name="user_name" length="64" not-null="true"/>
  702. </hj:simpleSingleProperty>
  703. </jaxb:bindings>
  704. <jaxb:bindings node="xs:sequence/xs:element[@name='password']">
  705. <hj:simpleSingleProperty>
  706. <hj:column name="password" length="64" not-null="true"/>
  707. </hj:simpleSingleProperty>
  708. </jaxb:bindings>
  709. </jaxb:bindings>
  710. </jaxb:bindings>
  711. <jaxb:bindings schemaLocation="ui.xsd" node="/xs:schema">
  712. <jaxb:bindings node="xs:complexType[@name='advanced-search-criteria']">
  713. <hj:ignored/>
  714. </jaxb:bindings>
  715. <jaxb:bindings node="xs:complexType[@name='recipe-search-criteria']">
  716. <hj:ignored/>
  717. </jaxb:bindings>
  718. <jaxb:bindings node="xs:complexType[@name='ui-base']">
  719. <hj:ignored/>
  720. </jaxb:bindings>
  721. <jaxb:bindings node="xs:complexType[@name='ui-data']">
  722. <hj:ignored/>
  723. </jaxb:bindings>
  724. <jaxb:bindings node="xs:complexType[@name='ui-edit']">
  725. <hj:ignored/>
  726. </jaxb:bindings>
  727. <jaxb:bindings node="xs:complexType[@name='ui-index']">
  728. <hj:ignored/>
  729. <jaxb:bindings node="xs:sequence/xs:element[@name='index-section']/xs:complexType">
  730. <hj:ignored/>
  731. </jaxb:bindings>
  732. </jaxb:bindings>
  733. <jaxb:bindings node="xs:complexType[@name='ui-ingredient-match']">
  734. <hj:ignored/>
  735. </jaxb:bindings>
  736. <jaxb:bindings node="xs:complexType[@name='ui-meta-support']">
  737. <hj:ignored/>
  738. </jaxb:bindings>
  739. <jaxb:bindings node="xs:complexType[@name='ui-pagination-support']">
  740. <hj:ignored/>
  741. </jaxb:bindings>
  742. <jaxb:bindings node="xs:complexType[@name='ui-parameter']">
  743. <hj:ignored/>
  744. </jaxb:bindings>
  745. <jaxb:bindings node="xs:complexType[@name='ui-recipe-match']">
  746. <hj:ignored/>
  747. </jaxb:bindings>
  748. <jaxb:bindings node="xs:complexType[@name='ui-search-results']">
  749. <hj:ignored/>
  750. </jaxb:bindings>
  751. <jaxb:bindings node="xs:complexType[@name='ui-session-data']">
  752. <hj:ignored/>
  753. </jaxb:bindings>
  754. <jaxb:bindings node="xs:complexType[@name='ui-user-match']">
  755. <hj:ignored/>
  756. </jaxb:bindings>
  757. </jaxb:bindings>
  758. </jaxb:bindings>