--- In [email protected], "Steve Jones" <[EMAIL PROTECTED]> wrote: > > The problem with using "live" data, by which I mean data which is > currently in an intermediate state under the management of a service > (or a process within a service), is that the raw data represents > only 50% of the story the other 50% is in the code that processes > the data and which knows that if the field that says "customerType" > is currently set to "Narnia" while the "notificationReceived" field > is set to "true" but the "verified" is false then it means that the > customer has been sent a notification but is sitting on it. This > might make perfect sense in the context of the code but makes no > sense whatsoever to anyone external to that code. The point is > that the data at this stage has a very high cohesion with the > service/process/application that is processing it. Exposing this > information via a data service for all to access is very dangerous > as it means either also exposing the processing logic or letting > people make assumptions like "hell we've got a lot of new customers > in Narnia". > > That is a real example, the reason for Narnia was that it was added > as a holding country with only verified customers having the > country set, and only verified customers should have been exposed > to the world. > > Now if _within_ a service you want to use a DAL to help you access > your inflight data then that is fine but the DAL shouldn't be > exposed wider.
+1 -Rob
