PAW . cwm dev

CWM developer/PAW

23 Nov 2005

Attendees

Present
eikeon/DK, vlatko/VK, DanC/DC, timbl
Regrets
Chair
TimBL
Scribe
DanC

Contents

  1. Convene, take roll, review agenda
  2. Around the table
  3. comparing formulas with variables
  4. term API in javascript, eulermoz
  5. GRDDL support in cwm; xslt engines
  6. PAW demo: proof gen/checking
  7. cwm/pychinko integration
  8. Term API
  9. next meeting

 

 

Convene, take roll, review agenda

<timbl> I had kinda omitted to think of the meeting I'm afraid, no agenda.

<timbl> We could discuss I suppose papers, and changes.

<eikeon> dwood and I chatted about maybe adding a quick demo item to one of the cwm/paw meeting agendas if that works... since we've been the only two on the paw/demo calls.

<timbl> Ok, we'll do a quick ad-hoc agenda

<scribe> Agenda: http://www.w3.org/2000/10/swap/doc/plans.html v 1.75


.
.

Around the table

DK: getting rdflib into release state for use elsewhere in the lab...
... not much progress on Term APIS

VK: spent the week mostly doing pychinko hacking. log:conclusion and log:conjunction added minimally working version
... I do log:conclusion with a sub-rete.

<vlatko> http://svn.mindswap.org/pychinko/pychinko

VK: worked OK because the rete is a 1st class object. [yay! no globals!]

<DanC_> r5336 | kolovski | 2005-11-21 21:19:57 -0600 (Mon, 21 Nov 2005) | 2 lines

<DanC_> -note this is a minimally working version

<vlatko> yes

TimBL: haven't done anything directly relevant, but did think about the term API in javascript...

DanC: I was at XML2005 all last week

<DanC_> RDF Calendar, GRDDL, Microformats, and all that at XML2005 in Atlanta

DanC: while working on figures for slides, had to use an old version of cwm cuz -bySubject isn't tested and, of course, rotted

<DanC_> cwm --bySubject breaks bnode refs Dan Connolly (Friday, 11 November)

timbl: hmm... yeah... not all the -flags are tested well

<timbl> created swap/test/output directory for such tests

comparing formulas with variables

