26 Feb 2007

See also: IRC log


AllenGinsberg, JosDeBruijn, MichaelKifer, AndreasHarth, JohnHall, DaveReynolds, BobMoore, PaulVincent, HaroldBoley, SandroHawke, ChrisWelty, CSMA, DeborahNichols, LeoraMorgenstern (remote), MikeDean (remote), Hassan (remote)

Chris Welty and Christian de Sainte Marie
Paul Vincent, Bob Moore, Andreas Harth, Dave Reynolds


<ChrisW> ok, we are mostly through the morning technical problems

<ChrisW> a couple more minutes to start the phone call

<LeoraMorgenstern> I am still writing up my review of the UCR draft; the review turned out to be longer than I expected.

<LeoraMorgenstern> Just wanted to let you know --- it is coming soon (in an hour or so).

Agenda change - start with UCR this am, then review core draft in pm

UCR Review

csma Christian: comment slides for UCR will be posted to Wiki

<sandro> scribenick: PaulVincent

<sandro> zakim. who is here?

Reviewing Adrian's comments...

<LeoraMorgenstern> I disagree with that comment of Adrian

<LeoraMorgenstern> There are qutie a few differences between the two drafts

Discussion: rule language examples needed in UCR?

<LeoraMorgenstern> q

<LeoraMorgenstern> I think there should be specific examples in specific languages

Jos: RIF language in development; UCR should drive rule language

<LeoraMorgenstern> There could be a disclaimer saying that these examples don't commit us to any particular language, and

Dave: per Adrian need concrete examples to drive development

<LeoraMorgenstern> don't mean that we are endorsing any language

Leora: examples needed as intermediate step to show meaning

Michael: should postpone until after BNF resolved

Chris: could use existing rule languages

<LeoraMorgenstern> Chris, I agree.

<LeoraMorgenstern> We should use existing rule languages.

<LeoraMorgenstern> For this phase, anyway.

Chris: 2 points: use core syntax for use cases AND use existing languages for use cases

<LeoraMorgenstern> We on Zakim can't hear what is going on.

Allen: should wait until we can handle use cases in RIF

<LeoraMorgenstern> Can the speaker make sure to speak into the microphone on the phone?

Jos: use cases are not specific to phase 1 so no issue that core cannot handle them

<sandro> can you head csma right now?

<sandro> can you hear csma right now?

<sandro> LeoraMorgenstern?

Christian: good reason is for multiple languages to show RIF interchange use case

Allen: issue that use case doc implies commitment ie requirement

<sandro> (or Dave, now? Dave turned his mic on.)

Dave: examples in languages would provide test cases not use cases

<LeoraMorgenstern> (Sandro, I can hear csma and chris, and dave, but not the others.)

Bob: no examples in use cases make them difficult to understand but with disclaimer

<LeoraMorgenstern> +1 with Sandro

Sandro: lack of examples made understanding a challenge; commitment not an issue as there is a seperate requirements section

<LeoraMorgenstern> I just emailed out my preliminary comments.

<LeoraMorgenstern> One of the points I make in the comments

<LeoraMorgenstern> that we really can't have a comprehensive set of requirements

<LeoraMorgenstern> until we step through some of the use cases in some detail.

<LeoraMorgenstern> I understand Dave's point about having abstract use cases.

Dave: went from 50 concrete to abstract examples but then inventing rules for these may be invalid

<LeoraMorgenstern> But on the other hand, the requirements, as they are, seem very ungrounded.

John: suggest leave as is but change natural language rules to links to real language examples

<ChrisW> http://www.w3.org/2005/rules/wg/wiki/F2F5?action=AttachFile&do=get&target=Adrian%27s+review+of+UCR

Discussion: Adrian's for UC1...

Chris: this (+UC2) are requests for concrete examples

Discussion: Adrians comments for UC3:

Allen: can add links to explaining use of OWL data

Dave: use of OWL should be implicit in the use case referencing OWL data

Christian: should be more explicit

Chris: decision on whether to add more on OWL is up to Allen

Christian: 2nd point: need for imperative semantics: this use case is for an imperative semantics not for multiple semantics

Chris: ... but this problem can be solved in multiple ways

Dave: 2 different requirements: different semantics + coverage

Allen: requirement? RIF must be able to formulate different semantics...

Dave: different semantics ... this is a global requirement from all not individual use cases

Chris: Prefer explicit requirements supported by explicit use cases
... 2nd point left for Allen to consider
... Adrian's comments on UC4

Welcome to Harold

Leora: all these comments point to lack of explicit examples - lack of specifity - eg where author's understanding relates to a rule language implementation but this is not explicit

Dave: the author is summarizing this info

Leora: this is an authors claim that is not readable from the UCR text - ie unsubstantiated

Harold: could use a pseudo rule language on some use cases

Chris: this particular UC4 comment could be addressed in text

Christian: there is a need to cover industry-specific data models - ie requirement is to support externally defined data models

<LeoraMorgenstern> +1 with Christian

<DaveReynolds> +1

Christian: proposing a new requirement to be added: that RIF must support externally-specified data models eg OWL, RDF XML data models etc

<LeoraMorgenstern> Christian's proposal for a new requirement brings up another issue:

<LeoraMorgenstern> how, or whether, we know that our list of requirements is in any way comprehensive.

Leora: note we cannot measure whether our requirements are complete
... Our requirements are incomplete eg lack of round-tripping not mentioned: how do we know we have a complete set of requirements?

