- From: Roger L. Costello <costello@mitre.org>
- Date: Wed, 09 Jul 2003 09:57:47 -0400
- To: "Thomas B. Passin" <tpassin@comcast.net>, www-rdf-interest@w3.org
- CC: "Costello,Roger L." <costello@mitre.org>
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