W3C home > Mailing lists > Public > public-lod@w3.org > March 2010

Re: URI Fragments

From: Richard Cyganiak <richard@cyganiak.de>
Date: Fri, 12 Mar 2010 16:22:57 +0000
Cc: Linked Data community <public-lod@w3.org>
Message-Id: <D54E8EB1-92FC-43A3-A641-76EDDAFB6AC3@cyganiak.de>
To: nathan@webr3.org
Hi Nathan,

On 12 Mar 2010, at 14:00, Nathan wrote:
> Last question(s) related to fragments.. if I have:
>  http://example.org/something
>  http://example.org/something#a
>
> Those are two unique URIs and thus two unique resources (?)

Yes.

> And the semantics of a fragment means that
> http://example.org/something#a is a secondary resource, where
> http://example.org/something is the primary resource (?)
>
> Then if I delete a Primary resource, the secondary resources must also
> be deleted, true / false (?).

Here's my take on this.

The web is about representations of information resources. If you add  
RDF to the picture, then it's also about descriptions of arbitrary  
entities.

On the web, you can create and delete representations. You can create  
and delete descriptions. But you cannot create or delete resources.

For example, if you do an HTTP DELETE request to a URI, the  
representations at that URI are deleted. As a side effect, something  
in your system (file, database record, purchase order) might be  
deleted as well, because your system intrinsically connects the  
representation to that system-internal entity, but that side effect is  
part of the application's internals and not a concern for the web  
interface.

So, you can't really “delete” those primary and secondary resources.  
But if you delete all the representations of a primary resource, then  
this will delete the authoritative descriptions of the secondary  
resources, because those live inside the representations.

Best,
Richard



> Here are some examples, which may seem like over kill but some are
> interesting and generally I *feel* rules like this should be either
> always true, or always false, never varying.
>
> examples:
> if I remove a database table, then all it's rows also no longer exist.
> if I remove London then the Tower of London also no longer exists.
> if somebody removes me, then my arms also no longer exist.
> if I remove test.html then test.html#whatever no longer exists.
> if I remove test.rdf then test.rdf#this no longer exists
> if I remove http://www.w3.org/People/Berners-Lee/card then
> http://www.w3.org/People/Berners-Lee/card#i no longer exists.
>
> conversely:
> if I remove a row, the table still exists
> if I remove the Tower of London, London still exists
> if you remove my arms, I still exists and I'll find another way to  
> type.
> if I remove test.html#whatever test.html still exists
> if I remove test.rdf#this, test.rdf still exists
> if I remove http://www.w3.org/People/Berners-Lee/card#i then
> http://www.w3.org/People/Berners-Lee/card still exists.
>
> If the above is true (secondary resource must also be deleted on  
> removal
> of primary resource), then I should never use a fragment Identifier to
> refer to a non-virtual object (i.e. "me" a Person) - because I can't  
> be
> deleted by simply removing a resource. (?)
>
> Regards!
>
> Nathan
>
Received on Friday, 12 March 2010 16:23:32 UTC

This archive was generated by hypermail 2.3.1 : Sunday, 31 March 2013 14:24:25 UTC