iana mime types as rdfs:Datatype ?

Every iana mime type has an associated url. So for example text/html  
is  http://www.iana.org/assignments/media-types/text/html

Now these urls seem to be exactly what is needed for developing new  
Datatypes. In AtomOwl [1] for example we would like to be able to  
specify be able to translate the following atom xml

<summary type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>I  
watched two complete games and parts of another two, this weekend,  
and... played in one!  Fathers&#x2019; Day, you betcha.</div></summary>

into the following N3

[] :summary """<div xmlns="http://www.w3.org/1999/xhtml" xml:lang="en- 
us" xml:base="http://www.tbray.org/ongoing/When/200x/2006/06/19/">I  
watched two complete games and parts of another two, this weekend,  
and... played in one!  Fathers<E2><80><99> Day, you betcha.</ 
div>"""^^ianatxt:xhtml;

Ie I would like to define 	

ianatxt:html a rdfs:Datatype .

of course since I don't own the iana domain name I probably should  
not. But perhaps this would be a good thing to do? If the folks at  
iana then put up a simple rdf representation at those urls then  
things would be nice and web friendly.

In the meant time I can define awol:xhtml awol:html etc, and redefine  
these later as owl:sameAs ianatxt:html, etc.

Now as an extra follow on issue, we are currently representing an  
atom content object like this

<content type='html'><b>hello</b></content>

as

[] :content [ a :Content;
               :type "text/html";
               :value "<b>hello</b>" ] .


Now if every iana mime type had a url, as above, then I wonder if the  
following options would be better?

[] :content [ a :Content;
               :type ianatxt:html;
               :value "<b>hello</b>" ] .

or even

[] :content [ a :Content;
               :value "<b>hello</b>"^^ianatxt:html ] .


The above seems to say everything but I suppose if we think of all  
the attributes on the content
as extra information sent in the header of the HTTP message, then one  
can see how the initial
still structure still makes sense in this case


[] :content [ a :Content;
               :type "text/html";
               :lang "en";
               :src <http://eg.com/aentry.atom>;
               :body "<b>hello</b>" ] .



A :Content is just a collection of http header fields and a uri  
needed to get the body of the
content, the body of which then helps construct a datatyped literal  
such as "<b>hello</b>"^^ianatxt:html

Henry




[1] https://sommer.dev.java.net/atom/

Received on Friday, 23 June 2006 10:46:45 UTC