> From: Nick Chalko [mailto:[EMAIL PROTECTED]
>
> Given this spec
>
> repository-uri = access-specifier "/" product-specifier "/"
>                    version-specifier "/" artifact-specifier
>
>
> What is the version of this URL
> http://repo.apache.org/org/apache/commons/nightly/alpha/1.0/foo.jar
>
>     * Projet commons,  version Nightly  1.0 alpha
>     * Project commons-nightly, version  1.0 alpha
>     * Project commons-nightly-alpah  version 1.0  (release)
>
> I think we should tighten the spec enough so we can at least tell the
> access, product,version, and artifact specifiers appart.
>
> R,
> Nick
>

The URI isn't valid, according to

http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/CommonBuildVersio
nSpecifier

as a nightly build is an interim build:
  interim-build = interim-build-designation "/" version
                  [ "/" interim-version ]
  interim-version = "latest" | YYYYMMDD ["-" HHMM [SS]]
  interim-build-designation = "interim" | "nightly" | "snapshot" | ...
  version = "latest" | *pchar

IOW, one of "alpha" or "1.0" is invalid.

However, given the URI:

http://repo.apache.org/org/apache/commons/nightly/1.0/20031113/jars/foo-1.0.
jar

it is possible to determine the version using the common build version
specifier and java artifact specifier proposals, by parsing the URI
from right to left.

It isn't possible to separate the organisation from the directory
component of access-specifier however.
e.g. given:
  http://repo.apache.org/org/apache/

it could be interpreted as:
. directory = "org", organisation = "apache"
. directory = "", organisation = "org/apache"

-Tim


Reply via email to