W3C

- DRAFT -

RIF Telecon 22 Apr 2008

22 Apr 2008

Agenda

See also: IRC log

Attendees

Present
Hassan_Ait-Kaci, Mike_Dean, Harold, ChrisW, josb, DaveReynolds, GaryHallmark, Sandro, AxelPolleres, MichaelKifer
Regrets
IgorMozetic, AdrianPaschke, LeoraMorgenstern
Chair
Chris Welty
Scribe
GaryHallmark

Contents


 

 

<sandro> Hi, Harold, sorry no. Looking now.

<sandro> Harold, I'm not sure I understand. You're saying you and Michael made changes at the same time and that, unlike usually, some of the changes were silently lost?

<sandro> Harold, I replied to your e-mail

<ChrisW> Scribe: GaryHallmark

Admin

<Harold> Sandro, my changes were finished, everything was fine in Michael's first round on top of mine, but then my changes were apparently silently lost in his second round on top of mine.

<ChrisW> PROPOSED: Accept minutes of Apr 15 telecon

<ChrisW> http://lists.w3.org/Archives/Public/public-rif-wg/2008Apr/att-0092/15-rif-minutes.html

<ChrisW> RESOLVED: Accept minutes of Apr 15 telecon

Harold: Axel wants to discuss DTB

F2F10

Actions review

Jos: no reply to email about functions and operators

Sandro: will send email

<Harold> Instead of a two-step interpretation for builtin-predicates Itruth ? (Iexternal(s)) (the composition of Itruth and Iexternal(s), a truth-valued function), we defined a single Interpretation, Iexternal(s) D* ? TV here

Axel: need to iterate with Michael about semantics of builtin predicates

<Harold> http://www.w3.org/2005/rules/wiki/DTB#Semantics_of_Built-ins

F2F10

Sandro: people should indicate f2f10 plans using survey. Sandro will add link to survey page

<AxelPolleres> may 10th is fine.

<sandro> http://www.w3.org/2002/09/wbs/38457/f2f10/

DTB

Axel: will discuss with Michael and produce stable DTB by Monday

LC Todo: Clear items from CP

<ChrisW> http://www.w3.org/2005/rules/wiki/ToDo_before_BLD_last_call

Chris: has prepared a list (rather long) of pending issues for last call

<ChrisW> PROPOSAL: ISSUE-37 is not in critical path for BLD

<ChrisW> RESOLVED: ISSUE-37 is not in critical path for BLD

Chris: issue 37 is Interoperation with Object-Oriented XML
... issue 38 is Interoperation with Arbitrary XML (like SAX/DOM)

<ChrisW> PROPOSAL: ISSUE-38 is not in critical path for BLD

<ChrisW> RESOLVED: ISSUE-38 is not in critical path for BLD

Chris: issue 48 is classification concepts in Core
... Core issues is not on critical path for BLD

<ChrisW> PROPOSAL: ISSUE-48 is not critical path for BLD

<ChrisW> RESOLVED: ISSUE-48 is not critical path for BLD

Chris: issue 46 is Modules in RIF
... Modules are an extension of "import"

<ChrisW> PROPOSED: ISSUE-46 is not critical path for BLD

<ChrisW> RESOLVED: ISSUE-46 is not critical path for BLD

<ChrisW> http://www.w3.org/2005/rules/wiki/ToDo_before_BLD_last_call

Jos: would like to discuss imports

chris: ok, first let's quickly go over the entire list
... added new issues: comments and preservation of metadata
... does BLD have profiles?
... extensibility, fallbacks
... import, include
... 4 syntax issues: naming, striping, XML-RDF, shortcuts in presentation syntax

metadata issues

<Harold> http://www.w3.org/2005/rules/wiki/BLD#EBNF_for_the_RIF-BLD_Rule_Language

<Hassan> +1 with ChrisW

Chris: keep condition and rule syntax together

<josb> http://www.w3.org/2005/rules/wiki/Annotations

Chris: Jos' syntax has a <Rule> element, curernt syntax has <Group> as container for rules

Jos: my metadata syntax does not use frame syntax

<Harold> "One man's metadata is another man's data."

Jos: would like to distinguish between singleton rulesets and rules
... i.e. would like metadata on rules, not only on singleton rulesets

mkifer: thinks the Group container is ok

<Harold> The new proposal follows Occam's razor: http://en.wikipedia.org/wiki/Occam's_Razor

