Re: Semantic Web Languages

URIs are used for user-defined things (individuals and classes) in order 
to disambiguate names in a global namespace (the Web) that can be added 
to by anybody.  Java packages and class names illustrate practically the 
same mechanism, and for similar reasons.  Admittedly Java provides 
mechanisms that *sometimes* allow unqualified names to be used, but this 
isn't always possible, and some of these mechanisms aren't obviously the 
right thing for a Web language (explicit import statements work in some 
cases, but having to know when you've imported packages containing 
clashing names in order to know when you have to fully-qualify?).

URIs are used for what in a programming language would be keywords (like 
rdf:type) first because RDF is uniformly built on individuals and 
classes (so the user-defined names and language-defined names are 
handled the same way), and second because of the way other languages 
like RDFS and OWL can extend RDF by adding their own classes and 
individuals (so I want to be able to disambiguate rdfs:Class and 
owl:Class).

There are all sorts of mechanisms that can be adopted to help with the 
complexity of dealing with qualified names, and I expect further 
development of SW languages (and development environments) will use 
them, but (a) none of them are necessarily going to be terribly pretty, 
and (b) in an environment like the Web qualified names seem nevertheless 
*necessary*.

That being said, if you don't like URIs being used as they are, it seems 
to me you ought to (a) somehow eliminate what seems to be a design 
requirement for qualified names, and/or (b) propose a better alternative 
(keeping in mind that URIs were already available for this purpose). 
Otherwise, it seems to me such criticisms aren't going to be very 
helpful (or have much impact either).

--Frank

tim.glover@bt.com wrote:
> 
> Well I don't object to URIs being used to uniquely identify web
> resources. But I do object to insisting that URIs are used for
> EVERYTHING, including words in a (programming) language. What is gained
> by it? And what is lost? 
>  
> myuri:One myuri:might myuri:as myuri:well myuri:insist myuri:that
> myuri:ordinary myuri:text myuri:uses myuri:URIs myuri:for myuri:every
> myuri:word myurl:in myuri:English
> 
> Tim. 
> 

Received on Friday, 31 March 2006 16:10:11 UTC