On 6/30/2013 10:36 PM, Chris Morley wrote:
>> Date: Sun, 30 Jun 2013 22:25:20 -0700
>> From: d...@calypsoventures.com
>> To: emc-developers@lists.sourceforge.net
>> Subject: Re: [Emc-developers] toolstore discussion notes: Andy/mhaberler
>>
>> Andy, Michael,
>> The network accessibility of the data store and the associated API is
>> key to both providing and understanding the functionality that this
>> approach could provide.
>> Is there a proposed design document that lays out the API?
>> Dave
>>
> Did you see this?
> http://wiki.linuxcnc.org/cgi-bin/wiki.pl?ToolDatabase
>
> Andy has sample code he was using in Wichita.
> I don't think he has posted that though.
>
> Chris M
>   
I had seen that at some point in the past, but had not bookmarked it - 
so thanks for the reference.

However, that's not (I hope) the API layer that I was thinking about...

If we move to a general data store facility, then some of the things 
that any such API has to support are establishing, initializing, 
manipulating and extending the info in the data store.

The Wiki page looks more to me like an example of how a data store might 
be set up where the tool data  model is based on tables and table 
relational operations. It may even be the default way that a "tool 
store" is set up for LCNC once this change is implemented. The tables in 
the wiki page appear to me to have been structured so as to make 
relational data base operations convenient with them. That's fine, 
though it does seem to let the underlying SQL implementation show thru - 
the wiki page data structures are table oriented and seem to imply RDBS 
operations (union, intersection etc) on tables that are indexed by key 
fields etc).

When designing APIs like this, the underlying data store implementation 
tends to show thru in the API - and that can be OK depending on what you 
need to accomplish.

What I'm looking for is the base functionality of the proposed API that 
would be used to create and manipulate the data store. If we assume the 
store is table centric then I might expect to see things like: define 
tables and fields; query tables etc.

In contrast, I got the impression from Michael's email notes that the 
API level is  not intended to be SQL table centric - so I'm interested 
in reading the API primitives to see what type of abstraction is being 
proposed.

The reason I am interested in the API layer is that I really want to see 
an extensible and (at a minimum) integrator configurable tool handling 
facility.
(I think it would be a shame to make this much change and not end up 
with a extensible tool data store.)

Frankly, skeptical that it's possible for LCNC to think of and 
anticipate all the ways such a generalized data store facility could be 
used - even for just the "tool table" subject.

For example, my current CNC system utilizes additional tool attributes 
that I've created. These are logically attributes of tools and/or 
tool/tool holder combinations. I'd not immediately argue that these 
should be part of a default LCNC tool data store (as they would not be 
of general interest to many). Even if they were part of the new "tool 
table replacement", something else would come along later that was not 
included today. Thus, I find myself wanting to know that it will be 
possible (in general) to create what is/may be needed by using the 
proposed "network API to the data store".  I'm simply using my current 
tool attributes as a convenient test case / evaluation tool.

Thus I figure the way to evaluate what can be supported is with this 
"network accessible data store" to look at the base API being proposed 
and evaluate the API proposal wrt to abstraction model, flexibility and 
extensibility.

I'm a top down type of guy in this case - Ideally I'd like to sit down 
and read
a) the functional goals for a replacement "tool info blob" (What does 
the data store have to accomplish and why) and
b) the data store API spec (which would show the details of the set of 
APIs that implement the goals called for in a).

Dave


------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to