2011/6/3 Reto Bachmann-Gmuer <[email protected]>

> On Jun 3, 2011 2:27 PM, "Tommaso Teofili" <[email protected]>
> wrote:
> >
> > Hello guys,
> > I am ok to give the GraphNodeProviderService a wider scope than a
> > platform-only service but I don't think every JSR311 class has to use it,
> so
> > for example if one wants to implement a service which is more restrictive
> > well, then one can simply not use it, no? It seems to me this's also the
> > spirit of Henry's compromise solution.
> Hi Tommaso
>
> I don't see exactly where you see a compromise solution. Henry is proposing
> syntactic sugar to create union graphs by specifying uris naming the graphs
> of the union and to get a graph from the web given a uri the graph can be
> assumed to contain a description for. As well as a shortcut for creating
> graphnode with a uniongraph as base graph. I have no objection against any
> of these issues.
>
> But what is the compromise? Do i have to promise I'll be implementing this
> (or to accept any patch) for my zz-540 patch to be acceptable?
>

no sorry, there is a misunderstanding here, I should have quoted the
following text I was referring to :


> SKETCH OF A COMPROMISE SOLUTION
> ===============================
>
> Perhaps there is a way to allow make things more transparent, by for
> example having JSR311 classes that really
> want the full union returned by the  current ContentGraphProvider to have
> that, and other applications to get something more limited.


this seemed to me close to my idea "if you don't need
GraphNodeProviderService then don't use it" , that's what it seemed to me
closer to a compromise.



>
> I don't think that the patch henry vetoed has anything bad in it, or brings
> something one has to compensate for. If the platform is asked "tell me
> about
> xy" it tells what the platform takes for reasoanbly granted, that is by
> default what it get from an authoritative description on the weeb and from
> the public part of its own trusted data.
>

right, I agree with you and I am still +1 to the proposed patch, sorry if I
wasn't clear enough.
Tommaso


