Re: (Round 2) Proposed Extensions to OWL

Tom, I am still fuzzy about your proposal.  I need to see a concrete example.
Let's consider this document which describes the length of the Yangtze River:

<River rdf:ID="Yangtze">
   <length>
      <Length>
         <measurement>
            <LengthMeasurement>
                <measurementValue>
                   <LengthValue rdf:ID="Yangtze-Length">
                      <numericalValue>3914</numericalValue>
                      <unitSpecification rdf:resource="#Miles"/>
                   </LengthValue>
               </measurementValue>
               <precision>...</precision>
               <source>...</source>
            </LengthMeasurement>
         </measurement>
      </Length>
   </length>
</River>

If I understood your message from yesterday you are proposing that there be a
document that defines  how to transform the above instance, e.g.,

<owlx:Transform rdf:ID="MilesToKilometers">
      <owlx:tolerance>5%</owlx:tolerance>
      <owlx:inputValue rdf:resource="Yangtze-Length"/>
      <owlx:outputValue rdf:resource="???"/>
      <owlx:inputUnits rdf:resource="#Miles"/>
      <owlx:outputUnits rdf:resource="#Kilometers"/>
      <owlx:transform rdf:resource="G"/>
</owlx:Transform>

where:
    inputValue identifies the specific LengthValue resource, e.g.,
Yangtze-Length
    outputValue identifies ???  (what?)
    transform identifies a standard function which defines how to convert miles
to
    kilometers (possibly this could be represented using RuleML)

Is this what you mean?

Comments:
I am not convinced that there should be a transformation description for each
instace.  I think that there should just be general tranformation statements,
such as

   "there exists a transformation from miles to kilometers,
    see transform function G".

Thus, an application that receives the above Yangtze instance document would
"consult" the general transformation statement to determine:

    (a) that the LengthValue in the instance document can be
         converted to kilometers, and
    (b) the G function describes how to do the conversion.

What do you think?  /Roger


"Thomas B. Passin" wrote:

> [Roger L. Costello" <costello@mitre.org>
> To: <www-rdf-interest@w3.org>
> Cc: <tpassin@comcast.net>; "Costello,Roger L." <costello@mitre.org>
> Sent: Tuesday, July 08, 2003 1:17 PM
> Subject: Re: (Round 2) Proposed Extensions to OWL
>
> > Tom, I have read your latest proposal several times.  Let me see if I
> > understand it.
> >
> > The idea is to define an ontology of standard functions.  For example,
> > this defines how to transform miles into kilometers:
> >
> > Standard Functions Ontology:
> >
> > <owlx:Transform rdf:ID="MilesToKilometers">
> >       <owlx:tolerance>5%</owlx:tolerance>
> >       <owlx:inputValue>miles</owlx:inputValue>
> >       <owlx:outputValue>kilometers</owlx:outputValue>
> >       <owlx:inputUnits rdf:resource="#Miles"/>
> >       <owlx:outputUnits rdf:resource="#Kilometers"/>
> >       <owlx:transform>miles = kilometers * 0.62</owlx:transform>
> > </owlx:Transform>
> >
>
> This is not quite what I was thinking about. The example I gave was for a
> specific instance of a Transform.  In the instance, the inputValue and
> outputValue properties would actually contain the URIs for the corresponding
> resources.  So it would not be
>
> <owlx:outputValue>kilometers</owlx:outputValue>
>
> but
>
> <owlx:outputValue>SomeInstanceOfaLengthValue</owlx:outputValue>
>
> Of course, with OWL and RDFS you would be able to constrain what kind of
> things are allowed to go into those slots, but I only showed an example of
> an actual instance.
>
> Furthermore,
>
> <owlx:transform>miles = kilometers * 0.62</owlx:transform>
>
> is not quite what I had.   I referred to an (so far imaginary) transform
> resource that I called "G", which was unspecified since I am not clear yet
> how to specify it.  I seriously doubt that we would want to use an unparsed
> string for this.  Anyway, I am fairly sure that we should make the
> transform - or maybe its type -  a resource on its own, so that it can be
> properly characterized.
>
> > Suppose an application were to receive this document:
> >
> > <River rdf:ID="Yangtze">
> >    <length>
> >       <Length>
> >          <measurement>
> >             <LengthMeasurement>
> >                 <measurementValue>
> >                    <LengthValue>
> >                       <numericalValue>3914</numericalValue>
> >                       <unitSpecification rdf:resource="#Miles"/>
> >                    </LengthValue>
> >                </measurementValue>
> >                <precision>...</precision>
> >                <source>...</source>
> >             </LengthMeasurement>
> >          </measurement>
> >       </Length>
> >    </length>
> > </River>
> >
> > And suppose the application wanted to convert the length data in the
> > document to a value with units of kilometers.
> >
> > The application would "consult" the Standard Functions Ontology for a
> > Transform which has inputUnits = Miles and outputUnits = Kilometers.
> > The transform property then details how to convert the numerical miles
> > value into a numerical kilometers value.
> >
> > Is this an accurate summary of your proposal?  /Roger
> >
>
> More or less.  The app would have to look up the transform (type) for a
> LengthValue that matched the input and output units.  I say a "LengthValue"
> because maybe for some other kind of measurement, a different transform
> would be more appropriate.  that remains for a more detailed analysis, I
> would say.
>
>  In addition to computing the conversion, the app would be able to create an
> instance of the transform, similar to my example, and also of the resulting
> LengthValue, and stick those sets of statements back into the data store.
>
> Everything should be specifiable in OWL except for the actual math part.
>
> Cheers,
>
> Tom P

Received on Wednesday, 9 July 2003 09:57:57 UTC