- From: Boley, Harold <Harold.Boley@nrc-cnrc.gc.ca>
- Date: Fri, 13 Jul 2007 08:21:12 -0400
- To: "Sandro Hawke" <sandro@w3.org>
- Cc: <public-rif-wg@w3.org>
Sandro, Yes:
inner class == invisible class
leaf class == visible class
-- Harold
-----Original Message-----
From: Sandro Hawke [mailto:sandro@w3.org]
Sent: Thursday, July 12, 2007 10:22 PM
To: Boley, Harold
Cc: public-rif-wg@w3.org
Subject: RE: ASN issue: leaf class == visible class?
Harold, I'm not sure I understand what you're saying. I think you're
agreeing with my suggestion that we define things so that any ASN class
which has a subclass is "invisible". (That is, its name will never
occur in a serialization -- we'll always serialize a subclass.) Is that
right?
-- Sandro
"Boley, Harold" <Harold.Boley@nrc-cnrc.gc.ca> writes:
> If we refine
>
> class Naf
>
> to
>
> class NAF
>
> subclass StratifiedNaf
>
> subclass WellFoundedNaf
>
> subclass StableModelNaf
>
> NAF should become invisible assuming StratifiedNaf, WellFoundedNaf,
> and StableModelNaf occur as subclasses of NAF only (understood if
> ASN always assumes a subclass tree, not allowing a subclass DAG):
> The unique NAF parent is just an 'interface' then, not part of the
> serialization.
>
> Generally, making the 'class tree' assumption,
> we can have subclass paths
>
> class TAG1
> . . .
> subclass TAG2
> . . .
> subclass TAG3
> .
> .
> .
> . . .
> subclass TAGN-1
> . . .
> subclass TagN
> . . .
> . . .
> .
> .
> .
> . . .
> . . .
>
> with N-1 invisible inner classes and 1 leaf class =3D=3D visible
class.
>
> -- Harold
>
>
> -----Original Message-----
> From: public-rif-wg-request@w3.org
[mailto:public-rif-wg-request@w3.org]
> On Behalf Of Sandro Hawke
> Sent: Thursday, July 12, 2007 3:35 PM
> To: public-rif-wg@w3.org
> Subject: ASN issue: leaf class =3D=3D visible class?=20
>
>
>
> I've got an issue in the abstract syntax notation. This e-mail is
> perhaps more a brain-dump than a cogent argument or proposal; I hope
> it's good enough.
>
> Let's call ASN syntactic classes with no declared subclasses "leaf
> classes". Let's call the others, with one or more declared subclasses
> "non-leaf".=20
>
> Further, let's say a "visible" class is one whose name might be
> transmitted as part of serializing an instance of it. An "invisible"
> class is one whose name will never be transmitted. (Invisible classes
> cannot be instantiated. They correspond essentially to "abstract base
> classes" and Java "interfaces".)
>
> The issue, then, is this: Shall we say Leaf and Visible are equivalent
> classes? I suggest "Yes".=20
>
> An example:
>
> class NegationAsFailure
>
> subclass StratifiedNAF
>
> subclass WellFoundedNAF
>
> subclass StableModelNAF
>
> Would we ever want to allow people to transmit something, saying just
> that it is a "NegationAsFailure", but not saying which kind it is? =20
>
> I think not. I think if we wanted that, we could do it more clearly
> as:
>
> class NegationAsFailure
>
> subclass StratifiedNAF
>
> subclass WellFoundedNAF
>
> subclass StableModelNAF
>
> subclass UnspecifiedNAF
>
> Looking at the current from Horn Dialect drafts:
>
> class CLAUSE
> =20
> subclass ATOMIC
> =20
> subclass Implies
> property if: CONDITION
> property then: ATOMIC
> =20
> class ATOMIC
> =20
> subclass Equal
> property side: list of TERM
> =20
> subclass Uniterm
>
> ... can you imagine wanting to subclass/extend Implies, Equal, or
> Uniterm? If so, would it be okay to make other changes so that it's
> reasonable to have the extended class become invisible?
>
> If we need visibility to be independent from leaf-ness, then I think
we
> need to add an "invisible" keyword to ASN. The drafts use
> all-upper-case to indicate which classes are invisible, but that
> shouldn't be what the software uses.) I also need some way to say
this
> in OWL. Maybe invisible classes are the same as
> disjoint-union-superclasses? Or can we just stay with =
> Leaf=3D=3DVisible?
>
> Thoughts?
>
> -- Sandro
>
Received on Friday, 13 July 2007 12:21:53 UTC