#2: Yes, I've also been thinking there is likely a natural interface hierarchy that will fall out of this. I'll try to mock up some things and run them by the dev list.
#3: I was thinking we could simply allow INode.getNodeID to return a null (meaning this is a blank node). What do you think about that?
#4: I was hoping this would be addressed by allowing the model to be accessed exactly the same way as other entities in the context. https://bugs.eclipse.org/bugs/show_bug.cgi?id=197363
Thanks for the input!
>>> "Sergey Lyakhov" <slyakhov@xxxxxxxxxxxxxx> 04/16/08 12:33 PM >>>
we need to make some changes to IdAS interfaces to represent changes to
1. One of the main changes to HOWL is removing complex value from HOWL and
replacing it with Entity(Node). So, we should remove IComplexAttrValue
interface and replace all its references with IEntity.
2. Now Entity can contain subEntities, so we need to deside in which a way
should an Entity return subEntities. It looks, subEntities should be
returned as IAttributeValue by the methods
getAttribute(..)/getAttributes(..). In other words, IEntity should extend
IAttributeValue interface (so, both, IEntity and ISimpleAttrValue should
extend the same interface).
2.1. Perhaps, we need to add isNode() and isSimpleValue() methods to
IAttributeValue instead of isSimple() method.
3. We need to add isBlank() method to INode/IEntity (or, perhaps to
4. We need to reflect changes related to OWL1.1 like owl11:onDataRange
(owl11:pattern, owl11:maxLength, owl11:minLength, etc). We need to add
appropriate methods to IAttributeSimpleValueModel interface.
5. We need to remove interfaces related to metadata (ISimpleMetaValue,
IComplexMetaValue, IHasMetadata, IMetadata, IFilterMetadataAssertion).
6 If you are going to remove IModel* intefaces, we need some interface which
contains all those URIs which are required to navigate on your new model
based on IEntity interface.