mkifer: also, use of Frames is better for rule languages that don't support RDF

jos: cannot immediately process frame metadata -- would need an extra step anyway to extract metadata to a separate ruleset

<Harold> Jos, this is not an extraction step in the sense of information extraction. It's just retrieving the filler of the role <meta>.

mkifer: but at least with Frames you don't need a mapping from RDF->Frames to process metadata w/rules

<Harold> That filler, then, is in our own RIF language.

dave: agrees that a Rule should have metadata w/o having to wrap in a Group
... RDF syntax seems to allow nested metadata, but not Frames

chris: the 2 syntaxes are close -- primarily whether metadata can be attached to a group vs a single rule
... document => ruleset, group => rule, same number of grammar rules

jos: no way to group rules vs no way to express metadata on a single rule
... difference between a rule and a group of one rule

hassan: why can't we attach metadata to both Rule and Group?

<sandro> Chris: how about: keep the group element (with some name) and add back in the "rule" terminal symbol

chris: can we merge the proposals by adding <Rule> tag that accepts same metadata as <Group>?

mkifer: strongly objects

<josb> Formula?

mkifer: term "rule" is misleading for FLD

chris: what about "formula" instead of rule?

hassan: but the R in RIF is for Rule

<sandro> how about "Item" -- it's as neutral as "Group"

mkifer: what about queries, constraints

<Harold> Here's an example of a singleton Group:

<Harold> Group "http://sample.org"^^rif:iri["dc:publisher"^^rif:iri->"w3:W3C"^^rif:iri]

<Harold> (

<Harold> Forall ?item (

<Harold> "cpt:reject"^^rif:iri("ppl:Fred"^^rif:iri ?item) :- "cpt:unsolicited"^^rif:iri(?item)

<Harold> )

<Harold> )

<AxelPolleres> what about "fiffi"?

<sandro> or "Entry"

mkifer: using "formula" requires reworking existing use of formulas in documents

hassan: groups are used for 2 purposes and should just be used for grouping rules rather than providing a place to attach metadata to a single rule

chris: what is the objection to adding a terminal for a single rule/formula?

harold: don't want a mandatory terminal

jos: ok, as long as it is possible
... different terminal symbol depending on whether the content is singleton or not

<sandro> PROPOSED: add an optional terminal like "Rule" or "Formula" or something to wrap a single formula, for adding metadata

<ChrisW> RULE ::= 'Forall' Var+ '(' CLAUSE ')' | CLAUSE

<sandro> PROPOSED: add an optional terminal like "Rule" or "Formula" or something to wrap a single formula (called non-terminal RULE in BLD draft), for adding metadata

<ChrisW> RULE ::= Rule IRIMETA? ('Forall' Var+ '(' CLAUSE ')' | CLAUSE)

<MichaelKifer> rule is unacceptable from the fld point of view and also from the point of view of dialects that allow constraints and queries

<ChrisW> RULE ::= ['Rule' IRIMETA?]? ('Forall' Var+ '(' CLAUSE ')' | CLAUSE)

<Hassan> yes

<ChrisW> RULE ::= ['Formula' IRIMETA?]? ('Forall' Var+ '(' CLAUSE ')' | CLAUSE)

mkifer: "formula" slightly better than "rule" but still seems like "syntax pollution"

<Harold> <Group card="1">

<Harold> <meta>

<Harold> <Frame>

<Harold> <object>

<Harold> <Const type="rif:iri">http://sample.org</Const>

<Harold> </object>

<Harold> <slot>

<Harold> <Prop>

<Harold> <key><Const type="rif:iri">dc:publisher</Const></key>

<Harold> <val><Const type="rif:iri">w3:W3C</Const></val>

<Harold> </Prop>

<Harold> </slot>

<Harold> </Frame>

<Harold> </meta>

<Harold> <sentence>

<Harold> <Forall>

<Harold> <declare><Var>item</Var></declare>

<Harold> <formula>

<sandro> -1 using attribute like that

<Harold> <Implies>

<Harold> <if>

<Harold> <Atom>

<Harold> <op><Const type="rif:iri">cpt:unsolicited</Const></op>

<Harold> <arg><Var>item</Var></arg>

<Harold> </Atom>

<Harold> </if>

<Harold> <then>

<Harold> <Atom>

<Harold> <op><Const type="rif:iri">cpt:reject</Const></op>