<AxelPolleres> don't really understand that: "RIF must support externally-specified data models eg OWL, RDF XML data models etc"

Dave: the requirements are of the RIF WG: completeness is per the WG members

<sandro> +1 Dave (Completeness of requirements is a social phenomonon)

Chris: if requirements are found missing then they should be submitted for discussion

Leora: this is a reason for explicit rule lang examples in use cases to drive additional requirements - requirements are discovered during a project

Chris: we expect to find new requirements as we progress

Christian: round tripping was moved to an issue; to be discussed and may become a requirement


<Hassan> Is the phone link up yet?

<ChrisW> we are on a break

<Hassan> OK - but is there a phone number for me to call?

<ChrisW> the usual phone number and channel

<Hassan> Thanks.

<ChrisW> we are on break until the hour

<meeting reconvening>


Revised agenda: now continuing UCR discussion

<scribe> New agenda on Wiki - http://www.w3.org/2005/rules/wg/wiki/F2F5

<LeoraMorgenstern> q

Chris: new requirements should be proposed + championed eg round-tripping (already an issue) eg externally-specified data models

Leora: the UCR connection to requirements appears "weak"
... need para that the requirements are illustrative in use cases eg other requirements may be covered by each use

Chris: ... ie connections are not necessarily complete nor exclusive

Allen: Also could add motivations in requirements to refer back to use cases
... ... and not do motivations in use cases

Dave: this would make use cases self contained

<Hassan> OK I will rename it.

Admin issue: attachments on Wiki are currently powerpoint

Allen: moving motivations would be a major change and delay UCR

<LeoraMorgenstern> 1

<LeoraMorgenstern> +1

Chris: no objections to moving motivations to UCR --> ACTION move motivations to requirements

Allen: motivations should form part of intro to requirements

<scribe> ACTION: Allen to redo UCR 2.11 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action01]

<rifbot> Created ACTION-234 - Redo UCR 2.11 [on Allen Ginsberg - due 2007-03-05].

<ChrisW> ACTION: Allen to move motivqte links to requirements section [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action02]

<rifbot> Created ACTION-235 - Move motivqte links to requirements section [on Allen Ginsberg - due 2007-03-05].

Leora: UC5: needs intro explanatory parameter

<scribe> ACTION: Leora to propose new intro para for UC5 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action03]

<rifbot> Created ACTION-236 - Propose new intro para for UC5 [on Leora Morgenstern - due 2007-03-05].

<ChrisW> ACTION: Allen to reorganise document and move 2.11 to an intrduction/use instruction for UC [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action04]

<rifbot> Created ACTION-237 - Reorganise document and move 2.11 to an intrduction/use instruction for UC [on Allen Ginsberg - due 2007-03-05].

<ChrisW> ACTION: Leora to propose new text for UC5 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action05]

<rifbot> Created ACTION-238 - Propose new text for UC5 [on Leora Morgenstern - due 2007-03-05].

<Hassan> Who is speaking?

John Hall speaking

John: him + Said offer to rewrite examples in near natural language + RuleML

Chris: Concrete examples is v good, just not being put into UCR

Core Review

<ChrisW> scribe: Bob Moore

<sandro> scribenick: BobMoore

Review of CORE

cleaning of text

Chris: need to clarify the connection between CORE and the Web more clearly

Paul: Is RIF really to do with Web?
... RIF is being developed under umbrella of Sematic Web, but has connotations whihc are outside what goes on in Sematic Web

<PaulVincent> My confusion related: "connection with web" which maybe should read "use of web technologies"

<sandro> But Hassan, you don't scope constants, do you?

Hassan: agree that RIF extends beyond Web - using URI/XML helps with scoping, but using URIs for everything is not adequate

<Hassan> Not constants - URIs are fine for that, although even there, it may be needed

<sandro> +1 Chris lets avoid "webize" since it suggests moving to the web.

<sandro> (as opposed to being there already)

<sandro> Paul: When I hear "Web Language" that makes me think this is only for the web.

Chris: can fix interpretation with some kind of introductory remarks

Csma: need to have unique naming requirements - and choosing URI and XML gives this and is web compatible

<Harold> We may want to look into XML Schema Part 2's taxonomy of http://www.w3.org/TR/xmlschema-2/#built-in-datatypes

Harold: consult with other groups to get best terminology for web enabled (instead of webization)

<Hassan> So "webizing" means using the XML Schema Data Type vocabulary? If so - this is fine.

Harold: part of idea of URIs is to give a unique naming so different representation of constant can be mapped to single URI/value

standard use of URIs in RDF is to define abstract resources

need to clarify acitve vs passive use of URIs as discussed by Harold

Chris: Need to fix up the connection of RIF to Web to make sure people understand the relationship

Csma: Many potential users of RIF do not think of themselves as Web (or Semantic Web) users

<Hassan> + with CSMA's summary

<Harold> Hassan and Christian seem to say that URIs should be optional -- this is what we assumed: names can have optional URIs.

<Harold> Paul, terminological assumptions are partially covered by RIFRAF.

Paul: there are other assumptions which we are not making clear

<Hassan> No I do not mean that URIs should be optional. They should not be *all*.

Csma/Micheal: Feel these items are already summarised in CORE document

Paul: Will try and clarifiy what shortcomings he sees in the document at the moment

<ChrisW> ACTION: MichaelK to change wbeizing into RIF AS A WEB LANGUAGE\ [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action06]

