You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lenya.apache.org by Michael Wechner <mi...@wyona.com> on 2005/10/04 12:04:17 UTC
Links using UUID - what syntax should we use
Hi
I would like to use UUID for Links and thought about something like
<link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
or in Wiki syntax
[Hello Lenya|jcr:HOST:REPONAME:UUID]
Can the following spec
http://www.gbiv.com/protocols/uri/rfc/rfc3986.html
help us or is there some JCR docu on addressing?
Any input is very welcome.
Thanks
Michi
--
Michael Wechner
Wyona - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
michael.wechner@wyona.com michi@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Felix Röthenbacher <fe...@wyona.com>.
Hi Michi
I think we should differentiate between internal and external
links, whereas access to a different repository would mean
an external link. So my suggestion would be to have
a terminology for an internal link that is in sync with the
JCR uuid, e.g.
<link uuid="[jcr:uuid]"/>
The advantage is that internal links stay free from location
information like the repo name or the host. Otherwise it would
get cumbersome if you try to move the content from one
repo into another. Or if you think about clustered repositories
you will also have a problem if you specify which repo the
link refers to.
I don't know if it's necessary to access an external repo
directly, or if it wouldn't be better to access the resource through
lenya or any other webapp. Then, every link could handled
with a common external link, e.g.
<link href="[URL]"/>
- Felix
Michael Wechner wrote:
> Hi
>
> I would like to use UUID for Links and thought about something like
>
> <link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
>
> or in Wiki syntax
>
> [Hello Lenya|jcr:HOST:REPONAME:UUID]
>
> Can the following spec
>
> http://www.gbiv.com/protocols/uri/rfc/rfc3986.html
>
> help us or is there some JCR docu on addressing?
>
> Any input is very welcome.
>
> Thanks
>
> Michi
>
--
Felix Röthenbacher felix.roethenbacher@wyona.com
Wyona Inc. - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Felix Röthenbacher <fe...@wyona.com>.
Hi Doug
Doug Chestnut wrote:
>
>
> Michael Wechner wrote:
> [...]
>
>>> Maybe you could give an example of such a link, and its internal and
>>> external syntax ?
>>>
>> Internal: jcr:localhost:lenya1_repo:34546969766860ou79
>>
>> External: /default/authoring/hello_world.html
>
>
> My concern would be when a content manager is editing a doc with the
> one-form editor, or editing the href attribute of a link using bitflux,
> or editing a doc via webdav.
If bitflux is used, the user should be presented only a textual
representation of the link and the lenya internal link information
should be stored in a hidden field.
The one-form editor or an external editor may use a special link
format that is translated into internal representation upon save
or external representation on edit.
My idea is to have a small button on each page through which
a page can be referenced (analog to permanent links in blogs, etc.).
For example:
<a href="localhost:8888/default/authoring/index.html?uuid=[internal-uuid]"/>
On each save or edit, this link will be translated in a system or human
readable format.
- Felix
>
> It is hard enough trying to convince the content managers to link to
> documents in the authoring area (which are rewritten when in the live
> area). Try telling the content manager the meaning of
> jcr:localhost:lenya1_repo:34546969766860ou79.
>
> I guess it would just be a matter of rewriting the links (jcr:... ->
> /default/auth...) before serving the page to the editor (oneform, bxe,
> webdav, ...).
>
>
>>
>> HTH
>>
>> Michi
>>
>>>
>>> --
>>> Wolfgang
>>>
--
Felix Röthenbacher felix.roethenbacher@wyona.com
Wyona Inc. - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Ross Gardler <rg...@apache.org>.
Michael Wechner wrote:
> Ross Gardler wrote:
>
>> Andreas Hartmann wrote:
>>
>>> Michael Wechner wrote:
>>>
>>> [...]
>>>
>>>> At the moment one has to go through all documents if a URL changes
>>>> and it doesn't scale at all and is a real PITA.
>>>>
>>>> By using UUIDs this problem can be solved.
>>>
>>>
>>>
>>>
>>> +1
>>>
>>> What we could do is add an opaque link rewriting layer:
...
>> In Forrest we have a think called the Locationmap,
>
>
>
> cool. Will try to take a look at it asap
>
>> this is exactly what it does (and more).
>
>
>
> what contains the "more"? ;-)
I only jumped into this thread right at the end, I'vbe not followed the
discussion, so forgive me if the "more" was also discussed in the
thread, but here goes...
In the message I replied to a one-to-one link rewriting mechanism is
suggested (<a hre="lm:UUID"> -> <a href="some:realURI">). The
locationmap can provide pattern matching for these rewrite rules, and it
can also be used in the sitemap to provide a mapping between the user
visible URL space and the source URL space. You can also use a select to
provide conditional rewriting depending on the existence of a file e.g.
In sitemap:
<map:match pattern="user/url.html">
<map:generate src="lm:source/url.xml"/>
....
</map:match>
In locationmap:
<match pattern="user/specialFile.xml"">
<location src="http://svn.apache.org/...."/>
</match>
<match pattern="user/*">
<seclect>
<location src="{project:content.xdocs}/{1}"/>
<location src="{common:content.xdocs}/{1}"/>
</select>
</match>
In this case when a user requests user/specialFile.html the source file
for the pipeline is http://svn.apache.org/....
A request for any other URL of the form "user/*" will generate a source
from {project:content.xdocs}/{1} if it exists, otherwise it will come
from {common:content.xdocs}/{1}.
This selection of valid source files also works for the rewriting of links.
Ross
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Michael Wechner <mi...@wyona.com>.
Ross Gardler wrote:
> Andreas Hartmann wrote:
>
>> Michael Wechner wrote:
>>
>> [...]
>>
>>> At the moment one has to go through all documents if a URL changes
>>> and it doesn't scale at all and is a real PITA.
>>>
>>> By using UUIDs this problem can be solved.
>>
>>
>>
>> +1
>>
>> What we could do is add an opaque link rewriting layer:
>>
>>
>> +--------------------------+
>> | Editor |
>> +--------------------------+
>> ^
>> |
>>
>> v
>> <a href="lenyadoc:/en//foo/bar">
>> ^
>> |
>> v
>> +--------------------------+
>> | link rewriting mechanism |
>> +--------------------------+
>> ^
>> |
>> v
>> +-------------------------------------+
>> | Repository |
>> | <a href="jcr://.../8w93sdfiuo7234"> |
>> +-------------------------------------+
>>
>
> In Forrest we have a think called the Locationmap,
cool. Will try to take a look at it asap
> this is exactly what it does (and more).
what contains the "more"? ;-)
Thanks
Michi
>
> http://forrest.apache.org/docs_0_80/locationmap.html
>
> http://svn.apache.org/repos/asf/forrest/trunk/main/java/org/apache/forrest/locationmap/
>
>
> Ross
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
> For additional commands, e-mail: dev-help@lenya.apache.org
>
>
--
Michael Wechner
Wyona - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
michael.wechner@wyona.com michi@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Ross Gardler <rg...@apache.org>.
Andreas Hartmann wrote:
> Michael Wechner wrote:
>
> [...]
>
>> At the moment one has to go through all documents if a URL changes
>> and it doesn't scale at all and is a real PITA.
>>
>> By using UUIDs this problem can be solved.
>
>
> +1
>
> What we could do is add an opaque link rewriting layer:
>
>
> +--------------------------+
> | Editor |
> +--------------------------+
> ^
> |
>
> v
> <a href="lenyadoc:/en//foo/bar">
> ^
> |
> v
> +--------------------------+
> | link rewriting mechanism |
> +--------------------------+
> ^
> |
> v
> +-------------------------------------+
> | Repository |
> | <a href="jcr://.../8w93sdfiuo7234"> |
> +-------------------------------------+
>
In Forrest we have a think called the Locationmap, this is exactly what
it does (and more).
http://forrest.apache.org/docs_0_80/locationmap.html
http://svn.apache.org/repos/asf/forrest/trunk/main/java/org/apache/forrest/locationmap/
Ross
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Andreas Hartmann <an...@apache.org>.
Michael Wechner wrote:
[...]
> At the moment one has to go through all documents if a URL changes
> and it doesn't scale at all and is a real PITA.
>
> By using UUIDs this problem can be solved.
+1
What we could do is add an opaque link rewriting layer:
+--------------------------+
| Editor |
+--------------------------+
^
|
v
<a href="lenyadoc:/en//foo/bar">
^
|
v
+--------------------------+
| link rewriting mechanism |
+--------------------------+
^
|
v
+-------------------------------------+
| Repository |
| <a href="jcr://.../8w93sdfiuo7234"> |
+-------------------------------------+
-- Andreas
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Doug Chestnut <dh...@virginia.edu>.
Michael Wechner wrote:
> Maybe I forgot to say why we need such an internal representation:
>
> At the moment one has to go through all documents if a URL changes
> and it doesn't scale at all and is a real PITA.
>
> By using UUIDs this problem can be solved.
>
> Michi
+1
I can see where UUIDs might solve many problems as a publications
structure changes.
Thanks for the clarity,
--Doug
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Michael Wechner <mi...@wyona.com>.
Doug Chestnut wrote:
>
>
> Michael Wechner wrote:
> [...]
>
>>> Maybe you could give an example of such a link, and its internal and
>>> external syntax ?
>>>
>> Internal: jcr:localhost:lenya1_repo:34546969766860ou79
>>
>> External: /default/authoring/hello_world.html
>
>
> My concern would be when a content manager is editing a doc with the
> one-form editor,
well, the question is, does the one-form editor make the actual source
editable
> or editing the href attribute of a link using bitflux,
Bitflux could provide a Link-Lookup, but of course one cannot prevent
people from adding actual hypertext links ...
> or editing a doc via webdav.
I just say OSR-101 ....
>
> It is hard enough trying to convince the content managers to link to
> documents in the authoring area (which are rewritten when in the live
> area). Try telling the content manager the meaning of
> jcr:localhost:lenya1_repo:34546969766860ou79.
it's not the idea that people have to deal with these kind of ref.
>
> I guess it would just be a matter of rewriting the links (jcr:... ->
> /default/auth...) before serving the page to the editor (oneform, bxe,
> webdav, ...).
that would be one possibility.
Maybe I forgot to say why we need such an internal representation:
At the moment one has to go through all documents if a URL changes
and it doesn't scale at all and is a real PITA.
By using UUIDs this problem can be solved.
Michi
>
>
>
>>
>> HTH
>>
>> Michi
>>
>>>
>>> --
>>> Wolfgang
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
>>> For additional commands, e-mail: dev-help@lenya.apache.org
>>>
>>>
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
> For additional commands, e-mail: dev-help@lenya.apache.org
>
>
--
Michael Wechner
Wyona - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
michael.wechner@wyona.com michi@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Doug Chestnut <dh...@virginia.edu>.
Michael Wechner wrote:
[...]
>> Maybe you could give an example of such a link, and its internal and
>> external syntax ?
>>
> Internal: jcr:localhost:lenya1_repo:34546969766860ou79
>
> External: /default/authoring/hello_world.html
My concern would be when a content manager is editing a doc with the
one-form editor, or editing the href attribute of a link using bitflux,
or editing a doc via webdav.
It is hard enough trying to convince the content managers to link to
documents in the authoring area (which are rewritten when in the live
area). Try telling the content manager the meaning of
jcr:localhost:lenya1_repo:34546969766860ou79.
I guess it would just be a matter of rewriting the links (jcr:... ->
/default/auth...) before serving the page to the editor (oneform, bxe,
webdav, ...).
>
> HTH
>
> Michi
>
>>
>> --
>> Wolfgang
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
>> For additional commands, e-mail: dev-help@lenya.apache.org
>>
>>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Michael Wechner <mi...@wyona.com>.
jplejacq wrote:
> Michael Wechner wrote:
>
>> J. Wolfgang Kaltz wrote:
>>
>>> Michael Wechner schrieb:
>>>
>>>> Doug Chestnut wrote:
>>>>
>>>>> Michael Wechner wrote:
>>>>>
>>>>>>
>>>>>> I would like to use UUID for Links and thought about something like
>>>>>> <link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
>>>>>
>>>>>
>>>>>
>>>
>>> Could you clarify this pls - is this the URI that will be used for
>>> example in a resulting XHTML link ?
>>
>
> I'm late to the discussion so I may not have all the context.
> Michael's proposal looks equivalent to Persistent URLs or URNs.
it's definitely related, but I rather mean the internal representation.
For instance the outside world does not have to know what repositories I am
using internally.
But it's good that you mention this, because at the same time we should
care of the outside world as well.
I think this whole "persistency" thing is something which a CMS definitely
should be take care of, otherwise why use a CMS in the first place ;-)
> If so, it might make sense to look at the standards setup for this as
> well as the architecture for resolvers.
>
> Two references of interest: IETF has several RFCs related to this.
>
> http://xml.resource.org/public/rfc/html/rfc2141.html
>
> PURL is a slightly different approach but should be compatible with
> the IETF standard.
>
> http://purl.oclc.org/
thanks for the pointers
Michi
>
>
--
Michael Wechner
Wyona - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
michael.wechner@wyona.com michi@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by jplejacq <jp...@quoininc.com>.
Michael Wechner wrote:
> J. Wolfgang Kaltz wrote:
>
>> Michael Wechner schrieb:
>>
>>> Doug Chestnut wrote:
>>>
>>>> Michael Wechner wrote:
>>>>
>>>>>
>>>>> I would like to use UUID for Links and thought about something like
>>>>> <link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
>>>>
>>>>
>>
>> Could you clarify this pls - is this the URI that will be used for
>> example in a resulting XHTML link ?
I'm late to the discussion so I may not have all the context. Michael's
proposal looks equivalent to Persistent URLs or URNs. If so, it might
make sense to look at the standards setup for this as well as the
architecture for resolvers.
Two references of interest: IETF has several RFCs related to this.
http://xml.resource.org/public/rfc/html/rfc2141.html
PURL is a slightly different approach but should be compatible with the
IETF standard.
http://purl.oclc.org/
--
JP
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Michael Wechner <mi...@wyona.com>.
J. Wolfgang Kaltz wrote:
> Michael Wechner schrieb:
>
>> Doug Chestnut wrote:
>>
>>> Michael Wechner wrote:
>>>
>>>>
>>>> I would like to use UUID for Links and thought about something like
>>>> <link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
>>>
>
> Could you clarify this pls - is this the URI that will be used for
> example in a resulting XHTML link ?
no (please see my other email as a reply to Doug)
> Or this is to become an internal format, which will always be
> rewritten into links as we know them now ?
right (or at least in most cases)
>
> If the user then follows such a rewritten link, how will we know that
> it is actually to be mapped to that REPONAME, if this knowledge is put
> in the link rewriter ?
there needs to be a mapping of course somewhere within Lenya
>
> (...)
>
>>
>>> I haven't had the time to look at the jcr integration but I am
>>> guessing that the HOST is the jcr repo hostname. It seems that this
>>> would break if I move my repo to a different host, or perhaps run
>>> the same repo on multiple hosts (don't know if this is possible).
>>>
>>> Couldn't we just use something like:
>>> <link ref="link:PUBID:UUID">Hello Lenya</link>
>>
>>
>>
>>
>> I don't think this is sufficient, because one could have
>> several repos on the same host.
>
>
> I tend to share Doug's view, I'm unconfortable with a specific
> repository HOST being hard-coded within a link.
well, if you don't specify a host, then localhost will be assumed.
It's not much different to hypertext links ;-)
>
> Maybe you could give an example of such a link, and its internal and
> external syntax ?
>
Internal: jcr:localhost:lenya1_repo:34546969766860ou79
External: /default/authoring/hello_world.html
HTH
Michi
>
> --
> Wolfgang
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
> For additional commands, e-mail: dev-help@lenya.apache.org
>
>
--
Michael Wechner
Wyona - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
michael.wechner@wyona.com michi@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by "J. Wolfgang Kaltz" <ka...@interactivesystems.info>.
Michael Wechner schrieb:
> Doug Chestnut wrote:
>> Michael Wechner wrote:
>>>
>>> I would like to use UUID for Links and thought about something like
>>> <link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
Could you clarify this pls - is this the URI that will be used for
example in a resulting XHTML link ? Or this is to become an internal
format, which will always be rewritten into links as we know them now ?
If the user then follows such a rewritten link, how will we know that it
is actually to be mapped to that REPONAME, if this knowledge is put in
the link rewriter ?
(...)
>
>> I haven't had the time to look at the jcr integration but I am
>> guessing that the HOST is the jcr repo hostname. It seems that this
>> would break if I move my repo to a different host, or perhaps run the
>> same repo on multiple hosts (don't know if this is possible).
>>
>> Couldn't we just use something like:
>> <link ref="link:PUBID:UUID">Hello Lenya</link>
>
>
>
> I don't think this is sufficient, because one could have
> several repos on the same host.
I tend to share Doug's view, I'm unconfortable with a specific
repository HOST being hard-coded within a link.
Maybe you could give an example of such a link, and its internal and
external syntax ?
--
Wolfgang
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Michael Wechner <mi...@wyona.com>.
Doug Chestnut wrote:
>
>
> Michael Wechner wrote:
>
>> Hi
>>
>> I would like to use UUID for Links and thought about something like
>>
>> <link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
>>
>> or in Wiki syntax
>>
>> [Hello Lenya|jcr:HOST:REPONAME:UUID]
>
>
> Do we really want to expose the jcr layer (jcr:HOST:REPONAME) to the
> end users?
it wouldn't in general, because one would a apply a link transformer which
would lookup the path and for instance insert a hypertext link
> I haven't had the time to look at the jcr integration but I am
> guessing that the HOST is the jcr repo hostname. It seems that this
> would break if I move my repo to a different host, or perhaps run the
> same repo on multiple hosts (don't know if this is possible).
>
> Couldn't we just use something like:
> <link ref="link:PUBID:UUID">Hello Lenya</link>
I don't think this is sufficient, because one could have
several repos on the same host.
Michi
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
> For additional commands, e-mail: dev-help@lenya.apache.org
>
>
--
Michael Wechner
Wyona - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
michael.wechner@wyona.com michi@apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org
Re: Links using UUID - what syntax should we use
Posted by Doug Chestnut <dh...@virginia.edu>.
Michael Wechner wrote:
> Hi
>
> I would like to use UUID for Links and thought about something like
>
> <link ref="jcr:HOST:REPONAME:UUID">Hello Lenya</link>
>
> or in Wiki syntax
>
> [Hello Lenya|jcr:HOST:REPONAME:UUID]
Do we really want to expose the jcr layer (jcr:HOST:REPONAME) to the end
users? I haven't had the time to look at the jcr integration but I am
guessing that the HOST is the jcr repo hostname. It seems that this
would break if I move my repo to a different host, or perhaps run the
same repo on multiple hosts (don't know if this is possible).
Couldn't we just use something like:
<link ref="link:PUBID:UUID">Hello Lenya</link>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org