AW: [UCR] Review UCR (action-624)

-----Ursprüngliche Nachricht-----
Von: Michael Kifer [mailto:kifer@cs.sunysb.edu] 
Gesendet: Montag, 17. November 2008 00:06
An: Adrian Paschke
Cc: cleo@us.ibm.com; gary.hallmark@oracle.com; Harold.Boley@nrc-cnrc.gc.ca;
kifer@cs.stonybrook.edu; public-rif-wg@w3.org
Betreff: Re: [UCR] Review UCR (action-624)



On Sun, 16 Nov 2008 22:15:47 +0100
"Adrian Paschke" <Adrian.Paschke@gmx.de> wrote:

>> Moreover, the formalization of the rules without nested frames (or nested
functions) becomes very verbose, as you can see in 4.2. For instance, the
definition of the customer object "Alice" which >>becomes a very complicated
rule without nested frames. 
>> 
>>  ex:Alice[ex:card -> ?card ex:deliveryAddr -> ?deliveryAddr] :-  
>>    ?Date = ex:Date[ex:month -> 12 ex:year -> 2012]  
>>    ?Person = ex:Person[ex:lastname -> "Sure" ex:firstname -> "Alice"]  
>>    ?Street = ex:Street[name -> "North Street" number -> 111]  
>>    ?card= ex:Card[ ex:type -> "Visa" 
>>                             ex:holder ->  ?Person 
>>                             ex:number -> "123456789" 
>>                             ex:code -> "123" 
>>                             ex:expiry -> ?Date 
>>                          ]  
>>   ?deliveryAddr = ex:DeliveryAddress[ ex:name -> ?Person 
>>                                                         ex:street ->
?Street 
>>                                                         ex:postal_code ->
"NE3456" 
>>                                                         ex:city -> "New
York" 
>>                                                         ex:country ->
"USA" 
>>                                                        ]  


>What is ?Date = ex:Date[...] and so on? Did you mean # instead of =?
>Unfortunately even ?Date#ex:Date[...] is not allowed and must be written
>as And(?Date#ex:Date ?Date[...]).


It means, that the frame object is bound to a variable which is then used in
the value position of a frame slot. It was intended to be a work-around
solution to allow complex frames as values of frame slots. 

Do you see another solution to allow slot values which are complex?


>Regarding the verbosity, the absence of nesting increases the size of a
spec
>relatively insignificantly, as is obvious from your example (only variables
are
>repeated).
>What this does lead to is the absence of locality in the specification.
>
>This was expected (after all, nested frames were not invented for
>nothing). The features were voted in or out by the WG. Unfortunately,
>things were in reverse: first vote and only then use cases.
>
>michael

Received on Monday, 17 November 2008 21:27:41 UTC