<rifbot> Sorry, couldn't find user - MichaelK

<ChrisW> ACTION: MichaelK to propose a clarification that RIF uses web technology to slove requirements that are not necessarily specific to web usage [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action07]

<rifbot> Sorry, couldn't find user - MichaelK

<ChrisW> ACTION: MichaelKiefer to change webizing to RIF as a web language [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action08]

<rifbot> Sorry, couldn't find user - MichaelKiefer

Chris: Moving on to looking at URIs as built in sort

<ChrisW> ACTION: MichaelKifer to change "webizing" to RIF as a web language [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action09]

<rifbot> Sorry, couldn't find user - MichaelKifer

Chris: Sorts are treated in a somewhat confusing in the document

<Harold> The clarification could distinguish between: (1) passive URIs (semantically self-denoting, like strings), corresponding to XML Schema's anyURI. (2) active URIs (semantically denoting some other individuals, predicates, or KBs), corresponding to RDF's and N3's URIrefs.

Micheal: Number of sorts is not fixed, may allow users to add additional sorts

Chris: Concerned about adding sorts because may end up even having to qualify opeator names
... has given up on beautiful syntax, but does everything need to have a data type associatied?

<Harold> But we wanted to postpone all details to WD2, but meanwhile consult with other W3C (Semantic Web) WGs etc. about naming methods, since naming methods are not an exclusive aspect of RIF.

Michael: Probably can have abbreviated syntax for built in primitive types

