You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by bu...@apache.org on 2013/09/23 08:44:15 UTC

svn commit: r879536 - in /websites/staging/olingo/trunk/content: ./ doc/tutorials/jparedefinemetadata.html

Author: buildbot
Date: Mon Sep 23 06:44:14 2013
New Revision: 879536

Log:
Staging update by buildbot for olingo

Added:
    websites/staging/olingo/trunk/content/doc/tutorials/jparedefinemetadata.html
Modified:
    websites/staging/olingo/trunk/content/   (props changed)

Propchange: websites/staging/olingo/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Mon Sep 23 06:44:14 2013
@@ -1 +1 @@
-1523673
+1525511

Added: websites/staging/olingo/trunk/content/doc/tutorials/jparedefinemetadata.html
==============================================================================
--- websites/staging/olingo/trunk/content/doc/tutorials/jparedefinemetadata.html (added)
+++ websites/staging/olingo/trunk/content/doc/tutorials/jparedefinemetadata.html Mon Sep 23 06:44:14 2013
@@ -0,0 +1,318 @@
+<!DOCTYPE html>
+<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
+<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
+<!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
+    <head>
+        <meta charset="utf-8">
+            <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+                <title></title>
+                <meta name="description" content="Apache Olingo (incubating) provides libraries which enable developers to implement OData producers and OData consumers. The available OData Java library implements OData version 2.0. In future on goal is to provide an OData 4.0 compliant library once the OData standard is published at OASIS. The focus within the community is currently on the Java technology but it is up to the community to discuss if other environments find interest.">
+                    <meta name="viewport" content="width=device-width">
+                        
+		<link rel="stylesheet" href="/css/bootstrap.min.css">
+                            <style>
+                                body {
+                                    padding-top: 60px;
+                                    padding-bottom: 40px;
+                                }
+                                </style>
+		<link rel="stylesheet" href="/css/bootstrap-responsive.min.css">
+		<link rel="stylesheet" href="/css/main.css">
+                                    
+		<script src="j/s/vendor/modernizr-2.6.2-respond-1.1.0.min.js"></script>
+                                    </head>
+    <body>
+        <!--[if lt IE 7]>
+         <p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to improve your experience.</p>
+         <![endif]-->
+        
+        <!-- This code is taken from http://twitter.github.com/bootstrap/examples/hero.html -->
+        <div class="navbar navbar-inverse  navbar-fixed-top">
+            <div class="navbar-inner">
+                <div class="container">
+                    <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
+                        <span class="icon-bar"></span>
+                        <span class="icon-bar"></span>
+                        <span class="icon-bar"></span>
+                    </a>
+                    <a class="brand" href="#">Apache Olingo™</a>
+                    <div class="nav-collapse collapse">
+                        <ul class="nav">
+                            <li class="dropdown">
+                                <a href="#" class="dropdown-toggle" data-toggle="dropdown">ASF <b class="caret"></b></a>
+                                <ul class="dropdown-menu">
+                                    <li><a href="http://www.apache.org/foundation/">ASF Home</a></li>
+                                    <li><a href="http://projects.apache.org/">Projects</a></li>
+                                    <li><a href="http://people.apache.org/">People</a></li>
+                                    <li><a href="http://www.apache.org/foundation/getinvolved.html">Get Involved</a></li>
+                                    <li><a href="http://www.apache.org/dyn/closer.cgi">Download</a></li>
+									<li><a href="http://www.apache.org/security/">Security</a></li>
+                                    <li><a href="http://www.apache.org/foundation/sponsorship.html">Support Apache</a></li>
+                                </ul>
+                            </li>
+                            <li class="active"><a href="/">Home</a></li>
+                            <li><a href="/documentation.html">Documentation</a></li>
+                            <li><a href="/support.html">Support</a></li>
+                        </ul>
+                        <form class="navbar-form pull-right" name="search" id="search" action="http://www.google.com/search" method="get">
+                            <input value="olingo.incubator.apache.org" name="sitesearch" type="hidden"/>
+                            <input class="span2" type="text" name="q" id="query">
+                                <input class="btn"type="submit" id="submit" value="Search">
+                                    </form>
+                    </div><!--/.nav-collapse -->
+                </div>
+            </div>
+        </div>
+        
+        <div class="container">
+            
+            
+            
+            <h2 id="redefining-metadata">Redefining Metadata</h2>
+<p>The OData services created from JPA models using OData JPA Processor Library derives the names for its elements from Java Persistence Entity elements. These derived (default) names can be redefined using JPA EDM mapping models. JPA EDM Mapping model can be used to redefine:
+<em> Schema Namespace Name
+</em> Entity Type Names
+<em> Entity Set Names<br />
+</em> Property Names
+<em> Navigation Property Names
+</em> Complex Type Names</p>
+<p>The OData JPA Processor Library applies certain naming rules to derive the names for the above OData elements by default. Here are the rules:</p>
+<ol>
+<li>Schema Namespace Name is derived from Java Persistence Unit Name.</li>
+<li>Entity Type Names are derived from Java Persistence Entity Type Names.</li>
+<li>Entity Set Names are derived from EDM Entity Type Names suffixed with character "s".</li>
+<li>Property Names are derived from Java Persistence Entity Attribute Names. The initial character in the property name is converted to an upper-case character.</li>
+<li>Navigation Property Names are derived from Java Persistence attribute name representing relationships. The navigation property name is suffixed with the word "Details".</li>
+<li>Complex Type Names are derived from Java Persistence Embeddable type names.</li>
+</ol>
+<p><em>Note</em>: The names generated by applying the above rules can be overridden using JPA EDM Mapping models. JPA EDM mapping model can be maintained as an XML document according to the schema.</p>
+<h3 id="steps-to-redefine-the-metadata">Steps to Redefine the Metadata</h3>
+<ol>
+<li>Create a JPA EDM Mapping model XML according to the schema given below. In the XML, maintain the mapping only for those elements that needs to be redefined. For example, if JPA Entity Type A's name has to be redefined, then maintain an EDM name for the same.</li>
+</ol>
+<h6 id="schema">Schema</h6>
+<div class="codehilite"><pre>    <span class="s-Atom">&lt;?xml</span> <span class="s-Atom">version=</span><span class="s2">&quot;1.0&quot;</span> <span class="s-Atom">encoding=</span><span class="s2">&quot;UTF-8&quot;</span><span class="s-Atom">?&gt;</span>
+    <span class="s-Atom">&lt;</span><span class="p">!</span><span class="s-Atom">--</span>
+      <span class="nv">Licensed</span> <span class="s-Atom">to</span> <span class="s-Atom">the</span> <span class="nv">Apache</span> <span class="nv">Software</span> <span class="nv">Foundation</span> <span class="p">(</span><span class="nv">ASF</span><span class="p">)</span> <span class="s-Atom">under</span> <span class="s-Atom">one</span> <span class="s-Atom">or</span> <span class="s-Atom">more</span> <span class="s-Atom">contributor</span> <span class="s-Atom">license</span> <span class="s-Atom">agreements</span><span class="p">.</span> <span class="nv">See</span> <span class="s-Atom">the</span> <span class="nv">NOTICE</span> <span class="s-Atom">file</span> <span class="s-Atom">distributed</span> <span class="s-Atom">with</span> <span class="s-Atom">this</span> <span class="s-Atom">work</span> <span class="s-Atom">for</span> <span class="s-Atom">additional</span> <span class="s-Atom">information</span> <span class="s-Atom">regarding</span> <span class="s-Atom">copyright</span> <
 span class="s-Atom">ownership</span><span class="p">.</span> <span class="nv">The</span> <span class="nv">ASF</span> <span class="s-Atom">licenses</span> <span class="s-Atom">this</span> <span class="s-Atom">file</span> <span class="s-Atom">to</span> <span class="s-Atom">you</span> <span class="s-Atom">under</span> <span class="s-Atom">the</span> <span class="nv">Apache</span> <span class="nv">License</span><span class="p">,</span> <span class="nv">Version</span> <span class="m">2</span><span class="p">.</span><span class="m">0</span> <span class="p">(</span><span class="s-Atom">the</span> <span class="s2">&quot;License&quot;</span><span class="p">);</span> <span class="s-Atom">you</span> <span class="s-Atom">may</span> <span class="o">not</span> <span class="s-Atom">use</span> <span class="s-Atom">this</span> <span class="s-Atom">file</span> <span class="s-Atom">except</span> <span class="s-Atom">in</span> <span class="s-Atom">compliance</span> <span class="s-Atom">with</span> <spa
 n class="s-Atom">the</span> <span class="nv">License</span><span class="p">.</span> <span class="nv">You</span> <span class="s-Atom">may</span> <span class="s-Atom">obtain</span> <span class="s-Atom">a</span> <span class="s-Atom">copy</span> <span class="s-Atom">of</span> <span class="s-Atom">the</span> <span class="nv">License</span> <span class="s-Atom">at</span>
+
+       <span class="nn">http</span><span class="p">:</span><span class="o">//</span><span class="s-Atom">www</span><span class="p">.</span><span class="s-Atom">apache</span><span class="p">.</span><span class="s-Atom">org</span><span class="o">/</span><span class="s-Atom">licenses</span><span class="o">/</span><span class="nv">LICENSE</span><span class="o">-</span><span class="m">2</span><span class="p">.</span><span class="m">0</span>
+
+      <span class="nv">Unless</span> <span class="s-Atom">required</span> <span class="s-Atom">by</span> <span class="s-Atom">applicable</span> <span class="s-Atom">law</span> <span class="s-Atom">or</span> <span class="s-Atom">agreed</span> <span class="s-Atom">to</span> <span class="s-Atom">in</span> <span class="s-Atom">writing</span><span class="p">,</span> <span class="s-Atom">software</span> <span class="s-Atom">distributed</span> <span class="s-Atom">under</span> <span class="s-Atom">the</span> <span class="nv">License</span> <span class="o">is</span> <span class="s-Atom">distributed</span> <span class="s-Atom">on</span> <span class="s-Atom">an</span> <span class="s2">&quot;AS IS&quot;</span> <span class="nv">BASIS</span><span class="p">,</span> <span class="nv">WITHOUT</span> <span class="nv">WARRANTIES</span> <span class="nv">OR</span> <span class="nv">CONDITIONS</span> <span class="nv">OF</span> <span class="nv">ANYKIND</span><span class="p">,</span> <span class="s-Atom">e
 ither</span> <span class="s-Atom">express</span> <span class="s-Atom">or</span> <span class="s-Atom">implied</span><span class="p">.</span>  <span class="nv">See</span> <span class="s-Atom">the</span> <span class="nv">License</span> <span class="s-Atom">for</span> <span class="s-Atom">the</span> <span class="s-Atom">specific</span> <span class="s-Atom">language</span> <span class="s-Atom">governing</span> <span class="s-Atom">permissions</span> <span class="s-Atom">and</span> <span class="s-Atom">limitations</span> <span class="s-Atom">under</span> <span class="s-Atom">the</span> <span class="nv">License</span><span class="p">.</span>
