Re: annotating axioms

On Nov 7, 2007, at 8:36 AM, Peter F. Patel-Schneider wrote:
> From: Bijan Parsia <bparsia@cs.man.ac.uk>
> Subject: Re: Rich Annotation System Proposal
> Date: Tue, 6 Nov 2007 22:19:47 +0000
>
>> On Nov 6, 2007, at 9:38 PM, Achille Fokoue wrote:
>
> [...]
>
>>> 1.  It is not clear to me from your proposal whether *all*
>>> annotations are now considered axioms – not just EntityAnnotation
>>> in the current spec.
>>
>> The current proposal punted on this.
>>
>>>  I agree with jlc415 who reported issue 16 (http://www.w3.org/2007/
>>> OWL/tracker/issues/16) that "either all annotations should be
>>> axioms, or none should". Having all annotations as axioms makes it
>>> possible to annotate them.
>
> [...]
>
>> This could be easily incorporated. I just hacked the minimal changes
>> to the grammar I could to get the proposal done as soon as possible.
>> So this seems a great addition.
>
> I'm not sure what the rationale for making all annotations be  
> axioms, as
> in ISSUE-16.  It's not as if the grammar has a production like:
>
> 	axiom ::= 'AxiomAnnotation(' annotation axiom ')' | ....

It sure does:
	entityAnnotation := 'EntityAnnotation' '(' { annotationsForAxiom }  
entity { annotationsForEntity } ')'

But it *doesn't* have a like one for AxiomAnnotation. I think the  
asymmetry bugs folks. It doesn't esp. bother me yet.

> so making annotations be axioms wouldn't magically allow them to have
> annotations themselves.

I presume the production would be:
	'AxiomAnnotation(' {annotationsForAnnotationAxiom} axiom  
{annotationsForAxiom}')'

In strict analogy to entity annotations.

>   It also seems a bit strange to have axioms
> include other things that are themselves axioms.

Eh.

> Right now axioms are
> all top-level constructs in an ontology.

Double eh. Who cares? I mean, is this really an interesting  
consideration? I propose to let axioms exist inside an Annotations()  
construct...is that a similar problem?

> The request should be instead that the grammar for annotations be
> expanded to something like:
>
> 	annotationByXXX ::= 'Annotation(' { annotation }
> 			    		  annotationURI XXX ')'

This doesn't make sense to me. If anything, the alternative would be  
to reference axioms,e g.,

'AxiomAnnotation(' {annotationsForAnnotationAxiom} axiomRef  
{annotationsForAxiom}')'

But this forces naming/iding all axioms. Which has been requested but  
is rather tricky.

Cheers,
Bijan.

Received on Wednesday, 7 November 2007 08:59:18 UTC