<Hassan> Michael is hardly audible on the phone... :-(

Michael: how can you tell the difference between a URI and a string

Are all constants URIs?

<Harold> Meanwhile, Michael could refine the multi-sorted semantics to distinguish passive and active URIs.

Chris: People do look at XML all the time - RIF does not need to be beautiful, but it ought to be at least manageable

<Hassan> All constants CANNOT be URIs (take the ints or even better the floats)

Harold: Wants RIF to be beautiful - people really do read and edit XML documents

Csma: Co-workers to whom I asked don't like to look at XML directly

<Hassan> (I am one of CSMA's cowworker! :-)

Chris: Two camps people who like to look at XMl and people who don't - probably need to satisfy both

<Harold> RIF and other XML languages can be at least beautiful as Lisp, even more so for RIF because we address formal KR folks who are used to write prefix-notation formulas.

<Hassan> Indeed- aren't Qnames and that sort (!) of things all we need?

<ChrisW> Hassan, I (csma) said: "the XML gurus I asked at ILOG say..." :-)

Chris: concerned about having tags on all items in XML description

Hassan: XML needs to be verbose to put accoss the sort information

<Harold> P(x) => Q(x) in striped XML: <Implies> <if> <Uniterm> <Con sortal="...datatype...">P<Con> <Var>x</Var> </Uniterm> </if> <then> <Uniterm> <Con sortal="...datatype...">Q<Con> <Var>x</Var> </Uniterm> </then> </Implies>

Csma: Wants to balance how simple XML is against how easy it is to use in practical systems

<Hassan> I cannot hear the speaker :-(

<ChrisW> Hassan, the discussion was again about computer scientist confusing sorts with sorting

<Deborah_Nichols> Hassan, can you hear now?

<Hassan> Better thanks

<Deborah_Nichols> Harold's mike was off before; it will be on now.

<Hassan> ???

<Deborah_Nichols> On the phone: just let us know if you have further problems hearing.

The idea of computer scientists confusing sorts with sorting is fanciful

<Harold> OK, Chris and Hassan: sortal-->sort

No more sortals please

<sandro> (wide agreement not to use the term "sortal" this way.)

Csma: can you have predicate names which look like URIs which might be confused wiht a URI

<sandro> Jos: Yes, there will be predicate names that conform to the URI syntax but are not intended to be used as URIs.

<Harold> Local URI's can be used (N3's convention of '#' with nothing to its left): <Con sort="#datatype">P<Con>

<Harold> Global URI's <Con sort="http://www.ibm.com/datatype">P<Con>

Bob: Examples might make more sense if separate out declaration of items (like predicates) from their use in "rules"

<Harold> Fragment identifiers.

Scooting ahead in anticipation of lunch

Need to add in better definition of scoping rules

Last line comment from Jos on 1.1

Jos: Intended models of Rules - is this out of place in the current document
... Is DTD/schema premature?

Csma: Want to avoid DTD because it says a lot more than example XML documents

<Hassan> I agree with CSMA ...

<Harold> Validation already helped to update the examples. I dont care if its DTD, Relax, XSD.

Chris/Hassan/Csma: want to clarify that the DTD/XML schema bear no relation to what the final version might look like

Link to draft DTD is to be removed

<sandro> RESOLVED: remove link to draft DTD from Core

general comment - markup on the document does come out when printed

<sandro> (because it's background-color)

Csma: Need to determine what is to be done with marked up sections. Specifically section on intended models of rules

Michael: suggest move blue-heighlighted sections to end-notes

Harold: will need to decontextualise the moved items

<sandro> ACTION: mikier to move blue sections to end notes [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action13]

<rifbot> Sorry, couldn't find user - mikier

<Hassan> ok bon appetit!

<sandro> ACTION: mkifer to move blue sections to end notes [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action14]

<rifbot> Created ACTION-240 - Move blue sections to end notes [on Michael Kifer - due 2007-03-05].

core meta-model for WD1

<ChrisW> we are trying to connect the phone

<ChrisW> Scribe: Andreas Harth

<ChrisW> scribenick: aharth

<aharth_scribe> ~ scribenick: aharth_scribe

<aharth_scribe> scribenick: aharth_scribe

<ChrisW> Meeting: RIF 5th F2F

<ChrisW> Chair: Christian de Sainte Marie

<Hassan> I cannot here anything on the phone - is there a problem?

<Elisa> Hassan -- Mike Dean and I are also on, and silent. Chris is attempting to connect us.

<Hassan> ok - thanks

<sandro> placing phone call now.

<Hassan> yes

csma: slides summarising the comments of participants about the metamodel are on the wiki
... one issue is disjunction in the condition, anonomous variables, multiplicity in the meta-model (for equal construct), also for naming part of rules/terminology

<ChrisW> the slides are now on the wiki

<Harold> Meanwhile, Michael explained the fundamental logical Core tautology (h ? b v c) = ((h ? b) v (h ? c)).

Jos: for the core, disjunctions can be rewritten to Horn rules
... but not necessarily in dialects that extend core

<Harold> I meant (h <- b v c) = ((h <- b) v (h <- c)).

harold: need a rule with head to perform the translation, rewriting not trivial for just the condition part

<Harold> Hassan, I agree, and we never wanted to be minimal.

mkifer: might need union in the condition language then to express queries

csma: to be able to use core as foundation for other dialects, core should be minimal? is that true?

hassan: it's a compromise, but where to draw the line? disjunction would be ok to have in core

jos: in dialects with rule ordering, you cannot just rewrite the disjunction at the receiver while preserving semantics

csma: there has to be a transform on one side for disjunctive rules: the burden of transformation should be on the sender's side, not on the receiver's

sandro: how does the transformation would affect round-tripping?

bmoore: from a practical perspective, people using rif will have problems with disjunctions

<sandro> (that answer on Round-Tripping was that we have these problems all over the place anyway.)

csma: in core, disjunctions are just syntactic sugar

<Elisa> note that for ODM, we agreed to support forward and reverse engineering, but not round-trip, as support for logical equivalence was possible but not necessarily round-trip engineering

harold: but not when using conditions as a query language

mkifer: if we disallow disjunctions, the dialect that adds queries have to talk about collections of conditions

jos: there's already a query language in the semantic web space

<Harold> "Give me all employees who earn more than $100000 as their salary OR hold more than $20000 in stock."

csma: would like to remove disjunctions in core

chris: i see no good reason to remove the disjunction
... not convinced it does any harm

harold: there is at least one use case that requires disjunctive queries
... could use SPARQL as query language

<LeoraMorgenstern> +1 for disjunction

csma: who want's disjunctions in core? show of hands: 10 are in favour of disjunction~r, 3 prefer not to have them, 2 abstain

hassan: "core" implies to keep things minmal

csma: next question: anonymous variables, why do we need them, can we do without them?

mkifer: in queries anonymous variables make sense to omit variables from the result

<sandro> Hassan, the "implication" that core is minimal is unfounded. Core is simply a foundation on which to build, shared by all dialects. Anything common to all dialects should be in core.

<Hassan> Sandro, I know: CORE as it is not NOT minimal. I meant that the semantics of the worde "core" carries this connotations VERY strongly

csma: objections to keeping anonymous variables in WD1?

harold: they are not really that important
... also problems with quantification, trade-offs are different in this case

csma: proposal to remove anonymous variables from WD1? no objections

<sandro> In which communities, Hassan?

<ChrisW> RESOLVED: Remove anonymous variables from CORE

<ChrisW> ACTION: Harold to remove section on anonymous variables from CORE WD [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action15]

<rifbot> Created ACTION-241 - Remove section on anonymous variables from CORE WD [on Harold Boley - due 2007-03-05].

csma: mulitplicity is next

<ChrisW> hearing breathing on the phone

<ChrisW> hassan, probably you

<sandro> (Hassan, I'm amusedly looking at the dictionary, and liking definition #4 of core, "A set of subjects or courses that make up a required portion of a curriculum." :-)

harold: exists is modelled as one or more in the document, should be 0 or more

mkifer: the same thing applies for forall then
... is exists a mandatory element? if not, then it's ok

csma: there is no requirement for exists

mkifer: why is forall required?

<Harold> Facts are generated by the POSITIVE production, and can be viewed as the then part of a rule with an empty if (or with true as the if part).

csma: is there a requirement to introduce direction for equal?

harold: binary/directed equality is easier to handle than symmetric equality which requires paramodulation
... later you might want to direct the equation using Knuth-Bendix

csma: objections to using multiplicity of 2 for equal?

RESOLUTION: one assocation of 2 terms to equal

<ChrisW> ACTION: Harold to update meta-model for equality - 1 association with multiplicity 2 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action16]

<rifbot> Created ACTION-242 - Update meta-model for equality - 1 association with multiplicity 2 [on Harold Boley - due 2007-03-05].

<Elisa> fyi, this is exactly how it is done in an atomic sencence in CL -- an equation has exactly two arguments, which are terms

csma: keep connectives n-ary?

harold: have 2...n as multiplicity for connectives?

csma: to write a fact currently would mean to have an empty AND in the condition

hassan: empty AND means true and empty OR means false

mkifer: why not use a more natural true/false?

<sandro> RESOLVED: we'll keep AND and OR as 0-or-more. (it's a conventional treatment.)

mkifer: would need to introducte true/false anyways since it's natural for people

<Harold> Empty conjunction <And></And> resp. <And/> should be kept, and semantically saying it's true.

mkifer: and then we have multiple symbols denoting true/false

hassan: would rather be concise and use true/false than being mathematically correct (and confusing) using empty AND/OR

<Harold> Think of tools recursively processing a <And> c1 c2 ... cN </And> into <And> c2 ... cN </And> etc. will <And> cN </And> or <And></And>.

mkifer: diagram looks highly redunant, positive should not be there then

<Harold> Michael is syaing that <And> POSITIVE </And> <Or> POSITIVE </Or> are redundant because they are all just POSITIVE.

jos: rephrase: there is redundancy, e.g. you could just the write literal, OR literal, AND literal, OR OR Literal...

<PaulVincent> Comment: should the classes be renamed eg to Conjunction Disjunction Existance Equality etc?

dave: i think michael argues for a normal form

<Harold> Hassan, we cannot avoid syntactic congruences and semantic equivalences, I agree.

hassan: there alway will be different ways to saying the same thing

<Harold> Example of semantic equivalence: <And> c1 c2</And> <=> <And> c2 c1</And>

mkifer: allowing additional syntactic features should simplify things
... keep only AND/OR and make them 0...more would simplify things

jos: right now processing needs to take into account 4 cases rather than 2

sandro: POSITIVE currently is redundant

<Harold> Really there are 3 arity options for AND/OR: 2, 2:*, 0:*

harold: most uniform would be 0...more

<Hassan> sound please?

<Harold> I'm fine with 2:* for WD1, to have RIF be a semantic language, as Deborah explains.

deborah: the language design should be designed to be semantical, rather than optimise for easy parsing

<Hassan> T too prefer 0 or more - but I was warped my mathematics beyond recognition :-)

<LeoraMorgenstern> +1 nary

<Elisa> Elisa prefers 0 or more

csma: dyadic conjunction and disjuction only? 2. 0...more? 5. 2..more? 0. abstain? 5

<Hassan> pls turn on your mikes - thanks

<Hassan> who is speaking?

<Allen> christian right now

sandro: that decision was resolved earlier

<sandro> I'm very happily talking into a turned-off mic, Hassan. :-)

<Hassan> I mean besides THE Christian

<Allen> dave now

<sandro> (basically, the resolution I recorded earlier about AND/OR was not actually treated as a resolution by the chair, and I was whining about that.)

dave: question: link between Const and PSort has neither aggregation symbol nor mulitplicity

<ChrisW> ACTION: harold to update metamodel for "Sort" association from Var/Const to Psort [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action17]

<rifbot> Created ACTION-243 - Update metamodel for \"Sort\" association from Var/Const to Psort [on Harold Boley - due 2007-03-05].

<Harold> Hassan, in earlier versions POSITIVE was called LITFORM (literal formula) to prepare later introduction of negative literals. Now we focus only on the positive literals, no longer trying to prepare later extensions on this level.

csma: the same constant can have only one sort

chris: how about a sort hierarchy? what happens if uri would be subclass of string?

<Harold> A Const can be the name of an individual, a predicate/relation, or a function.

jos: the location of a constant determines its sort

csma: association from Var/Const to Psort has to be 0 or one?

mkifer: there is a primitive sort: domain from which things are drawn; arrow sorts: what contexts the thing can appear? function symbol or not? which arities?

<Harold> So, we have individual constants, predicate constants, and function constants, but in the current first-order version we only have individual variables, no predicate or function variables.

mkifer: every symbol can have more than one sorts

jos: the issue is in which context the consts are used

chris: there seems to be a confusion between sorts in syntax and sorts in semantics

mkifer: you can have symbols that do not have primitive sorts; in FOL, there is a clear divison between constants, functions, and predicate symbols

chris: lexical sorts vs. semantic sorts? eg. whether a uri presents a constant or a predicate are orthogonal

dave: imagine p(x) :- q(x), would you write down all the time the arrow sort pertainig to p?

jos: make distinction between symbols and occurences/declaration of symbols

csma: it's a metamodel, so it should not talk about occurrences

chris: we should agree which level the metamodel represents. it should not be lexical

jos: p(i) :- q(i) need two sorts: one to determine if p,q is a uri, and then say p,q are unary predicates

<Harold> Here's an attempt towards a simple example showing multisorted syntax and semantics: Syntax: And(sells(john _car"a1" mary) buys(mary _ship"a1" john)). Semantics: a1 has type from sort intersection(car,ship), i.e. an amphibious vehicle.

chris: meta model does not need to deal with uris yet, but rather than if a symbol is a function or an individual

jos: but then we do not primitive sorts, but only boolean and arrow sorts

~/s/do not/do not need need/

mkifer: maybe then we should better talk about sorts and signatures to make a distinction
... split sorts from signatures, variables will have 0:1 sorts, constants will have exactly one sort, and at least one signature

<Hassan> mike Mike ! :-)

mkifer: signatures can be arrow signatures or boolean signatures
... arrow sorts will cover syntactic occurrences of functions and predicates
... sort means how the constants looks like lexically

hassan: why variables can have 0:1 sorts?

mkifer: we should allow variables that range over everything
... how to represent well-formed terms in a meta-model?

csma: you would need to add OCL constraints, or use text to describe constraints

<DaveReynolds> ScribeNick: DaveReynolds