VK: the rete is efficient because we use dictionaries: pred/obj/sub
... matching formulas is tricky [not sure I'm following, but clearly timbl is]

TimBL: ... unify ...
... compare two formulas...

VK: I tried that, and it works great with no variables, but with variables...

<vlatko> fails:

<vlatko> {{ :a :b :c} ?y {:a :b ?x}} log:implies {<test> a <SUCCESS> }.

<vlatko> {:a :b :c} :h {:a :b :c}.

<vlatko> succeeds:

<vlatko> {{ :a :b :c} :h {:a :b :c}} log:implies {<test> a <SUCCESS> }.

<vlatko> {:a :b :c} :h {:a :b :c}.

TimBL: take care with scoping of ?foo syntax

DC: you might try just explicitly quantifying them at the top level

<timbl> <test> a <SUCCESS> .

<timbl> @forAll :x, :y.

<timbl> {{ :a :b :c} :y {:a :b :x}} => {<test> a <SUCCESS> }.

<timbl> {:a :b :c} :h {:a :b :c}.

<vlatko> @forAll :x,:y.

<vlatko> {{ :a :b :c} :y {:a :b :x}} log:implies {<test> a <SUCCESS> }.

<vlatko> {:a :b :c} :h {:a :b :c}.

@forall ?y. {@forall ?x. { :a :b :c} ?y {:a :b ?x}} log:implies {<test> a <SUCCESS> }

DC: vlad, do you handle scopes other than global yet?

VK: dunno.. is there a test?

TimBL: rules13, I think...


.

term API in javascript, eulermoz

TimBL: played with the term API in javascript...
... worked with Jim Ley's RDF parser...

<timbl> http://www.w3.org/2005/10/ajaw/rdf/parser.js

<timbl> http://www.w3.org/2005/10/ajaw/rdf/term.js

<timbl> http://www.w3.org/2005/10/ajaw/tab.html

[there's an eulermoz... I wonder how it relates]

<timbl> http://www.w3.org/2005/10/ajaw/rdf/match.js

http://sourceforge.net/projects/eulermoz

hm... empty

<timbl> http://cvs.sourceforge.net/viewcvs.py/*checkout*/eulermoz/eulermoz/emoz.html?rev=1.6

<timbl> http://cvs.sourceforge.net/viewcvs.py/eulermoz/eulermoz/

<timbl> http://cvs.sourceforge.net/viewcvs.py/eulermoz/eulermoz/js/parser/n3/

"We please to announce we commit N3 scanner first version."

<timbl> Age: 14 months

<timbl> http://www.nongnu.org/samizdat/

GRDDL support in cwm; xslt engines

DanC: I almost put GRDDL support in cwm

TimBL: depends on XSLT.... hmm...

DanC: 4suite might have one, but I'd use libxslt, with a --grddl or --xslt flag, ala the way crypto stuff crosses the pure-python barrier

<DanC_> RFE: GRDDL support 09 Jun 2004

PAW demo: proof gen/checking

<timbl> We are still I think at the point that the cwm --why doesn't work on DanC's machine, doe son Vlad's and Tim's

<DanC_> yeah; I haven't summonned the energy to chase after that heisenbug

DK: wondering what to do next... we're using a fake proof so far..

DC: since the proof check doesn't work on my desk, maybe you could do the next step? I sent mail about where I was stuck:

Subject: proxy stuck: trouble figuring out cwm proof gen API

Date: Fri, 28 Oct 2005 17:32:12 -0500

Subject: Re: proxy stuck: trouble figuring out cwm proof gen API

Date: Thu, 03 Nov 2005 16:57:58 -0600

Committed revision 160.

http://www.policyawareweb.org/2005/demo/pfproxy.py

TimBL: I'd like to track that down, using more and more debug output

<DanC_> (I'd rather turn all the debug output into unit tests... hmm...)

<timbl> if it is a particular combination of features which breaks then unit tests won't find it

DK: ok, I see the mail; I think I can take the next step... I'm not sure how to check the proof...

<vlatko> for checking:

<vlatko> python ~/w3ccvs/WWW/2000/10/swap/check.py -v50 -c40 ,pf.n3 2>,pfcheck

<vlatko> generating a proof:

<vlatko> python pfproxy.py --test-rein 2>,errs >,pf.n3

VK: I've run the checking stuff. it works for me

<timbl> check -v50 < ,pf.n3 > result.n3

cwm/pychinko integration

DC: vlad, are you working on using the rete inside cwm?

VK: thinking about it...
... was thinking about static analysis to see if rete can handle it

DC: how about just a --use-rete flag and crap out of it won't work?

VK: ok, that's even easier

TBL: I think yosi's latest work starts with a KB, looks for rules, and builds a rete

DK: yeah

VK: and then put it back?

TBL: i think conclusions from the rete are handled just like cwm: either back in the KB or in a new formula [?]

VK: maybe I can contact yosi about it

Term API

DK: anything on the term api/interface?

<DanC_> re term API, http://www.w3.org/2000/10/swap/rdf2dot.py v 1.5 2005/11/17 15:42:10

<DanC_> cwm API notes:

<DanC_> Symbol.uriref() vs uriref2()... why not an optional arg?

<DanC_> http://www.w3.org/2000/10/swap/pim/toIcal.py toIcal.py -- convert RDF to iCalendar syntax

DK: I've been tracking http://esw.w3.org/topic/WebDataInterfaceDesign

DC: ok, I can scribble some article ideas there

<eikeon> We should be able to converge on API enough to interop on scripts such as rdf2dot.py -- can start by comparing the differences in the API the scripts expose.

next meeting

regular schedule calls for 7 Dec

DanC on a plane back from TAG meeting about that the time

TimBL: I'm ok for 7 Dec 14:30ET

<vlatko> I'm ok, too

VK: I think I'm available, though end-of-semester foo creates risks
... 27 Dec I take holiday

<vlatko> till 17th Jan.,

<vlatko> .

ADJOURN.


DanC
Minutes formatted by David Booth's scribe.perl version 1.127