www-repository mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Anderson" <...@netspace.net.au>
Subject RE: subproject URI naming convention
Date Thu, 04 Dec 2003 04:04:23 GMT
To summarise, there are three possible ways to encode
subprojects in URIs:

1. Status quo
   repository-uri = access-specifier "/" product-specifier "/"
                    version-specifier "/" artifact-specifier
   product-specifier = organisation "/" project

   . recommend that <organisation> is the reverse FQDN
   . for subprojects, <project> is the concatenation of project and
subproject
     names
   . tools can't determine project and suproject names from URI

  E.g:
    http://repo.apache.org/jakarta.apache.org/commons-lang

2. Introduce mandatory <subproject> path
   i.e, change product-specifier:

   product-specifier = organisation "/" project "/" subproject

   . recommend that <organisation> is the reverse FQDN
   . no need to concatenate project and subproject names
   . doesn't support subprojects nesting > 1
   . redundant directory for projects with no subprojects
   . tools can determine project and suproject names from URI

  E.g:
    http://repo.apache.org/org.apache.jakarta/commons/lang
    http://repo.apache.org/org.apache.xml/batik/batik

3. Change <product-specifier> so that it is opaque

   repository-uri = access-specifier "/" product-specifier "/"
                    version-specifier "/" artifact-specifier
   product-specifier = path_segments

   . recommend that <product-specifier> contains:
     . reverse FQDN
     . project name
     . subproject name(s)
   . can scale to arbitrary levels of subprojects
   . tools must parse URIs right to left, in order
     to separate version-specifier and product-specifier
   . tools must derive organisation, project, and subproject information
     from meta-data

  E.g:
    http://repo.apache.org/org/apache/jakarta/commons/lang
    http://repo.apache.org/org/apache/xml/batik

I'm beginning to prefer option 3.


-Tim




Mime
View raw message