We are half way through a discussion on how the MOF models correspond to the notions of abstract syntax we are trying to capture.

Specifically the issue of when two occurances of symbols are coreferences (I think :-))

csma: So if in XML document you have P(x) written twice they are different occurances

Michael: So does that stop us using MOF for the "symbol" sub-diagram because that gives the same issue?

Sandro: separate notion of identity criteria

Jos: e.g. same attribute name identifies the same symbol

Michael: if name uniquely identifies the object it solves the problem

Chris: that would mean that every time you mention a constant you would have to define its signature

Sandro: right, because we are interpreting the metamodel as driving the XML syntax

<Hassan> mikes?

Jos: we can same constant has an attribute Name and add identity criteria for it

csma: that is already there in the definition of NamedElement, which is brought in from the MOF machinery

Jos: the identity cosntraint might be missing

Chris: mixing too many levels
... mixing semantics with the syntax. Here we are just trying to capture the syntax.
... So intepreted as a syntax the (Const/symbol diagram) says that *syntactically* each constant has a sort and a signature in it

Michael: so using MOF for this is wrong?

csma: No, it is iterpreting this MOF as a syntax specification that is wrong

Jos: but we can read the same digram in two different ways

Chris: forget about MOF for the moment, we are using an OO style for writing down an abstract syntax, which can then generate a BNF and an XML Schema
... So for example a min-card of 1 means that that element must be there in the *syntax* at that place

<Hassan> I agree with Jos.

Chris: no WG resolution about maintaining a MOF, we are maintaining an abstract syntax, reading it as a metamodel in the sense of MOF is not what we were trying to do

csma: argues you can have it both ways

Chris: no

csma: can capture the attributes once and then refer the same defintions

general disgreement/confusion on this

Jos: Chris is right, you would put this sort of information in declarations, perhaps in a different syntax

csma: don't understand why

Michael: issue how do you know which bit of the diagram is supposed to be interpreted as syntax and which as model structures

Jos: if we write this down as a metamodel we can't derive the syntax of the rules from it
... should not confuse the schema from the language with the metamodel for the rules

<sandro> I have no idea what you mean by "schema" as distinct from metamodel.

csma: the is not about whether the MOF does allow such reference rules, the issue is in using it to drive the syntax mechanically
... standard way to derive XML syntax would be that for each class you would need a separate description of what information you would need in the concrete syntax corresponding to that class

Jos is proposing that the two diagrams be overlaid.

Michael: so how do you say how you write down the declarations?

Jos: csma says do that by writing down separate annotations for how to translate from MOF to the syntax

Sandro: so where do these declarations go

csma: the signature goes in another document, the application specific data model

<general chorus of no />

Hassan: if we have RIF-compilant rules with all these P's and x's, it matches the abstract syntax. What is the worry about where to put the declarations?
... Why a different document? Who cares?

Chris: that's the question. The question is whether they are both RIF documents?

[csma seemed to say "no" and there was surprise/disagreement on that]

csma: e.g. consider the insurance industry which already has a way of writing down the data model

Michael: but we have to map rules, we have map such external datamodels as well

Jos: the rulesets in RIF have to make semantic sense, do that you need signatures for them, that doesn't require import of external vocabulary, just need to relate the symbols

<Hassan> good question!

Allen: makes sense as a model, there are many syntax's which could fit with this, why use this for syntax

Harold: do we need our own schema level language for data models?

csma: no, that would be barrier to adoption
... may be solution is that RIF provides syntax for rules down to constants but the metamodel information for data objects would be defined externally

Chris: surely if you want to interchange rules you also need to translate your data models

csma: but let everyone carry on using their own

Allen: see csma's section 2.11 in UCR

Chris: base level is we need someway to write down what a predicate is and what a function is. Yes?

csma: yes

Chris: so set aside the data model issue, RIF needs to write down signatures, and needs some syntactic way to write that down, is that separate declarations or implicit in usage in rules

Michael: imaging separate declarations

Jos: does depend on the dialect, e.g. in OWL have a few explicit declarations or in other places don't

<Harold> At least we need a standard interface/adapter/mapper between 'foreign' schemas/vocabularies (in XSD, OWL, UML, ...) and RIF signature declarations.

Michael: e.g. in prolog you wouldn't necessarily since the same symbol can be used with arbitrary arities
... OWL would just say I have predicates and constants and no function symbols

Chris: so we need a syntax for writing down such signatures

Michael: dialects might want do it differently

<sandro> General need for Declaration structure.....

Chris: need to decide whether to continue making metamodel or stick to using this as an abstract syntax

Sandro: now we have "Declaration" in the symbol diagram it can be treated as an abstract syntax for declarations

csma: separate logical structure of condition from the content

Paul: argue continue use of MOF to simplify interop with OMG (e.g. PRR)

Michael: so the declarations would be a side diagram along side condition language and rules

Jos: people are still treating this as a schema, not as a metamodel and that will confuse people
... shouldn't use UML/MOF where what we mean is just schema for language syntax
... has to be communicable to people outside the WG

Allen: thought the isssue we have to be clear on which usage of the diagrams we intending

Sandro: we should not use it for both, that's not what we agreed

Chris: not what *I* agreed

<sandro> I thought I said we SHOULD use it for both.

Hassan: UML is too poor for a schema, would need additional constraints which would need OCL

Harold: already have one OCL constraint, ordered

