RE: Datamodel Strawman (ACTION-298)

FWIW I'd suggest a Wiki page on justifying the "Data Model Interchange
Format" to go with RIF, and why existing models (briefly mentioned, but
not really discussed at the last F2F) are not sufficient. 

AFAIK none of the use cases *explicitly* require data interchange
between different formats: but presumably it's a working assumption that
a common RIF condition/action language requires a *single* data
representation model. 

Of course, it could be that an abstract frame model is exactly what is
needed and can easily be translated between, say, it and XML and it and
RDFS (and it and PROLOG etc). I'm just a little uncomfortable that
various peer data groups could have an interest here and/or there may be
an existing model we could utilize.

[Mens Rea: of course I still need to pay some attention to my own RIF
actions: hopefully later this week] 

Paul Vincent
TIBCO | ETG/Business Rules 
 

> -----Original Message-----
> From: public-rif-wg-request@w3.org
[mailto:public-rif-wg-request@w3.org]
> On Behalf Of Gary Hallmark
> Sent: 16 July 2007 17:30
> To: public-rif-wg@w3.org
> Cc: RIF WG
> Subject: Re: Datamodel Strawman (ACTION-298)
> 
> 
> Well, we have to invent Yet Another Rule Language (maybe 2: Horn and
PR)
> in order to have a standard onto which to map all of our favorite yet
> nonstandard ones.  I don't know why the situation should be different
> for Application Data Models.  Maybe someone can propose a concrete
> alternative?
> 
> Paul Vincent wrote:
> 
> >+1
> >
> >(With apologies as I have not checked the debate from last week's
call).
> >
> >My concern is re inventing Yet Another Data Representation language,
> >just because we have a semantic web + common data processing
communities
> >of interest.
> >
> >Paul Vincent
> >TIBCO | ETG/Business Rules
> >
> >
> >
> >>-----Original Message-----
> >>From: public-rif-wg-request@w3.org
> >>
> >>
> >[mailto:public-rif-wg-request@w3.org]
> >
> >
> >>On Behalf Of Dave Reynolds
> >>Sent: 16 July 2007 09:01
> >>To: Gary Hallmark
> >>Cc: RIF WG
> >>Subject: Re: Datamodel Strawman (ACTION-298)
> >>
> >>
> >>[Sorry I'm going to top post rather than do a point-by-point comment
> >>because I seem to be suffering from context failure.]
> >>
> >>At Innsbruck the chairs pointed out that RIF should not invent yet
> >>another schema language. For that reason when we adopted the Frames
> >>proposal several people (myself included) opposed the Classification
> >>proposal. Though we didn't formally reject the Classification
proposal
> >>either.
> >>
> >>This RIF data model seems to be based broadly on the Classification
> >>approach, or at least on strongly typed frames, and seems to
replicate
> >>parts of XML Schema into RIF.
> >>
> >>Is this necessary?
> >>
> >>Could we just have untyped frames in RIF plus a mapping from those
to
> >>XML, leaving all syntactic type validation to the XML schema
> >>
> >>
> >processing?
> >
> >
> >>Or could we have a set of builtins for navigating XML data from
within
> >>RIF (for example, XPath like)?
> >>
> >>Dave
> >>--
> >>Hewlett-Packard Limited
> >>Registered Office: Cain Road, Bracknell, Berks RG12 1HN
> >>Registered No: 690597 England
> >>
> >>Gary Hallmark wrote:
> >>
> >>
> >>>The statement for this action reads "Show how to use XML Schema for
> >>>
> >>>
> >App
> >
> >
> >>>Data Model".
> >>>This begs the question: what is an "App Data Model"?  I believe
that
> >>>
> >>>
> >we
> >
> >
> >>>must define such a thing in RIF, and only then can we define a
> >>>
> >>>
> >mapping
> >
> >
> >>>between XML Schema (or relational databases, or OWL, or RDFS, etc.)
> >>>
> >>>
> >and
> >
> >
> >>>this RIF Data Model (RDM).
> >>>
> >>>*RIF Data Model
> >>>
> >>>*Informally, a RDM is a set of "frame types".  A frame type
> >>>
> >>>
> >specifies
> >
> >
> >>>the type (URI) of the frame and the names and types of the slots. A
> >>>
> >>>
> >slot
> >
> >
> >>>type is one of the RIF-supported XML Schema datatypes, the name of
a
> >>>frame, or is unspecified (meaning "any type").
> >>>
> >>>*Abstract Syntax
> >>>*
> >>>class FrameType
> >>>    property type : Const
> >>>    property slots : List of SlotType
> >>>
> >>>class SlotType
> >>>    property name : Const
> >>>    subclass SingletonSlotType
> >>>        property type : Const?
> >>>    subclass ListSlotType
> >>>        property elementType : Const?
> >>>
> >>>At this point, I'm not exactly sure what we decided on in Innsbruck
> >>>
> >>>
> >for
> >
> >
> >>>the ASN for frames, so I'll make assumptions here:
> >>>
> >>>class Frame
> >>>    property oid: TERM
> >>>    property type: Const
> >>>    property slots: list of Slot
> >>>
> >>>class Slot
> >>>    property name: TERM
> >>>    property value: TERM
> >>>
> >>>*Semantics
> >>>*
> >>>A Frame's type may be the same as a FrameType's type.  If so, then
> >>>
> >>>
> >the
> >
> >
> >>>Frame's slots must agree in number, name, and type with the
> >>>
> >>>
> >FrameType's
> >
> >
> >>>slots.
> >>>
> >>>*Lists
> >>>
> >>>*XML Schemas define lots of 1-to-many relationships using the
> >>>"maxOccurs" attribute.  This is modeled in RDM using generic lists.
> >>>
> >>>
> >A
> >
> >
> >>>generic list has an optional type parameter to constrain the type
of
> >>>
> >>>
> >the
> >
> >
> >>>list elements.
> >>>
> >>>*Friendly Syntax
> >>>*
> >>>FrameType ::= 'type' CONSTNAME '[' (CONSTNAME '->' SlotTypeName)*
> >>>
> >>>
> >']'
> >
> >
> >>>SlotTypeName ::= SORTNAME | 'list' ['<' SORTNAME '>']
> >>>
> >>>*Examples
> >>>
> >>>*type book [ author->string title->string ]
> >>>
> >>>wd1#book [ author->?X title->LeRif ]        // ?X must unify with a
> >>>
> >>>
> >>string
> >>
> >>
> >>>type bookshelf [ contents->list<book> ]
> >>>
> >>>mybooks#bookshelf [ contents->list( wd1#book [author->Christian
> >>>title->LeRif] wd2#book [author->ChrisW title->"The RIF Book"]) ]
> >>>
> >>>*XML Schema
> >>>
> >>>*I believe that frame types as described above with the addition of
> >>>
> >>>
> >a
> >
> >
> >>>generic list type are sufficient to model most complexTypes of XML
> >>>Schema.  Additional mechanism is needed to model the "facets" of
> >>>
> >>>
> >simple
> >
> >
> >>>types such as value space restriction using enumeration, regex, and
> >>>numeric range restriction.
> >>>
> >>>Note the XML Schema specification is complex and "real world"
> >>>
> >>>
> >mapping
> >
> >
> >>>technologies such as JAXB 2.0 [1] have specifications that are well
> >>>
> >>>
> >over
> >
> >
> >>>300 pages long.  It is unlikely RIF can handle all the "corner
> >>>
> >>>
> >cases".
> >
> >
> >>>[1] http://jcp.org/aboutJava/communityprocess/pfd/jsr222/index.html
> >>>
> >>>
> >
> >
> >
> >
> 
> --
> 
> 
> Oracle <http://www.oracle.com>
> Gary Hallmark | Architect | +1.503.525.8043
> Oracle Server Technologies
> 1211 SW 5th Avenue, Suite 800
> Portland, OR 97204

Received on Monday, 16 July 2007 22:40:55 UTC