[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [higgins-dev] IdAS changes proposal
|
Hi,
- I like everything you say under 1.X and 2.X. I love the idea of removing IBlankEntity.
- If I understand correctly, entityRelation isn't needed, because everything is an entityRelation.
Sergey, do you have an opinion on how one Attribute can have a Value which points to an Entity in a different Context (by using a UDI)?
Should IAttribute.getValues() return a string which holds the UDI and which can be manually resolved to another Entity, or should getValues() return an IEntity "proxy" object which gets properly resolved once you access it? Like in Hibernate.. If you fetch a row which has a parent-child relationship to a row in another table, Hibernate will return a proxy object and only fetch the row in the other table when you really need it..
Markus
2009/9/23 Sergey Lyakhov
<slyakhov@xxxxxxxxxxxxxx>
Paul,
I suppose, cdm:entityId is redundant
and we can use rdf:ID instead. As a result:
1.1. In this case IEntity.getEntityID() will retun
rdf:ID.
1.2. In case of blank entity (previously known
as a complex value) it should return null.
1.3. entityId attribute will be
eliminated.
I suppose we need to do the
following changes to IdAS interfaces to be compatible
with CDM:
2.1. BlankEntity class has been
eliminated from cdm.owl. So, I suppose we need to do the same for IdAS
interfaces and replace IBlankEntity with IEntity (eliminate IBlankEntity
interface).
Because there is no any difference between entity
and complex value, we can define the following:
2.2. If
Entity has been created by IContext.addEntity(entityType,
entityID) method, it should always have entityID (should not be a
blank entity). In other words, a unique value should
be generated by a context and used as entityId, if no
entityId passed.
2.3. If Entity has been created
by IAttribute.addValue(URI) method, it should be a blank
entity.
2.4. If Entity has been added
by IAttribute.addValue(IAttributeValue) it should be the same type as
passed entity. If passed entity is a blank entity, new blank entity should be
created as a copy of passed, otherwise a reference to the
existent (non blank) entity should be created.
2.5. When Entity is deleted, all
its subentities which are a blank entity should be deleted
too.
Also we need more flex IFilter API:
3.1. IFilter should be able to query both types of entities as blank
as usual.
3.2. IFilter should be able to query a separate value
(entity or simple value) of any nesting level, not only direct attributes
of Entity.
Also I have some notes about CDM:
4.1. CDM.owl contains entityRelation and contextRelation object
properties. Do we need to reflect them in IdAS interfaces?
Thanks,
Sergey
Lyakhov
_______________________________________________
higgins-dev mailing list
higgins-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/higgins-dev