<sandro> what the heck does the word schema mean here?

Chris: asks for agreement that we need a syntax

<Harold> Hassan, an interchange

<Harold> format needs an XML syntax.

Chris: we had a decision to maintain an abstract syntax, based on asn06
... then we agreed to draw a picture to represent it
... which we used MOF for then then we started to treating it as a metamodel
... can we get back to starting point that we just want a way to specify the abstract syntax
... so the questions are
... what we do with the MOF diagrams in the document?

Sandro: had been expecting to generate MOF diagram out of the asn06
... the question of declarations is a separate issue

Chris: so if you did that would you have const appear in one place or in two places (declarations and usage in rules)

Harrold: that's a separate issue, use of sorts instead of explicit separation of predicate and function symbols

Michael: with BNF we know how to get a grammar
... but if we use UML we need to specify that because the picture is underdefined

Harold: the separation of Const and Declaration is a separate confusion
... It is a fully striped syntax because all the roles are named and then the model is the abstract syntax

Paul: this would all be easier if we had some examples to ground the discussion

Chris: examples help but still need to decide whether to worry about the diagram or go back to asn06
... with asn06 we have control of it

Harold: but we wanted to relate asn06 to OWL

Chris: calls for agreement on what to do with picture

Michael: get rid of picture

Paul: taking the picture away doesn't remove the confusion
... do want to relate to standards which use metamodels

Chris: that's the problem

Harold: already use MOF this way in R2ML
... and for RuleML

Michael: invent graphical formalism for asn06 to avoid the baggage?

Sandro: not sure what the specific MOF assumptions are that causing the problem

Chris asks Paul about reading of the metamodel as a syntax

Paul: this is model, a stepping stone to defining the language
... can't do the concrete before you agree on the abstract
... is there anything about this model [the one in the first diagram] that is wrong or missing?
... then we could go to the next step of concrete syntax

<Harold> Isn't the only real problem with the UML diagram that some instances of a given class we want to interpret as different, other instances we want to interpret as identical?

Chris: the point is this started life purely as an abstract syntax, which could shift to using it as a metamodel but would be left with the step of defining the syntax

Paul: in PRR we just did the metamodel and left the XMI serialization as the closest thing to the syntax

Bob: the diagram makes sense, the missing thing is that most terms are atomic but Const has more baggage hidden behind it
... talking about declarations of signatures is not syntax it is getting into the semantics

<Harold> Bob, right, Const is a kind of parameter of the current UML model.

Harold: const is a sort of parameter of the diagram
... did not indend to go so deeply into Const and it is not so essential

Chris: several ways to go

<sandro> (My question was: what about the UML metamodel might be misleading to people? )

Chris: maintain UML as a metamodel

<sandro> (Because Chris keeps saying the UML says sometihng different to people than the asn06 does.)

Chris: drop that and go back to asn06 as an abstract syntax
... just maintain the BNF
... Just have to be clear on what we are choosing to do.

Sandro: disagrees that is confusion being introduced by using UML/MOF for the abstract syntax

Chris: the issue is that if you have two class boxes with the same label they are the same class
... if they are in separate diagrams they are *still* the same class
... but here we need different contexts and MOF doesn't give that contextualization

Bob: the relation between the declarations and the usage is about the semantics, not the syntax
... we are talking about two different syntactic constructions

Chris: the issue is that the same name "Const" is used in two places so the roles used in the declaration construct will be visible to the rule

Sandro: but the signature are attributes not of const but of the declaration
... the string as it appears in the syntax would be different and so would have a different class name in the UML

csma: in a condition a const is associated with blah, in a declaration it is associated with fooblah, they are the same class, different associations

Sandro: so how do you provide that context in UML?

Chris: UML does *NOT* have a notion of context
... if you have two diagrams with different associations is just a presentation tool, the class has all the associations across all the diagrams

<sandro> +1 Bob

<sandro> +1 Bob (it's not the associations from Const; it's the association to Const.)

Chris: choices of what to maintain - UML metamodel, asn06 or BNF

Michael: please can we clarify wha the actual problem is with interpreting UML metadata as abstract syntax
... is the problem the use the aggregation as meaning partof
... can we solve it by using association (hollow diamond) instead of aggregation

<PaulVincent> Reference for UML aggregation vs composition - http://www.parlezuml.com/tutorials/umlforjava/java_class_basic.pdf

Paul: [point to interchanges on the mail list about metamodel usage]

DaveR: suggests the issue is not in interpretation of the digrams by others but us misusing them, the symbol diagram could be made consistent with both readings if we tried

Harold: can we learn from RDF/RDFS representation in MOF in ODM?

Chris: RDF and RDFS are intertwined, there isn't the same sort of separation to repesent, it is not a good analogy to this case

[Back to the question of which one we are trying to maintain]

csma: the question is how to we derive the XML syntax rather than which one we maintain

Chris: if we want to derive an XML syntax then that comes from asn06

csma: so that means we maintain the asn06
... but that doesn't stop us using the diagram for didactic reasons
... but if we have one it has to be right

Harold: call it UML/MOF style instead of UML

Jos: can use UML to specify the syntax, it would be a perfectly readable diagram

Chris: the nice thing about a metamodel is that it only includes the things you need in your semantics

Sandro: if you can translate asn06 to the UML does that resolve the dichotomy?

Chris: there is no way to do that and be able to go back

Sandro: the problems are caused by modelling errors not be confusion on the use of MOF

