On Aug 8, 2008, at 3:33 PM, Jacques Le Roux wrote:

From: "BJ Freeman" <[EMAIL PROTECTED]>
contact mech may not always be the same address and geopoint
for an address it will always have the same geopoint
1) how do you connect an address that already exists with a New ConactMech. 2) how do you connect the assoicated Geopoint that goes with that address.
My last proposition should cover your previous demand. If you expire an address then the geo-point this address used (point to) would still exist but as the address is obsolete we don't have to care (this address and its associations should not be used anymore)
Let see your new questions now:
1) Not sure to understand this one since an address is a type of ContachMech. Did you not used a word for another ? 2) PostalAddress.ContactMechId -> ContacMech -> ContacMech.TerrestialPositionId -> TerrestialPosition

Sorry should have been PostalAddress.contactMechId -> ContacMech -> ContacMech.terrestialPositionId -> TerrestialPosition

Based on this and some other messages (lots of stuff getting thrown around), a proposal:

1. new entity called "GeoPoint" (to go along with Geo which is a geographic boundary) with geoPointId as a sequenced primary key, latitude and longitude floats, dataSourceId (just use the existing DataSource entity)

2. there is no need for Well-Known-Text on GeoPoint as it is more useful for describing a boundary, so let's put a wellKnownText field on Geo instead of GeoPoint

3. for other entities that are at a single position add a geoPointId to them; this would include Facility, PostalAddress (but NOT ContactMech because most ContactMechs don't imply any position, and even for PostalAddress it is only the case sometimes)

4. for entities that need a series or history of positions add a join entity with the other entity's ID, a geoPointId, fromDate, thruDate, etc; this would include FixedAsset, Party (applies to Person and sometimes to PartyGroup, though some PartyGroups have no corporeal form and so no location); for example add a FixedAssetGeoPoint entity with fixedAssetId, geoPointId, and fromDate as the primary key and thruDate as an additional field; note that it would go with in the FixedAsset entity's package and is FixedAssetGeoPoint and NOT GeoPointFixedAsset because the GeoPoint is the lower level entity and just used to further describe the FixedAsset

-David


Reply via email to