>
> We 're voting on a patch. If the -1 one remains i'll remove it. But i think
> the 4 people voting in favour of the patch should know why this patch is
> considered to pollute the design of clerezza.
>
> Cheers,
> Reto
>
> Maybe I am just making it too simple,
> > so please correct me if I am wrong here.
> > My opinion is that also CLEREZZA-544 corrects a previous issue with the
> > context used, the plan could be to add an optional Filter to restrict
> what
> > remains exposed in the context.
> > My 2 cents,
> > Tommaso
> >
> >
> >
> > 2011/6/3 Reto Bachmann-Gmuer <[email protected]>
> >
> > > On Wed, Jun 1, 2011 at 7:05 PM, Henry Story <[email protected]>
> > > wrote:
> > > [...]
> > >
> > > > > Yes, TcManager is the main entry point to the rdf data. I don't see
> any
> > > > code
> > > > > smell here. I a classical RDBMS java application a component will
> > > > typically
> > > > > use jdbc and rely on other components that use jdbc, here it's
> > > TcManager
> > > > > instead of jdbc,
> > > >
> > > > The thing to do would be to look at the number of  connections that
> are
> > > > generated to the
> > > > DB. My feeling is that one could do the same and have only 1 or 2
> > > > connections to the DB.
> > > > Here we could quickly end up with 10 times more....
> > > >
> > > I don't know what you mean by DB conncetions and where you see this
> factor
> > > 10.
> > >
> > > [...]
> > >
> > > > >
> > > > >>  On my fresh install of ZZ that is 20 times more information than
> the
> > > > >> initial graph.
> > > > >>
> > > > > - What is 20 times more?
> > > > > - What do you mean by "get"?
> > > > >
> > > > > A graphnode point to a resource and is designed for browsing from
> > > > resource
> > > > > to resource. It is not a graph but a node in a graph. The object is
> > > > > associated to a base-graph which used to identify the propertied
> and
> > > > > instanctiate another graphnode when hoping to a property value. The
> > > > > underlying graph could for instance be Timbl's GGG (giant gloabl
> graph
> > > > aka
> > > > > the web).
> > > >
> > > > yes  ((but clearly you don't want to dereference the whole web when
> > > > working...))
> > > >
> > > no, and nobody is doing this. If I include the uri pattern
> > > <http(s)://.*/(.*/)*> I'm not blasting this mail to the size of the
> web.
> > >
> > >
> > > >
> > > > Also there will be contradictions in the information on the web. Some
> > > > people may trust some graphs, other trust others.
> > >
> > > Right, that's why the GraphNodeProvider trusts only the content-graph,
> > > which
> > > is trusted qua being a platform service) and the graph resulting from
> > > dereferencing the resource (trusted by conventional web-trust)
> > >
> > >
> > > > Graphs can be merged easily in RDF - IF they  are believed both to be
> > > true.
> > > > But what is believed to be true will depend on what possible world
> you
> > > > believe yourself to be in. I argued this in "Beatnik: change your
> mind"
> > > > in more detail, if that helps for people following this discussion
> > > >
> > > >  http://blogs.oracle.com/bblfish/entry/beatnik_change_your_mind
> > > >
> > > > From the point of view of WebID and security I want to be able to
> tell
> > > WHO
> > > > said what. In many applications being able to be very clear about
> where
> > > > something was said is going to  be essential to giving good feedback.
> > > Some
> > > > example coming from the field I am working on below.
> > > >
> > >
> > > > So for a foaf-browser, I want to know when TimBl declares someone to
> be a
> > > > friend, and differentiate that from when someone declares himself to
> be a
> > > > friend of TimBL, which is a very different thing.
> > >
> > > With the current service you have what TimBL says plus the
> platform-wide
> > > truths of the content-graph, this may contain things like a link back
> to
> > > you
> > > (the owner of the platform instance) or a statement like : TimBL
> rdf:type
> > > ex: Spammer which might not be published in TimBL's profile
> > >
> > >
> > > > When I get Dan Brickley's graph I may want to know all the people he
> > > > mentions in his foaf profile - even if he does not mention them as
> > > > foaf:knows related to him.
> > >
> > > does this provide a new point?
> > >
> > >
> > > > If the GraphNodeProvider returns a union graph of the documentation
> > > graph,
> > >
> > > Again no, we're not returning a union graph we're returning a
> GraphNode,
> > > the
> > > underlying graph is an implementation detail (was think if the
> > > getGraph-method could be made less visible (protected or private) to
> avoid
> > > this confusion)
> > >
> > >
> > > > content graph,... and his foaf profile then when searching for all
> the
> > > > foaf:Person
> > >
> > > You don't search a GraphNode for all foaf:Person but the GraphNode
> > > represents the foaf:Person you asked for.
> > >
> > >
> > > > I will get the documentation writers too, the writers of content in
> the
> > > > content graph, and who knows what else...
> > >
> > > you will have properties pointing from that persons to all the comments
> he
> > > left on the local instance, which can be quite handy (and which are
> from
> > > the
> > > underlying content graph as they are probably not also contained in the
> > > remote foaf:profile)
> > >
> > >
> > > > many people will have no direct relation to Dan at all. People can
> say
> > > true
> > > > things about Dan but those not be things Dan himself would say.
> > > >
> > > Yes, we only consider as true what we say ourseflf (i.e. the content
> graph)
> > > and in particular circumstances also what Dan says.
> > >
> > >
> > > >
> > > > I believe these use cases are not limited to the foaf browser but to
> a
> > > very
> > > > large category of semantic web applications. Give me some linked data
> > > > application, and I will easily come up with use cases of the same
> kind.
> > > >
> > > That's why graphnodeprovider is a generic service and its not true that
> it
> > > was designed for a particular and very specific application of mines in
> > > mind.
> > > [...]
> > >
> > > > >
> > > > > I thought I had heard people mention issues with speed on this
> list.
> > > > >>
> > > > > You may check archives of this list at:
> > > > > http://mail-archives.apache.org/mod_mbox/incubator-clerezza-dev/
> > > >
> > > > Do you have a precise thread?
> > > >
> > > No, its you who thought he heard people mention issue with speed. Check
> the
> > > archive and construct an argument if those speed issues relate to the
> issue
> > > at hand, otherwise your remark " I thought I had heard people mention
> > > issues
> > > with speed on this list" is purely demagogic and a hindrance to an
> > > effective
> > > an fruitful discussion. (like saying "I've heard people finding the
> > > clerezza
> > > code hard to read" when justifying a -1 against some code)
> > >
> > > > [...]
> > > > >>
> > > > >> What I am wondering is in what cases is this needed? It seems like
> > > this
> > > > may
> > > > >> indeed what a particular application may require, but does it have
> to
> > > be
> > > > >> a general service? The name certainly suggests a very general
> service,
> > > > not
> > > > >> one required for a particular application.
> > > > >>
> > > > > This is about ContentGraphProvider then, not about issue 540. It's
> the
> > > > > ContentGraphProvider which provides the graph of instance-wide and
> > > public
> > > > > information for the platform
> > > >
> > > > 540 the GraphNodeProvider delegates decisions to the
> ContentGraphProvider
> > > > 544 uses the GraphNodeProvider that delegates to the
> ContentGraphProvider
> > > > and ties it into the the core,
> > > >    so that when a JSR311 class requests a named graph it then gets
> > > whatever
> > > > the ContentGraphProvider decides
> > > >    is trusted content.
> > > >
> > > I don't see any link to JSR311 but yes, the ContentGraphProvider
> provides
> > > content that is  public and platform-wide trusted by default (the
> system
> > > graph has higher trust).
> > >
> > >
> > > >
> > > > SKETCH OF A COMPROMISE SOLUTION
> > > > ===============================
> > > >
> > > > Perhaps there is a way to allow make things more transparent, by for
> > > > example having JSR311 classes that really
> > > > want the full union returned by the  current ContentGraphProvider to
> have
> > > > that, and other applications to get something more limited.
> > > >
> > > Again see no link to Jsr311. But I think this might be the mentioned
> > > possible future enhancement to allow clients to specify the trust
> > > boundaries.
> > >
> > >
> > > > I suggest that we think of naming the content graph or at least build
> > > > something so that those who need the content graph can ask for it
> > > clearly,
> > > > and those who don't can make sure they don't get it.
> > > >
> > > The content graph is named, the virtual content graph isn't, but we
> could
> > > give the virtaul content graph a name thus making it accessible in
> sparql
> > > queries (using a TcProvider) but this seems completely unrelated to the
> > > issue at hand.
> > >
> > >
> > > >
> > > >  - It may be useful then to name the content graph - it would be a
> union
> > > > graph that could be specified by a SPARQL UNION
> > > >    query for example or the equivalent.
> > > >
> > > Yes, if we give the Virtual content graph it can be used by the sparql
> > > endpoint
> > >
> > >
> > > >
> > > >  - have a JSR311 class return a NamedGraphNode (or something like
> that)
> > > > which can then call the CallbackRenderer.
> > > >
> > > What should a NamedGraphNode be? GarphNode can wrap a named or an
> anonymous
> > > resource I see no need for a subclass for UriRef-GraphNodes, but we
> have
> > > been discussing this in another thread, don't see a relation to the
> issue
> > > at
> > > hand.
> > >
> > > I don't know what you mean by the NamedGraphNode calling
> CallbackRenderer,
> > > the CallbackRenderer is called by the renderlet.
> > >
> > >   The NamedGraphNode could name the union graph, or could be a union
> graph
> > > > - by reference. So all the code would do is
> > > >
> > > >    return new UnionNamedGraphNode(new
> > > > UriRef("urn:x-localhost/contentGraph"),new UriRef("
> > > > http://remote.example/resource/";))
> > > >
> > >
> > > I'm not getting it which one is the resource and which one the name of
> the
> > > underlying graph, whats the difference to current GraphNodes.
> > >
> > >
> > > >
> > > >    or some nice syntactic sugar for that. For example for apps
> requiring
> > > > the union of Content + other  that you need,  something like the
> > > following
> > > > would be neat
> > > >
> > > >    return new ContentGraphNodePlus(UriRef("
> > > http://remote.example/resource/
> > > > "))
> > > >
> > >
> > > If you're talking about GraphNodes (but I'm not sure where you in fact
> mean
> > > graphs) the I don't see what you're introducing that is new
> > >
> > > return new GraphNode(new UriRef("http://remote.example/resource/";),
> new
> > > UnionMGraph(contentGraph, fooGraph, barGraph))
> > >
> > >
> > > >
> > > >    These objects would just be holders of the graph name(s), which
> the
> > > > TcManagers can then hook up into the underlying triple store.
> Something
> > > > along those lines would be very nice. One could easily write
> applications
> > > > that get union of contents as you wish, and I could easily get very
> > > > precisely defined graphs for security based application, or more
> flexible
> > > > linked data graphs too.
> > >
> > > You can do this (see example return statement above)
> > >
> > >
> > > > It could also avoid the iterative way the GraphNodeProvider currently
> > > > works.
> > > >
> > > Is this a reference to the if-then statements you criticed but never
> told
> > > me
> > > what you mean despite me repatedly asking? Or what "iterative way" are
> you
> > > reffering to?
> > >
> > >
> > > >
> > > > Having something like that would mean  that perhaps the  addition of
> the
> > > > new method in CallbackRenderer
> > > >
> > > >   public void render(UriRef resource, GraphNode context, String mode,
> > > >                        OutputStream os) throws IOException;
> > > >
> > > GarphNode is resource+context where the context is a graph. Now the
> > > renderlet gets a graphnode to render, it shouldn't get any context from
> > > anywhere else. the new render method is exactly to render a method with
> a
> > > differnt context not avaialble directly to the renderlet. If the outer
> > > renderlet already has (or can generate) the context for the nested
> > > rendering
> > > the this can be done with existing (pre 540) infrastructure.
> > >
> > >
> > > >
> > > >
> > > > would no longer be needed, or would be adapted somewhat.
> > >
> > > what?
> > >
> > >
> > > > It could also mean that the GraphNodeProvider could be a lot more
> > > general,
> > > > as its name indicates it should be. The information about graphs hard
> > > coded
> > > > into the provider could then be moved to a Graph (or GraphNode or
> > > NamedGraph
> > > > or NamedGraphNode object). It would then be a lot clearer when
> looking
> at
> > > > JSR311 code what was being returned.
> > > >
> > > Again this is not specific to jsr311 code. I think my proposed
> > > GraphNodeProvider is quite generic but that additional features coould
> be
> > > added.
> > >
> > >
> > > >
> > > > [[ ps: a thought
> > > > One could perhpas write implementations of such a NamedGraph that
> would
> > > > perhaps allow links to be followed outward (from accepted named
> graphs
> to
> > > > others graphs it links to, up to a certain number of hops).
> > > > ]]
> > > >
> > > Which seems to be exactly the context-switch allowed by ZZ-544
> > >
> > >
> > > >
> > > > >> Perhaps changing the name from GraphNodeProvider to
> > > > >> ContentGraphPlusOtherProvider would make more sense.
> > > > > It's a platform service that provides GraphNodes. Being a platform
> > > > service
> > > > > implies it usesthe platform means of getting trusted content. If it
> > > would
> > > > > just dereference URIs the it would probably be placed in a
> subpackage
> > > of
> > > > > clerezza.rdf.
> > > >
> > > > perhaps. But why not make things nice and general as explained above?
> > > >
> > > Where do you make something nice and more general? You're describing
> how
> > > clients can do stuff without GraphNodeProvider what they of course can
> do.
> > > And you're proposing new classes for what seems they can do as easily
> (but
> > > more consistently and thus more elegantly) with the existing classes.
> > >
> > >
> > >
> > > > Currently with changes to 544 and in particular the render method
> > > >
> > > >  public void render(UriRef resource, GraphNode context, String mode,
> > > >                        OutputStream os) throws IOException;
> > > >
> > > >
> > > > when a JSR311 class returns a URI,
> > >
> > > A jsr311 returns a GraphNode, if it returns a URI then type-rendering
> is
> > > not
> > > used (but another MessageBodyWriter, if available)
> > >
> > >
> > > > the renderer does not get the graph named by that
> > > > URI
> > >
> > > No renderlets get invoked, but if it gets a graphNode the renderlets
> gets
> > > that GraphNode which allows ecploring the resource with whatever graph
> the
> > > jax-rs resource method chose to use. Choosing this graph is the
> business
> of
> > > the application logic and certainly does not belong into the renderlet.
> > >
> > >
> > > > but that graph and something else, defined in some unrelated package.
> For
> > > > me this
> > > > does not make it easy to understand the code.
> > > >
> > > Obviously you don't. Would be good we find way to improve understanding
> of
> > > the clerezza architecture without requiring blocking the evolution by
> > > casting -1
> > >
> > >
> > > >
> > > >
> > > > >>> This might not match an intuitive understanding of
> "authoritative"
> > > and
> > > > >> I'm
> > > > >>> happy to redefine the issue so that no confusion arises.
> > > > >>
> > > > >> One thing I am not quite clear about yet, is who writes to the
> content
> > > > >> graph? I see a lot of modules use it.
> > > > >>
> > > > > Modules can write to the content graph or add temporary additions
> to
> > > it.
> > > > > Actually writing to the content graph should happen when public and
> > > > trusted
> > > > > information is added. An information is considered trusted when
> added
> > > by
> > > > a
> > > > > user with respective permission or verified by privileged code
> (e.g.
> > > that
> > > > > allows the public to add see-also references).
> > > >
> > > > Good so say a trusted user of mine :joe truthfully says
> > > >
> > > Waht do you mean by "trusted user"? trust with no limits? (admin
> rights?)
> > >
> > >
> > >
> > > >
> > > >  b:danbri foaf:knows :joe .
> > > >
> > > > then currently when I ask for http://danbri.org/foaf.rdf#danbri
> > > > I will get a graph that contains the above triple even if danbri does
> not
> > > > make that
> > > > claim. Sometimes that is good, and sometimes not.
> > >
> > > Sometimes it's good to use clerezza, sometimes a hammer is more
> appropriate
> > > ;)
> > >
> > >
> > > > In many cases as I have argued it will be
> > > > important for me to know what danbri claims. Perhaps so I can ping
> him
> to
> > > > tell him about
> > > > my desire for him to claim friendship with me.
> > > >
> > > There's nothing to prevent you or that would make it hard to write such
> an
> > > application, it's just not what the garphnodeprovider is for and it
> > > definitively doesn't belong into the renderlet
> > >
> > >
> > > >
> > > > In the current API changes it won't be clear at all why when I ask
> for
> > > >
> > > >    <http://danbri.org/foaf.rdf#danbri>
> > > >
> > > > I get <http://danbri.org/foaf.rdf#danbri>  + 5 other graphs.
> > >
> > > graph/resource distinction, what does the addition of a person and a
> graph
> > > result in?
> > >
> > >
> > > > Or it will require the developer
> > > > to know the internals of clerezza to work this out, as I have just
> had
> to
> > > > do myself.
> > > >
> > > It can well be, that clerezza will support sophisticated provenance
> > > mechanism in future. Not sure however if the blocking of patches for
> the
> > > existing base architecture fosters this developement.
> > >
> > > [...]
> > > >
> > >
> > > > >
> > > > >> 4. But instead of just having a GraphNodeProvider that just
> returns
> > > the
> > > > >> graph, you have added some twists to
> > > > >>  it and return more than jut the named graph. There is nothing to
> say
> > > > that
> > > > >> a named graph cannot be the union
> > > > >>  of many other graphs, but it seems really arbitrary for me to get
> the
> > > > >> documentation of clerezza along with the
> > > > >>  triples of Tim Berners Lee's graph.
> > > > >>
> > > > >
> > > > >>  Somehow things have gone a bit haywire at the end here.
> > > > >
> > > > > If you call getGraph on a GraphNode you're leaving the scope of the
> > > > > GraphNode. Probably all this discussion would not be necessary if
> had
> > > > been
> > > > > using getNodeContext instead of getGraph. The NodeContext is what
> > > related
> > > > to
> > > > > the node. Using getGraph is a bit like doing the following:
> > > > >
> > > > > File file = SomeService.getFileDescribing("Tim Berners Lee")
> > > > > file.getParent().getParent().getParent().listChildrenRecursively()
> > > >
> > > > I don't think that is a good way of looking at what graphs are useful
> > > for.
> > > > Graphs are more
> > > > like bubbles in a comic strip.
> > > >
> > > Yes, but here it's not about graph but resources (interpreted in a huge
> > > universe of believes)
> > >
> > >
> > > >
> > > > I argue this very carefully in "Are OO languages Autistic?"
> > > >
> > > >  http://blogs.oracle.com/bblfish/entry/are_oo_languages_autistic
> > > >
> > > > This is a fundamental new programming element provided in the
> semantic
> > > web.
> > > >
> > > > So the context as you are defining it is not what I am looking for. I
> am
> > > > really looking for the named graph - the entire claim made by a
> resource.
> > >
> > > We don't have the notion of claims made by a resource. But it would be
> easy
> > > to add a methos to GraphNodeProvider returning only what the web offers
> as
> > > context of a resource
> > >
> > >
> > > > This can be seen by considering the example I gave above where
> someone
> > > adds
> > > > to the content graph information about Dan Brickley
> > > >
> > > >    b:danbri foaf:knows :joe .
> > > >
> > > > If I only get Dan Brickely's graph back that triple will not be
> there.
> If
> > > I
> > > > get Dan Brickley's  + the content graph, then that information will
> > > appear
> > > > even if I just ask for dan's node context. Also there may be
> information
> > > > about
> > > > people appearing in Dan Brickley's profile that are not directly
> linked
> > > by
> > > > him, that I will
> > > > also be interested in retrieving.
> > > >
> > > Use render(uriRef) method to have thos people rendered in their
> context.
> > >
> > >
> > > > So the context is not the tool I need - and I don't think my use
> cases
> > > are
> > > > special.
> > > >
> > > In the usecase of telling Dan that a true statement is missing indeed
> what
> > > id provided by ZZ-540 is probably not what you need. But I think this
> > > usecase is more special than seein all the comments a person posted and
> > > other facts which are assumed to be true (by platform trust boundaries)
> > > about a person. But this discussion is pointless as one feature doesn't
> > > prevent the other from being implemented.
> > >
> > >
> > > >
> > > > >
> > > > > The listed files can contain thigs that are completely unrelated to
> Tim
> > > > > Berners Lee
> > > > >
> > > > >
> > > > >
> > > > >> And I think this is due to a bit of confusion of the needs
> > > > >>  of your application with trying to keep the general architecture
> > > clean.
> > > > >>
> > > > > As I said, I did not made this particularly for an application, my
> wall
> > > > > application is merely a demo. When we want to do something like a
> > > > > foaf-browser we want to be able to display the resource in their
> > > context,
> > > > > just a usecase.
> > > >
> > > > Ok, so that is where our disagreement lies. The node context is in
> many
> > > > case not
> > > > at all what we want. It both adds too much information and not
> enough.
> > > >
> > > Who is "we"? You have one usecase where one should have less
> information
> > > accessible via the graphnode, there are other usecase (and imho more)
> where
> > > we want all information we trust).
> > >
> > > Wehn do we have not enough information?
> > >
> > >
> > > >
> > > > It may be that in the wall demo that is not visible. But in security
> > > > matters and
> > > > trust matters it will make a big difference.
> > > >
> > > Sorry, this seems like a demagogic null-sentence. Yes, we do care about
> > > speed, we do care about trust and we do care about security. And the
> > > proposed resolution of ZZ-540 and 544 brings an improvement, as it
> prevents
> > > data from other trust boundaries having to be part of the base graph
> for
> > > the
> > > graphnode returned by a root-resource method.
> > >
> > > >
> > > > >>
> > > > >>  Now on the whole I have learnt a lot about Clerezza by following
> > > this,
> > > > >> but I just can't say that this looks like
> > > > >> a good long term solution.  We are constantly moving around and
> around
> > > > >> something.
> > > > >>
> > > > > This is your impression. I hope my explanations to the concrete
> points
> > > > you
> > > > > mention could help changing this impression.
> > > >
> > > > I think it should now be clear how we can come to a solution that
> > > satisfies
> > > > both
> > > > our needs.
> > > >
> > >
> > > Yes: you revoke your -1 and you raising an issue for getting a resource
> > > description only from the web for your particular usecase.
> > > [...]
> > >
> > >
> > > >
> > > > > Would the rename be okay for you to accept the proposed path? (I
> really
> > > > > would like to go back to productive work, so I rather have a
> horrible
> > > > name
> > > > > than seeing the project stalled by your veto).
> > > >
> > > > Well then the issue would be why this class should appear in the
> > > > CallbackRenderer.
> > > > No I think there should be a way from JSR311 code to ask to ask
> precisely
> > > > for the
> > > > type of GraphNode it wants with very little coding. So that for the
> use
> > > > cases
> > > > where walking the content graph is the right thing to do it is one
> line
> > > of
> > > > code,
> > > > and for cases where something more precise is needed it is also just
> one
> > > > line of
> > > > code. In any case it should be easy when reading the code to
> understand
> > > > what is going
> > > > to be displayed.
> > > >
> > > I don't think this is particularly hard to do, and with the issue I
> > > proposed
> > > you raise above even easier.
> > >
> > >
> > > >
> > > > I hope this helps,
> > >
> > > Maybe this thread helps understanding the clerezza architecture better.
> Yet
> > > blocking development with a -1 seems quite a high price for this.
> > >
> > > Reto
> > >
> > >
> > > >
> > > >        Henry
> > > >
> > > > >
> > > > > Reto
> > > > >
> > > > > PS: You seem to be extensively using you're right to veto while
> > > ignoring
> > > > > other's veto on your code, looking at
> > > > > https://issues.apache.org/jira/browse/CLEREZZA-515 I see that the
> > > > commits
> > > > > have not been reverted even more than one week after my veto and
> > > request
> > > > to
> > > > > revert.
> > > >
> > > > Hmm, I did revert that using git. But I am not sure why that does not
> > > > appear in the
> > > > commits for that issue.... I see you brought that up in another
> thread.
> > > >
> > > >
> > > > Social Web Architect
> > > > http://bblfish.net/
> > > >
> > > >
> > >
>

Reply via email to