Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [higgins-dev] IProperty getType()

Jim wrote:
> 
> Yeah, I think you're right, (c) is probably most useful to the IdAS
> consumer. That way they can avoid parsing the schema after reading the
> type.
> 
> Lucky for me, the basic implementations and the table in the Javadoc for
> ISimpleValue.getType() are set up in such a way that changing from  (b) to
> (c) is trivial.
> 
> Another option is to add multiple methods like:
> getAttributeURI (returns a)
> getAttributeValueURI (returns b)
> getAttributeValueTypeURI (returns c)
> 
> Maybe we just leave it at getType() for now and re-examine later if
> consumers have a need.

Agreed. One of the things I liked about (c) was that it hid from the API
consumer the gory details of the fact that there even is an "Attribute"
class in the abstract data model that is used as a holder of a bunch of
metadata properties (e.g. source, lastModified, etc.) and that this
Attribute in turn has a property whose range is the "real" value, etc. 

Beyond the benefit of simplicity (i.e. the IdAS consumer thinks in terms of
IAttributes that have types and values and metadata and there are methods to
get all these things), there is a more important benefit: separating the
abstract data model (returned by getSchema()) from the context provider's
implementation's "real" data model. One of our goals is to put as few
constraints as possible on the context provider developer's choice of
implementation technologies. 


Back to the top