<Harold> <arg><Const type="rif:iri">ppl:Fred</Const></arg>

<Harold> <arg><Var>item</Var></arg>

<Harold> </Atom>

<Harold> </then>

<Harold> </Implies>

<Harold> </formula>

<Harold> </Forall>

<Harold> </sentence>

<Harold> </Group>

harold: use of "cardinality" attribute could be used instead of Group + Formula

sandro: singleton group is not the same as its content

hassan: production rules each have a name. Odd to have to wrap each in a Group in order to carry the name metadata

<ChrisW> RULE ::= ['Formula' IRIMETA?]? ('Forall' Var+ '(' CLAUSE ')' | CLAUSE)

chrisw: who objects to this?

<MichaelKifer> -1

<sandro> MichaelKifer: instead of "Group" say "Block" -- something that can easily have one thing.

<sandro> Hassan: call it "Meta"

mkifer: Group has just one purpose - to carry metadata. There are no modules in RIF just yet.

<sandro> MichaelKifer: Fine!

<Harold> <Meta> would be fine with me, too.

<ChrisW> Group ::= 'Meta' IRIMETA? '(' (RULE | Group)* ')'

<Harold> We would just need to change the lower-case <meta> role tag.

<Harold> Meta ::= 'Meta' IRIMETA? '(' (RULE | Group)* ')'

<Harold> Meta ::= 'Meta' IRIMETA? '(' (RULE | Meta)* ')'

jos: not so happy because it doesn't change the fact that a single rule can't have direct metadata

<Harold> The XML above example would change to <Meta><annotation>...</annotation><sentence>...</sentence></Meta>.

<Hassan> I give up ... let us use a meta wrapper to introduce meta stuff around anything

<ChrisW> RULE ::= ['Formula' IRIMETA?]? ('Forall' Var+ '(' CLAUSE ')' | CLAUSE)

<ChrisW> Group ::= 'Meta' IRIMETA? '(' (RULE | Group)* ')'

<Harold> Meta ::= 'Meta' IRIMETA? '(' (RULE | Meta)* ')'

chris: take strawpoll about preferences

<ChrisW> "FORMULA" Proposal

<Hassan> +1 although I would use Meta rather than Formula

<MichaelKifer> -1

<DaveReynolds> +0.5

+1 but call it Rule in honor of RIF

<sandro> NONBINDING-PROPOSED: add a terminal for individual rules

<josb> +0.5 would rather get rid of Group altogether

<mdean> +1

<sandro> +1

<Harold> -0.5

<AxelPolleres> +0.5

<josb> (would also prefer calling it "Rule")

<ChrisW> "Meta" proposal

<Harold> +1

<sandro> NONBINDING-PROPOSED: renamed "Group" to "Meta"

<Hassan> +0.5

<josb> -1

<sandro> +0

<MichaelKifer> +1

<DaveReynolds> -0

<mdean> 0

-1 just attach metadata to ruleset as Jos proposed

there's always Ralf Nader :-)

<Harold> The attachment point for metadata: The set of rules defining one predicate are sometimes called a 'definition' (in Prolog are called a 'procedure').

Summary of Action Items

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.133 (CVS log)
$Date: 2008/04/22 16:29:13 $

Scribe.perl diagnostic output

[Delete this section before finalizing the minutes.]
This is scribe.perl Revision: 1.133  of Date: 2008/01/18 18:48:51  
Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/

Guessing input format: RRSAgent_Text_Format (score 1.00)

Succeeded: s/want/wants/
Succeeded: s/can/cannot/
Succeeded: s/can't/can't we/
Found Scribe: GaryHallmark
Inferring ScribeNick: GaryHallmark
Default Present: Hassan_Ait-Kaci, Mike_Dean, Harold, ChrisW, josb, DaveReynolds, GaryHallmark, Sandro, AxelPolleres, MichaelKifer
Present: Hassan_Ait-Kaci Mike_Dean Harold ChrisW josb DaveReynolds GaryHallmark Sandro AxelPolleres MichaelKifer
Regrets: IgorMozetic AdrianPaschke LeoraMorgenstern
Agenda: http://lists.w3.org/Archives/Public/public-rif-wg/2008Apr/0104.html
Got date from IRC log name: 22 Apr 2008
Guessing minutes URL: http://www.w3.org/2008/04/22-rif-minutes.html
People with action items: 

[End of scribe.perl diagnostic output]