OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] URI for class names and native data types

[ Lists Home | Date Index | Thread Index ]


Clark C . Evans writes:
 > On Tue, Dec 18, 2001 at 01:15:43PM -0000, Leigh Dodds wrote:
 > | For Java purposes, why not use the javadoc URI?
 > | e.g. http://java.sun.com/j2se/1.3/docs/api/java/lang/Integer.html
 > works across multiple languages.  After reading the
 > RFC a bit more, I was thinking something like this:
 > 
 >    type://language/the/package/path#classname

Some comments:

  1.  The "//" is the hostname separator, and doesn't make sense for
      this kind of URN.  So your template becomes

          type:language/the/package/path#classname

  2.  I can see how you make names for classes in modules, but there's
      more to it than that.  Most languages (not all) have some types
      for which there is no corresponding named type in the package
      namespace.  Numeric types often fall into this category; think
      of "int" in C/C++.  How could these be spelled?  Perhaps there
      needs to be another "chunk" to the URNs.  Let's try this, and
      change the "chunk separator" to ":" instead of "/", to make it
      more easily distinguished:

          type:language:intrinsic/int

      A class in a package/module might then be:

          type:java:class/java/lang#String
          type:python:class/win32com/client#genpy
          type:perl:class/Net/Ftp

  3.  Have you considered types that are defined abstractly rather
      than for a specific programming language?  Say, in an interface
      definition language such as CORBA IDL, or some other formal
      specification?

          type:abstract:ieee754/double
          type:abstract:corba/3.0/my/module#interface

There are still (huge!) potential problems with these, I think.
Versioning is as much a problem here as in other areas, and would
probably need to be dealt with.  Naming conflicts exist in the space
being described, as well, so it's hard to name types that have the
same name by coincidence: suppose two companies build their own
MailSystem::Server interface using CORBA, and your job is to write a
report explaining which one your employer should adopt.


  -Fred

-- 
Fred L. Drake, Jr.  <fdrake at acm.org>
PythonLabs at Zope Corporation





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS