framework/webapp/entitydef/entitymodel.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
This file is subject to the terms and conditions defined in the
files 'LICENSE' and 'NOTICE', which are part of this source
code package.
-->
<entitymodel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entitymodel.xsd">
<!-- ========================================================= -->
<!-- ======================== Defaults ======================= -->
<!-- ========================================================= -->
<title>Entity of an Apache OFBiz Component</title>
<description>None</description>
<version>1.0</version>
<!-- ========================================================= -->
<!-- ======================== Data Model ===================== -->
<!-- The modules in this file are as follows: -->
<!-- - org.ofbiz.webapp.visit -->
<!-- - org.ofbiz.webapp.website -->
<!-- ========================================================= -->
<!-- ========================================================= -->
<!-- org.ofbiz.webapp.visit -->
<!-- ========================================================= -->
<entity entity-name="BrowserType"
package-name="org.ofbiz.webapp.visit"
title="Browser Type">
<field name="browserTypeId" type="id-ne"></field>
<field name="browserName" type="name"></field>
<field name="browserVersion" type="very-short"></field>
<prim-key field="browserTypeId"/>
</entity>
<entity entity-name="PlatformType"
package-name="org.ofbiz.webapp.visit"
title="Platform Type">
<field name="platformTypeId" type="id-ne"></field>
<field name="platformName" type="name"></field>
<field name="platformVersion" type="very-short"></field>
<prim-key field="platformTypeId"/>
</entity>
<entity entity-name="ProtocolType"
package-name="org.ofbiz.webapp.visit"
title="Protocol Type">
<field name="protocolTypeId" type="id-ne"></field>
<field name="protocolName" type="name"></field>
<prim-key field="protocolTypeId"/>
</entity>
<entity entity-name="ServerHit"
package-name="org.ofbiz.webapp.visit"
never-cache="true"
title="Server Hit">
<field name="visitId" type="id-ne"></field>
<field name="contentId" type="id-vlong-ne"><!-- This is called contentId but has nothing to do with the Content entity in many cases. The value can vary. For example for the ControlServlet request it is "${webapp-name}.${request-map-name}" --></field>
<field name="hitStartDateTime" type="date-time"></field>
<field name="hitTypeId" type="id-ne"></field>
<field name="numOfBytes" type="numeric"></field>
<field name="runningTimeMillis" type="numeric"></field>
<field name="userLoginId" type="id-vlong"></field>
<field name="statusId" type="id"></field>
<field name="requestUrl" type="url"></field>
<field name="referrerUrl" type="url"></field>
<field name="serverIpAddress" type="id"></field>
<field name="serverHostName" type="long-varchar"></field>
<prim-key field="visitId"/>
<prim-key field="contentId"/>
<prim-key field="hitStartDateTime"/>
<prim-key field="hitTypeId"/>
<relation type="one" fk-name="SERVER_HIT_SHTYP" rel-entity-name="ServerHitType">
<key-map field-name="hitTypeId"/>
</relation>
<relation type="one" fk-name="SERVER_HIT_VISIT" rel-entity-name="Visit">
<key-map field-name="visitId"/>
</relation>
<index name="SERVER_HIT_STRTIDX" unique="false"><!-- SCIPIO: 2018-08-28: name shortened to 18 char (NOTE: this index not in stock ofbiz) -->
<index-field name="hitTypeId"/>
<index-field name="hitStartDateTime"/>
</index>
</entity>
<entity entity-name="ServerHitBin" package-name="org.ofbiz.webapp.visit" never-cache="true" title="Server Hit Bin">
<field name="serverHitBinId" type="id-ne"></field>
<field name="contentId" type="id-vlong-ne"></field>
<field name="hitTypeId" type="id-ne"></field>
<field name="serverIpAddress" type="id"></field>
<field name="serverHostName" type="long-varchar"></field>
<field name="binStartDateTime" type="date-time"></field>
<field name="binEndDateTime" type="date-time"></field>
<field name="numberHits" type="numeric"></field>
<field name="totalTimeMillis" type="numeric"></field>
<field name="minTimeMillis" type="numeric"></field>
<field name="maxTimeMillis" type="numeric"></field>
<prim-key field="serverHitBinId"/>
<relation type="one" fk-name="SERVER_HBIN_TYPE" rel-entity-name="ServerHitType">
<key-map field-name="hitTypeId"/>
</relation>
<index name="HITBIN_DATE_HITS">
<index-field name="numberHits" />
<index-field name="binStartDateTime" />
<index-field name="binEndDateTime"/>
</index>
</entity>
<entity entity-name="ServerHitType"
package-name="org.ofbiz.webapp.visit"
default-resource-name="WebappEntityLabels"
title="Server Hit Bin">
<field name="hitTypeId" type="id"></field>
<field name="description" type="description"></field>
<prim-key field="hitTypeId"/>
</entity>
<entity entity-name="UserAgent"
package-name="org.ofbiz.webapp.visit"
title="User Agent">
<field name="userAgentId" type="id-ne"></field>
<field name="browserTypeId" type="id"></field>
<field name="platformTypeId" type="id"></field>
<field name="protocolTypeId" type="id"></field>
<field name="userAgentTypeId" type="id"></field>
<field name="userAgentMethodTypeId" type="id"></field>
<prim-key field="userAgentId"/>
<relation type="one" fk-name="UAGENT_BROWSER" rel-entity-name="BrowserType">
<key-map field-name="browserTypeId"/>
</relation>
<relation type="one" fk-name="UAGENT_PLATFORM" rel-entity-name="PlatformType">
<key-map field-name="platformTypeId"/>
</relation>
<relation type="one" fk-name="UAGENT_PROTOCOL" rel-entity-name="ProtocolType">
<key-map field-name="protocolTypeId"/>
</relation>
<relation type="one" fk-name="UAGENT_TYPE" rel-entity-name="UserAgentType">
<key-map field-name="userAgentTypeId"/>
</relation>
<relation type="one" fk-name="UAGENT_METHOD" rel-entity-name="UserAgentMethodType">
<key-map field-name="userAgentMethodTypeId"/>
</relation>
</entity>
<entity entity-name="UserAgentMethodType"
package-name="org.ofbiz.webapp.visit"
title="User Agent Method Type">
<field name="userAgentMethodTypeId" type="id-ne"></field>
<field name="description" type="description"></field>
<prim-key field="userAgentMethodTypeId"/>
</entity>
<entity entity-name="UserAgentType"
package-name="org.ofbiz.webapp.visit"
title="User Agent Type">
<field name="userAgentTypeId" type="id-ne"></field>
<field name="description" type="description"></field>
<prim-key field="userAgentTypeId"/>
</entity>
<entity entity-name="Visit" package-name="org.ofbiz.webapp.visit" never-cache="true" title="Visit"
sequence-bank-size="100">
<field name="visitId" type="id-ne"></field>
<field name="visitorId" type="id"></field>
<field name="userLoginId" type="id-vlong"></field>
<field name="userCreated" type="indicator"></field>
<field name="sessionId" type="id-vlong"></field>
<field name="serverIpAddress" type="id"></field>
<field name="serverHostName" type="long-varchar"></field>
<field name="webappName" type="short-varchar"></field>
<field name="initialLocale" type="short-varchar"></field>
<field name="initialRequest" type="url"></field>
<field name="initialReferrer" type="url"></field>
<field name="initialUserAgent" type="long-varchar"></field>
<field name="userAgentId" type="id"></field>
<field name="clientIpAddress" type="short-varchar"></field>
<field name="clientHostName" type="long-varchar"></field>
<field name="clientUser" type="short-varchar"></field>
<field name="clientIpIspName" type="short-varchar"></field>
<field name="clientIpPostalCode" type="short-varchar"></field>
<field name="cookie" type="short-varchar"></field>
<field name="fromDate" type="date-time"></field>
<field name="thruDate" type="date-time"></field>
<prim-key field="visitId"/>
<relation type="one" fk-name="VISIT_VISITOR" rel-entity-name="Visitor">
<key-map field-name="visitorId"/>
</relation>
<relation type="one" fk-name="VISIT_USER_AGNT" rel-entity-name="UserAgent">
<key-map field-name="userAgentId"/>
</relation>
<index name="VISIT_THRU_IDX" unique="true">
<index-field name="thruDate"/>
<index-field name="visitId"/>
</index>
<index name="VISIT_FROM_DATE" unique="true">
<index-field name="fromDate"/>
<index-field name="visitId"/>
</index>
</entity>
<entity entity-name="Visitor" package-name="org.ofbiz.webapp.visit" title="Visitor"
sequence-bank-size="100">
<field name="visitorId" type="id-ne"></field>
<field name="userLoginId" type="id-vlong"></field>
<prim-key field="visitorId"/>
<relation type="one" fk-name="VISITOR_USRLGN" rel-entity-name="UserLogin">
<key-map field-name="userLoginId"/>
</relation>
</entity>
<!-- ========================================================= -->
<!-- org.ofbiz.webapp.website -->
<!-- ========================================================= -->
<entity entity-name="WebPage"
package-name="org.ofbiz.webapp.website"
title="Web Page">
<field name="webPageId" type="id-ne"></field>
<field name="pageName" type="name"></field>
<field name="webSiteId" type="id"></field>
<prim-key field="webPageId"/>
<relation type="one" fk-name="WEB_PAGE_SITE" rel-entity-name="WebSite">
<key-map field-name="webSiteId"/>
</relation>
</entity>
<entity entity-name="WebSite"
package-name="org.ofbiz.webapp.website"
title="Web Site">
<field name="webSiteId" type="id-ne"></field>
<field name="siteName" type="name"></field>
<field name="httpHost" type="long-varchar"></field>
<field name="httpPort" type="very-short"></field>
<field name="httpsHost" type="long-varchar"></field>
<field name="httpsPort" type="very-short"></field>
<field name="enableHttps" type="indicator"></field>
<field name="standardContentPrefix" type="url"></field>
<field name="secureContentPrefix" type="url"></field>
<field name="cookieDomain" type="long-varchar"></field>
<field name="visualThemeSetId" type="id"></field>
<field name="visualThemeSelectorScript" type="long-varchar">
<description>SCIPIO: Location of a script tasked with selecting a visual theme at every new render</description>
</field>
<field name="visualThemeId" type="id">
<description>SCIPIO: Specific visual theme ID override; may be used to override the product store
visualThemeId when set (and WebSite is available)</description>
</field>
<field name="webappPathPrefix" type="url">
<description>SCIPIO: URL path prefix appended between the domain/port and the webapp context path in generated links,
for webapp and navigation links (@pageUrl); must start with slash but end with no slash. (added 2018-07-27)</description>
</field>
<field name="redirects" type="very-long"><description>A field for redirect data</description></field>
<field name="robots" type="very-long"><description>A field for robots.txt data</description></field>
<field name="prewarmcache" type="very-long"><description>A field for prewarm cache urls, line separated</description></field>
<prim-key field="webSiteId"/>
<relation type="one" fk-name="WEB_SITE_THEME_SET" rel-entity-name="VisualThemeSet">
<key-map field-name="visualThemeSetId"/>
</relation>
</entity>
</entitymodel>