Literal vs. predefined values

Hi group,

at the end of our last teleconference we started discussing comments 
about the complexity in the current HTTP-in-RDF approach. One comment 
was about predefined values for the header names. The proposed 
simplification was to get rid of the predefined values and use just 
literals.

<http:fieldName>Accept</http:fieldName>

instead of

<http:fieldName
   rdf:resource="http://www.w3.org/2006/http-header#accept"/>

When using the simplified approach it would be easier to create the RDF, 
because you just create a literal object and add it to the statement. 
Using the current approach you would have to look into the list of 
predifined header names, if the header name is a predefined one, create 
a resource for the predefined value (or use an already existing one), if 
not create a literal object, then add (resource|literal) to the statement.

A disadvantage with the simplified approach is: How to deal with case? 
Is "Accept" to be treated the same as "accept"? But it's a similar thing 
with the current approach: Should "Accept" be semantically the same as 
"http://www.w3.org/2006/http-header#accept"? Example: When more header 
names are being registered in RFC4229 the list of predefined values will 
have to be updated. One application uses an older list than another. 
Both want to record a header. One uses the predefined value from the 
newer list, the other creates a literal because the header name is not 
in the older list. Do both applications mean the same header?

-- 
Johannes Koch
BIKA Web Compliance Center - Fraunhofer FIT
Schloss Birlinghoven, D-53757 Sankt Augustin, Germany
Phone: +49-2241-142628    Fax: +49-2241-142065

Received on Friday, 11 May 2007 08:40:03 UTC