csma: if we wanted to have a syntax derived from MOF/UML we would be using XMI and we don't want all that baggage, we don't want to carry the whole metamodel

Allen: use the asn06 for actually driving the syntax, put the digrams into blue sections and then into the Arch document

<Harold> The 'abstract syntax' use of MOF/UML only requires generalization and composition with roles, multiplicity, and very simple (ordered) constraints.

<sandro> Quick draft of diagram into asn06

<sandro> http://dev.w3.org/cvsweb/2007/asn/test-data/pc4.asn?rev=1.1&content-type=text/x-cvsweb-markup

Michael: can't use UML in writing down the semantics, need a linear syntax for that

<Harold> Proposed: Extend Earlier Resolution: RIF uses asn06 as its 'abstract syntax' that can be visualized with MOF/UML-like diagrams only requiring generalization and composition with roles, multiplicity, and very simple (ordered) constraints.

Harold: but if we put the MOF in blue, do we have to put asn06 into white?

Sandro: the disgreement is in the modelling not in the way we present it (his suspicion, at least.)

Chris: calls for comments on moving UML to blue

csma: objects, prefer it to be simplified and kept
... and its purpose and nature better explained
... just remove the PSORT part of the diagram and everything else is OK

Resolved: UML diagram 1 stays in WD1 but with NamedElement and PSort removed

scribe: and the connecting links

Summary of Action Items

[NEW] ACTION: Allen to move motivqte links to requirements section [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action02]
[NEW] ACTION: Allen to redo UCR 2.11 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action01]
[NEW] ACTION: Allen to reorganise document and move 2.11 to an intrduction/use instruction for UC [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action04]
[NEW] ACTION: Harold to remove section on anonymous variables from CORE WD [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action15]
[NEW] ACTION: Harold to update meta-model for equality - 1 association with multiplicity 2 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action16]
[NEW] ACTION: harold to update metamodel for "Sort" association from Var/Const to Psort [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action17]
[NEW] ACTION: Leora to propose new intro para for UC5 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action03]
[NEW] ACTION: Leora to propose new text for UC5 [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action05]
[NEW] ACTION: MichaelK to change wbeizing into RIF AS A WEB LANGUAGE\ [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action06]
[NEW] ACTION: MichaelK to propose a clarification that RIF uses web technology to slove requirements that are not necessarily specific to web usage [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action07]
[NEW] ACTION: mikier to move blue sections to end notes [recorded in http://www.w3.org/2007/02/26-rif-minutes.html#action13]
[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.128 (CVS log)
$Date: 2010/04/01 18:18:10 $

Scribe.perl diagnostic output

[Delete this section before finalizing the minutes.]
This is scribe.perl Revision: 1.128  of Date: 2007/02/23 21:38:13  
Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/

Guessing input format: RRSAgent_HTML_Format (score 1.00)

Succeeded: s/scibe/scribe/
Succeeded: s/do not/do not need/
Succeeded: s/csam/csma/
Succeeded: s/HELL/heck/
Succeeded: s/sing/sign/
Succeeded: s/variable/parameter/
Succeeded: s/there/disagrees that /
Succeeded: s/Sandor/Sandro/
Succeeded: s/what/want/
Succeeded: s/it/it (his suspicion, at least.)/
Found ScribeNick: PaulVincent
Found Scribe: Bob Moore
Found ScribeNick: BobMoore
Found Scribe: Andreas Harth
Found ScribeNick: aharth
WARNING: No scribe lines found matching ScribeNick pattern: <aharth> ...
Found ScribeNick: aharth_scribe
Found ScribeNick: DaveReynolds
Scribes: Bob Moore, Andreas Harth
ScribeNicks: PaulVincent, BobMoore, aharth, aharth_scribe, DaveReynolds

WARNING: Replacing list of attendees.
Old list: Mike_Dean Leora_Morgenstern +1.703.983.aaaa meeting_room Hassan_Ait-Kaci Elisa_Kendall LeoraMorgenstern Gary_Hallmark
New list: Elisa_Kendall Mike_Dean Hassan_Ait-Kaci meeting_room Gary_Hallmark Leora_Morgenstern

Default Present: Elisa_Kendall, Mike_Dean, Hassan_Ait-Kaci, meeting_room, Gary_Hallmark, Leora_Morgenstern

WARNING: Replacing previous Present list. (Old list: Allen, JosDeBruijn, MichaelKifer, Andreas, JohnHall, DaveReynolds, BobMoore, PaulVincent, Sandro, ChrisW, CSMA, Deborah)
Use 'Present+ ... ' if you meant to add people without replacing the list,
such as: <dbooth> Present+ AllenGinsberg, JosDeBruijn, MichaelKifer, AndreasHarth, JohnHall, DaveReynolds, BobMoore, PaulVincent, SandroHawke, ChrisWelty, CSMA, DeborahNichols, LeoraMorgenstern, MikeDean

Present: AllenGinsberg JosDeBruijn MichaelKifer AndreasHarth JohnHall DaveReynolds BobMoore PaulVincent SandroHawke ChrisWelty CSMA DeborahNichols LeoraMorgenstern MikeDean
Got date from IRC log name: 26 Feb 2007
Guessing minutes URL: http://www.w3.org/2007/02/26-rif-minutes.html
People with action items: allen harold kifer leora michaek michael michaelk michaelkiefer michaelkifer mikier mkifer

[End of scribe.perl diagnostic output]