On Tuesday, October 08, 2013 09:17:55 AM Claude Warren wrote: > Strangely enough there is a bug if this is correct.
I messed up my previous response, sorry. Doing a S.change[Literal]Object(O) should remove S from its model and insert the new S'. > Assume a Model M containing one Statement S composed of s,p,o. > Assume M has a listener L > Assume a Statement S composed of s,p,o that is of Model M but not in Model > M. > > the expected state is > M.contains(S) = F > S.getModel() = M > s.getModel() = M > p.getModel() = M > o.getModel() = M > > assume S2 = S.changeLiteralObject( o2 ); > is the expected state > M.contains(S) = F > M.contains(S2)=F This is the bit that should be T. > S.getModel()= M > S2.getModel()=M > s.getModel() = M > p.getModel() = M > o.getModel() = M > o2.getModel() = M > L has no notifications The intention for changeObject is that the old statement is removed and the new one is added. The notifications generated should be the ones that that remove-add pair generates. Chris -- "The wizard seemed quite willing when I talked to him." /Howl's Moving Castle/ Epimorphics Ltd, http://www.epimorphics.com Registered address: Court Lodge, 105 High Street, Portishead, Bristol BS20 6PT Epimorphics Ltd. is a limited company registered in England (number 7016688)