+    <span class="p">--&gt;</span>
+    <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">schema</span> <span class="s-Atom">attributeFormDefault=</span><span class="s2">&quot;unqualified&quot;</span>
+        <span class="s-Atom">elementFormDefault=</span><span class="s2">&quot;qualified&quot;</span> <span class="nn">xmlns</span><span class="p">:</span><span class="s-Atom">xs=</span><span class="s2">&quot;http://www.w3.org/2001/XMLSchema&quot;</span>
+        <span class="s-Atom">targetNamespace=</span><span class="s2">&quot;http://www.apache.org/olingo/odata2/processor/api/jpa/model/mapping&quot;</span>
+        <span class="nn">xmlns</span><span class="p">:</span><span class="s-Atom">tns=</span><span class="s2">&quot;http://www.apache.org/olingo/odata2/processor/api/jpa/model/mapping&quot;</span><span class="o">&gt;</span>
+
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEDMMappingModel&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span> <span class="nn">xml</span><span class="p">:</span><span class="s-Atom">lang=</span><span class="s2">&quot;en&quot;</span><span class="o">&gt;</span>
+                    <span class="nv">Java</span> <span class="nv">Persistence</span> <span class="p">(</span><span class="nv">JPA</span><span class="p">)</span> <span class="o">-</span>
+                    <span class="nv">Entity</span> <span class="nv">Data</span> <span class="nv">Model</span> <span class="p">(</span><span class="nv">EDM</span><span class="p">)</span> <span class="nv">Mapping</span> <span class="s-Atom">schema</span><span class="p">.</span> <span class="nv">The</span> <span class="s-Atom">schema</span> <span class="s-Atom">defines</span> <span class="s-Atom">a</span> <span class="s-Atom">mapping</span> <span class="s-Atom">model</span> <span class="s-Atom">to</span> <span class="s-Atom">describe</span> <span class="nv">EDM</span> <span class="s-Atom">names</span> <span class="s-Atom">for</span> <span class="s-Atom">entity</span> <span class="s-Atom">types</span><span class="p">,</span> <span class="s-Atom">entity</span> <span class="s-Atom">sets</span><span class="p">,</span> <span class="s-Atom">entity</span> <span class="s-Atom">properties</span><span class="p">,</span> <span class="s-Atom">entity</span> <span class="s-Atom">navigation</span> <s
 pan class="s-Atom">properties</span><span class="p">.</span> <span class="nv">By</span> <span class="s-Atom">default</span> <span class="s-Atom">the</span> <span class="s-Atom">names</span> <span class="s-Atom">of</span> <span class="nv">Java</span> <span class="nv">Persistence</span> <span class="s-Atom">entity</span> <span class="s-Atom">types</span><span class="p">,</span> <span class="s-Atom">entity</span> <span class="s-Atom">attributes</span> <span class="s-Atom">and</span> <span class="s-Atom">entity</span> <span class="s-Atom">relationships</span> <span class="s-Atom">are</span> <span class="s-Atom">transformed</span> <span class="s-Atom">into</span> <span class="s-Atom">their</span> <span class="s-Atom">corresponding</span> <span class="nv">EDM</span> <span class="s-Atom">names</span><span class="p">.</span> <span class="nv">To</span> <span class="s-Atom">override</span> <span class="s-Atom">the</span> <span class="s-Atom">default</span> <span class="s-Atom">names</span> <s
 pan class="s-Atom">the</span> <span class="s-Atom">mapping</span> <span class="s-Atom">model</span> <span class="o">is</span> <span class="s-Atom">defined</span><span class="p">.</span> <span class="nv">Note</span><span class="p">:-</span> <span class="nv">Define</span> <span class="s-Atom">the</span> <span class="s-Atom">mapping</span> <span class="s-Atom">model</span> <span class="s-Atom">for</span> <span class="s-Atom">only</span> <span class="s-Atom">those</span> <span class="s-Atom">default</span> <span class="s-Atom">names</span> <span class="s-Atom">that</span> <span class="s-Atom">needs</span> <span class="s-Atom">to</span> <span class="s-Atom">be</span> <span class="s-Atom">overridden</span><span class="p">.</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                    <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;PersistenceUnit&quot;</span> <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPAPersistenceUnitMapType&quot;</span>
