<?xml version="1.0" encoding="ISO-8859-1"?>
<objectModel xmlns="http://www.codelutin.org/lutingenerator/objectModel" name="NeoGia" version="">
  <comment>OrderStatus has a association to StatusItem
it's not a specialization</comment>
  <comment>  Copyright (c) 2004, 2009 Neogia - www.neogia.org

       This UML schema must be considered as a program.
       This program is free software; you can redistribute it and/or modify
       it under the terms of the GNU General Public License as published by
       the Free Software Foundation; either version 2 of the License, or
       (at your option) any later version.

       All the program generated from this schema are so under the terms 
       of the GNU General Public License.


       This program is distributed in the hope that it will be useful,
       but WITHOUT ANY WARRANTY; without even the implied warranty of
       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
       GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
</comment>
  <comment>CVS Version
1.5 YTH Added service entities derived from statusItem 
             Added super class Enumeration 
             Added derivation for servicemgnt enumeration entities
1.6 OHE added tag drop-down dd-descriptionOnly and orderBy in class StatusItem and
             Enumeration
1.7 PGA Added class StatusInventoryItem, StatusInventory, StatusFacility and StatusStockItem
1.8 YTH Added classes ServiceRunContentPublication, ServiceRunContentType, TimeSheetBilling
1.9 YTH Added class ReceiptChargeBack
1.10 OHE Change cvs type to binary
1.11 OHE to be synchro with cvs version
1.12 YTH Added TimeReceiptReportStatus class
1.13 YTH Forgot stereotypes for TimeReceiptReportStatus
1.14 PGA added class StockEventType
1.15 PGA added class StockItemType NfacilityType, InventoryType
1.16 PGA Correction of poseidon bugs ...
1.17 PGA added class StockMgntOutMethod
1.18 PGA create new package "inventory"
1.19 OHE added tag cache for Status and Enumeration
1.20 OHE added Status and Enum class from manufacturing
1.21 OHE added RunComponentStatus Class
1.22 OHE added Uom and Currency_Measure entity
1.23 OHE added PrimaryKey to Uom and shortName to Currency_Measure
1.24 OHE correction on ProductPrice package
1.25 YTH Added datasource package
1.26 YTH Added ContentMetaData entities associated with datasource
1.27 YTH Added some forgot status and enum entities form Content
1.28 OHE Added Marital enum for Party Person entity
1.29 YTH Added NoteData entity (will be used soon to generate automatic forms for notes)
1.30 YTH Moved association with Ticket to CustRequest
1.31 OHE added stereotype extern and entity for CustRequestSeverity
1.32 OHE added all the accounting entities associated with enum and status
1.33 OHE added PartyNote association, PartyDataSource association
                 change navigability (in ofbiz it's always double !)
                  added geo and PartyBoundary
1.34 OHE added OrderStatus
1.35 TBA added SalesChannel EmailType
1.36 OHE added QuoteStatus, InvoiceStatus, BusinessObjectType
1.37 NMA added relation between Uom and Invoice
1.38 OHE added ProdReqMethod from product
1.39 GBU added ArticleStatus from WebSite
1.40 GBU added UomType, UomConvesrion and UomConversionDated
1.41 OHE added agreement Assoc
1.42 NMA added QualityRequestType and QualityRequestStatus relation
1.43 OHE added tag uniqueNameAttribute for UOM entities 
1.44 PGA added entitie UnitCostMngType
1.45 YTH Added RequirementStatus entity</comment>
  <comment>UOM &amp; Currency</comment>
  <comment>ofbizNeogia Version
Version number must be equal to cvs version for controle purpose
1.1  PGO copy from neogia
1.2  OHE added agreement association to currency and change  association between
        invoice from UOM to currency, association orderStatus to status, orderHeaderNote,
        OrderItemStatus, synchronize enum and status attribute with ofbiz
1.3  OHE added association between OrderItem and Uom
1.4 NMA added association between SimpleSalesTaxLookup and Geo
1.5 NMA correct forget extern tag on OrderHeader class
1.6 YTH Added RequirementStatus entity
1.7 PGA added orderReturn Package
1.8 OHE added Party enum and created AttrName entities
1.9 OHE correction in RoleTypeAttr, ExtentAttribute is a composition
1.10 PGO fix relationTitle of compositions between Uom and UomConversion
               fix relation Title of compositions between Uom and UomConversionDated
1.11 OHE attribute name correction and added entitySelect detail attribute in extendAttribute entity
1.12 OHE Type correction remove neogia.common.String
                  Added Packaging entity to stock unit autorize (and conversion factor) for specific product 
1.13 OHE Added GeoType and detail Geo entity, added FacilityCarrierShipment
                 added schedule subComponents for recurenceRule
1.14 OHE added assoc between Geo and NFacility for location
ofbizNeogia Version
Version number must be equal to cvs version for controle purpose
1.1  PGO copy from neogia
1.2  OHE added agreement association to currency and change  association between
        invoice from UOM to currency, association orderStatus to status, orderHeaderNote,
        OrderItemStatus, synchronize enum and status attribute with ofbiz
1.3  OHE added association between OrderItem and Uom
1.4 NMA added association between SimpleSalesTaxLookup and Geo
1.5 NMA correct forget extern tag on OrderHeader class
1.6 YTH Added RequirementStatus entity
1.7 PGA added orderReturn Package
1.8 OHE added Party enum and created AttrName entities
1.9 OHE correction in RoleTypeAttr, ExtentAttribute is a composition
1.10 PGO fix relationTitle of compositions between Uom and UomConversion
               fix relation Title of compositions between Uom and UomConversionDated
1.11 OHE attribute name correction and added entitySelect detail attribute in extendAttribute entity
1.12 OHE Type correction remove neogia.common.String
                  Added Packaging entity to stock unit autorize (and conversion factor) for specific product 
1.13 OHE Added GeoType and detail Geo entity, added FacilityCarrierShipment
                 added schedule subComponents for recurenceRule
1.14 OHE added assoc between Geo and NFacility for location
1.15 PGA added requirement entity
                 replace quoteItem by requirement in subcontracting  and re-order process
1.16 OHE remove attributeName between Uom and OrderItem (like in the order model)
1.17 OHE add tag gui description and idName for RecurrenceRule entity
1.18 OHE add PointsOfTitleTransfert (enum derivation) and TaxAuthority (Geo composition)
                add common CustomMethod entity and its derivation ServiceValidIntegRule
                correction on package for two accounting entities
                add the description attribute in recurenceRule entity
1.19 PGO add application logging modelization in common.log package
                add entities ApplicationLog, ApplicationLogLevel and ApplicationLogCode
1.20 PGO add MrpRunLog extern entity that inherits from ApplicationLog
1.22 SGX add specialization between Enumeration and ProductPriceItemType
1.23 NMA add AcctgImportLog entities on log model. Link it with ApplicaitonLog
1.24 NMA add PaymentMethodTypeService entities and link it with CustomMethod
1.25 OHE add CheckMeasure association and CheckMeasureType derivation
1.27 PGA fix dataSourceId spelling
1.28 OHE add CheckMeasureGroup entity
1.29 OHE add Party association to applicationLog and Menu first version
1.30 MHA change the entity named PermLogStatusChg into ApplicationLogPerm
                  change the entity named PartyCheckLog into PartyAppLogPerm
                  modification of the relation between ApplicationLogPerm and PartyAppLogPerm into 
                  a composition relation ( before it was an association 1-*  )
1.31 MHA add the value dd-descriptionOnly in the tag gui of the entity ApplicationLogCode
1.32 MHA add attribute runId (String, ofbizentitytype id ) in ApplicationLog
                  add association (*-&gt;1) betwwen ApplicationLog and Party ,NFacility and Product
                  add attibute uiLabel (String ) , url (String ofbizentitytype value ) , entity (String ) in 
                  ApplicationLogCode
1.33 OHE add GeoAssoc entity and GeoAssocType
1.34 PGO set discriminatorValue tag on Currency_Measure because shortName doesn't match existing 
                discriminator value
1.35 PGO rename enum package to enumeration
1.36 PGO remove MrpRunLog specialization
1.37 GLA  simplify the Menu Management Diagrams by removing the security, change cardinalities
         GLA add the UserLogin and the Security and Condition Gestion
1.38 OHE change entity Name for Menu to MenuMain
1.39 GLA cvs branch copy
1.40 GLA add multiple conditions gestion
1.41 OHE detail MenuItemCondition to be similar with ofbiz MenuCondition xsd, change some names
1.42 PGO rename 'require' attribute of ExtentAttribute to 'required' because it's a reserved keyword 
          in mysql
1.43 YTH Added association between Project entity and DataSource entity
1.44 PGO add ofbizEntityType tag to Datasource and DatasourceType attributes
1.45 YTH add association between Project and Note
1.46 PGO add ofbizEntityType tag to Note entity
1.47 NMA add WRunAssocType entity in association with enumeration
1.48 NMA add ProductReviewStatus entity in association with StatusItem
1.49 OHE for CBO add some tag to generate menu GUI management
1.50 NMA add status for integrationRun
1.51 NMA modify BusinessObjectType
1.52 NMA revert modification on  BusinessObjectType
1.53 NMA add entity AcctgTrTyBonAssocType from accounting diagram</comment>
  <comment>Recurrence rule &amp; info</comment>
  <comment>ArgoUml diagram, ofbizNeogia version,
it must be equal to cvs version for control purpose
1.1  OHE Migration to argoUml, review diagram with generation to avoid to have modifications other than generator 
              remove sequenceId from orderBy tag for DataSource entity
1.2  JNU create diagram UserLogin
1.1 First commit replacing zuml file
1.2 Addind StatusValidChange Entity</comment>
  <class name="StatusStockEvent" extern="true" package="org.neogia.facility.stockevent.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="StockEventType" extern="true" package="org.neogia.facility.stockevent.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="StatusStockItem" extern="true" package="org.neogia.facility.location.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="StatusFacility" extern="true" package="org.neogia.facility.location.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="NFacilityType" extern="true" package="org.neogia.facility.location.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="StockMgntOutMethod" extern="true" package="org.neogia.facility.location.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="Facility" extern="true" package="org.neogia.facility.location.entities">
    <stereotype name="entity"/>
    <attribute name="location" visibility="protected" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="InventoryType" extern="true" package="org.neogia.facility.inventory.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="StatusInventory" extern="true" package="org.neogia.facility.inventory.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="StatusInventoryItem" extern="true" package="org.neogia.facility.inventory.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="StatusItem" package="org.neogia.common.status.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="drop-down, dd-descriptionOnly"/>
    <tagValue name="orderBy" value="sequenceId"/>
    <tagValue name="cache" value="true"/>
    <attribute name="statusId" associationType="composite" visibility="protected" type="java.lang.String" minMultiplicity="1" maxMultiplicity="1">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="idName"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="description"/>
    </attribute>
    <attribute name="statusCode" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="sequencedId" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.order.order.entities.OrderStatus" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.status.entities.StatusValidChange" reverseAttribute="Main" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.status.entities.StatusValidChange" reverseAttribute="To" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="StatusValidChange" package="org.neogia.common.status.entities">
    <stereotype name="entity"/>
    <tagValue name="alreadyExistingOfbizEntities" value="true"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="Main" visibility="public" type="org.neogia.common.status.entities.StatusItem" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="ofbizAttributeName" value="statusId"/>
    </attribute>
    <attribute name="To" visibility="public" type="org.neogia.common.status.entities.StatusItem" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="Enumeration" package="org.neogia.common.enumeration.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="drop-down, dd-descriptionOnly"/>
    <tagValue name="orderBy" value="sequenceId"/>
    <tagValue name="cache" value="true"/>
    <attribute name="enumId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="mandatory" value="true"/>
      <tagValue name="gui" value="idName, indexed"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="mandatory" value="true"/>
      <tagValue name="gui" value="indexed, description"/>
    </attribute>
    <attribute name="enumCode" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="mandatory" value="true"/>
      <tagValue name="gui" value="indexed"/>
    </attribute>
    <attribute name="sequenceId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="mandatory" value="true"/>
      <tagValue name="gui" value="indexed"/>
    </attribute>
  </class>
  <class name="ExtentAttribute" package="org.neogia.common.enumeration.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="drop-down"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <tagValue name="cache" value="true"/>
    <tagValue name="orderBy" value="attrName"/>
    <attribute name="attrName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="idName"/>
      <tagValue name="ofbizEntityType" value="id-long-ne"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="validation" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="documentation" value="&lt;p&gt;Use to give a service Name wich valid the attribute&lt;/p&gt;"/>
    </attribute>
    <attribute name="entitySelect" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="entitySelectPk" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="entitySelectDescription" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="entityConstraintName" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="entityConstraintValue" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="required" associationType="composite" visibility="protected" type="boolean"/>
    <attribute visibility="public" type="org.neogia.common.enumeration.entities.ExtAttrType" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.party.party.entities.RoleTypeAttr" reverseAttribute="" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.party.party.entities.PartyRoleAttr" reverseAttribute="" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="ExtAttrType" package="org.neogia.common.enumeration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
    <attribute name="STRING" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="BOOLEAN" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="INT" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="ENTITYSELECT" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.enumeration.entities.ExtentAttribute" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="Uom" package="org.neogia.common.uom.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="uomId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="abbreviation" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="idName"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.UomType" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="uomConversionTo" visibility="public" type="org.neogia.common.uom.entities.UomConversion" reverseAttribute="uomIdFrom" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="Main"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.uom.entities.UomConversion" reverseAttribute="uomIdTo" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="ConvTo"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.uom.entities.UomConversionDated" reverseAttribute="uomIdFrom" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="DatedConvTo"/>
    </attribute>
    <attribute name="uomConversionDatedTo" visibility="public" type="org.neogia.common.uom.entities.UomConversionDated" reverseAttribute="uomIdTo" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="DatedMain"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.accounting.invoice.entities.InvoiceItem" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.accounting.invoice.entities.InvoiceTerm" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.order.order.entities.OrderItem" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Packaging" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.common.uom.entities.PackagingConversion" type="org.neogia.common.uom.entities.Packaging" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.order.orderReturn.entities.ReturnHeader" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.quality.checkMeasure.entities.CheckMeasure" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="Currency_Measure" package="org.neogia.common.uom.entities">
    <stereotype name="entity"/>
    <tagValue name="shortName" value="cur"/>
    <tagValue name="discriminatorValue" value="CURRENCY_MEASURE"/>
    <superclass name="org.neogia.common.uom.entities.Uom" discriminator="uomTypeId"/>
    <attribute visibility="public" type="org.neogia.product.price.entities.ProductPrice" reverseAttribute="" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.accounting.invoice.entities.Invoice" reverseAttribute="currencyUomId" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.accounting.payment.entities.Payment" reverseAttribute="currencyUomId" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.party.agreement.entities.AgreementItem" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="UomType" package="org.neogia.common.uom.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="uomTypeId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute name="childUomType" visibility="protected" type="org.neogia.common.uom.entities.UomType" reverseAttribute="parentUomType" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute name="parentUomType" visibility="protected" type="org.neogia.common.uom.entities.UomType" reverseAttribute="childUomType" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="UomConversion" package="org.neogia.common.uom.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="conversionFactor" associationType="composite" visibility="protected" type="double"/>
    <attribute name="uomIdFrom" visibility="protected" type="org.neogia.common.uom.entities.Uom" reverseAttribute="uomConversionTo" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="Main"/>
    </attribute>
    <attribute name="uomIdTo" visibility="protected" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="ConvTo"/>
    </attribute>
  </class>
  <class name="UomConversionDated" package="org.neogia.common.uom.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="fromDate" associationType="composite" visibility="protected" type="java.util.Date">
      <tagValue name="primaryKey" value="true"/>
    </attribute>
    <attribute name="thruDate" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute name="conversionFactor" associationType="composite" visibility="protected" type="double"/>
    <attribute name="uomIdFrom" visibility="protected" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="DatedConvTo"/>
    </attribute>
    <attribute name="uomIdTo" visibility="protected" type="org.neogia.common.uom.entities.Uom" reverseAttribute="uomConversionDatedTo" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="DatedMain"/>
    </attribute>
  </class>
  <class name="Packaging" package="org.neogia.common.uom.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <tagValue name="gui" value="show"/>
    <attribute name="packagingId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="idName"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.common.uom.entities.PackagingConversion" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.product.product.entities.Product" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <associationClass name="PackagingConversion" package="org.neogia.common.uom.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.common.uom.entities.Packaging" attribute=""/>
    <participant name="org.neogia.common.uom.entities.Uom" attribute=""/>
    <attribute name="conversionFactor" associationType="composite" visibility="protected" type="double"/>
  </associationClass>
  <class name="DataSource" package="org.neogia.common.datasource.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="drop-down, dd-descriptionOnly, edit,list"/>
    <tagValue name="cache" value="true"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="dataSourceId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="idName,indexed,list,drop-down"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="indexed,drop-down,list"/>
      <tagValue name="ofbizEntityType" value="description"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.datasource.entities.DataSourceType" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.content.content.entities.Content" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.manufacturing.project.entities.Project" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.content.content.entities.ContentMetaData" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.party.party.entities.PartyDataSource" type="org.neogia.party.party.entities.Party" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="DataSourceType" package="org.neogia.common.datasource.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="list,edit,lookup"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="datasourceTypeId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="indexed,list,lookup,idName"/>
      <tagValue name="ofbizEntityType" value="id"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="indexed,list,lookup"/>
      <tagValue name="ofbizEntityType" value="description"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.datasource.entities.DataSource" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="NoteData" package="org.neogia.common.note.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <tagValue name="gui" value="list,edit,show,lookup"/>
    <attribute name="noteId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="idName,indexed,list,listLookup"/>
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="noteName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="description,indexed,list,listLookup"/>
      <tagValue name="mandatory" value="true"/>
    </attribute>
    <attribute name="noteInfo" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="mandatory" value="true"/>
      <tagValue name="gui" value="list"/>
      <tagValue name="ofbizEntityType" value="very-long"/>
    </attribute>
    <attribute name="noteParty" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="indexed,calculated,list"/>
      <tagValue name="mandatory" value="true"/>
    </attribute>
    <attribute name="noteDateTime" associationType="composite" visibility="protected" type="java.util.Date">
      <tagValue name="mandatory" value="true"/>
      <tagValue name="gui" value="indexed,calculated,list"/>
    </attribute>
    <attribute visibility="public" associationClass="org.neogia.manufacturing.project.entities.ProjectNote" type="org.neogia.manufacturing.project.entities.Project" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.party.party.entities.PartyNote" type="org.neogia.party.party.entities.Party" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.accounting.invoice.entities.InvoiceNote" type="org.neogia.accounting.invoice.entities.Invoice" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.order.order.entities.OrderHeaderNote" type="org.neogia.order.order.entities.OrderHeader" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="Geo" package="org.neogia.common.geo.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="geoId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="idName"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="geoName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="description"/>
    </attribute>
    <attribute name="geoCode" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="geoSecCode" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="abbreviation" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.geo.entities.GeoType" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.shipment.shipment.entities.FacilityCarrierShipment" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.facility.location.entities.Facility" reverseAttribute="location" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.accounting.tax.entities.TaxAuthority" reverseAttribute="taxAuthGeo" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.geo.entities.GeoAssoc" reverseAttribute="" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute name="to" visibility="protected" type="org.neogia.common.geo.entities.GeoAssoc" reverseAttribute="geoTo" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.party.contact.entities.PostalAddressBoundary" type="org.neogia.party.contact.entities.PostalAddress" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.party.agreement.entities.AgreementGeographicalApplic" type="org.neogia.party.agreement.entities.AgreementItem" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.order.order.entities.SimpleSalesTaxLookup" reverseAttribute="countryGeoId" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.order.order.entities.SimpleSalesTaxLookup" reverseAttribute="stateProvinceGeoId" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
  </class>
  <class name="GeoType" package="org.neogia.common.geo.entities">
    <stereotype name="entity"/>
    <attribute name="geoTypeId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="GeoAssoc" package="org.neogia.common.geo.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="geoTo" visibility="protected" type="org.neogia.common.geo.entities.Geo" reverseAttribute="to" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="ofbizAttributeName" value="geoIdTo"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.geo.entities.GeoAssocType" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="GeoAssocType" package="org.neogia.common.geo.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="geoAssocTypeId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="idName"/>
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.geo.entities.GeoAssoc" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="RecurrenceRule" package="org.neogia.common.schedule.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <tagValue name="cache" value="true"/>
    <attribute name="recurrenceRuleId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
      <tagValue name="gui" value="idName"/>
    </attribute>
    <attribute name="frequency" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="untilDateTime" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute name="countNumber" associationType="composite" visibility="protected" type="long"/>
    <attribute name="intervalNumber" associationType="composite" visibility="protected" type="long"/>
    <attribute name="bySecondList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="byMinuteList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="byHourList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="byDayList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="byMonthDayList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="byYearDayList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="byWeekNoList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="byMonthList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="bySetPosList" associationType="composite" visibility="protected" type="long"/>
    <attribute name="weekStart" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="xName" associationType="composite" visibility="protected" type="long"/>
    <attribute name="SECONDLY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="MINUTELY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="HOURLY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="DAILY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="WEEKLY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="MONTHLY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="YEARLY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.RecurrenceInfo" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute name="exceptionInfos" visibility="protected" type="org.neogia.common.schedule.entities.RecurrenceInfo" reverseAttribute="exceptionRule" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="RecurrenceInfo" package="org.neogia.common.schedule.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <tagValue name="cache" value="true"/>
    <attribute name="recurrenceInfoId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="startDateTime" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute name="exceptionDateTimes" associationType="composite" visibility="protected" type="long"/>
    <attribute name="recurrenceDateTimes" associationType="composite" visibility="protected" type="long"/>
    <attribute name="recurrenceCount" associationType="composite" visibility="protected" type="long"/>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.RecurrenceRule" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="exceptionRule" visibility="protected" type="org.neogia.common.schedule.entities.RecurrenceRule" reverseAttribute="exceptionInfos" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="ofbizAttributeName" value="exceptionRuleId"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.JobSandbox" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="JobSandbox" package="org.neogia.common.schedule.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <attribute name="jobId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="jobName" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="runTime" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute name="poolId" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="statusId" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="serviceName" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="loaderName" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="maxRetry" associationType="composite" visibility="protected" type="long"/>
    <attribute name="runAsUser" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="runByInstanceId" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="startDateTime" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute name="finishDateTime" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute name="cancelDateTime" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.RecurrenceInfo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="parentJobId" visibility="protected" type="org.neogia.common.schedule.entities.JobSandbox" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.JobSandbox" reverseAttribute="parentJobId" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.JobSandbox" reverseAttribute="previousJobId" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
    <attribute name="previousJobId" visibility="protected" type="org.neogia.common.schedule.entities.JobSandbox" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.RuntimeData" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="RuntimeData" package="org.neogia.common.schedule.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value=""/>
    <attribute name="runtimeDataId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="runtimeInfo" associationType="composite" visibility="protected" type="long"/>
    <attribute visibility="public" type="org.neogia.common.schedule.entities.JobSandbox" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="CustomMethod" package="org.neogia.common.method.entities">
    <stereotype name="entity"/>
    <tagValue name="uniqueNameAttribute" value="true"/>
    <tagValue name="gui" value="drop-down, dd-descriptionOnly"/>
    <tagValue name="cache" value="true"/>
    <attribute name="customMethodId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="idName"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="customMethodName" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
  </class>
  <class name="ApplicationLog" package="org.neogia.common.log.entities">
    <stereotype name="entity"/>
    <attribute name="idName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="logMessage" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="ofbizEntityType" value="description"/>
    </attribute>
    <attribute name="logModule" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="ofbizEntityType" value="description"/>
    </attribute>
    <attribute name="logTime" associationType="composite" visibility="protected" type="java.util.Date"/>
    <attribute name="runId" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="ofbizEntityType" value="id"/>
    </attribute>
    <attribute name="logLevel" visibility="protected" type="org.neogia.common.log.entities.ApplicationLogLevel" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="logCode" visibility="protected" type="org.neogia.common.log.entities.ApplicationLogCode" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="status" visibility="protected" type="org.neogia.common.log.entities.ApplicationLogStatus" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.product.product.entities.Product" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.facility.location.entities.Facility" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.party.party.entities.Party" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="ApplicationLogLevel" package="org.neogia.common.log.entities">
    <stereotype name="entity"/>
    <stereotype name="enumeration"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
    <attribute name="FATAL" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="APPLL_FATAL"/>
    </attribute>
    <attribute name="ERROR" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="APPLL_ERROR"/>
    </attribute>
    <attribute name="WARNING" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="APPLL_WARNING"/>
    </attribute>
    <attribute name="ALERT" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="APPLL_ALERT"/>
    </attribute>
    <attribute name="INFORMATION" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="APPLL_INFO"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.log.entities.ApplicationLog" reverseAttribute="logLevel" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
  </class>
  <class name="ApplicationLogCode" package="org.neogia.common.log.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="edit, list, drop-down, dd-descriptionOnly"/>
    <attribute name="idName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="ofbizEntityType" value="id-ne"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="hasTable" associationType="composite" visibility="protected" type="boolean"/>
    <attribute name="entity" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="uiLabel" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="url" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="ofbizEntityType" value="value"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.log.entities.ApplicationLog" reverseAttribute="logCode" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.common.log.entities.PartyAppLogPerm" type="org.neogia.party.party.entities.Party" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="gui" value="editAssoc"/>
    </attribute>
  </class>
  <class name="ApplicationLogStatus" package="org.neogia.common.log.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
    <attribute name="PENDING" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="ALS_PENDING"/>
    </attribute>
    <attribute name="READ" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="ALS_READ"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.log.entities.ApplicationLog" reverseAttribute="status" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
  </class>
  <class name="ApplicationLogPerm" package="org.neogia.common.log.entities">
    <stereotype name="entity"/>
    <stereotype name="enumeration"/>
    <tagValue name="gui " value="drop-down"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
    <attribute name="VIEW" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="APPLP_VIEW"/>
    </attribute>
    <attribute name="CHANGE" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String">
      <tagValue name="staticValue" value="APPLP_CHANGE"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.log.entities.PartyAppLogPerm" reverseAttribute="" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="string" package="org.neogia.common.log.entities"/>
  <associationClass name="PartyAppLogPerm" package="org.neogia.common.log.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="edit"/>
    <participant name="org.neogia.party.party.entities.Party" attribute=""/>
    <participant name="org.neogia.common.log.entities.ApplicationLogCode" attribute=""/>
    <attribute visibility="public" type="org.neogia.common.log.entities.ApplicationLogPerm" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </associationClass>
  <class name="MenuItem" package="org.neogia.common.menu.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="list, edit, lookup, show"/>
    <attribute name="sequenceNum" associationType="composite" visibility="protected" type="int">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="indexed"/>
    </attribute>
    <attribute name="title" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuMain" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.WidgetScreen" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="subMenu" visibility="protected" type="org.neogia.common.menu.entities.MenuMain" reverseAttribute="upMenuItems" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuItemCondition" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="MenuMain" package="org.neogia.common.menu.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="list, edit, lookup, show"/>
    <attribute name="idName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="indexed"/>
    </attribute>
    <attribute name="Description" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="indexed"/>
    </attribute>
    <attribute name="target" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuItem" reverseAttribute="" associationType="composite" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="gui" value="editAssoc"/>
    </attribute>
    <attribute name="upMenuItems" visibility="protected" type="org.neogia.common.menu.entities.MenuItem" reverseAttribute="subMenu" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="gui" value="editAssoc, listAssoc"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.party.party.entities.UserLogin" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="WidgetScreen" package="org.neogia.common.menu.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="list, edit, lookup, show"/>
    <attribute name="idName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
      <tagValue name="gui" value="indexed"/>
    </attribute>
    <attribute name="description" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="indexed"/>
    </attribute>
    <attribute name="target" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="gui" value="indexed"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuItem" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="MenuItemCondition" package="org.neogia.common.menu.entities">
    <stereotype name="entity"/>
    <tagValue name="gui" value="list, edit"/>
    <tagValue name="shortName" value="condition"/>
    <attribute name="idName" associationType="composite" visibility="protected" type="java.lang.String">
      <tagValue name="primaryKey" value="true"/>
    </attribute>
    <attribute name="permission" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="permAction" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="fieldName" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="cValue" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="methode" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="methodeClass" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="toField" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute name="cFormat" associationType="composite" visibility="protected" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuConditionType" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="parent" visibility="protected" type="org.neogia.common.menu.entities.MenuItemCondition" reverseAttribute="childs" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering=""/>
    <attribute name="childs" visibility="protected" type="org.neogia.common.menu.entities.MenuItemCondition" reverseAttribute="parent" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering=""/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuItem" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.CompareOperator" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="compOp"/>
    </attribute>
    <attribute visibility="public" type="org.neogia.common.menu.entities.CompareType" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered">
      <tagValue name="relationTitle" value="compTyp"/>
    </attribute>
  </class>
  <class name="MenuConditionType" package="org.neogia.common.menu.entities">
    <stereotype name="entity"/>
    <stereotype name="enumeration"/>
    <tagValue name="gui" value="list, edit"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
    <attribute name="AND" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="XOR" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="OR" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="NOT" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="PERMISSION" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="VALIDATE_METHODE" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="COMPARE" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="COMPARE_FIELD" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="REGEXP" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="EMPTY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuItemCondition" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
  </class>
  <class name="CompareOperator" package="org.neogia.common.menu.entities">
    <stereotype name="entity"/>
    <stereotype name="enumeration"/>
    <tagValue name="shortName" value="cOperator"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
    <attribute name="IS_NULL" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="IS_NOT_NULL" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="IS_EMPTY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="IS_NOT_EMPTY" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="CONTAINS" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="EQUALS" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="NOT_EQUALS" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="LESS" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="LESS_EQUALS" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="GREATER" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="GREATER_EQUALS" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute visibility="protected" type="org.neogia.common.menu.entities.MenuItemCondition" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
  </class>
  <class name="CompareType" package="org.neogia.common.menu.entities">
    <stereotype name="entity"/>
    <stereotype name="enumeration"/>
    <tagValue name="shortName" value="cType"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
    <attribute name="PLAINSTRING" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="STRING" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="DOUBLE" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="FLOAT" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="LONG" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="INTEGER" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="BIGDECIMAL" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="DATE" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="TIME" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="TIMESTAMP" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="BOOLEAN" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute name="OBJECT" associationType="composite" visibility="public" static="true" final="true" type="java.lang.String"/>
    <attribute visibility="protected" type="org.neogia.common.menu.entities.MenuItemCondition" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="0" maxMultiplicity="-1" navigable="false" ordering="unordered"/>
  </class>
  <class name="TicketStatus" extern="true" package="org.neogia.servicemgnt.ticket.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="TicketSeverity" extern="true" package="org.neogia.servicemgnt.ticket.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="TicketPriority" extern="true" package="org.neogia.servicemgnt.ticket.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ReceiptStatus" extern="true" package="org.neogia.servicemgnt.receipt.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="ReceiptChargeBack" extern="true" package="org.neogia.servicemgnt.receipt.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="TimeReceiptReportStatus" extern="true" package="org.neogia.servicemgnt.receipt.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="TimeSheetStatus" extern="true" package="org.neogia.servicemgnt.timeSheet.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="TimeSheetBilling" extern="true" package="org.neogia.servicemgnt.timeSheet.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ServiceRunContPublication" extern="true" package="org.neogia.servicemgnt.service.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ServiceRunContentType" extern="true" package="org.neogia.servicemgnt.service.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="CustRequestPriority" extern="true" package="org.neogia.servicemgnt.request.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="CustRequestSeverity" extern="true" package="org.neogia.servicemgnt.request.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ProjectStatus" extern="true" package="org.neogia.manufacturing.project.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypedId"/>
  </class>
  <class name="Project" extern="true" package="org.neogia.manufacturing.project.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.datasource.entities.DataSource" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.manufacturing.project.entities.ProjectNote" type="org.neogia.common.note.entities.NoteData" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="WRunAssocType" extern="true" package="org.neogia.manufacturing.project.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <associationClass name="ProjectNote" extern="true" package="org.neogia.manufacturing.project.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.common.note.entities.NoteData" attribute=""/>
    <participant name="org.neogia.manufacturing.project.entities.Project" attribute=""/>
  </associationClass>
  <class name="MrpRunStatus" extern="true" package="org.neogia.manufacturing.planning.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="RunStatus" extern="true" package="org.neogia.manufacturing.jobshopmgt.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="RunComponentStatus" extern="true" package="org.neogia.manufacturing.jobshopmgt.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="CostCenterType" extern="true" package="org.neogia.manufacturing.techdata.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="TaskType" extern="true" package="org.neogia.manufacturing.techdata.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ProductPrice" extern="true" package="org.neogia.product.price.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Currency_Measure" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="ProductPriceItemType" extern="true" package="org.neogia.product.price.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ProdReqMethod" extern="true" package="org.neogia.product.product.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="Product" extern="true" package="org.neogia.product.product.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Packaging" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="ProductReviewStatus" extern="true" package="org.neogia.product.product.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator=""/>
  </class>
  <class name="UnitCostMngType" extern="true" package="org.neogia.product.store.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="Content" extern="true" package="org.neogia.content.content.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.datasource.entities.DataSource" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.content.content.entities.ContentMetaData" type="org.neogia.content.content.entities.MetaDataPredicate" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="MetaDataPredicate" extern="true" package="org.neogia.content.content.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" associationClass="org.neogia.content.content.entities.ContentMetaData" type="org.neogia.content.content.entities.Content" reverseAttribute="" reverseMaxMultiplicity="1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="ContentStatus" extern="true" package="org.neogia.content.content.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="ContentOperationStatus" extern="true" package="org.neogia.content.content.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <associationClass name="ContentMetaData" extern="true" package="org.neogia.content.content.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.content.content.entities.MetaDataPredicate" attribute=""/>
    <participant name="org.neogia.content.content.entities.Content" attribute=""/>
    <attribute visibility="public" type="org.neogia.common.datasource.entities.DataSource" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </associationClass>
  <class name="Marital" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="Party" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" associationClass="org.neogia.common.log.entities.PartyAppLogPerm" type="org.neogia.common.log.entities.ApplicationLogCode" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered">
      <tagValue name="gui" value="editAssoc"/>
    </attribute>
    <attribute visibility="public" associationClass="org.neogia.party.party.entities.PartyNote" type="org.neogia.common.note.entities.NoteData" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.party.party.entities.PartyDataSource" type="org.neogia.common.datasource.entities.DataSource" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="CommercialSign" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="CommercialName" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="JuridicClassification" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="NafType" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="Nes" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="RoleTypeAttr" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.enumeration.entities.ExtentAttribute" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="PartyRoleAttr" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.enumeration.entities.ExtentAttribute" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="UserLogin" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.menu.entities.MenuMain" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <associationClass name="PartyNote" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.common.note.entities.NoteData" attribute=""/>
    <participant name="org.neogia.party.party.entities.Party" attribute=""/>
  </associationClass>
  <associationClass name="PartyDataSource" extern="true" package="org.neogia.party.party.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.common.datasource.entities.DataSource" attribute=""/>
    <participant name="org.neogia.party.party.entities.Party" attribute=""/>
  </associationClass>
  <class name="PostalAddress" extern="true" package="org.neogia.party.contact.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" associationClass="org.neogia.party.contact.entities.PostalAddressBoundary" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <associationClass name="PostalAddressBoundary" extern="true" package="org.neogia.party.contact.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.party.contact.entities.PostalAddress" attribute=""/>
    <participant name="org.neogia.common.geo.entities.Geo" attribute=""/>
  </associationClass>
  <class name="AgreementItem" extern="true" package="org.neogia.party.agreement.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" associationClass="org.neogia.party.agreement.entities.AgreementGeographicalApplic" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Currency_Measure" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <associationClass name="AgreementGeographicalApplic" extern="true" package="org.neogia.party.agreement.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.common.geo.entities.Geo" attribute=""/>
    <participant name="org.neogia.party.agreement.entities.AgreementItem" attribute=""/>
  </associationClass>
  <class name="GlPeriodType" extern="true" package="org.neogia.accounting.staticdata.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="AccountType" extern="true" package="org.neogia.accounting.staticdata.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ChartName" extern="true" package="org.neogia.accounting.staticdata.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="AccountClass" extern="true" package="org.neogia.accounting.staticdata.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="PeriodStatus" extern="true" package="org.neogia.accounting.staticdata.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="DebitCredit" extern="true" package="org.neogia.accounting.transaction.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="AcctgTransactionStatus" extern="true" package="org.neogia.accounting.transaction.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="IntegrationEntryStatus" extern="true" package="org.neogia.accounting.accintegration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="BusinessObjectType" extern="true" package="org.neogia.accounting.accintegration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="IntegEventType" extern="true" package="org.neogia.accounting.accintegration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="MappingType" extern="true" package="org.neogia.accounting.accintegration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="ServiceValidIntegRule" extern="true" package="org.neogia.accounting.accintegration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.method.entities.CustomMethod" discriminator="customMethodTypeId"/>
  </class>
  <class name="IntegrationRunStatus" extern="true" package="org.neogia.accounting.accintegration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="AcctgTrTyBonAssocType" extern="true" package="org.neogia.accounting.accintegration.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="InvoiceStatus" extern="true" package="org.neogia.accounting.invoice.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="InvoiceItem" extern="true" package="org.neogia.accounting.invoice.entities">
    <stereotype name="entity"/>
    <attribute visibility="protected" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="false" ordering="unordered"/>
  </class>
  <class name="InvoiceTerm" extern="true" package="org.neogia.accounting.invoice.entities">
    <stereotype name="entity"/>
    <attribute visibility="protected" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="false" ordering="unordered"/>
  </class>
  <class name="Invoice" extern="true" package="org.neogia.accounting.invoice.entities">
    <stereotype name="entity"/>
    <attribute name="currencyUomId" visibility="protected" type="org.neogia.common.uom.entities.Currency_Measure" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="false" ordering="unordered"/>
    <attribute visibility="public" associationClass="org.neogia.accounting.invoice.entities.InvoiceNote" type="org.neogia.common.note.entities.NoteData" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <associationClass name="InvoiceNote" extern="true" package="org.neogia.accounting.invoice.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.common.note.entities.NoteData" attribute=""/>
    <participant name="org.neogia.accounting.invoice.entities.Invoice" attribute=""/>
  </associationClass>
  <class name="Payment" extern="true" package="org.neogia.accounting.payment.entities">
    <stereotype name="entity"/>
    <attribute name="currencyUomId" visibility="protected" type="org.neogia.common.uom.entities.Currency_Measure" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="false" ordering="unordered"/>
  </class>
  <class name="PaymentMethodTypeService" extern="true" package="org.neogia.accounting.payment.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.method.entities.CustomMethod" discriminator="customMethodTypeId"/>
  </class>
  <class name="PointsOfTitleTransfer" extern="true" package="org.neogia.accounting.tax.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="TaxAuthority" extern="true" package="org.neogia.accounting.tax.entities">
    <stereotype name="entity"/>
    <attribute name="taxAuthGeo" visibility="protected" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="AcctgImportLog" extern="true" package="org.neogia.accounting.accimport.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.log.entities.ApplicationLog" discriminator=""/>
  </class>
  <class name="StatusOrder" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="SalesChannel" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="EmailType" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="OrderStatus" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.status.entities.StatusItem" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="OrderHeader" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" associationClass="org.neogia.order.order.entities.OrderHeaderNote" type="org.neogia.common.note.entities.NoteData" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="0" maxMultiplicity="-1" navigable="true" ordering="unordered"/>
  </class>
  <class name="OrderItemStatus" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="OrderItem" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <attribute visibility="protected" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="SimpleSalesTaxLookup" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <attribute name="countryGeoId" visibility="protected" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
    <attribute name="stateProvinceGeoId" visibility="protected" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="OrderItemShipGroup" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
  </class>
  <associationClass name="OrderHeaderNote" extern="true" package="org.neogia.order.order.entities">
    <stereotype name="entity"/>
    <participant name="org.neogia.order.order.entities.OrderHeader" attribute=""/>
    <participant name="org.neogia.common.note.entities.NoteData" attribute=""/>
  </associationClass>
  <class name="QuoteStatus" extern="true" package="org.neogia.order.quote.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="RequirementStatus" extern="true" package="org.neogia.order.requirement.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="ReturnStatus" extern="true" package="org.neogia.order.orderReturn.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="ReturnHeader" extern="true" package="org.neogia.order.orderReturn.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="ArticleStatus" extern="true" package="org.neogia.website.cms.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="QualityRequestType" extern="true" package="org.neogia.quality.request.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="QualityRequestStatus" extern="true" package="org.neogia.quality.request.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.status.entities.StatusItem" discriminator="statusTypeId"/>
  </class>
  <class name="CheckMeasure" extern="true" package="org.neogia.quality.checkMeasure.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.uom.entities.Uom" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="CheckMeasureType" extern="true" package="org.neogia.quality.checkMeasure.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator="enumTypeId"/>
  </class>
  <class name="CheckMeasureGroup" extern="true" package="org.neogia.quality.checkMeasure.entities">
    <stereotype name="entity"/>
    <superclass name="org.neogia.common.enumeration.entities.Enumeration" discriminator=""/>
  </class>
  <class name="FacilityCarrierShipment" extern="true" package="org.neogia.shipment.shipment.entities">
    <stereotype name="entity"/>
    <attribute visibility="public" type="org.neogia.common.geo.entities.Geo" reverseAttribute="" reverseMaxMultiplicity="-1" minMultiplicity="1" maxMultiplicity="1" navigable="true" ordering="unordered"/>
  </class>
  <class name="ProductStoreShipmentMeth" extern="true" package="org.neogia.shipment.shipment.entities">
    <stereotype name="entity"/>
  </class>
</objectModel>
