- From: Dan Connolly <connolly@w3.org>
- Date: 11 Apr 2002 14:40:43 -0500
- To: www-xml-query-comments@w3.org
- Cc: Dan Connolly <connolly@w3.org>
Back in Feb 2001, I noticed the inference rules in some XQuery specs, and asked how they were produced; I'm hoping to use the inference rules in proof systems like larch/coq and so on... http://lists.w3.org/Archives/Public/spec-prod/2001JanMar/0024.html I was looking at the specs again today... http://www.w3.org/TR/2002/WD-query-semantics-20020326/ and Max showed me how they're produced. The source looks like, for example: --8<-- <infergr> <infer> <prejudge> <clause> <expression>(&xq_envv; of &xq_envdyn;)(&gr_Variable;) = &xd_val; </expression> </clause> </prejudge> <postjudge> <clause> <environment>&xq_envdyn;</environment> <expression>&gr_Variable; ⇒ &xd_val; </expression> </clause> </postjudge> </infer> </infergr> --8<-- That's got more structure than the HTML markup, but it's still not enough to convert to a logical formula without character-level parsing of the <expression>s. Contrast with the RELAX-NG formal semantics http://www.oasis-open.org/committees/relax-ng/proofsystem.html where the XML source contains stuff usable as logical formulas pretty much as is: --8<-- <rule name="oneOrMore 1"> <judgement name="match"> <var range="env"/> <var range="namespaceMap"/> <var range="att"/> <var range="mixed"/> <var range="pattern"/> <var range="keybag"/> <var range="keyrefbag"/> </judgement> <judgement name="match"> <var range="env"/> <var range="namespaceMap"/> <var range="att"/> <var range="mixed"/> <element name="oneOrMore"> <var range="pattern"/> </element> <var range="keybag"/> <var range="keyrefbag"/> </judgement> </rule> --8<-- Please consider something like that for the Query specs. -- Dan Connolly, W3C http://www.w3.org/People/Connolly/
Received on Thursday, 11 April 2002 15:40:10 UTC