+                        <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;1&quot;</span> <span class="s-Atom">minOccurs=</span><span class="s2">&quot;1&quot;</span> <span class="s-Atom">/&gt;</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span><span class="o">&gt;</span>
+
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAAttributeMapType&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span> <span class="nn">xml</span><span class="p">:</span><span class="s-Atom">lang=</span><span class="s2">&quot;en&quot;</span><span class="o">&gt;</span>
+                    <span class="nv">The</span> <span class="s-Atom">default</span> <span class="s-Atom">name</span> <span class="s-Atom">for</span> <span class="nv">EDM</span> <span class="s-Atom">property</span> <span class="o">is</span> <span class="s-Atom">derived</span> <span class="s-Atom">from</span> <span class="nv">JPA</span> <span class="s-Atom">attribute</span> <span class="s-Atom">name</span><span class="p">.</span> <span class="nv">This</span> <span class="s-Atom">can</span> <span class="s-Atom">be</span> <span class="s-Atom">overridden</span> <span class="s-Atom">using</span> <span class="nv">JPAAttributeMapType</span><span class="p">.</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAAttribute&quot;</span> <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;unbounded&quot;</span> 
+                    <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span><span class="o">&gt;</span>
+                    <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+                        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">simpleContent</span><span class="o">&gt;</span>
+                            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">extension</span> <span class="s-Atom">base=</span><span class="s2">&quot;xs:string&quot;</span><span class="o">&gt;</span>
+                                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;name&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;required&quot;</span> <span class="s-Atom">/&gt;</span>
+                                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:boolean&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;exclude&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;optional&quot;</span>
+                                    <span class="s-Atom">default=</span><span class="s2">&quot;false&quot;</span> <span class="s-Atom">/&gt;</span>
+                            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">extension</span><span class="o">&gt;</span>
+                        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">simpleContent</span><span class="o">&gt;</span>
+                    <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPARelationshipMapType&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span> <span class="nn">xml</span><span class="p">:</span><span class="s-Atom">lang=</span><span class="s2">&quot;en&quot;</span><span class="o">&gt;</span>
+                    <span class="nv">The</span> <span class="s-Atom">default</span> <span class="s-Atom">name</span> <span class="s-Atom">for</span> <span class="nv">EDM</span> <span class="s-Atom">navigation</span> <span class="s-Atom">property</span> <span class="o">is</span> <span class="s-Atom">derived</span> <span class="s-Atom">from</span> <span class="nv">JPA</span> <span class="s-Atom">relationship</span> <span class="s-Atom">name</span><span class="p">.</span> <span class="nv">This</span> <span class="s-Atom">can</span> <span class="s-Atom">be</span> <span class="s-Atom">overridden</span> <span class="s-Atom">using</span> <span class="nv">JPARelationshipMapType</span><span class="p">.</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPARelationship&quot;</span> <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;unbounded&quot;</span> 
+                    <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span><span class="o">&gt;</span>
+                    <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+                        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">simpleContent</span><span class="o">&gt;</span>
+                            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">extension</span> <span class="s-Atom">base=</span><span class="s2">&quot;xs:string&quot;</span><span class="o">&gt;</span>
+                                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;name&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;required&quot;</span> <span class="s-Atom">/&gt;</span>
+                            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">extension</span><span class="o">&gt;</span>
+                        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">simpleContent</span><span class="o">&gt;</span>
+                    <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEntityTypeMapType&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span> <span class="nn">xml</span><span class="p">:</span><span class="s-Atom">lang=</span><span class="s2">&quot;en&quot;</span><span class="o">&gt;</span>
+                    <span class="nv">The</span> <span class="s-Atom">default</span> <span class="s-Atom">name</span> <span class="s-Atom">for</span> <span class="nv">EDM</span> <span class="s-Atom">entity</span> <span class="s-Atom">type</span> <span class="o">is</span> <span class="s-Atom">derived</span> <span class="s-Atom">from</span> <span class="nv">JPA</span> <span class="s-Atom">entity</span> <span class="s-Atom">type</span> <span class="s-Atom">name</span><span class="p">.</span> <span class="nv">This</span> <span class="s-Atom">can</span> <span class="s-Atom">be</span> <span class="s-Atom">overridden</span> <span class="s-Atom">using</span> <span class="nv">JPAEntityTypeMapType</span><span class="p">.</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;EDMEntityType&quot;</span>
+                    <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;1&quot;</span> <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span> <span class="s-Atom">/&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;EDMEntitySet&quot;</span>
+                    <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;1&quot;</span> <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span> <span class="s-Atom">/&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAAttributes&quot;</span>    <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPAAttributeMapType&quot;</span> <span class="s-Atom">/&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPARelationships&quot;</span> <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPARelationshipMapType&quot;</span> <span class="s-Atom">/&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;name&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;required&quot;</span> <span class="s-Atom">/&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:boolean&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;exclude&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;optional&quot;</span> <span class="s-Atom">default=</span><span class="s2">&quot;false&quot;</span> <span class="s-Atom">/&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEntityTypesMapType&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEntityType&quot;</span> <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPAEntityTypeMapType&quot;</span> 
+                    <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;unbounded&quot;</span> <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span> <span class="s-Atom">/&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEmbeddableTypeMapType&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span> <span class="nn">xml</span><span class="p">:</span><span class="s-Atom">lang=</span><span class="s2">&quot;en&quot;</span><span class="o">&gt;</span>
+                    <span class="nv">The</span> <span class="s-Atom">default</span> <span class="s-Atom">name</span> <span class="s-Atom">for</span> <span class="nv">EDM</span> <span class="s-Atom">complex</span> <span class="s-Atom">type</span> <span class="o">is</span> <span class="s-Atom">derived</span> <span class="s-Atom">from</span> <span class="nv">JPA</span> <span class="nv">Embeddable</span> <span class="s-Atom">type</span> <span class="s-Atom">name</span><span class="p">.</span> <span class="nv">This</span> <span class="s-Atom">can</span> <span class="s-Atom">be</span> <span class="s-Atom">overridden</span> <span class="s-Atom">using</span> <span class="nv">JPAEmbeddableTypeMapType</span><span class="p">.</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;EDMComplexType&quot;</span> 
+                    <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;1&quot;</span> <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span> <span class="s-Atom">/&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAAttributes&quot;</span> <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPAAttributeMapType&quot;</span> <span class="s-Atom">/&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;name&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;required&quot;</span> <span class="s-Atom">/&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:boolean&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;exclude&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;optional&quot;</span> 
+                <span class="s-Atom">default=</span><span class="s2">&quot;false&quot;</span> <span class="s-Atom">/&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEmbeddableTypesMapType&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEmbeddableType&quot;</span> <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPAEmbeddableTypeMapType&quot;</span> 
+                    <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;unbounded&quot;</span> <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span> <span class="s-Atom">/&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+
+        <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAPersistenceUnitMapType&quot;</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span> <span class="nn">xml</span><span class="p">:</span><span class="s-Atom">lang=</span><span class="s2">&quot;en&quot;</span><span class="o">&gt;</span>
+                    <span class="nv">By</span> <span class="s-Atom">default</span> <span class="nv">Java</span> <span class="nv">Persistence</span> <span class="nv">Unit</span> <span class="s-Atom">name</span> <span class="o">is</span> <span class="s-Atom">taken</span> <span class="s-Atom">as</span> <span class="nv">EDM</span> <span class="s-Atom">schema</span> <span class="s-Atom">name</span><span class="p">.</span> <span class="nv">This</span> <span class="s-Atom">can</span> <span class="s-Atom">be</span> <span class="s-Atom">overridden</span> <span class="s-Atom">using</span> <span class="nv">JPAPersistenceUnitMapType</span><span class="p">.</span>
+                <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">documentation</span><span class="o">&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">annotation</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;EDMSchemaNamespace&quot;</span> 
+                    <span class="s-Atom">maxOccurs=</span><span class="s2">&quot;1&quot;</span> <span class="s-Atom">minOccurs=</span><span class="s2">&quot;0&quot;</span> <span class="s-Atom">/&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEntityTypes&quot;</span> <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPAEntityTypesMapType&quot;</span> <span class="s-Atom">/&gt;</span>
+                <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">element</span> <span class="s-Atom">name=</span><span class="s2">&quot;JPAEmbeddableTypes&quot;</span> <span class="s-Atom">type=</span><span class="s2">&quot;tns:JPAEmbeddableTypesMapType&quot;</span> <span class="s-Atom">/&gt;</span>
+            <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">sequence</span><span class="o">&gt;</span>
+            <span class="o">&lt;</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">attribute</span> <span class="s-Atom">type=</span><span class="s2">&quot;xs:string&quot;</span> <span class="s-Atom">name=</span><span class="s2">&quot;name&quot;</span> <span class="s-Atom">use=</span><span class="s2">&quot;required&quot;</span> <span class="s-Atom">/&gt;</span>
+        <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">complexType</span><span class="o">&gt;</span>
+
+    <span class="s-Atom">&lt;/</span><span class="nn">xs</span><span class="p">:</span><span class="s-Atom">schema</span>
+</pre></div>
+
+
+<ol>
+<li>Store the JPA EDM Mapping model XML in <em>webapp</em> folder of Java web application. Make sure the file is placed under the applications root folder (relative to class path <em>../../WEB-INF/</em>classes) when the application is deployed on web server.</li>
+<li>
+<p>Pass the XML name into <em>ODataJPAContext</em>. In the method <em>initializeODataJPAContext</em>, pass the name of the XML document as shown below:</p>
+<div class="codehilite"><pre><span class="n">oDataJPAContext</span><span class="p">.</span><span class="n">setJPAEdmNameMappingModel</span><span class="p">(</span><span class="o">&lt;</span><span class="n">name</span> <span class="n">of</span> <span class="n">xml</span> <span class="n">file</span><span class="o">&gt;</span><span class="p">);</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>Compile, deploy and run the web application in a web server. A sample JPA EDM Mapping Model is provided as an example below:</p>
+</li>
+</ol>
+<h6 id="sample-jpa-edm-mapping-model">Sample JPA EDM Mapping Model</h6>
+<div class="codehilite"><pre>      <span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;</span> 
+    - <span class="nt">&lt;JPAEDMMappingModel</span> <span class="na">xmlns=</span><span class="s">&quot;http://www.apache.org/olingo/odata2/processor/api/jpa/model/mapping&quot;</span><span class="nt">&gt;</span>
+      - <span class="nt">&lt;PersistenceUnit</span> <span class="na">name=</span><span class="s">&quot;salesorderprocessing&quot;</span><span class="nt">&gt;</span>
+          <span class="nt">&lt;EDMSchemaNamespace&gt;</span>SalesOrderProcessing<span class="nt">&lt;/EDMSchemaNamespace&gt;</span> 
+        - <span class="nt">&lt;JPAEntityTypes&gt;</span>
+          - <span class="nt">&lt;JPAEntityType</span> <span class="na">name=</span><span class="s">&quot;SalesOrderHeader&quot;</span><span class="nt">&gt;</span>
+              <span class="nt">&lt;EDMEntityType&gt;</span>SalesOrder<span class="nt">&lt;/EDMEntityType&gt;</span> 
+              <span class="nt">&lt;EDMEntitySet&gt;</span>SalesOrders<span class="nt">&lt;/EDMEntitySet&gt;</span> 
+            - <span class="nt">&lt;JPAAttributes&gt;</span>
+                <span class="nt">&lt;JPAAttribute</span> <span class="na">name=</span><span class="s">&quot;soId&quot;</span><span class="nt">&gt;</span>ID<span class="nt">&lt;/JPAAttribute&gt;</span> 
+                <span class="nt">&lt;JPAAttribute</span> <span class="na">name=</span><span class="s">&quot;netAmount&quot;</span><span class="nt">&gt;</span>NetAmount<span class="nt">&lt;/JPAAttribute&gt;</span> 
+                <span class="nt">&lt;JPAAttribute</span> <span class="na">name=</span><span class="s">&quot;buyerAddress&quot;</span><span class="nt">&gt;</span>BuyerAddressInfo<span class="nt">&lt;/JPAAttribute&gt;</span> 
+              <span class="nt">&lt;/JPAAttributes&gt;</span>
+            - <span class="nt">&lt;JPARelationships&gt;</span>
+                <span class="nt">&lt;JPARelationship</span> <span class="na">name=</span><span class="s">&quot;salesOrderItem&quot;</span><span class="nt">&gt;</span>SalesOrderLineItemDetails<span class="nt">&lt;/JPARelationship&gt;</span> 
+                <span class="nt">&lt;JPARelationship</span> <span class="na">name=</span><span class="s">&quot;notes&quot;</span><span class="nt">&gt;</span>NotesDetails<span class="nt">&lt;/JPARelationship&gt;</span> 
+              <span class="nt">&lt;/JPARelationships&gt;</span>
+            <span class="nt">&lt;/JPAEntityType&gt;</span>
+          - <span class="nt">&lt;JPAEntityType</span> <span class="na">name=</span><span class="s">&quot;SalesOrderItem&quot;</span><span class="nt">&gt;</span>
+              <span class="nt">&lt;EDMEntityType&gt;</span>SalesOrderLineItem<span class="nt">&lt;/EDMEntityType&gt;</span> 
+              <span class="nt">&lt;EDMEntitySet&gt;</span>SalesOrderLineItems<span class="nt">&lt;/EDMEntitySet&gt;</span> 
+            - <span class="nt">&lt;JPAAttributes&gt;</span>
+                <span class="nt">&lt;JPAAttribute</span> <span class="na">name=</span><span class="s">&quot;liId&quot;</span><span class="nt">&gt;</span>ID<span class="nt">&lt;/JPAAttribute&gt;</span> 
+                <span class="nt">&lt;JPAAttribute</span> <span class="na">name=</span><span class="s">&quot;soId&quot;</span><span class="nt">&gt;</span>SalesOrderID<span class="nt">&lt;/JPAAttribute&gt;</span> 
+              <span class="nt">&lt;/JPAAttributes&gt;</span>
+            - <span class="nt">&lt;JPARelationships&gt;</span>
+                <span class="nt">&lt;JPARelationship</span> <span class="na">name=</span><span class="s">&quot;salesOrderHeader&quot;</span><span class="nt">&gt;</span>SalesOrderHeaderDetails<span class="nt">&lt;/JPARelationship&gt;</span> 
+                <span class="nt">&lt;JPARelationship</span> <span class="na">name=</span><span class="s">&quot;materials&quot;</span><span class="nt">&gt;</span>MaterialDetails<span class="nt">&lt;/JPARelationship&gt;</span> 
+              <span class="nt">&lt;/JPARelationships&gt;</span>
+            <span class="nt">&lt;/JPAEntityType&gt;</span>
+          <span class="nt">&lt;/JPAEntityTypes&gt;</span>
+        - <span class="nt">&lt;JPAEmbeddableTypes&gt;</span>
+          - <span class="nt">&lt;JPAEmbeddableType</span> <span class="na">name=</span><span class="s">&quot;Address&quot;</span><span class="nt">&gt;</span>
+              <span class="nt">&lt;EDMComplexType&gt;</span>AddressInfo<span class="nt">&lt;/EDMComplexType&gt;</span> 
+            - <span class="nt">&lt;JPAAttributes&gt;</span>
+                <span class="nt">&lt;JPAAttribute</span> <span class="na">name=</span><span class="s">&quot;houseNumber&quot;</span><span class="nt">&gt;</span>Number<span class="nt">&lt;/JPAAttribute&gt;</span> 
+                <span class="nt">&lt;JPAAttribute</span> <span class="na">name=</span><span class="s">&quot;streetName&quot;</span><span class="nt">&gt;</span>Street<span class="nt">&lt;/JPAAttribute&gt;</span> 
+              <span class="nt">&lt;/JPAAttributes&gt;</span>
+            <span class="nt">&lt;/JPAEmbeddableType&gt;</span>
+          <span class="nt">&lt;/JPAEmbeddableTypes&gt;</span>
+        <span class="nt">&lt;/PersistenceUnit&gt;</span>
+      <span class="nt">&lt;/JPAEDMMappingModel&gt;</span>
+</pre></div>
+            
+            
+            
+            
+            <hr>
+            
+            <footer>
+                <h5>Disclaimer</h5>
+                
+                <p>Apache Olingo™ is an effort undergoing incubation at The Apache Software Foundation (ASF) sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p>
+                
+                <p>&copy; Copyright © 2013 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. Apache and the Apache feather logo are trademarks of The Apache Software Foundation.</p>
+            </footer>
+            
+        </div> <!-- /container -->
+        
+        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
+        <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.10.1.min.js"><\/script>')</script>
+        
+        <script src="js/vendor/bootstrap.min.js"></script>
+        
+        <script src="js/main.js"></script>
+        
+        <script>
+            var _gaq=[['_setAccount','UA-XXXXX-X'],['_trackPageview']];
+            (function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
+             g.src='//www.google-analytics.com/ga.js';
+             s.parentNode.insertBefore(g,s)}(document,'script'));
+            </script>
+    </body>
+</html>