Re: DAML: restricting number of elements in a list

On February 11, Steven Gollery writes:
> >
> > Ian,
> >
> > It seems to me that the concept of "order" is fundamental in describing
> > elements of many ontologies. Why was the decision made not to include this in
> > DAML?
> >
> > Steven Gollery
> >
> 
> Obviously, this is an overstatement. It is perfectly possible to define the equivalent of a
> linked list, as DAML-S does in its "nextProcessComponent" property, which provides a notion
> of "order". What I was really wondering here is: why was the decision made that a daml:list
> would be unordered?

daml:list is part of the syntax of the language and is used to
represent sets of classes, e.g., in a conjunction. As you know, sets
are not ordered.

Ian

> 
> Steven Gollery
> 
> >
> > Ian Horrocks wrote:
> >
> > > On February 6, Steven Gollery writes:
> > > > I'm working on an ontology in DAML that includes some geometric
> > > > concepts. I would like to be able to somehow define a property Vertices
> > > > whose domain is the Polygon class and whose range is ordered collections
> > > > of instances of the Point class, where the length of the ordered
> > > > collection is at least three.
> > > >
> > > > It would be fairly straightforward to say that each Polygon must have at
> > > > least three values of a Vertex property which is restricted to class
> > > > Point, but that would lose the idea the vertices have an order -- the
> > > > order is obviously a fundamental part of the semantics for the polygon.
> > > >
> > > > Does DAML provide any way to restrict the number of elements in a list?
> > > > Or is there some other way to do what I need here?
> > >
> > > There is no language construct that supports this - properties of a
> > > DAML class are always unordered. One possible solution is to make the
> > > range of Vertex a more complex structure that describes both the point
> > > and its place in the list. This is not completely satisfactory as it
> > > is difficult to ensure that the list values are sensibly ordered.
> > >
> > > Another solution is to define subproperties of Vertex called Vertex1,
> > > Vertex2 etc., each being a unique property (i.e., functional). The
> > > main disadvantage with this method is that the maximum number of
> > > vertices must be decided a priori. Ensuring that values are sensibly
> > > ordered is a little easier in this case because the functionality
> > > already precludes the case where there is more than one vertex with
> > > the same number. Simply asserting, for each n from 2 to the max vertex
> > > number, that the existence of the property Vertexn implies the
> > > existence of the property Vertexn-1 should be enough to ensure that
> > > there are no "gaps" in the list of vertices.
> > >
> > > Hope this helps.
> > >
> > > Ian Horrocks
> > >
> > > >
> > > > Thanks in advance,
> > > >
> > > > Steve Gollery
> > > > sgollery@cadrc.calpoly.edu
> > > >
> > > >
> >
> >   ------------------------------------------------------------------------
> >
> >    * Previous message: Ian Horrocks: "Re: DAML: restricting number of elements in a list"
> >    * In reply to: Ian Horrocks: "Re: DAML: restricting number of elements in a list"
> >    * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
> >    * Other mail archives: [this mailing list] [other W3C mailing lists]
> >    * Mail actions: [ respond to this message ] [ mail a new topic ]
> 

Received on Tuesday, 12 February 2002 06:47:45 UTC