Re: [RIF] Extensible Design: Horn semantics and syntax actionscompleted

Boley, Harold wrote:
> 
> I don't remember any extended discussion of language information.
> Regarding the XML syntax, I think for such purposes we could reuse
> the existing attributes from relevant W3C specs within the <Data>
> element.

Dan, could you outline an use case for language information?

> [...]
> 
> Allowing <Atom> outside an Implies (e.g., directly in a Rulebase)
> is what we intended.

You mean, as a fact?

I would prefer (see [1]) that the XML syntax of a rule something like
<Rule>
   <RuleVariables>
     <!-- list of declaration of (universally quantified?) rule 
variables -->
     ...
   </RuleVariables>
   <Antecedent>
     <!-- Condition, e.g. body in the case of a Horn rule -->
     <And>
       <Atom>
        ...
       </Atom>
       ...
     </And>
   </Antecedent>
   <Consequent>
     <!-- Conclusion, e.g. head in the case of a Horn rule -->
     ...
   </Consequent>
</Rule>

where only the consequent is mandatory, a rule with a consequent only 
being a fact, and rules being collected (and implicitely AND'ed) in a 
ruleset (or rulebase, or rule programme, whatever you name it).

Dan's example (from [2]) would look something like:
<RuleSet>
   <Fact>
      <!-- where Fact is a shortcut for a rule with no variable and no 
antecedent -->
      <!--   :Joe :likes :easterEggs . -->
      <Rel iri="http://www.w3.org/2000/10/swap/test/rules-simple.n3#likes />
      <Ind
iri="http://www.w3.org/2000/10/swap/test/rules-simple.n3#Joe" />
      <Ind iri="...easterEggs :>
   </Fact>
   <Rule>
    <RuleVariables>
      <!-- declaration of var x and its domain -->
      ...
    </RuleVariables>
    <Antecedent>
      <Atom>
       <!--  {  :Joe :likes ?y } -->
       <Rel
iri="http://www.w3.org/2000/10/swap/test/rules-simple.n3#likes" />
       <Ind
iri="http://www.w3.org/2000/10/swap/test/rules-simple.n3#Joe" />
       <Var>y</Var>
     </Atom> {  :Joe :likes ?y }
    </Antecedent>
    <Consequent>
     <Atom>
       <!-- { ? :madeof :chocolate } -->
       <Rel
iri="http://www.w3.org/2000/10/swap/test/rules-simple.n3#madeof" />
       <Var>y</Var>
       <Ind
iri="http://www.w3.org/2000/10/swap/test/rules-simple.n3#chocolate" />
     </Atom>
    </Consequent>
   </Rule>
</RuleSet>

Christian

[1] http://lists.w3.org/Archives/Public/public-rif-wg/2006Jul/0048.html
[2] http://lists.w3.org/Archives/Public/public-rif-wg/2006Sep/0072.html

Received on Tuesday, 3 October 2006 14:50:00 UTC