Re: Is 303 really necessary?

2010-11-04 Thread mike amundsen

> It is *a* solution -- not necessarily *the* solution.

understood.


> And if you don't
> want it centralized, there are ways to get around that also, which I
> discussed in 2005:
> http://lists.w3.org/Archives/Public/public-swbp-wg/2005Aug/0057.html

The alternate method described there looks (to me) quite a bit like
Ian's proposal (using a triple to sort out the indirection).


It is conceptually similar in that it can define its own conventions and
semantics.

yes, that was my observation.


However, the key point is that it is *layered* on the good
old http scheme.  Thus, if you click on this URI:

 http://t-d-b.org/?http://dbooth.org/2005/dbooth/

it works, with no changes needed to your browser

So the thinking here is to use the "concept" of a scheme without
actually minting one because the most common client today would throw
an error if an actual scheme was used, right?


mca
http://amundsen.com/blog/
http://twitter@mamund
http://mamund.com/foaf.rdf#me


#RESTFest 2010
http://rest-fest.googlecode.com




On Thu, Nov 4, 2010 at 20:42, David Booth  wrote:
> On Thu, 2010-11-04 at 18:27 -0400, mike amundsen wrote:
>> 
>> Also please note that if you mint your URIs using a 303-redirect service
>> such as http://thing-described-by.org/ then the extra network hop from
>> the 303 redirect could be optimized away by parsing the URI, as
>> described here:
>> http://thing-described-by.org/#optimizing
>> For example, you would have the relationship:
>>
>>  
>>      :isDescribedBy
>>            .
>> 
>> So the solution is to introduce a URI convention (assigning meaning to
>> the convention) and use a central service to implement this feature.
>
> It is *a* solution -- not necessarily *the* solution.  And if you don't
> want it centralized, there are ways to get around that also, which I
> discussed in 2005:
> http://lists.w3.org/Archives/Public/public-swbp-wg/2005Aug/0057.html
>
>>
>> 
>> so if the toucan were denoted by the URI
>> http://t-d-b.org/?http://example/toucan-page
>> the you know that its description is located at
>> http://example/toucan-page
>> and there is no need to actually dereference the other URI.
>> 
>> And to expect consumers of the URI to also understand and honor that
>> convention.
>>
>> That sure looks|sounds to me like a new URI scheme.
>
> It is not a URI scheme as defined in RFC 3986:
> http://tools.ietf.org/html/rfc3986
> It is conceptually similar in that it can define its own conventions and
> semantics.  However, the key point is that it is *layered* on the good
> old http scheme.  Thus, if you click on this URI:
>
>  http://t-d-b.org/?http://dbooth.org/2005/dbooth/
>
> it works, with no changes needed to your browser.  In contrast, if you
> click on this URI:
>
>  tdb:http://dbooth.org/2005/dbooth/
>
> You get an error.
>
>
>
> --
> David Booth, Ph.D.
> Cleveland Clinic (contractor)
> http://dbooth.org/
>
> Opinions expressed herein are those of the author and do not necessarily
> reflect those of Cleveland Clinic.
>
>



isDefinedBy and isDescribedBy, Tale of two missing predicates

2010-11-04 Thread Kingsley Idehen

All,

So when all is said an done, post 303 redirection imbroglio, the moral 
of the story *seems* to read as follows:


When you make a hypermedia based Ontology for deployment on an HTTP 
network (intranet, extranet, World Wide Web) do include a relation that 
associates it with the Properties and Classes that it describes. 
Commonly used predicate for this is: rdfs:isDefinedBy [1] .


When you create hypermedia based structured data for deployment on an 
HTTP network (intranet, extranet, World Wide Web) do include a relation 
that associates each Subject/Entity (or Data Item) with its 
container/host document. A suitable predicate for this is: 
wdrs:describedBy [2] .


At the current time, most ontologies deployed on the Web do not include 
rdfs:isDefinedBy triples. The same applies to descriptor documents (RDF 
included) currently deployed on the Web re. wdrs:isDescribeBy.


As a best practice, common use of these predicates would increase 
navigability, link density, and overall cohesiveness of the burgeoning 
Web of Linked Data. It would truly demonstrate practicing what we 
preach, dog-food style!



Links:

1. http://www.w3.org/2007/05/powder-s#describedBy
2. http://www.w3.org/TR/rdf-schema/#ch_isdefinedby.


--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen







Re: Is 303 really necessary?

2010-11-04 Thread David Booth
On Thu, 2010-11-04 at 18:27 -0400, mike amundsen wrote:
> 
> Also please note that if you mint your URIs using a 303-redirect service
> such as http://thing-described-by.org/ then the extra network hop from
> the 303 redirect could be optimized away by parsing the URI, as
> described here:
> http://thing-described-by.org/#optimizing
> For example, you would have the relationship:
> 
>  
>  :isDescribedBy
>    .
> 
> So the solution is to introduce a URI convention (assigning meaning to
> the convention) and use a central service to implement this feature.

It is *a* solution -- not necessarily *the* solution.  And if you don't
want it centralized, there are ways to get around that also, which I
discussed in 2005:
http://lists.w3.org/Archives/Public/public-swbp-wg/2005Aug/0057.html 

> 
> 
> so if the toucan were denoted by the URI
> http://t-d-b.org/?http://example/toucan-page
> the you know that its description is located at
> http://example/toucan-page
> and there is no need to actually dereference the other URI.
> 
> And to expect consumers of the URI to also understand and honor that
> convention.
> 
> That sure looks|sounds to me like a new URI scheme.

It is not a URI scheme as defined in RFC 3986:
http://tools.ietf.org/html/rfc3986
It is conceptually similar in that it can define its own conventions and
semantics.  However, the key point is that it is *layered* on the good
old http scheme.  Thus, if you click on this URI:

  http://t-d-b.org/?http://dbooth.org/2005/dbooth/ 

it works, with no changes needed to your browser.  In contrast, if you
click on this URI:

  tdb:http://dbooth.org/2005/dbooth/

You get an error.



-- 
David Booth, Ph.D.
Cleveland Clinic (contractor)
http://dbooth.org/

Opinions expressed herein are those of the author and do not necessarily
reflect those of Cleveland Clinic.




Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 4:00 PM, Hugh Glaser wrote:

Pretty much +1.
Of course, being a Good Citizen of the LOD Community, I have always done
the 303 thing (or hash), as recommended in the relevant docs, even if not
mandated. This was despite the fact that I disagreed that it was worth the
candle, compared with many of the more pragmatic, and social issues that
are being raised here.
A community as small as ours (still) is can ill afford to have splintering.

But I do find myself wondering whether things have changed since that
decision was made, but certainly sufficient time has passed to review it,
and there have been some changes out there since.

By the way, on my travels as a LD consumer, I do find a lot of LD that
does just do 200 - arrived just a little while ago:
curl -i -H "Accept: application/rdf+xml"
http://www.uk-postcodes.com/postcode/AB101AA
HTTP/1.1 200 OK
...

Hugh,

Let's pass the URL:  (Ian: 
I am not speaking Turtle I want the Link to work with all kinds of email 
clients that support hyperlinks) through URI Debugger [1].


1. 
http://linkeddata.informatik.hu-berlin.de/uridbg/index.php?url=http%3A%2F%2Fwww.uk-postcodes.com%2Fpostcode%2FAB101AA&useragentheader=&acceptheader= 
--  tell me nothing, HTTP response headers tell an HTTP User 
agent nothing. It tell me (Human) "Get this information as XML 
, CSV 
, JSON 
 or RDF 
" (hopefully the 
hyperlinks remain intact re. XML, CSV, JSON, and RDF resource URLs)


2. 
http://linkeddata.uriburner.com/about/html/http://linkeddata.uriburner.com/about/id/entity/http/www.uk-postcodes.com/postcode/AB101AA 
-- shows that semantically, we have a triple based on "sioc:links_to" 
relation that connects the HTML page to various resource types (RDF, 
CSV, XML, JSON)


3. 
http://linkeddata.uriburner.com/about/html/http/www.uk-postcodes.com/postcode/AB101AA.rdf 
-- show an empty page since there isn't a triple connecting the RDF 
resource to its content (no real-world sensory equivalent of 
distinguishing the Canvas from the Painting, the Data in the Graph Paper 
from the actual Graph Paper)


4. 
http://linkeddata.uriburner.com/ode/?uri%5B%5D=http%3A%2F%2Flinkeddata.uriburner.com%2Fabout%2Fid%2Fentity%2Fhttp%2Fwww.uk-postcodes.com%2Fpostcode%2FAB101AA.rdf&; 
-- clicked the ODE link in the footer of empty page since ODE is an RDF 
data browser, it projects the graph pictorial carried by the RDF document


5. 
http://linkeddata.uriburner.com/describe/?url=http%3A%2F%2Fwww.uk-postcodes.com%2Fpostcode%2FAB101AA%23ddd9fd92559e0657db00c4e60c49f344c98c6dcc8-ge_1&sid=8829&urilookup=1 
-- because of the HTTP GET in #2 data was still written to the backend 
RDF store/dbms, so a descriptor page can still be generated.


** I know at first blush you might assume this to be a demonstration of 
OpenLink technology, if so please find a way to put that aside ** Lets 
look at a number of things in play here:


1. The description of a Postcode was persisted to a Document
2. The Document was published to the Web
3. The Document Address became the focal point of the Web contribution
4. The Document has unambiguously Identified Subjects (using an HTTP URI 
based Names)
5. The Document contains no metadata that semantically associates its 
Subjects
6. 
http://linkeddata.informatik.hu-berlin.de/uridbg/index.php?url=http%3A%2F%2Fwww.uk-postcodes.com%2Fpostcode%2FAB101AA%23ddd9fd92559e0657db00c4e60c49f344c98c6dcc8-ge_1&useragentheader=&acceptheader= 
-- verifying #5
7. http://bit.ly/bV1rsY -- alternative to #6 using same tool but passing 
URL of the descriptor generated by our Sponger (what's behind 
URIBurner), notice how it closes the loop by adding the missing metadata 
in a myriad of way that includes HTML+RDFa.


To conclude, is this URL: 
, what you regard as the 
best practice? If so how, can this be? If the data doesn't effectively 
describe itself to Humans and Machines without the middleware heuristics 
demonstrated by our Sponger?


Ultimately, we come back to relative and subjective ambiguity. That will 
never go away, but deductively constructing context is a practical 
solution that's 100% palatable with the ingenuity that belies Web 
Architecture. IMHO.



Links:

1. http://linkeddata.informatik.hu-berlin.de/uridbg/index.php
2. http://en.wikipedia.org/wiki/Document -- What is a Document?


--

Hugh

On 04/11/2010 19:04, "Harry Halpin"  wrote:


On Thu, Nov 4, 2010 at 7:18 PM, Ian Davis  wrote:

On Thursday, November 4, 2010, Nathan  wrote:


Please, don't.

303 is a PITA, and it has detrimental affects across the board from
network load through to server admin. Likewise #frag URIs have there
own set of PITA features (although they are nicer on the network and
servers).

However, and very c

Re: WebID and Signed Emails

2010-11-04 Thread Kingsley Idehen

On 11/4/10 6:48 PM, Melvin Carvalho wrote:

On 4 November 2010 23:24, Kingsley Idehen  wrote:

On 11/4/10 5:09 PM, Mischa Tuffield wrote:

Drawing an analogy, this email is signed, I am not signed, the email has a
uri identifying the person which sent, and they are quite different.

Cheers,

Mischa *2 [cents|pence] worth


Best,

Nathan


-BEGIN PGP SIGNATURE-
Version: GnuPG/MacGPG2 v2.0.12 (Darwin)

iQIcBAEBAgAGBQJM0yETAAoJEJ7QsE5R8vfvsQoQALCxpsT7wfjSHLIiYsHCuf/8
KSXHqMMUBiHNJyc8asFyfA9+CGMOM3r3b/kmF5KNPmg49RB9bon5Jlb5fiCvBr5J
TXYk+5s7iFpLENzhWhDJhCpIX8ZC/HBXDJ/Vpkjijesa3W+5dL/G+4RHYXCpUTi1
Rwc6FA57pZTb1NnKgmEdK6jCO4sZBhdkyCKaWwlvK1zig07XdP1/CVmblGWpaSuc
oXJZ9cUf0gKnwI4NDO7B/PjgvfMH7/8pWVPx56f68rk/fnXaOB0aWbxCwuIuDeL/
obzLU1i7oxjnKD4TMdH+bULJAnZvndyLWPRJBorhfJQqfnvV9xAJGTWAWxf4G5Xh
r5iHA5FsLIw1GFBuMhWHVsFXtuDhCXrXzWxOTlSPGx43/bIZtXeQbTXcbUvI5zGU
RAU6etCOFuCEo46H+i0T5yJfUz0OhwjYNBSIqIZq/FDpt9rkCKNavXIhRmazKCoI
l7Lh5zouk9UH+wuKfE4Z0yAbXDTgobmbqcZzKzBXgzx9B8haYuCEKXcbmBbWIt2h
+p2OkAEBfngZZMtz2Wi5WQWE/dgv0cPjX19y9sHcXpaop6i9kFArQeCuYb/p+6fr
G1FnjZYTOKWex9eQd88oxzlisFafyU8cgTX2VxEdiH6Ko7yD1wdhyAw8KYegEnL+
4O+cZmx+6w0HQNwM2T5D
=Q5HZ
-END PGP SIGNATURE-


Misca,

Nice of you to bring this up, I've changed topic heading accordingly.

Now imagine if your signature also included your WebID. Then my email client
would verify your mails using the WebID protocol :-)

Another example of the power of Linked Data!

Do you even need your WebID in your signature?


No, not really. Got wires a little crossed, too much multi tasking 
today, even by my standards :-)


I should be able to verify the sender of the a signed email by verifying 
the public key in my possession which boils down to S/MIME + WebID 
tweak. Thus, removing CA dependency by allowing self-signed certs.

What if your WebID pointed to your PGP credentials?


That too, and will ultimately be on of the options, I suspect.


Kingsley

--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen










--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: WebID and Signed Emails

2010-11-04 Thread Melvin Carvalho
On 4 November 2010 23:24, Kingsley Idehen  wrote:
> On 11/4/10 5:09 PM, Mischa Tuffield wrote:
>
> Drawing an analogy, this email is signed, I am not signed, the email has a
> uri identifying the person which sent, and they are quite different.
>
> Cheers,
>
> Mischa *2 [cents|pence] worth
>
>>
>> Best,
>>
>> Nathan
>>
>
> -BEGIN PGP SIGNATURE-
> Version: GnuPG/MacGPG2 v2.0.12 (Darwin)
>
> iQIcBAEBAgAGBQJM0yETAAoJEJ7QsE5R8vfvsQoQALCxpsT7wfjSHLIiYsHCuf/8
> KSXHqMMUBiHNJyc8asFyfA9+CGMOM3r3b/kmF5KNPmg49RB9bon5Jlb5fiCvBr5J
> TXYk+5s7iFpLENzhWhDJhCpIX8ZC/HBXDJ/Vpkjijesa3W+5dL/G+4RHYXCpUTi1
> Rwc6FA57pZTb1NnKgmEdK6jCO4sZBhdkyCKaWwlvK1zig07XdP1/CVmblGWpaSuc
> oXJZ9cUf0gKnwI4NDO7B/PjgvfMH7/8pWVPx56f68rk/fnXaOB0aWbxCwuIuDeL/
> obzLU1i7oxjnKD4TMdH+bULJAnZvndyLWPRJBorhfJQqfnvV9xAJGTWAWxf4G5Xh
> r5iHA5FsLIw1GFBuMhWHVsFXtuDhCXrXzWxOTlSPGx43/bIZtXeQbTXcbUvI5zGU
> RAU6etCOFuCEo46H+i0T5yJfUz0OhwjYNBSIqIZq/FDpt9rkCKNavXIhRmazKCoI
> l7Lh5zouk9UH+wuKfE4Z0yAbXDTgobmbqcZzKzBXgzx9B8haYuCEKXcbmBbWIt2h
> +p2OkAEBfngZZMtz2Wi5WQWE/dgv0cPjX19y9sHcXpaop6i9kFArQeCuYb/p+6fr
> G1FnjZYTOKWex9eQd88oxzlisFafyU8cgTX2VxEdiH6Ko7yD1wdhyAw8KYegEnL+
> 4O+cZmx+6w0HQNwM2T5D
> =Q5HZ
> -END PGP SIGNATURE-
>
>
> Misca,
>
> Nice of you to bring this up, I've changed topic heading accordingly.
>
> Now imagine if your signature also included your WebID. Then my email client
> would verify your mails using the WebID protocol :-)
>
> Another example of the power of Linked Data!

Do you even need your WebID in your signature?

What if your WebID pointed to your PGP credentials?

>
> --
>
> Regards,
>
> Kingsley Idehen   
> President & CEO
> OpenLink Software
> Web: http://www.openlinksw.com
> Weblog: http://www.openlinksw.com/blog/~kidehen
> Twitter/Identi.ca: kidehen
>
>
>
>
>



Re: Is 303 really necessary?

2010-11-04 Thread mike amundsen

Also please note that if you mint your URIs using a 303-redirect service
such as http://thing-described-by.org/ then the extra network hop from
the 303 redirect could be optimized away by parsing the URI, as
described here:
http://thing-described-by.org/#optimizing
For example, you would have the relationship:

 
 :isDescribedBy
   .

So the solution is to introduce a URI convention (assigning meaning to
the convention) and use a central service to implement this feature.


so if the toucan were denoted by the URI
http://t-d-b.org/?http://example/toucan-page
the you know that its description is located at
http://example/toucan-page
and there is no need to actually dereference the other URI.

And to expect consumers of the URI to also understand and honor that convention.

That sure looks|sounds to me like a new URI scheme.

mca
http://amundsen.com/blog/
http://twitter@mamund
http://mamund.com/foaf.rdf#me


#RESTFest 2010
http://rest-fest.googlecode.com




On Thu, Nov 4, 2010 at 18:11, David Booth  wrote:
> On Thu, 2010-11-04 at 19:26 +, Nathan wrote:
>> William Waites wrote:
>> > we need some kind of document -> description indirection...
>>
>> tdb: .. provides a ready means for identifying "non-information
>> resources" by semantic indirection
>>
>> http://tools.ietf.org/html/draft-masinter-dated-uri-06
>
> Yes, but this can also be done using good old http URIs, by use of a
> 303-redirect service such as
> http://thing-described-by.org/
> thus avoiding the need for a new URI scheme.
>
>
> --
> David Booth, Ph.D.
> Cleveland Clinic (contractor)
> http://dbooth.org/
>
> Opinions expressed herein are those of the author and do not necessarily
> reflect those of Cleveland Clinic.
>
>
>



WebID and Signed Emails

2010-11-04 Thread Kingsley Idehen

On 11/4/10 5:09 PM, Mischa Tuffield wrote:

Drawing an analogy, this email is signed, I am not signed, the email has a uri 
identifying the person which sent, and they are quite different.

Cheers,

Mischa *2 [cents|pence] worth

>  
>  Best,
>  
>  Nathan
>  

-BEGIN PGP SIGNATURE-
Version: GnuPG/MacGPG2 v2.0.12 (Darwin)

iQIcBAEBAgAGBQJM0yETAAoJEJ7QsE5R8vfvsQoQALCxpsT7wfjSHLIiYsHCuf/8
KSXHqMMUBiHNJyc8asFyfA9+CGMOM3r3b/kmF5KNPmg49RB9bon5Jlb5fiCvBr5J
TXYk+5s7iFpLENzhWhDJhCpIX8ZC/HBXDJ/Vpkjijesa3W+5dL/G+4RHYXCpUTi1
Rwc6FA57pZTb1NnKgmEdK6jCO4sZBhdkyCKaWwlvK1zig07XdP1/CVmblGWpaSuc
oXJZ9cUf0gKnwI4NDO7B/PjgvfMH7/8pWVPx56f68rk/fnXaOB0aWbxCwuIuDeL/
obzLU1i7oxjnKD4TMdH+bULJAnZvndyLWPRJBorhfJQqfnvV9xAJGTWAWxf4G5Xh
r5iHA5FsLIw1GFBuMhWHVsFXtuDhCXrXzWxOTlSPGx43/bIZtXeQbTXcbUvI5zGU
RAU6etCOFuCEo46H+i0T5yJfUz0OhwjYNBSIqIZq/FDpt9rkCKNavXIhRmazKCoI
l7Lh5zouk9UH+wuKfE4Z0yAbXDTgobmbqcZzKzBXgzx9B8haYuCEKXcbmBbWIt2h
+p2OkAEBfngZZMtz2Wi5WQWE/dgv0cPjX19y9sHcXpaop6i9kFArQeCuYb/p+6fr
G1FnjZYTOKWex9eQd88oxzlisFafyU8cgTX2VxEdiH6Ko7yD1wdhyAw8KYegEnL+
4O+cZmx+6w0HQNwM2T5D
=Q5HZ
-END PGP SIGNATURE-



Misca,

Nice of you to bring this up, I've changed topic heading accordingly.

Now imagine if your signature also included your WebID. Then my email 
client would verify your mails using the WebID protocol :-)


Another example of the power of Linked Data!

--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen







Re: Is 303 really necessary?

2010-11-04 Thread David Booth
On Thu, 2010-11-04 at 19:26 +, Nathan wrote:
> William Waites wrote:
> > we need some kind of document -> description indirection... 
> 
> tdb: .. provides a ready means for identifying "non-information 
> resources" by semantic indirection
> 
> http://tools.ietf.org/html/draft-masinter-dated-uri-06

Yes, but this can also be done using good old http URIs, by use of a
303-redirect service such as
http://thing-described-by.org/
thus avoiding the need for a new URI scheme.


-- 
David Booth, Ph.D.
Cleveland Clinic (contractor)
http://dbooth.org/

Opinions expressed herein are those of the author and do not necessarily
reflect those of Cleveland Clinic.




Re: Is 303 really necessary?

2010-11-04 Thread David Booth
Hi Ian,

You raise two issues: 1. Whether there is need to use different URIs for
the toucan versus the toucan's web page; and if so (2) how to get from
one URI to the other.

ISSUE 1: Whether there is need to use different URIs for the toucan
versus the toucan's web page.  Some time ago I showed that there is no
*architectural* need to distinguish between the two:
http://dbooth.org/2007/splitting/
(Sorry that page is a bit messy, but the reasoning is sound.)  The
essential reason is that the ambiguity created by using the same URI for
both is not fundamentally different from the ambiguity that *always*
exists when a resource is defined.  Ambiguity depends on the
application: a description (or "URI declaration") that is perfectly
unambiguous to one application may be ambiguous to another application
that needs to make finer distinctions.

For a fairly clear explanation of how ambiguity works in RDF semantics,
see "Resource Identity and Semantic Extensions: Making Sense of
Ambiguity":
http://dbooth.org/2010/ambiguity/

However, given that many applications *will* wish to distinguish between
the toucan and its web page (or between the toucan's age and the age of
it's web page), it is a *good* *practice* to use a different URI for
each, as recommended, for example, in both the W3C Architecture of the
World Wide Web:
http://www.w3.org/TR/webarch/#URI-collision 
and in Cool URIs for the Semantic Web:
http://www.w3.org/TR/cooluris/#distinguishing 

ISSUE 2: How to get from the URI of the toucan to the URI of the
toucan's web page.  You state that "we should link the thing to its
description using a triple rather than a network response code".  While
I agree 100% that a triple like 

   :isDescribedBy  .

is far more efficient than a network response code, and *should* be used
when available, it is *also* useful to make the Utoucan URI
dereferenceable for those times when: (a) you have Utoucan but not that
triple; or (b) you wish to verify that Upage *is* the correct page for
the Utoucan declaration.

Also please note that if you mint your URIs using a 303-redirect service
such as http://thing-described-by.org/ then the extra network hop from
the 303 redirect could be optimized away by parsing the URI, as
described here:
http://thing-described-by.org/#optimizing
For example, you would have the relationship:

  
  :isDescribedBy
    .

so if the toucan were denoted by the URI
http://t-d-b.org/?http://example/toucan-page
the you know that its description is located at
http://example/toucan-page
and there is no need to actually dereference the other URI.

Your blog post states:
> http://iand.posterous.com/is-303-really-necessary 
> There are several disadvantages to the 303 redirect 
> approach:
>  1. it requires an extra round-trip to the server for
>every request

Not if you use a 303-redirect service such as
http://thing-described-by.org/ and optimize them
away as described at
http://thing-described-by.org/#optimizing

>  2. only one description can be linked from the
>toucan's URI

True, but that's far better than zero, if you only
have the toucan URI and it returns 404!

>  3. the user enters one URI into their browser and ends
>up at a different one, causing confusion when they want to
>reuse the URI of the toucan. Often they use the document
>URI by mistake.

Yes, that's a problem.  The trade-off is ambiguity.

>  4. its non-trivial to configure a web server to issue
>the correct redirect and only to do so for the things that
>are not information resources.

It is trivial to mint your URIs if you use a 303-redirect 
service such as
http://thing-described-by.org/ 

>  5. the server operator has to decide which resources
>are information resources and which are not without
>any precise guidance on how to distinguish the two (the
>official definition speaks of things whose "essential
>characteristics can be conveyed in a message"). I enumerate
>some examples here but it's easy to get to the absurd.

I addressed the server configuration issue above, but
the other issue -- how do I know whether something
should be considered an "information resource" or
not -- does cause confusion.  But in fact it boils
down to the inherent problem of ambiguity that will
never go away: what's ambiguous to one application
may be ambiguous to another application that requires 
finer distinctions.

>  6. it cannot be implemented using a static web server
>setup, i.e. one that serves static RDF documents

Agreed, but it can be done using a standard service, as
mentioned above.

>  7. it mixes layers of responsibility - there is
>information a user cannot know without making a network
>request and inspecting the metadata about the response
>to that request. When the web server ceases to exist then
>that information is lost.

I don't buy this argument.  While I agree that
explicit statements such as
  
   :isDescribedBy  .

is helpful and should be pro

Re: Is 303 really necessary?

2010-11-04 Thread Mischa Tuffield
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1



On 4 Nov 2010, at 20:23, Nathan wrote:

> David Wood wrote:
>> On Nov 4, 2010, at 15:04, Harry Halpin wrote:
>>> On Thu, Nov 4, 2010 at 7:18 PM, Ian Davis  wrote:
 On Thursday, November 4, 2010, Nathan  wrote:
 
> Please, don't.
> 
> 303 is a PITA, and it has detrimental affects across the board from 
> network load through to server admin. Likewise #frag URIs have there own 
> set of PITA features (although they are nicer on the network and servers).
> 
> However, and very critically (if you can get more critical than 
> critical!), both of these patterns / constraints are here to ensure that  
> different things have different names, and without that distinction our 
> data is junk.
> 
 I agree with this and I address it in my blog post where I say we
 should link the thing to its description using a triple rather than a
 network response code.
 
>>> This is key. The issue with 303 is that it uses a "network response
>>> code" to make a semantic distinction that can (and likely should) be
>>> done in the data-format itself, i.e. distinguishing a name for the
>>> data for the name identified by the thing itself. To be precise, you
>>> can state (ex:thing isDescribedBy ex:document, ex:thing rdf:type
>>> irw:nonInformationResource) in ex:document that is full of statements
>>> about ex:thing, and a half-way intelligent RDF parser should be able
>>> to sort that out.
>> Yes, I agree this is the key point.  You might note that an HTTP request to 
>> a resource that returns an RDF document (of whatever RDF serialization 
>> syntax) will already give you a 200 in many cases and that is "correct" in 
>> that an RDF document is an information resource.  However, what it describes 
>> may not be.  In the case where you are describing a non-information 
>> resource, using a 303 provides a benefit in that the clue to the type of 
>> resource is accessible before parsing the document.
>> It seems that Ian has made an efficiency argument.  Which is cheaper?  
>> Getting a clue from a network response code or parsing a representation?
> 
> There is another argument, of which efficiency is a part. Given:
> 
>  -> 303 -> 
> 
> (1) Many automated clients that make assertions about URIs treat HTTP as a 
> blackbox, thus are still saying  a :Document . (original problem not 
> solved)
> 
> (2) Many Humans are clicking on  getting the  URI in their 
> address bar then using that instead, saying that  a :Thing . (new 
> problem)
> 
> (3) Network effect of 303 (2 requests) vs 200 (single request), as well as 
> deployment considerations.
> 
> Completely leaving frag ids out of the equation, it appears (to me at least) 
> that new insight is that 303 isn't addressing the problem (1) and rather 
> introducing more (2) and (3).
> 
> I fear that by adding all this in to the mix, the main message, "use 
> different names for different things" has been lost.

I too feel that the "use different names for different things" is one of the 
core messages. 

> URI syntax doesn't matter to RDF - scheme, slash or hash, all that's 
> important is the one name one thing relation, the link between name and thing 
> named. If we can ensure this happens the majority of the time using 200 OK, 
> then why not?

+1 to helping along the majority with this. 

> 
> Disclaimer: I'd never use a slash URI myself for anything other than a doc, 
> but realise some/many do, and that a lot of deployed data already does use 
> it. Fact is if you use any /slash URI over HTTP then somebody/something 
> somewhere will be saying it's a Document, even if that's just your apache log 
> files RDF'ized.

I never use a / URI to denote anything but a document too, and use # URIs for 
things I wish to describe in a said document. I understand that one may not 
want to have a document with a large number of fragments, but if anything it 
helps organise documents into smaller ones (which is a good thing right?). In 
defence of 303's, they give you the option, if you are that way inclined, to 
use / URIs to identify all the things you wish to talk about, but be warned 
this requires apache .htaccess mangling, and and an extra http request (which 
doesn't sound that bad to me). 

 

I do like the idea that documents make statements about things, and must defend 
the distinction. Documents have provenance,  naively :

<> foo:digitallySignedAt "`nowInDateTime()`^^xsd:dateTime . 
<#me> a foaf:Person . 
<#me> foaf:name "Fozzle" . 

makes a lot more sense than:

<> foo:digitallySignedAt "`nowInDateTime()`^^xsd:dateTime . 
<> a foaf:Person . 
<> foaf:name "Fozzle" . 

Drawing an analogy, this email is signed, I am not signed, the email has a uri 
identifying the person which sent, and they are quite different.  

Cheers,

Mischa *2 [cents|pence] worth

> 
> Best,
> 
> Nathan
> 

-BEGIN PGP SIGNATURE-
Version: GnuPG/MacGPG2 v2.0.12 (Darwin)

iQIcBAEBAgAGBQJM

Fwd: Is 303 really necessary?

2010-11-04 Thread Bradley Allen
Kingsley- I didn't say I had ever lost this option. My problem is that this
simpler option is not acknowledged as a legitimate best practice,
which it is, in my opinion. - BPA

Bradley P. Allen
http://bradleypallen.org



On Thu, Nov 4, 2010 at 12:12 PM, Kingsley Idehen  wrote:
> On 11/4/10 12:25 PM, Bradley Allen wrote:
>
> On Thu, Nov 4, 2010 at 9:13 AM, Ian Davis  wrote:
>
> On Thu, Nov 4, 2010 at 4:07 PM, Bradley Allen 
> wrote:
>
> Basically what you are saying is: if I have a single URI that responds
> to an HTTP GET with (X)HTML+RDFa by default, and supports other RDF
> serializations through content negotiation, then all of that can be
> done without recourse to a 303 redirect and should be perfectly
> compatible with linked data best practice.
>
> That is what I would like to see and what I believe is possible. It's
> not current practice, so I'm seeking a change.
>
> I am in violent agreement. It is long past due that someone made this
> point. As has been said been said earlier, this simplifies
> implementation, eliminates unnecessary traffic and is completely
> transparent to linked data clients that do content negotiation. - BPA
>
> Bradley P. Allen
> http://bradleypallen.org
>
> Bradley,
>
> When did you loose this option? (X)HTML+RDFa is another mechanism structured
> data representation. One that doesn't mandate Apache (bottom line) for
> deployment. Just drop the resource wherever, and you're done re. your Web of
> Linked Data contribution.
>
> 303 redirection has never been a mandate. Separating Names from Addresses
> has, and should be a mandate -- assuming this is where this debate is
> headed.
>
>
> --
>
> Regards,
>
> Kingsley Idehen
> President & CEO
> OpenLink Software
> Web: http://www.openlinksw.com
> Weblog: http://www.openlinksw.com/blog/~kidehen
> Twitter/Identi.ca: kidehen
>
>
>
>
>



Re: Is 303 really necessary?

2010-11-04 Thread Nathan

David Wood wrote:

On Nov 4, 2010, at 15:04, Harry Halpin wrote:


On Thu, Nov 4, 2010 at 7:18 PM, Ian Davis  wrote:

On Thursday, November 4, 2010, Nathan  wrote:


Please, don't.

303 is a PITA, and it has detrimental affects across the board from network 
load through to server admin. Likewise #frag URIs have there own set of PITA 
features (although they are nicer on the network and servers).

However, and very critically (if you can get more critical than critical!), 
both of these patterns / constraints are here to ensure that  different things 
have different names, and without that distinction our data is junk.


I agree with this and I address it in my blog post where I say we
should link the thing to its description using a triple rather than a
network response code.


This is key. The issue with 303 is that it uses a "network response
code" to make a semantic distinction that can (and likely should) be
done in the data-format itself, i.e. distinguishing a name for the
data for the name identified by the thing itself. To be precise, you
can state (ex:thing isDescribedBy ex:document, ex:thing rdf:type
irw:nonInformationResource) in ex:document that is full of statements
about ex:thing, and a half-way intelligent RDF parser should be able
to sort that out.



Yes, I agree this is the key point.  You might note that an HTTP request to a resource 
that returns an RDF document (of whatever RDF serialization syntax) will already give you 
a 200 in many cases and that is "correct" in that an RDF document is an 
information resource.  However, what it describes may not be.  In the case where you are 
describing a non-information resource, using a 303 provides a benefit in that the clue to 
the type of resource is accessible before parsing the document.

It seems that Ian has made an efficiency argument.  Which is cheaper?  Getting 
a clue from a network response code or parsing a representation?


There is another argument, of which efficiency is a part. Given:

  -> 303 -> 

(1) Many automated clients that make assertions about URIs treat HTTP as 
a blackbox, thus are still saying  a :Document . (original 
problem not solved)


(2) Many Humans are clicking on  getting the  URI in their 
address bar then using that instead, saying that  a :Thing . (new 
problem)


(3) Network effect of 303 (2 requests) vs 200 (single request), as well 
as deployment considerations.


Completely leaving frag ids out of the equation, it appears (to me at 
least) that new insight is that 303 isn't addressing the problem (1) and 
rather introducing more (2) and (3).


I fear that by adding all this in to the mix, the main message, "use 
different names for different things" has been lost.


URI syntax doesn't matter to RDF - scheme, slash or hash, all that's 
important is the one name one thing relation, the link between name and 
thing named. If we can ensure this happens the majority of the time 
using 200 OK, then why not?


Disclaimer: I'd never use a slash URI myself for anything other than a 
doc, but realise some/many do, and that a lot of deployed data already 
does use it. Fact is if you use any /slash URI over HTTP then 
somebody/something somewhere will be saying it's a Document, even if 
that's just your apache log files RDF'ized.


Best,

Nathan



Re: Is 303 really necessary?

2010-11-04 Thread David Wood

On Nov 4, 2010, at 15:04, Harry Halpin wrote:

> On Thu, Nov 4, 2010 at 7:18 PM, Ian Davis  wrote:
>> On Thursday, November 4, 2010, Nathan  wrote:
>> 
>>> Please, don't.
>>> 
>>> 303 is a PITA, and it has detrimental affects across the board from network 
>>> load through to server admin. Likewise #frag URIs have there own set of 
>>> PITA features (although they are nicer on the network and servers).
>>> 
>>> However, and very critically (if you can get more critical than critical!), 
>>> both of these patterns / constraints are here to ensure that  different 
>>> things have different names, and without that distinction our data is junk.
>>> 
>> 
>> I agree with this and I address it in my blog post where I say we
>> should link the thing to its description using a triple rather than a
>> network response code.
>> 
> 
> This is key. The issue with 303 is that it uses a "network response
> code" to make a semantic distinction that can (and likely should) be
> done in the data-format itself, i.e. distinguishing a name for the
> data for the name identified by the thing itself. To be precise, you
> can state (ex:thing isDescribedBy ex:document, ex:thing rdf:type
> irw:nonInformationResource) in ex:document that is full of statements
> about ex:thing, and a half-way intelligent RDF parser should be able
> to sort that out.


Yes, I agree this is the key point.  You might note that an HTTP request to a 
resource that returns an RDF document (of whatever RDF serialization syntax) 
will already give you a 200 in many cases and that is "correct" in that an RDF 
document is an information resource.  However, what it describes may not be.  
In the case where you are describing a non-information resource, using a 303 
provides a benefit in that the clue to the type of resource is accessible 
before parsing the document.

It seems that Ian has made an efficiency argument.  Which is cheaper?  Getting 
a clue from a network response code or parsing a representation?


> 
> Re 303 and performance, I am *sure* for DERI's Sindice it's fine to
> follow 303s. However, performance-wise for a server, it seems rather
> silly to do another HTTP redirect with little gain, and I think
> something Google-size would care about wasting HTTP response codes.
> 
> Lastly, the real problem is deployment. Imagine you are a regular
> database admin - lots of people do not care and do not want to (and
> can't) edit .htaccess and deal with Apace HTTP redirects just to put
> some data on the Web, and will not use Link headers or anything else
> either. They want to take a file and just put in on the Web via FTP
> without messing with their server. Many developers (I've had this
> conversation with David Recordon before the OGP launch in person) note
> that making the average data deployer worry about the difference
> between a URI for a thing and a document will naturally hurt
> deployment, so *not* following this practice was considered a feature,
> not a bug, by Facebook.
> 
> A database admin is at a bar. A RDF evangelist comes ups and says
> "Yes, I'd like for you to release your data, but you have to set up
> your server to do 303 redirects and convert your data to this weird
> looking RDF/XML format in addition to having a human-readable format.
> Maybe you can google for D2RQ..." A Microsoft guy comes up and says
> "Hey, here's this oData format, why not just have your server produce
> a format we understand, Atom." Guess who will win the argument :)


Kingsley correctly pointed out that this scenario is a bit overblown.  How 
about this?  "Yes, I'd like you to release your data, so please serve your data 
with metadata descriptions in RDFa, or separately as RDF with links from the 
data, or 303 redirects, or"

Regards,
Dave



> 
> Think outside the box, RDF needs to lower deployment costs. You can do
> that and keep the name/thing distinction, by doing it as a triple in
> the dataformat, which is a logical thing to do rather than doing
> essentially semantic work as a network response code.
> 
>> 
>> 
>>> This goes beyond your and my personal opinions, or those of anybody here, 
>>> the constraints are there so that in X months time when "multi-corp" trawls 
>>> the web, analyses it and releases billions of statements saying like { 
>>>  :hasFormat "x"; sioc:about dbpedia:Whatever } about each doc on the 
>>> web, that all of those statements are said about documents, and not about 
>>> you or I, or anything else real, that they are said about the right 
>>> "thing", the correct name is used.
>> 
>> I don't see that as a problem. It's an error because it's not what the
>> original publisher intended but there are many many examples where
>> that happens in bulk, and actually the 303 redirect doesn't prevent it
>> happening with naive crawlers.
>> 
>> If someone asserts something we don't have to assume it is
>> automatically true. We can get authority about what a URI denotes by
>> dereferencng it. We trust third party statem

Re: Is 303 really necessary?

2010-11-04 Thread Hugh Glaser
Pretty much +1.
Of course, being a Good Citizen of the LOD Community, I have always done
the 303 thing (or hash), as recommended in the relevant docs, even if not
mandated. This was despite the fact that I disagreed that it was worth the
candle, compared with many of the more pragmatic, and social issues that
are being raised here.
A community as small as ours (still) is can ill afford to have splintering.

But I do find myself wondering whether things have changed since that
decision was made, but certainly sufficient time has passed to review it,
and there have been some changes out there since.

By the way, on my travels as a LD consumer, I do find a lot of LD that
does just do 200 - arrived just a little while ago:
curl -i -H "Accept: application/rdf+xml"
http://www.uk-postcodes.com/postcode/AB101AA
HTTP/1.1 200 OK
...  wrote:

>On Thu, Nov 4, 2010 at 7:18 PM, Ian Davis  wrote:
>> On Thursday, November 4, 2010, Nathan  wrote:
>>
>>> Please, don't.
>>>
>>> 303 is a PITA, and it has detrimental affects across the board from
>>>network load through to server admin. Likewise #frag URIs have there
>>>own set of PITA features (although they are nicer on the network and
>>>servers).
>>>
>>> However, and very critically (if you can get more critical than
>>>critical!), both of these patterns / constraints are here to ensure
>>>that  different things have different names, and without that
>>>distinction our data is junk.
>>>
>>
>> I agree with this and I address it in my blog post where I say we
>> should link the thing to its description using a triple rather than a
>> network response code.
>>
>
>This is key. The issue with 303 is that it uses a "network response
>code" to make a semantic distinction that can (and likely should) be
>done in the data-format itself, i.e. distinguishing a name for the
>data for the name identified by the thing itself. To be precise, you
>can state (ex:thing isDescribedBy ex:document, ex:thing rdf:type
>irw:nonInformationResource) in ex:document that is full of statements
>about ex:thing, and a half-way intelligent RDF parser should be able
>to sort that out.
>
>Re 303 and performance, I am *sure* for DERI's Sindice it's fine to
>follow 303s. However, performance-wise for a server, it seems rather
>silly to do another HTTP redirect with little gain, and I think
>something Google-size would care about wasting HTTP response codes.
>
>Lastly, the real problem is deployment. Imagine you are a regular
>database admin - lots of people do not care and do not want to (and
>can't) edit .htaccess and deal with Apace HTTP redirects just to put
>some data on the Web, and will not use Link headers or anything else
>either. They want to take a file and just put in on the Web via FTP
>without messing with their server. Many developers (I've had this
>conversation with David Recordon before the OGP launch in person) note
>that making the average data deployer worry about the difference
>between a URI for a thing and a document will naturally hurt
>deployment, so *not* following this practice was considered a feature,
>not a bug, by Facebook.
>
>A database admin is at a bar. A RDF evangelist comes ups and says
>"Yes, I'd like for you to release your data, but you have to set up
>your server to do 303 redirects and convert your data to this weird
>looking RDF/XML format in addition to having a human-readable format.
>Maybe you can google for D2RQ..." A Microsoft guy comes up and says
>"Hey, here's this oData format, why not just have your server produce
>a format we understand, Atom." Guess who will win the argument :)
>
>Think outside the box, RDF needs to lower deployment costs. You can do
>that and keep the name/thing distinction, by doing it as a triple in
>the dataformat, which is a logical thing to do rather than doing
>essentially semantic work as a network response code.
>
>>
>>
>>> This goes beyond your and my personal opinions, or those of anybody
>>>here, the constraints are there so that in X months time when
>>>"multi-corp" trawls the web, analyses it and releases billions of
>>>statements saying like {  :hasFormat "x"; sioc:about
>>>dbpedia:Whatever } about each doc on the web, that all of those
>>>statements are said about documents, and not about you or I, or
>>>anything else real, that they are said about the right "thing", the
>>>correct name is used.
>>
>> I don't see that as a problem. It's an error because it's not what the
>> original publisher intended but there are many many examples where
>> that happens in bulk, and actually the 303 redirect doesn't prevent it
>> happening with naive crawlers.
>>
>> If someone asserts something we don't have to assume it is
>> automatically true. We can get authority about what a URI denotes by
>> dereferencng it. We trust third party statements as much or as little
>> as we desire.
>>
>>
>>>
>>> And this is critically important, to ensure that in X years time when
>>>somebody downloads the RDF of 2010 in a big *TB sized archive and
>>>co

Re: Is 303 really necessary?

2010-11-04 Thread David Wood

On Nov 4, 2010, at 13:14, Ian Davis wrote:

> Hi Dave,
> 
> On Thu, Nov 4, 2010 at 4:56 PM, David Wood  wrote:
>> Hi all,
>> 
>> This is a horrible idea, for the following reasons (in my opinion and 
>> suitably caveated):
>> 
>> - Some small number of people and organizations need to provide back-links 
>> on the Web since the Web doesn't have them.  303s provide a generic 
>> mechanism for that to occur.  URL curation is a useful and proper activity 
>> on the Web, again in my opinion.
> 
> The relationship between 303 redirection and backlinks isn't clear to
> me. Can you expand?


Sure.  I should have said that *PURLs and DOIs* provide a general solution to 
back links and use 303s.

Exploitation of relationships between resources on the Web remains incomplete 
for an excellent reason: The very design decision that allowed the Web to scale 
(distribution of resource servers) removed the ability to monitor links 
bidirectionally (the link maintenance problem).  Prior to the Web, all 
hypertext systems were centralized and all included back-links.

Some services exist to track and retain inter-resource metadata, such as 
Technorati. Technorati requires a publisher to register with them so that 
inter-resource monitoring may be accomplished.  PURLs and DOIs allow other 
third parties, including the general public, to provide links to arbitrary 
resources that may be maintained with time.  If a resource that you point to 
moves, you just change the URL that a PURL or DOI resolves to.

303s come into the picture when the resource that you point to is not 
(technically, *may* not be) an information resource, but the use case is the 
same.


> 
>> 
>> - Overloading the use of 200 (OK) for metadata creates an additional 
>> ambiguity in that the address of a resource is now conflated with the 
>> address of a resource described by metadata.
> 
> My post addresses that case. I don't encourage people to use the same
> URI for both the metadata and the thing but to link them using a new
> predicate ex:isDescribedBy. I also say that you should believe the
> data. If the data says the thing you dereferenced is a document then
> that's what you should assume it is. If it says it's a toucan then
> that's what it is.


Yes, I agree that your post addresses that case.  Your solution is a reasonable 
one and is even implementable.  I've had similar thoughts in the past.  
However, I don't see a need to get rid of the 303 to implement your proposal.


> 
> 
>> 
>> - W3C TAG findings such as http-range-14 are really very difficult to 
>> overcome socially.
>> 
> 
> Maybe so, but I don't think that should stop 5 years of deployment
> experience from informing a change of practice. This isn't really
> relevant to my main question though: what breaks on the web.
> 
> 
>> - Wide-spread mishandling of HTTP content negotiation makes it difficult if 
>> not impossible to rely upon.  Until we can get browser vendors and server 
>> vendors to handle content negotiation in a reasonable way, reliance on it is 
>> not a realistic option.  That means that there needs to be an out-of-band 
>> mechanism to disambiguate physical, virtual and conceptual resources on the 
>> Web.  303s plus http-range-14 provide enough flexibility to do that; I'm not 
>> convinced that overloading 200 does.
> 
> My proposal isn't dependent on conneg. You can use it with the same
> caveats as anywhere else. But the simple case is just to serve up some
> RDF at the URI being dereferenced. BTW, conneg is very widely deployed
> in the Linked Data web and doesn't seem to have been a problem.


I agree that conneg seems to be back in favor recently.  I suppose that is 
because we in the Linked Data community are not relying on browsers as much as 
the syntactic Web folks.  Conneg remains a problem in browser handling.

I also agree that your proposal isn't dependent on conneg.  However, consider 
the original use cases for conneg:  You could serve various representations 
based upon the context of a request.  That is, you could serve either metadata 
or data (as well as format variations).  In the context of this discussion, I 
would argue that conneg is another way to get to metadata about a resource by 
resolving the URL for the resource.


> 
> 
>> 
>> /me ducks for the inevitable mud slinging this list has become.
> 
> We can improve the quality of discussion on this list.


Oh, I hope so.  Let's try to do that, please :D

Regards,
Dave






Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 2:09 PM, Patrick Durusau wrote:

Nathan,

On Thu, 2010-11-04 at 17:51 +, Nathan wrote:

Ian Davis wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

Ian,

Please, don't.

303 is a PITA, and it has detrimental affects across the board from
network load through to server admin. Likewise #frag URIs have there own
set of PITA features (although they are nicer on the network and servers).

However, and very critically (if you can get more critical than
critical!), both of these patterns / constraints are here to ensure that
   different things have different names, and without that distinction
our data is junk.


Our data is already junk. What part of that seems unclear?

See:

http://www.mkbergman.com/925/ontotext-sd-form-strategic-partnership/

For an unbiased assessment.


Please!

How have you arrived at the extremely subjective designation: unbiased 
assessment?


An opinion isn't inherently objective, irrespective of opinion maker, 
its at best a subjective claim.



This goes beyond your and my personal opinions, or those of anybody
here, the constraints are there so that in X months time when
"multi-corp" trawls the web, analyses it and releases billions of
statements saying like {  :hasFormat "x"; sioc:about
dbpedia:Whatever } about each doc on the web, that all of those
statements are said about documents, and not about you or I, or anything
else real, that they are said about the right "thing", the correct name
is used.

And this is critically important, to ensure that in X years time when
somebody downloads the RDF of 2010 in a big *TB sized archive and
considers the graph of RDF triples, in order to make sense of some parts
of it for something important, that the data they have isn't just
unreasonable junk.


Sorry, it is already junk.


Really?

Is the world perfect? No, but we do have some sense of what things are 
albeit subjectively.




Remember? The failure to distinguish between
addresses in an address space and identifiers is mistake that keeps on
giving.


So, just because the Web started off as an Information Resource Space, 
it cannot evolve into a Data Space? Which also enables it to evolve into 
a Knowledge Space.



Fix the mistake and all the cruft that is trying to cover over the
mistake will be unnecessary.

Our data may still be junk in that case but for different reasons. ;-)


Anything can be "Junk" just as another subjective moniker, like 
"Beautiful", "Ugly" etc.. Linked Data doesn't fix subjectivity.


Linked Data helps us extract "What", "When", "Where", and "Who" from 
streams of data traveling across the InterWeb. It also contributes to 
the process of computing "Why".







But, for whatever reasons, we've made our choices, each has pro's and
cons, and we have to live with them - different things have different
name, and the giant global graph is usable. Please, keep it that way.


The problem is that you want *other* people to live with your choices.
Given the lack of adoption for some of them, those other people are
making other choices.


I would like to agree with you on "choice" but context is completely 
mangled i.e., you opening salvo re. "Junk" was 100% subjective but 
presented as objective by some strange triangulation to "unbiased" etc..



Hope you are having a great day!

Patrick






--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: Is 303 really necessary?

2010-11-04 Thread Nathan

William Waites wrote:
we need some kind of document -> description indirection... 


tdb: .. provides a ready means for identifying "non-information 
resources" by semantic indirection


http://tools.ietf.org/html/draft-masinter-dated-uri-06




Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 12:56 PM, David Wood wrote:

Hi all,

This is a horrible idea, for the following reasons (in my opinion and suitably 
caveated):

- Some small number of people and organizations need to provide back-links on 
the Web since the Web doesn't have them.  303s provide a generic mechanism for 
that to occur.  URL curation is a useful and proper activity on the Web, again 
in my opinion.

- Overloading the use of 200 (OK) for metadata creates an additional ambiguity 
in that the address of a resource is now conflated with the address of a 
resource described by metadata.

- W3C TAG findings such as http-range-14 are really very difficult to overcome 
socially.

- Wide-spread mishandling of HTTP content negotiation makes it difficult if not 
impossible to rely upon.  Until we can get browser vendors and server vendors 
to handle content negotiation in a reasonable way, reliance on it is not a 
realistic option.  That means that there needs to be an out-of-band mechanism 
to disambiguate physical, virtual and conceptual resources on the Web.  303s 
plus http-range-14 provide enough flexibility to do that; I'm not convinced 
that overloading 200 does.

/me ducks for the inevitable mud slinging this list has become.


AMEN!

Kingsley

Regards,
Dave




On Nov 4, 2010, at 12:33, Harry Halpin wrote:


On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

In a purely personal capacity, I like the approach of just using 200,
i.e. with RDFa or whatever, rather than 303. If we want to
disambiguate URIs, the IRW ontology [1] offers a nice class called
"nonInformationResource" and "InformationResource" that one can use to
disambiguate. See this paper [2] on "an Ontology of Resources for
Linked Data" for a walk-through example.

My reasoning is not architectural, but simply efficiency. It is rather
inefficient to have a redirection in the form of a 303 if one can get
the same info without using 303.

Note that Microsoft's oData may one day be a serious competitor to
Linked Data, and if you asked many programmers and open data people
who are not already committed to RDF if they would use Atom + HTTP GET
and no redirects over RDF/XML and a weird 303 redirect, I think the
answer would be rather self-evident.

[1]http://ontologydesignpatterns.org/ont/web/irw.owl
[2]http://events.linkeddata.org/ldow2009/papers/ldow2009_paper19.pdf




Cheers,

Ian








--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 12:33 PM, Harry Halpin wrote:

On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

In a purely personal capacity, I like the approach of just using 200,
i.e. with RDFa or whatever, rather than 303. If we want to
disambiguate URIs, the IRW ontology [1] offers a nice class called
"nonInformationResource" and "InformationResource" that one can use to
disambiguate. See this paper [2] on "an Ontology of Resources for
Linked Data" for a walk-through example.

My reasoning is not architectural, but simply efficiency. It is rather
inefficient to have a redirection in the form of a 303 if one can get
the same info without using 303.


Yes, and a valid reason for making your choice :-) But as you state 
clearly, it remains a choice with regards to preferred technique.


All:

Where is the pointer (or URL) for a document that mandates 303's? The 
sense here being: 303 redirection as the only technique for delivering 
HTTP based Resolvable Names re. Linked Data.



Note that Microsoft's oData may one day be a serious competitor to
Linked Data, and if you asked many programmers and open data people
who are not already committed to RDF if they would use Atom + HTTP GET
and no redirects over RDF/XML and a weird 303 redirect, I think the
answer would be rather self-evident.


Microsoft doesn't see OData as Linked Data (the concept) competition. 
They see it as an alternative format for representing Linked Data via 
E-A-V model graphs :-) As you can see, in this universe of ours, 
everything is connected, nothing exist in absolute isolation.


Some key points re. OData;

1. It models electronic records rather than real world objects
2. OData modeling ultimately matches any modeling that fails to 
distinguish a Web Resource from a Real World Object (any Entity that 
exists in some form outside the Web medium) via fixation -- overt or 
inadvertent -- on two-thirds of the Referent, Identifier, Resource trinity.



[1]http://ontologydesignpatterns.org/ont/web/irw.owl
[2]http://events.linkeddata.org/ldow2009/papers/ldow2009_paper19.pdf


Links:

1. http://dbpedia.org/page/Paris -- notice OData and friends (Atom or 
JSON variants) in the footer of this HTML+RDFa resource

2. http://dbpedia.org/describe/?uri=http://dbpedia.org/resource/Paris
3. http://uriburner.com/describe/?uri=http://dbpedia.org/resource/Paris 
-- Ditto
4. 
http://dbpedia-live.openlinksw.com/describe/?uri=http://dbpedia.org/resource/Paris 
-- Ditto
5. 
http://lod.openlinksw.com/describe/?uri=http://dbpedia.org/resource/Paris -- 
Ditto .




Cheers,

Ian







--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 12:25 PM, Bradley Allen wrote:

On Thu, Nov 4, 2010 at 9:13 AM, Ian Davis  wrote:

On Thu, Nov 4, 2010 at 4:07 PM, Bradley Allen  wrote:

Basically what you are saying is: if I have a single URI that responds
to an HTTP GET with (X)HTML+RDFa by default, and supports other RDF
serializations through content negotiation, then all of that can be
done without recourse to a 303 redirect and should be perfectly
compatible with linked data best practice.

That is what I would like to see and what I believe is possible. It's
not current practice, so I'm seeking a change.


I am in violent agreement. It is long past due that someone made this
point. As has been said been said earlier, this simplifies
implementation, eliminates unnecessary traffic and is completely
transparent to linked data clients that do content negotiation. - BPA


Bradley P. Allen
http://bradleypallen.org



Bradley,

When did you loose this option? (X)HTML+RDFa is another mechanism 
structured data representation. One that doesn't mandate Apache (bottom 
line) for deployment. Just drop the resource wherever, and you're done 
re. your Web of Linked Data contribution.


303 redirection has never been a mandate. Separating Names from 
Addresses has, and should be a mandate -- assuming this is where this 
debate is headed.



--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen







Re: Is 303 really necessary?

2010-11-04 Thread Jörn Hees
On Thursday 04 November 2010, Ian Davis wrote:
> On Thursday, November 4, 2010, Jörn Hees  wrote:
> > Hi Ian,
> > 
> > From your blogpost:
> >> Under my new scheme:
> >> GET /toucan responds with 200 and a representation containing some RDF
> >> which includes the triples  ex:owner  and 
> >> ex:isDescribedBy 
> >> GET /doc responds with 200 and a representation containing some RDF
> >> which includes the triple  ex:owner 
> > 
> > So how can I then say that your description of toucan is wrong without
> > saying that the poor toucan is wrong?
> 
> Use the URI of the document /doc

What about this statement in GET /toucan:
 ex:owner 

As soon as anything comes back for  how am I to distinguish between 
that document and the toucan?

Is that part of the toucan or of a description of toucan?
Did you perhaps mean it to be included in ?
And: are there any other statements in /toucan allowed than ex:isDescribedBy?

Jörn



Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 12:22 PM, Ian Davis wrote:

On Thu, Nov 4, 2010 at 4:17 PM, Kingsley Idehen  wrote:

On 11/4/10 11:50 AM, Giovanni Tummarello wrote:

its up to clients to really care about the distinction, i personally
know of no useful clients for the web of data that will visibly
misbehave if a person is mistaken for a page.. so your you can certify
to your customer your solution works well with "any" client

Gio,

Keyword: visibly.

Once the Web of Linked Data crystallizes, smart agents will emerge and start
roaming etc.. These agents need precision, so ambiguity will cause problems.
At this point there will be broader context for these matters. Please don't
dismiss this matter, things are going to change quickly, we live in
exponential times.

If the success of these agents is predicated on precision then they
are doomed to failure.


Success, like beauty, lies in the eyes of the beholder. You and I 
clearly expect different things from our agents. That's fine and 
natural. It doesn't negate the need for disambiguation.


History is a great teacher, I am sure people thought the same way in the 
not too distant past, and today we have:


1. Spam breaking Email (ditto threaded conversations)
2. Data Silos per SaaS application (including all the major social networks)
3. Data Silos per Mobile Device.

By not solving Identity matters at InterWeb scale, we ended up with the 
problems above. Let's learn something from history. The architecture of 
the Web is there to be used the right way, lets just use it the right 
way, it works!




  The web is a messy place but it's precisely
that messiness that allows it to scale.

Not disputing that.


  Anyone building serious web
data apps is used to dealing with ambiguity all the time and has
strategies for compensating.


Really, and how's your Mail Inbox doing these days? How precisely is 
relevant data finding you, rather than you finding relevant data?



  Linked Data offers a route to higher
precision, but in no way is it a panacea or silver bullet.
Nothing man-made is, we are buggy by design. What we can do though, is 
fix what we know as we travel down the innovation continuum by learning 
from history.

Ian





--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: Is 303 really necessary?

2010-11-04 Thread Harry Halpin
On Thu, Nov 4, 2010 at 7:18 PM, Ian Davis  wrote:
> On Thursday, November 4, 2010, Nathan  wrote:
>
>> Please, don't.
>>
>> 303 is a PITA, and it has detrimental affects across the board from network 
>> load through to server admin. Likewise #frag URIs have there own set of PITA 
>> features (although they are nicer on the network and servers).
>>
>> However, and very critically (if you can get more critical than critical!), 
>> both of these patterns / constraints are here to ensure that  different 
>> things have different names, and without that distinction our data is junk.
>>
>
> I agree with this and I address it in my blog post where I say we
> should link the thing to its description using a triple rather than a
> network response code.
>

This is key. The issue with 303 is that it uses a "network response
code" to make a semantic distinction that can (and likely should) be
done in the data-format itself, i.e. distinguishing a name for the
data for the name identified by the thing itself. To be precise, you
can state (ex:thing isDescribedBy ex:document, ex:thing rdf:type
irw:nonInformationResource) in ex:document that is full of statements
about ex:thing, and a half-way intelligent RDF parser should be able
to sort that out.

Re 303 and performance, I am *sure* for DERI's Sindice it's fine to
follow 303s. However, performance-wise for a server, it seems rather
silly to do another HTTP redirect with little gain, and I think
something Google-size would care about wasting HTTP response codes.

Lastly, the real problem is deployment. Imagine you are a regular
database admin - lots of people do not care and do not want to (and
can't) edit .htaccess and deal with Apace HTTP redirects just to put
some data on the Web, and will not use Link headers or anything else
either. They want to take a file and just put in on the Web via FTP
without messing with their server. Many developers (I've had this
conversation with David Recordon before the OGP launch in person) note
that making the average data deployer worry about the difference
between a URI for a thing and a document will naturally hurt
deployment, so *not* following this practice was considered a feature,
not a bug, by Facebook.

A database admin is at a bar. A RDF evangelist comes ups and says
"Yes, I'd like for you to release your data, but you have to set up
your server to do 303 redirects and convert your data to this weird
looking RDF/XML format in addition to having a human-readable format.
Maybe you can google for D2RQ..." A Microsoft guy comes up and says
"Hey, here's this oData format, why not just have your server produce
a format we understand, Atom." Guess who will win the argument :)

Think outside the box, RDF needs to lower deployment costs. You can do
that and keep the name/thing distinction, by doing it as a triple in
the dataformat, which is a logical thing to do rather than doing
essentially semantic work as a network response code.

>
>
>> This goes beyond your and my personal opinions, or those of anybody here, 
>> the constraints are there so that in X months time when "multi-corp" trawls 
>> the web, analyses it and releases billions of statements saying like { 
>>  :hasFormat "x"; sioc:about dbpedia:Whatever } about each doc on the 
>> web, that all of those statements are said about documents, and not about 
>> you or I, or anything else real, that they are said about the right "thing", 
>> the correct name is used.
>
> I don't see that as a problem. It's an error because it's not what the
> original publisher intended but there are many many examples where
> that happens in bulk, and actually the 303 redirect doesn't prevent it
> happening with naive crawlers.
>
> If someone asserts something we don't have to assume it is
> automatically true. We can get authority about what a URI denotes by
> dereferencng it. We trust third party statements as much or as little
> as we desire.
>
>
>>
>> And this is critically important, to ensure that in X years time when 
>> somebody downloads the RDF of 2010 in a big *TB sized archive and considers 
>> the graph of RDF triples, in order to make sense of some parts of it for 
>> something important, that the data they have isn't just unreasonable junk.
>
> Any decent reasoner at that scale will be able to reject triples that
> appear to contradict one another. Seeing properties such as "format"
> against a URI that everyone else claims denotes an animal is going to
> stick out.
>
>>
>> It's not about what we say something is, it's about what others say the 
>> thing is, and if you 200 OK the URIs you currently 303, then it will be said 
>> that you are a document, as simple as that. Saying you are a document isn't 
>> the killer, it's the hundreds of other statements said along side that which 
>> make things so ambiguous that the info is useless.
>>
>
> That's only true under the httpRange-14 finding which I am proposing
> is part of the problem.
>
>
>
>> If 303s are killing you then use f

Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 12:20 PM, bill.robe...@planet.nl wrote:


Can I attempt to broker peace between Ian and Kingsley in this 
discussion? :-)


Because it seems to me that they are fundamentally agreeing with each 
other, though considering different aspects of the problem.  Kingsley 
is taking a very broad view, Ian is addressing a specific aspect of 
best practices around Linked Data in the TimBL design 
document/HTTP/RDF sense of the word.




Accurate. Very well spotted I must say :-)



Whether it's a mandate or a best practice, it is clear to me that the 
consensus of general guidance on the web around Linked Data advocates 
the httpRange-14 distinction between 200/IR and 303/NIR(maybe) 
approach.  So Ian's attempt to simplify this to make implementing a 
best practice approach to Linked Data easier seems a worthwhile 
discussion to have.




Yes, but see my comments (dropped a few minutes ago) re. statements made 
by Ian that are simply unhelpful. Example:


 @iand: seems that the lod mailing list is overwhelmingly supportive of 
**dropping** 303 redirects #linkeddata.


How did we arrive at that?

Where was the original mandate?



On the broader scale of Linked Data, I broadly agree with Kingsley 
that ultimately the technologies are less important than the concept. 
But to implement it in practice, we need to apply at least one 
technology, and the HTTP/RDF approach is currently the most widely 
applied.



Yes-ish, but RDF a as moniker of comprehension is one-really-dead-Lazarus .

RDF was broken the day it left the station as being equivalent to 
RDF/XML. Conflating a Syntax and Semantics was an expensive snafu re. 
mind share assembly.


My one hope is that we veer away from opening up the door to FUD that 
simply exploits the age-old image problems of "RDF".


There is still a broader community of technically endowed practitioners 
in our industry that grok at least one of the following:


1. EAV
2. Graph Theory
3. Data Access
4. Data Management
5. Data Intergration
6. Distributed Object Management
7. Descriptions Logic
8. Logic in General.

None of the aforementioned individual profiles should find "Linked Data" 
confusing. It should be obvious.


Google has GData, Microsoft has OData, while Facebook has OpenGraph. Now 
we can burn cycles claiming they aren't RDF, or we can actually 
demonstrate separation of Syntax and Model by embracing all of these 
endeavors (i.e., start a conversation) and then lead each to its 
respective cul-de-sac (gently) as segue to unveiling the power of deeper 
Semantics as espoused RDF (model and associated syntaxes).



I definitely agree with Ian that the 200/303 distinction is 
complicated to explain to newcomers and adds an extra layer of effort 
in implementing Linked Data. I'm convinced so far by Ian's argument 
that the sky would not fall in if we return HTTP 200 together with 
descriptions of real world things in response to an HTTP call to their 
identifier.


My issue is with the mutual exclusion dimension. Why boolean OR when it 
should be about AND?


"Dropping" and "Mandates", don't reek of AND (inclusion) to me.

I am seeking inclusion and fundamental conceptual clarity. Let's kill 
off conflation driven confusion.




After all, it's just a convention that we need to agree on regarding 
how to deliver bits of documentation around the web.  I don't think it 
changes any fundamental points about the semantics of RDF etc.




And I don't believe Cool URIs or any other suggestive document re. best 
practices is broken :-)




To try to bring the discussion back to Ian's original point - are 
there good reasons that force us to stick with the more complicated 
303 approach?


You were never forced to use 303. Ian has somehow jumped to that 
conclusion.


  If not, then let's keep life simple and just return HTTP 200 for 
HTTP URIs of real world things.




I don't think Ian is espousing that. On the other hand, I might have 
missed that point, thus if that's actually Ian's position, I completely 
disagree.





Bill




--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen







Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thursday, November 4, 2010, Jörn Hees  wrote:
> Hi Ian,
>
> From your blogpost:
>> Under my new scheme:
>> GET /toucan responds with 200 and a representation containing some RDF which
>> includes the triples  ex:owner  and 
>> ex:isDescribedBy 
>> GET /doc responds with 200 and a representation containing some RDF which
>> includes the triple  ex:owner 
>
> So how can I then say that your description of toucan is wrong without saying
> that the poor toucan is wrong?
>

Use the URI of the document /doc

> Jörn
>
>

Ian



Re: Is 303 really necessary?

2010-11-04 Thread Robert Fuller
It has been pointed out to me that the many resources we are 
encountering for

http://opengraphprotocol.org/schema/latitude
are actually wrong - so deserving a 404, the resource should correctly 
be written:


http://ogp.me/ns#latitude

But never mind, that doesn't resolve either...

On 04/11/10 18:38, Robert Fuller wrote:

Hi,

Feel free anyone to suggest opengraph use 301, 302, 303, 307 (we support
them all), since at the moment with a 404 they are missing out on all
the benefit of the sindice reasoner ;-)

http://opengraphprotocol.org/schema/latitude

It is common when publishing an ontology to have the url for each
property redirect to the rdf schema. It works great.

I would expect that a request for the aforementioned url (with accept
header set correctly) would redirect me to (probably)
http://opengraphprotocol.org/schema

Which would download nicely with a 200 status code (it doesn't, you need
to get the ontology from here
http://opengraphprotocol.org/schema/?format=rdf )

Later, when we encounter another opengraph property
http://opengraphprotocol.org/schema/longitude
We would also hope to get a 303, which would again redirect us to
http://opengraphprotocol.org/schema

Of course, we don't want to bring down opengraph server, so we have
already cached the schema the first time we downloaded (if it worked)
and know not to fetch it again now.

In my experience processing millions of rdf documents daily, the 303 has
proven quite useful and very efficient, and I would definitely recommend
it's use to opengraph and other publishers of ontologies.

Robert.



On 04/11/10 13:22, Ian Davis wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

Cheers,

Ian





--
Robert Fuller
Research Associate
Sindice Team
DERI, Galway
http://sindice.com/



Re: Is 303 really necessary?

2010-11-04 Thread Nathan

Ian Davis wrote:

On Thu, Nov 4, 2010 at 6:08 PM, Nathan  wrote:

You see it's not about what we say, it's about what other say, and if 10
 huge corps analyse the web and spit out billions of triples saying that
anything 200 OK'd is a document, then at the end when we consider the RDF
graph of triples, all we're going to see is one statement saying something
is a "nonInformationResource" and a hundred others saying it's a document
and describing what it's about together with it's format and so on.

I honestly can't see how anything could reason over a graph that looked like
that.


I honestly believe that's the least of our worries. How often do you
need to determine whether something in the universe of discourse is an
electronic document or not compared with all the other questions you
might be asking of your data. I might conceivable ask "show me all the
documents about this toucan" but I'd much rather ask "show me all the
data about this toucan"


I think we all would, but we'd also like to see the data about this 
toucan rather than about this toucan and the document that describes it.


To be clear, the issue is not  ex:isDescribedBy 

The issue is  ex:isDescribedBy 

And when you 200 OK, that's what you'll get in your graph. TBH with any 
slash URI it's probably what you'll end up getting.



However, I'm also very aware that this all may be moot any ways, because
many crawlers and HTTP agents just treat HTTP like a big black box, they
don't know there ever was a 303 and don't know what the end URI is (even
major browser vendors like chrome do this, setting the base wrong and
everything) - so even the current 303 pattern doesn't keep different things
with different names for /slash URIs in all cases.



That's true. I don't suppose any of the big crawlers care about the
semantics of 303 because none of them care about the difference
between a thing and its description. For example the Google OpenSocial
doesn't give a hoot about the difference and yet seems to still
function. As I say above, this document/thing distinction is actually
quite small area to focus on compared with the the real problems of
analysing the web of data as a whole.


Well yeah, one could take the entire graph, stick it in a triple store, 
and look then strip all triples which can be inferred as having a class 
Document. To be left with just the data :) [ which obviously won't 
include your /toucan /doc or /anna ]


Best,

Nathan




Re: Is 303 really necessary?

2010-11-04 Thread Jörn Hees
Hi Ian,

From your blogpost:
> Under my new scheme:
> GET /toucan responds with 200 and a representation containing some RDF which
> includes the triples  ex:owner  and 
> ex:isDescribedBy 
> GET /doc responds with 200 and a representation containing some RDF which
> includes the triple  ex:owner 

So how can I then say that your description of toucan is wrong without saying 
that the poor toucan is wrong?

Jörn



Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 12:06 PM, Ian Davis wrote:

On Thu, Nov 4, 2010 at 3:56 PM, Kingsley Idehen  wrote:

I don't presume. I prefer to use terms that are familiar with the
people on this list who might be reading the message. Introducing
unnecessary capitalised phrases distracts from the message.

Again, you presume. Capitalization might not work for you, but you are not
the equivalent of an entire mailing list audience. You are one individual
entitled to a personal opinion and preferences.


I hope you agree i have the freedom to express those opinions.


100%.

But taking your line of thought, of what relevance to the main topic?





Anyway, translation:

What's the problem with having a variety of methods for using LINKs to
associate a "Non Information Resource" with an "Information Resource"
that
  describes it (i.e., carries its structured representation)? Why place an
implementation detail at the front of the Linked Data narrative?

It's already at the front, and as I say in my post it's an impediment
to using Linked Data by mainstream developers.

I don't believe its already at the front. I can understand if there was some
quasi mandate that put it at the front. Again, you are jumping to
conclusions, then pivoting off the conclusions to make a point. IMHO: Net
effect, Linked Data concept murkiness and distraction. You are inadvertently
perpetuating a misconception.

Thank you for your opinion. I don't believe I am jumping to conclusions.



I think you are, of course this could be inadvertent, at least so I hope.

There is. I find it surprising that you're unaware of it because it's
in all the primary documents about publishing Linked Data.

Please provide a URL for the document that establishes this mandate. I know
of no such document. Of course I am aware of documents that offer
suggestions and best practice style guidelines.

Here is one cited by Leigh just now: http://www.w3.org/TR/cooluris/


That document has 3 occurrences of "must", not a single occurrence 
applies to 303 redirection. Zero occurrences of "mandate" .



Also http://lists.w3.org/Archives/Public/www-tag/2005Jun/0039.html


Zero occurrences of "must" or "mandate" .


And http://www4.wiwiss.fu-berlin.de/bizer/pub/LinkedDataTutorial/


6 occurrences of must, proximity shown in snippet below for context:

"... URIs that identify non-information resources must be set up in ** 
one of these ways **: Either the data source must return an HTTP 
response containing an HTTP 303 redirect to an information resource 
describing the non-information resource, as discussed earlier in this 
document. Or the URI for the non-information resource must be formed by 
taking the URI of the related information resource and appending a 
fragment identifier (e.g. #foo), as discussed in Recipe 7.1. ..."



IMHO. You've jumped to a conclusion, and then pivoted from there, as per 
my initial assertion.


Nobody ever mandated 303 redirection. It has always been an option, and 
so it should remain.



The only thing that should be mandatory re. Linked Data is this:  HTTP
based
Entity Names should Resolve to structured Descriptors that are Human
and/or
Machine decipherable.

Are you saying that requesting a URI should return a description
document?

Resolve to a Descriptor Document which may exist in a variety of formats.
Likewise, Descriptor documents (RDF docs, for instance) should clearly
identify their Subject(s) via HTTP URI based Names.

Example (in this example we have 1:1 re. Entity Name and Descriptor for
sake
of simplicity):

-- Name
-- Descriptor Resource (HTML+RDFa) this
resource will expose other representations via(+ @rel)
or
"Link:" in response headers etc..

Not sure what you are trying to say here. I must be misunderstanding
because you appear to be claiming that
is a name but

That is a Name via HTTP URI (using its Name aspect).

This is an interesting distinction between the resource and a name.
Can you restate it in a new thread so we don't add noise to the 303
discussion


Not noise!

URI Abstraction covers:

1. Names -- may or may not resolve
2. Addresses (URLs) -- where data resides.

Using what looks like an Address as a Name, doesn't undermine existence 
of the Name aspect re. overarching URI abstraction.


Linked Data, the concept, mandates that the data is Human or Machine 
decipherable ("useful") via structure outlined via a data model.


We did have a computer industry pre. Web. TimBL's URI abstraction is one 
of the coolest innovations ever! It also remains one of the most widely 
misunderstood innovations ever!


URI abstraction is why the concept of Linked Data at InterWeb scale is 
going to happen. Just as the Web of Linked Documents has, also at 
InterWeb scale.


[SNIP]

BTW - how would you explain your claim on Twitter about 303 being 
dropped? Here is the excerpt:


 @iand: seems that the lod mailing list is over

Re: Is 303 really necessary?

2010-11-04 Thread Nathan

Ian Davis wrote:

On Thursday, November 4, 2010, Nathan  wrote:

If 303s are killing you then use fragment URIs, if you refuse to use fragments 
for whatever reason then use something new like tdb:'s, support the data you've 
published in one pattern, or archive it and remove it from the web.


These are publishing alternatives, but I'm focussed on the 303 issue here.


Why? 303 is a sub issue not the real issue - Why not compare which style 
(slash, frag, tdb) is the least ambiguous, easiest to deploy and 
consume, kindest to the network and to servers, and /then/ work at 
fixing the issues with that one.


Best,

Nathan







Re: Is 303 really necessary?

2010-11-04 Thread Robert Fuller

Hi,

Feel free anyone to suggest opengraph use 301, 302, 303, 307 (we support 
them all), since at the moment with a 404 they are missing out on all 
the benefit of the sindice reasoner ;-)


http://opengraphprotocol.org/schema/latitude

It is common when publishing an ontology to have the url for each 
property redirect to the rdf schema. It works great.


I would expect that a request for the aforementioned url (with accept 
header set correctly) would redirect me to (probably)

http://opengraphprotocol.org/schema

Which would download nicely with a 200 status code (it doesn't, you need 
to get the ontology from here

http://opengraphprotocol.org/schema/?format=rdf )

Later, when we encounter another opengraph property
http://opengraphprotocol.org/schema/longitude
We would also hope to get a 303, which would again redirect us to
http://opengraphprotocol.org/schema

Of course, we don't want to bring down opengraph server, so we have 
already cached the schema the first time we downloaded (if it worked) 
and know not to fetch it again now.


In my experience processing millions of rdf documents daily, the 303 has 
proven quite useful and very efficient, and I would definitely recommend 
it's use to opengraph and other publishers of ontologies.


Robert.



On 04/11/10 13:22, Ian Davis wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

Cheers,

Ian



--
Robert Fuller
Research Associate
Sindice Team
DERI, Galway
http://sindice.com/



Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 6:08 PM, Nathan  wrote:
>
> You see it's not about what we say, it's about what other say, and if 10
>  huge corps analyse the web and spit out billions of triples saying that
> anything 200 OK'd is a document, then at the end when we consider the RDF
> graph of triples, all we're going to see is one statement saying something
> is a "nonInformationResource" and a hundred others saying it's a document
> and describing what it's about together with it's format and so on.
>
> I honestly can't see how anything could reason over a graph that looked like
> that.

I honestly believe that's the least of our worries. How often do you
need to determine whether something in the universe of discourse is an
electronic document or not compared with all the other questions you
might be asking of your data. I might conceivable ask "show me all the
documents about this toucan" but I'd much rather ask "show me all the
data about this toucan"


>
> However, I'm also very aware that this all may be moot any ways, because
> many crawlers and HTTP agents just treat HTTP like a big black box, they
> don't know there ever was a 303 and don't know what the end URI is (even
> major browser vendors like chrome do this, setting the base wrong and
> everything) - so even the current 303 pattern doesn't keep different things
> with different names for /slash URIs in all cases.
>

That's true. I don't suppose any of the big crawlers care about the
semantics of 303 because none of them care about the difference
between a thing and its description. For example the Google OpenSocial
doesn't give a hoot about the difference and yet seems to still
function. As I say above, this document/thing distinction is actually
quite small area to focus on compared with the the real problems of
analysing the web of data as a whole.


> Best,
>
> Nathan
>

Ian



Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thursday, November 4, 2010, Nathan  wrote:

> Please, don't.
>
> 303 is a PITA, and it has detrimental affects across the board from network 
> load through to server admin. Likewise #frag URIs have there own set of PITA 
> features (although they are nicer on the network and servers).
>
> However, and very critically (if you can get more critical than critical!), 
> both of these patterns / constraints are here to ensure that  different 
> things have different names, and without that distinction our data is junk.
>

I agree with this and I address it in my blog post where I say we
should link the thing to its description using a triple rather than a
network response code.



> This goes beyond your and my personal opinions, or those of anybody here, the 
> constraints are there so that in X months time when "multi-corp" trawls the 
> web, analyses it and releases billions of statements saying like {  
> :hasFormat "x"; sioc:about dbpedia:Whatever } about each doc on the web, that 
> all of those statements are said about documents, and not about you or I, or 
> anything else real, that they are said about the right "thing", the correct 
> name is used.

I don't see that as a problem. It's an error because it's not what the
original publisher intended but there are many many examples where
that happens in bulk, and actually the 303 redirect doesn't prevent it
happening with naive crawlers.

If someone asserts something we don't have to assume it is
automatically true. We can get authority about what a URI denotes by
dereferencng it. We trust third party statements as much or as little
as we desire.


>
> And this is critically important, to ensure that in X years time when 
> somebody downloads the RDF of 2010 in a big *TB sized archive and considers 
> the graph of RDF triples, in order to make sense of some parts of it for 
> something important, that the data they have isn't just unreasonable junk.

Any decent reasoner at that scale will be able to reject triples that
appear to contradict one another. Seeing properties such as "format"
against a URI that everyone else claims denotes an animal is going to
stick out.

>
> It's not about what we say something is, it's about what others say the thing 
> is, and if you 200 OK the URIs you currently 303, then it will be said that 
> you are a document, as simple as that. Saying you are a document isn't the 
> killer, it's the hundreds of other statements said along side that which make 
> things so ambiguous that the info is useless.
>

That's only true under the httpRange-14 finding which I am proposing
is part of the problem.



> If 303s are killing you then use fragment URIs, if you refuse to use 
> fragments for whatever reason then use something new like tdb:'s, support the 
> data you've published in one pattern, or archive it and remove it from the 
> web.

These are publishing alternatives, but I'm focussed on the 303 issue here.


>
> But, for whatever reasons, we've made our choices, each has pro's and cons, 
> and we have to live with them - different things have different name, and the 
> giant global graph is usable. Please, keep it that way.
>

Agree, different things have different names, that's why I emphasise
it in the blog post. I don't agree that the status quo is the best
state of affairs.


> Best,
>
> Nathan
>


Ian



Re: Is 303 really necessary?

2010-11-04 Thread Patrick Durusau
Nathan,

On Thu, 2010-11-04 at 17:51 +, Nathan wrote:
> Ian Davis wrote:
> > Hi all,
> > 
> > The subject of this email is the title of a blog post I wrote last
> > night questioning whether we actually need to continue with the 303
> > redirect approach for Linked Data. My suggestion is that replacing it
> > with a 200 is in practice harmless and that nothing actually breaks on
> > the web. Please take a moment to read it if you are interested.
> > 
> > http://iand.posterous.com/is-303-really-necessary
> 
> Ian,
> 
> Please, don't.
> 
> 303 is a PITA, and it has detrimental affects across the board from 
> network load through to server admin. Likewise #frag URIs have there own 
> set of PITA features (although they are nicer on the network and servers).
> 
> However, and very critically (if you can get more critical than 
> critical!), both of these patterns / constraints are here to ensure that 
>   different things have different names, and without that distinction 
> our data is junk.
> 

Our data is already junk. What part of that seems unclear? 

See:

http://www.mkbergman.com/925/ontotext-sd-form-strategic-partnership/

For an unbiased assessment.

> This goes beyond your and my personal opinions, or those of anybody 
> here, the constraints are there so that in X months time when 
> "multi-corp" trawls the web, analyses it and releases billions of 
> statements saying like {  :hasFormat "x"; sioc:about 
> dbpedia:Whatever } about each doc on the web, that all of those 
> statements are said about documents, and not about you or I, or anything 
> else real, that they are said about the right "thing", the correct name 
> is used.
> 
> And this is critically important, to ensure that in X years time when 
> somebody downloads the RDF of 2010 in a big *TB sized archive and 
> considers the graph of RDF triples, in order to make sense of some parts 
> of it for something important, that the data they have isn't just 
> unreasonable junk.
> 

Sorry, it is already junk. Remember? The failure to distinguish between
addresses in an address space and identifiers is mistake that keeps on
giving.

Fix the mistake and all the cruft that is trying to cover over the
mistake will be unnecessary.

Our data may still be junk in that case but for different reasons. ;-)



> 
> But, for whatever reasons, we've made our choices, each has pro's and 
> cons, and we have to live with them - different things have different 
> name, and the giant global graph is usable. Please, keep it that way.
> 

The problem is that you want *other* people to live with your choices.
Given the lack of adoption for some of them, those other people are
making other choices. 

Hope you are having a great day!

Patrick




Re: Is 303 really necessary?

2010-11-04 Thread Nathan

Harry Halpin wrote:

On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary


In a purely personal capacity, I like the approach of just using 200,
i.e. with RDFa or whatever, rather than 303. If we want to
disambiguate URIs, the IRW ontology [1] offers a nice class called
"nonInformationResource" and "InformationResource" that one can use to
disambiguate. See this paper [2] on "an Ontology of Resources for
Linked Data" for a walk-through example.

My reasoning is not architectural, but simply efficiency. It is rather
inefficient to have a redirection in the form of a 303 if one can get
the same info without using 303.

Note that Microsoft's oData may one day be a serious competitor to
Linked Data, and if you asked many programmers and open data people
who are not already committed to RDF if they would use Atom + HTTP GET
and no redirects over RDF/XML and a weird 303 redirect, I think the
answer would be rather self-evident.

[1]http://ontologydesignpatterns.org/ont/web/irw.owl
[2]http://events.linkeddata.org/ldow2009/papers/ldow2009_paper19.pdf


Harry,

Whilst I agree with all your reasons and have also raised the odata 
point myself on this list a few times, I can't agree that any kind of 
ontology is going to help with this.


You see it's not about what we say, it's about what other say, and if 10 
 huge corps analyse the web and spit out billions of triples saying 
that anything 200 OK'd is a document, then at the end when we consider 
the RDF graph of triples, all we're going to see is one statement saying 
something is a "nonInformationResource" and a hundred others saying it's 
a document and describing what it's about together with it's format and 
so on.


I honestly can't see how anything could reason over a graph that looked 
like that.


However, I'm also very aware that this all may be moot any ways, because 
many crawlers and HTTP agents just treat HTTP like a big black box, they 
don't know there ever was a 303 and don't know what the end URI is (even 
major browser vendors like chrome do this, setting the base wrong and 
everything) - so even the current 303 pattern doesn't keep different 
things with different names for /slash URIs in all cases.


Best,

Nathan



Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 1:51 PM, Nathan wrote:

Ian Davis wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary


Ian,

Please, don't.

303 is a PITA, and it has detrimental affects across the board from 
network load through to server admin. Likewise #frag URIs have there 
own set of PITA features (although they are nicer on the network and 
servers).


However, and very critically (if you can get more critical than 
critical!), both of these patterns / constraints are here to ensure 
that  different things have different names, and without that 
distinction our data is junk.


This goes beyond your and my personal opinions, or those of anybody 
here, the constraints are there so that in X months time when 
"multi-corp" trawls the web, analyses it and releases billions of 
statements saying like {  :hasFormat "x"; sioc:about 
dbpedia:Whatever } about each doc on the web, that all of those 
statements are said about documents, and not about you or I, or 
anything else real, that they are said about the right "thing", the 
correct name is used.


And this is critically important, to ensure that in X years time when 
somebody downloads the RDF of 2010 in a big *TB sized archive and 
considers the graph of RDF triples, in order to make sense of some 
parts of it for something important, that the data they have isn't 
just unreasonable junk.


It's not about what we say something is, it's about what others say 
the thing is, and if you 200 OK the URIs you currently 303, then it 
will be said that you are a document, as simple as that. Saying you 
are a document isn't the killer, it's the hundreds of other statements 
said along side that which make things so ambiguous that the info is 
useless.


If 303s are killing you then use fragment URIs, if you refuse to use 
fragments for whatever reason then use something new like tdb:'s, 
support the data you've published in one pattern, or archive it and 
remove it from the web.


But, for whatever reasons, we've made our choices, each has pro's and 
cons, and we have to live with them - different things have different 
name, and the giant global graph is usable. Please, keep it that way.


Best,

Nathan




AMEN!

--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen







Re: Is 303 really necessary?

2010-11-04 Thread Nathan

Ian Davis wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary


Ian,

Please, don't.

303 is a PITA, and it has detrimental affects across the board from 
network load through to server admin. Likewise #frag URIs have there own 
set of PITA features (although they are nicer on the network and servers).


However, and very critically (if you can get more critical than 
critical!), both of these patterns / constraints are here to ensure that 
 different things have different names, and without that distinction 
our data is junk.


This goes beyond your and my personal opinions, or those of anybody 
here, the constraints are there so that in X months time when 
"multi-corp" trawls the web, analyses it and releases billions of 
statements saying like {  :hasFormat "x"; sioc:about 
dbpedia:Whatever } about each doc on the web, that all of those 
statements are said about documents, and not about you or I, or anything 
else real, that they are said about the right "thing", the correct name 
is used.


And this is critically important, to ensure that in X years time when 
somebody downloads the RDF of 2010 in a big *TB sized archive and 
considers the graph of RDF triples, in order to make sense of some parts 
of it for something important, that the data they have isn't just 
unreasonable junk.


It's not about what we say something is, it's about what others say the 
thing is, and if you 200 OK the URIs you currently 303, then it will be 
said that you are a document, as simple as that. Saying you are a 
document isn't the killer, it's the hundreds of other statements said 
along side that which make things so ambiguous that the info is useless.


If 303s are killing you then use fragment URIs, if you refuse to use 
fragments for whatever reason then use something new like tdb:'s, 
support the data you've published in one pattern, or archive it and 
remove it from the web.


But, for whatever reasons, we've made our choices, each has pro's and 
cons, and we have to live with them - different things have different 
name, and the giant global graph is usable. Please, keep it that way.


Best,

Nathan



Re: Is 303 really necessary?

2010-11-04 Thread Patrick Durusau
David,

On Thu, 2010-11-04 at 13:24 -0400, David Wood wrote:
> On Nov 4, 2010, at 13:17, Patrick Durusau wrote:



> > 
> > But curious if you can point to numbers on support for 303s and
> > http-range-14? Might have enough flexibility but if not widely
> > supported, so what? 
> 
> 
> Sure.  Both Persistent URLs (purlz.org, purl.org, purl.fdlp.gov and others) 
> support http-range-14 via 303 responses.   DOIs (doi.org) also depend on 303s.
> 

Sure, but those aren't numbers are they? Important places (I don't
usually cite articles other than by DOIs for commercial sources), but
that isn't indicative of widespread adoption.

Yes?

Compare to the adoption of Apache webservers for example?

> The issue that seems to be understated in this discussion is whether 
> something should be abandoned on the Web because it is not used by "enough" 
> people.  I claim (to the contrary) that something 'useful' need not be 
> 'popular' to be important.
> 

Sure, lots of things aren't "popular" that are important. 

Personally I think Akkadian and Sumerian parsers (my background in ANE
languages) are important even though they are not popular. 

But, when talking about language adoption (which is the real issue, does
the W3C TAG dictate the language everyone must use?) then numbers
(popularity) really do matter.

You may think that Esperanto was important, but it never was "popular." 

I would rather please large numbers of users than the W3C TAG any day.
But that's just a personal opinion. 

Hope you are having a great day!

Patrick

-- 
Patrick Durusau
patr...@durusau.net
Chair, V1 - US TAG to JTC 1/SC 34
Convener, JTC 1/SC 34/WG 3 (Topic Maps)
Editor, OpenDocument Format TC (OASIS), Project Editor ISO/IEC 26300
Co-Editor, ISO/IEC 13250-1, 13250-5 (Topic Maps)

Another Word For It (blog): http://tm.durusau.net
Homepage: http://www.durusau.net
Twitter: patrickDurusau
Newcomb Number: 1




Re: Is 303 really necessary?

2010-11-04 Thread David Wood
On Nov 4, 2010, at 13:17, Patrick Durusau wrote:

> Dave,
> 
> On Thu, 2010-11-04 at 12:56 -0400, David Wood wrote:
>> Hi all,
> 
> 
> 
>> - Wide-spread mishandling of HTTP content negotiation makes it difficult if 
>> not impossible to rely upon.  Until we can get browser vendors and server 
>> vendors to handle content negotiation in a reasonable way, reliance on it is 
>> not a realistic option.  That means that there needs to be an out-of-band 
>> mechanism to disambiguate physical, virtual and conceptual resources on the 
>> Web.  303s plus http-range-14 provide enough flexibility to do that; I'm not 
>> convinced that overloading 200 does.
>> 
> 
> No mud, yet. ;-)


There's time left ;)


> 
> But curious if you can point to numbers on support for 303s and
> http-range-14? Might have enough flexibility but if not widely
> supported, so what? 


Sure.  Both Persistent URLs (purlz.org, purl.org, purl.fdlp.gov and others) 
support http-range-14 via 303 responses.   DOIs (doi.org) also depend on 303s.

The issue that seems to be understated in this discussion is whether something 
should be abandoned on the Web because it is not used by "enough" people.  I 
claim (to the contrary) that something 'useful' need not be 'popular' to be 
important.

Regards,
Dave




> 
> Hope you are having a great day!
> 
> Patrick
> 
> -- 
> Patrick Durusau
> patr...@durusau.net
> Chair, V1 - US TAG to JTC 1/SC 34
> Convener, JTC 1/SC 34/WG 3 (Topic Maps)
> Editor, OpenDocument Format TC (OASIS), Project Editor ISO/IEC 26300
> Co-Editor, ISO/IEC 13250-1, 13250-5 (Topic Maps)
> 
> Another Word For It (blog): http://tm.durusau.net
> Homepage: http://www.durusau.net
> Twitter: patrickDurusau
> Newcomb Number: 1
> 
> 




Re: Is 303 really necessary?

2010-11-04 Thread Patrick Durusau
Dave,

On Thu, 2010-11-04 at 12:56 -0400, David Wood wrote:
> Hi all,



> - Wide-spread mishandling of HTTP content negotiation makes it difficult if 
> not impossible to rely upon.  Until we can get browser vendors and server 
> vendors to handle content negotiation in a reasonable way, reliance on it is 
> not a realistic option.  That means that there needs to be an out-of-band 
> mechanism to disambiguate physical, virtual and conceptual resources on the 
> Web.  303s plus http-range-14 provide enough flexibility to do that; I'm not 
> convinced that overloading 200 does.
> 

No mud, yet. ;-)

But curious if you can point to numbers on support for 303s and
http-range-14? Might have enough flexibility but if not widely
supported, so what? 

Hope you are having a great day!

Patrick

-- 
Patrick Durusau
patr...@durusau.net
Chair, V1 - US TAG to JTC 1/SC 34
Convener, JTC 1/SC 34/WG 3 (Topic Maps)
Editor, OpenDocument Format TC (OASIS), Project Editor ISO/IEC 26300
Co-Editor, ISO/IEC 13250-1, 13250-5 (Topic Maps)

Another Word For It (blog): http://tm.durusau.net
Homepage: http://www.durusau.net
Twitter: patrickDurusau
Newcomb Number: 1




Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
Hi Dave,

On Thu, Nov 4, 2010 at 4:56 PM, David Wood  wrote:
> Hi all,
>
> This is a horrible idea, for the following reasons (in my opinion and 
> suitably caveated):
>
> - Some small number of people and organizations need to provide back-links on 
> the Web since the Web doesn't have them.  303s provide a generic mechanism 
> for that to occur.  URL curation is a useful and proper activity on the Web, 
> again in my opinion.

The relationship between 303 redirection and backlinks isn't clear to
me. Can you expand?

>
> - Overloading the use of 200 (OK) for metadata creates an additional 
> ambiguity in that the address of a resource is now conflated with the address 
> of a resource described by metadata.

My post addresses that case. I don't encourage people to use the same
URI for both the metadata and the thing but to link them using a new
predicate ex:isDescribedBy. I also say that you should believe the
data. If the data says the thing you dereferenced is a document then
that's what you should assume it is. If it says it's a toucan then
that's what it is.


>
> - W3C TAG findings such as http-range-14 are really very difficult to 
> overcome socially.
>

Maybe so, but I don't think that should stop 5 years of deployment
experience from informing a change of practice. This isn't really
relevant to my main question though: what breaks on the web.


> - Wide-spread mishandling of HTTP content negotiation makes it difficult if 
> not impossible to rely upon.  Until we can get browser vendors and server 
> vendors to handle content negotiation in a reasonable way, reliance on it is 
> not a realistic option.  That means that there needs to be an out-of-band 
> mechanism to disambiguate physical, virtual and conceptual resources on the 
> Web.  303s plus http-range-14 provide enough flexibility to do that; I'm not 
> convinced that overloading 200 does.

My proposal isn't dependent on conneg. You can use it with the same
caveats as anywhere else. But the simple case is just to serve up some
RDF at the URI being dereferenced. BTW, conneg is very widely deployed
in the Linked Data web and doesn't seem to have been a problem.


>
> /me ducks for the inevitable mud slinging this list has become.

We can improve the quality of discussion on this list.


>
> Regards,
> Dave

Ian



Re: Is 303 really necessary?

2010-11-04 Thread Mike Kelly
On Thu, Nov 4, 2010 at 4:55 PM, Ian Davis  wrote:
> On Thu, Nov 4, 2010 at 4:52 PM, Robin YANG  wrote:
>> Ok, yes, we can use ontology or ex:isDescribedBy, but none of solution
>> explained what happens when you dereferencing the URI over HTTP which you
>> just used to refer to the non-information resources.
>> Don't u need 303 or hash URI again to differentiate when
>> dereferencing whatever subject URI we minted before ex:isDescribedBy.
>>
>
> When you dereference the URI you get back a representation with some
> data about the thing the URI denotes. I don't think you need any other
> URI unless you also want to assign a URI to the representation itself.
>

+1

In the case where you want, or already have, a URI assigned to the
representation; an appropriate Content-Location header in the response
is the best way forward.

Cheers,
Mike



Re: Is 303 really necessary?

2010-11-04 Thread David Wood
Hi all,

This is a horrible idea, for the following reasons (in my opinion and suitably 
caveated):

- Some small number of people and organizations need to provide back-links on 
the Web since the Web doesn't have them.  303s provide a generic mechanism for 
that to occur.  URL curation is a useful and proper activity on the Web, again 
in my opinion.

- Overloading the use of 200 (OK) for metadata creates an additional ambiguity 
in that the address of a resource is now conflated with the address of a 
resource described by metadata.

- W3C TAG findings such as http-range-14 are really very difficult to overcome 
socially.

- Wide-spread mishandling of HTTP content negotiation makes it difficult if not 
impossible to rely upon.  Until we can get browser vendors and server vendors 
to handle content negotiation in a reasonable way, reliance on it is not a 
realistic option.  That means that there needs to be an out-of-band mechanism 
to disambiguate physical, virtual and conceptual resources on the Web.  303s 
plus http-range-14 provide enough flexibility to do that; I'm not convinced 
that overloading 200 does.

/me ducks for the inevitable mud slinging this list has become.

Regards,
Dave




On Nov 4, 2010, at 12:33, Harry Halpin wrote:

> On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:
>> Hi all,
>> 
>> The subject of this email is the title of a blog post I wrote last
>> night questioning whether we actually need to continue with the 303
>> redirect approach for Linked Data. My suggestion is that replacing it
>> with a 200 is in practice harmless and that nothing actually breaks on
>> the web. Please take a moment to read it if you are interested.
>> 
>> http://iand.posterous.com/is-303-really-necessary
> 
> In a purely personal capacity, I like the approach of just using 200,
> i.e. with RDFa or whatever, rather than 303. If we want to
> disambiguate URIs, the IRW ontology [1] offers a nice class called
> "nonInformationResource" and "InformationResource" that one can use to
> disambiguate. See this paper [2] on "an Ontology of Resources for
> Linked Data" for a walk-through example.
> 
> My reasoning is not architectural, but simply efficiency. It is rather
> inefficient to have a redirection in the form of a 303 if one can get
> the same info without using 303.
> 
> Note that Microsoft's oData may one day be a serious competitor to
> Linked Data, and if you asked many programmers and open data people
> who are not already committed to RDF if they would use Atom + HTTP GET
> and no redirects over RDF/XML and a weird 303 redirect, I think the
> answer would be rather self-evident.
> 
> [1]http://ontologydesignpatterns.org/ont/web/irw.owl
> [2]http://events.linkeddata.org/ldow2009/papers/ldow2009_paper19.pdf
> 
> 
> 
>> 
>> Cheers,
>> 
>> Ian
>> 
>> 
> 




Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 4:52 PM, Robin YANG  wrote:
> Ok, yes, we can use ontology or ex:isDescribedBy, but none of solution
> explained what happens when you dereferencing the URI over HTTP which you
> just used to refer to the non-information resources.
> Don't u need 303 or hash URI again to differentiate when
> dereferencing whatever subject URI we minted before ex:isDescribedBy.
>

When you dereference the URI you get back a representation with some
data about the thing the URI denotes. I don't think you need any other
URI unless you also want to assign a URI to the representation itself.

Ian



Re: Is 303 really necessary?

2010-11-04 Thread Robin YANG
Ok, yes, we can use ontology or ex:isDescribedBy, but none of solution
explained what happens when you dereferencing the URI over HTTP which you
just used to refer to the non-information resources.

Don't u need 303 or hash URI again to differentiate when
dereferencing whatever subject URI we minted before ex:isDescribedBy.


Re: Is 303 really necessary?

2010-11-04 Thread Harry Halpin
On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:
> Hi all,
>
> The subject of this email is the title of a blog post I wrote last
> night questioning whether we actually need to continue with the 303
> redirect approach for Linked Data. My suggestion is that replacing it
> with a 200 is in practice harmless and that nothing actually breaks on
> the web. Please take a moment to read it if you are interested.
>
> http://iand.posterous.com/is-303-really-necessary

In a purely personal capacity, I like the approach of just using 200,
i.e. with RDFa or whatever, rather than 303. If we want to
disambiguate URIs, the IRW ontology [1] offers a nice class called
"nonInformationResource" and "InformationResource" that one can use to
disambiguate. See this paper [2] on "an Ontology of Resources for
Linked Data" for a walk-through example.

My reasoning is not architectural, but simply efficiency. It is rather
inefficient to have a redirection in the form of a 303 if one can get
the same info without using 303.

Note that Microsoft's oData may one day be a serious competitor to
Linked Data, and if you asked many programmers and open data people
who are not already committed to RDF if they would use Atom + HTTP GET
and no redirects over RDF/XML and a weird 303 redirect, I think the
answer would be rather self-evident.

[1]http://ontologydesignpatterns.org/ont/web/irw.owl
[2]http://events.linkeddata.org/ldow2009/papers/ldow2009_paper19.pdf



>
> Cheers,
>
> Ian
>
>



Re: Is 303 really necessary?

2010-11-04 Thread Bradley Allen
On Thu, Nov 4, 2010 at 9:13 AM, Ian Davis  wrote:
> On Thu, Nov 4, 2010 at 4:07 PM, Bradley Allen  
> wrote:
>> Basically what you are saying is: if I have a single URI that responds
>> to an HTTP GET with (X)HTML+RDFa by default, and supports other RDF
>> serializations through content negotiation, then all of that can be
>> done without recourse to a 303 redirect and should be perfectly
>> compatible with linked data best practice.
>
> That is what I would like to see and what I believe is possible. It's
> not current practice, so I'm seeking a change.
>

I am in violent agreement. It is long past due that someone made this
point. As has been said been said earlier, this simplifies
implementation, eliminates unnecessary traffic and is completely
transparent to linked data clients that do content negotiation. - BPA

>> Bradley P. Allen
>> http://bradleypallen.org



Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 4:17 PM, Kingsley Idehen  wrote:
> On 11/4/10 11:50 AM, Giovanni Tummarello wrote:

>> its up to clients to really care about the distinction, i personally
>> know of no useful clients for the web of data that will visibly
>> misbehave if a person is mistaken for a page.. so your you can certify
>> to your customer your solution works well with "any" client
>
> Gio,
>
> Keyword: visibly.
>
> Once the Web of Linked Data crystallizes, smart agents will emerge and start
> roaming etc.. These agents need precision, so ambiguity will cause problems.
> At this point there will be broader context for these matters. Please don't
> dismiss this matter, things are going to change quickly, we live in
> exponential times.

If the success of these agents is predicated on precision then they
are doomed to failure. The web is a messy place but it's precisely
that messiness that allows it to scale. Anyone building serious web
data apps is used to dealing with ambiguity all the time and has
strategies for compensating. Linked Data offers a route to higher
precision, but in no way is it a panacea or silver bullet.

Ian



Re: Is 303 really necessary?

2010-11-04 Thread bill.roberts
Can I attempt to broker peace between Ian and Kingsley in this discussion? :-)

Because it seems to me that they are fundamentally agreeing with each other, 
though considering different aspects of the problem.  Kingsley is taking a very 
broad view, Ian is addressing a specific aspect of best practices around Linked 
Data in the TimBL design document/HTTP/RDF sense of the word.

Whether it's a mandate or a best practice, it is clear to me that the consensus 
of general guidance on the web around Linked Data advocates the httpRange-14 
distinction between 200/IR and 303/NIR(maybe) approach.  So Ian's attempt to 
simplify this to make implementing a best practice approach to Linked Data 
easier seems a worthwhile discussion to have.

On the broader scale of Linked Data, I broadly agree with Kingsley that 
ultimately the technologies are less important than the concept. But to 
implement it in practice, we need to apply at least one technology, and the 
HTTP/RDF approach is currently the most widely applied.

I definitely agree with Ian that the 200/303 distinction is complicated to 
explain to newcomers and adds an extra layer of effort in implementing Linked 
Data. I'm convinced so far by Ian's argument that the sky would not fall in if 
we return HTTP 200 together with descriptions of real world things in response 
to an HTTP call to their identifier.

After all, it's just a convention that we need to agree on regarding how to 
deliver bits of documentation around the web.  I don't think it changes any 
fundamental points about the semantics of RDF etc.

To try to bring the discussion back to Ian's original point - are there good 
reasons that force us to stick with the more complicated 303 approach?  If not, 
then let's keep life simple and just return HTTP 200 for HTTP URIs of real 
world things.

Bill
 


Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 11:50 AM, Giovanni Tummarello wrote:

I think it's an orthogonal issue to the one RDFa solves. How should I
use RDFa to respond to requests to http://iandavis.com/id/me which is
a URI that denotes me?


hashless?

mm one could be to return HTML + RDFa describing yourself. add a
triple saying http://iandavis.com/id/me
containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource

its up to clients to really care about the distinction, i personally
know of no useful clients for the web of data that will visibly
misbehave if a person is mistaken for a page.. so your you can certify
to your customer your solution works well with "any" client


Gio,

Keyword: visibly.

Once the Web of Linked Data crystallizes, smart agents will emerge and 
start roaming etc.. These agents need precision, so ambiguity will cause 
problems. At this point there will be broader context for these matters. 
Please don't dismiss this matter, things are going to change quickly, we 
live in exponential times.



if one will come up which operates usefully on both people and pages
and would benefit from making your distinction than those coding that
client will definitely learn about your
containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource
and support it.

how about this ? :-)

as an alternative the post i pointed you earlier (the one about 203
406) did actually contain an answer i believe.  406 is perfect IMO ..
I'd say a client which will care to make the distinction would learn
to support it as in my previous example.


The trouble with all of this is that we are retrofitting an existing 
system at two levels:


1. User Perception
2. Base Infrastructure.

It isn't easy, but is doable. We just need to keep the construction out 
of the user realm. Middleware fixed such matters pre web, and it will 
fix such matters as the Web continues to blossom.



Kingsley

cheers





--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 4:07 PM, Bradley Allen  wrote:
> Basically what you are saying is: if I have a single URI that responds
> to an HTTP GET with (X)HTML+RDFa by default, and supports other RDF
> serializations through content negotiation, then all of that can be
> done without recourse to a 303 redirect and should be perfectly
> compatible with linked data best practice.

That is what I would like to see and what I believe is possible. It's
not current practice, so I'm seeking a change.


>
> Is that correct?
>

Yes

> Bradley P. Allen
> http://bradleypallen.org
>

Ian



Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 11:21 AM, Giovanni Tummarello wrote:

Hi Ian

no its not needed see this discussion
http://lists.w3.org/Archives/Public/semantic-web/2007Jul/0086.html
pointing to 203 406 or thers..

..but a number of social community mechanisms will activate if you
bring this up, ranging from russian style "you're being antipatriotic
criticizing the existing status quo " to "..but its so deployed now"
and ".. you're distracting the community from other more important
issues ", none of this will make sense if analized by proper logical
means of course (e.g. by a proper IT manager in a proper company, paid
based on actual results).

But the core of the matter really is : who cares. My educated guess
looking at Sindice flowing data is that everyday out of 100 new sites
on  web of data 99.9 simply use RDFa which doesnt have this issue.

choose how to publish yourself but here is another one. If you chose
NOT to use RDFa you will miss out on anything which will enhance the
user experience based on annotations. As an example see our entry in
the  semantic web challange [1].

Giovanni

[1] http://www.cs.vu.nl/~pmika/swc/submissions/swc2010_submission_19.pdf


Giovanni,

Could I paraphrase, if you don't mind?

I think you are saying that the following distractions are irrelevant to 
the fundamental goals of Linked Data:


1. Apache capabilities
2. Apache access
3. Access to other Web Servers
4. RDF formats such as RDF/XML (which most see as being RDF)
5. SPARQL
6. Heuristics for Resolvable Names (303 and friends).

If so, I agree totally!

BTW - RDFa is unfortunately named since it conveys the misconception 
that its an RDF derivative when it isn't. I say this bearing that the 
rest of the world (modulo LOD and broader Semantic Web communities) 
continue to perceive RDF as "owl:sameAs"  RDF/XML.


Yes, RDFa lets you drop a descriptor (information resource) anywhere on 
the Web without breaking the fundamental essence of the Linked Data 
concept :-)



Kingsley




On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

Cheers,

Ian







--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 3:56 PM, Kingsley Idehen  wrote:
>> I don't presume. I prefer to use terms that are familiar with the
>> people on this list who might be reading the message. Introducing
>> unnecessary capitalised phrases distracts from the message.
>
> Again, you presume. Capitalization might not work for you, but you are not
> the equivalent of an entire mailing list audience. You are one individual
> entitled to a personal opinion and preferences.
>

I hope you agree i have the freedom to express those opinions.


>>
>>> Anyway, translation:
>>>
>>> What's the problem with having a variety of methods for using LINKs to
>>> associate a "Non Information Resource" with an "Information Resource"
>>> that
>>>  describes it (i.e., carries its structured representation)? Why place an
>>> implementation detail at the front of the Linked Data narrative?
>>
>> It's already at the front, and as I say in my post it's an impediment
>> to using Linked Data by mainstream developers.
>
> I don't believe its already at the front. I can understand if there was some
> quasi mandate that put it at the front. Again, you are jumping to
> conclusions, then pivoting off the conclusions to make a point. IMHO: Net
> effect, Linked Data concept murkiness and distraction. You are inadvertently
> perpetuating a misconception.

Thank you for your opinion. I don't believe I am jumping to conclusions.

>>
>> There is. I find it surprising that you're unaware of it because it's
>> in all the primary documents about publishing Linked Data.
>
> Please provide a URL for the document that establishes this mandate. I know
> of no such document. Of course I am aware of documents that offer
> suggestions and best practice style guidelines.

Here is one cited by Leigh just now: http://www.w3.org/TR/cooluris/

Also http://lists.w3.org/Archives/Public/www-tag/2005Jun/0039.html

And http://www4.wiwiss.fu-berlin.de/bizer/pub/LinkedDataTutorial/

>
>>
> The only thing that should be mandatory re. Linked Data is this:  HTTP
> based
> Entity Names should Resolve to structured Descriptors that are Human
> and/or
> Machine decipherable.

 Are you saying that requesting a URI should return a description
 document?
>>>
>>> Resolve to a Descriptor Document which may exist in a variety of formats.
>>> Likewise, Descriptor documents (RDF docs, for instance) should clearly
>>> identify their Subject(s) via HTTP URI based Names.
>>>
>>> Example (in this example we have 1:1 re. Entity Name and Descriptor for
>>> sake
>>> of simplicity):
>>>
>>>   -- Name
>>>   -- Descriptor Resource (HTML+RDFa) this
>>> resource will expose other representations via  (  + @rel)
>>> or
>>> "Link:" in response headers etc..
>>
>> Not sure what you are trying to say here. I must be misunderstanding
>> because you appear to be claiming that
>>   is a name but
>
> That is a Name via HTTP URI (using its Name aspect).

This is an interesting distinction between the resource and a name.
Can you restate it in a new thread so we don't add noise to the 303
discussion

>
>
>> I don't really see what relevance this all has to the issue of 303
>> redirection though. We are all agreed that things are not usually
>> their own descriptions, we are discussing how that knowledge should be
>> conveyed using Linked Data.
>
> Of course, my comments are irrelevant, off topic. If that works for you,
> then good for you. You spent all this time debating an irrelevance.

That looks like a natural close to this particular part of the debate then.

>
> FWIW - 303 is an implementation detail, RDF is an implementation detail, and
> so is SPARQL. When you front line any conversation about the concept of
> Linked Data with any of the aforementioned, you are only going to make the
> core concept incomprehensible.



Ian



Re: Is 303 really necessary?

2010-11-04 Thread Bradley Allen
Basically what you are saying is: if I have a single URI that responds
to an HTTP GET with (X)HTML+RDFa by default, and supports other RDF
serializations through content negotiation, then all of that can be
done without recourse to a 303 redirect and should be perfectly
compatible with linked data best practice.

Is that correct?

Bradley P. Allen
http://bradleypallen.org



On Thu, Nov 4, 2010 at 8:58 AM, Ian Davis  wrote:
> On Thu, Nov 4, 2010 at 3:50 PM, Giovanni Tummarello
>  wrote:
>>> I think it's an orthogonal issue to the one RDFa solves. How should I
>>> use RDFa to respond to requests to http://iandavis.com/id/me which is
>>> a URI that denotes me?
>>>
>>
>> hashless?
>>
>> mm one could be to return HTML + RDFa describing yourself. add a
>> triple saying http://iandavis.com/id/me
>> containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource
>>
>
> Yes, that's basically what I'm saying in my blog post.
>
>
>> its up to clients to really care about the distinction, i personally
>> know of no useful clients for the web of data that will visibly
>> misbehave if a person is mistaken for a page.. so your you can certify
>> to your customer your solution works well with "any" client
>>
>
> Good to know. That's my sense too.
>
>
>
>> if one will come up which operates usefully on both people and pages
>> and would benefit from making your distinction than those coding that
>> client will definitely learn about your
>> containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource
>> and support it.
>>
>> how about this ? :-)
>
> Sounds good to me :)
>
>>
>> as an alternative the post i pointed you earlier (the one about 203
>> 406) did actually contain an answer i believe.  406 is perfect IMO ..
>> I'd say a client which will care to make the distinction would learn
>> to support it as in my previous example.
>>
>
> I'll look into that.
>
> Ian
>
>



Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 3:50 PM, Giovanni Tummarello
 wrote:
>> I think it's an orthogonal issue to the one RDFa solves. How should I
>> use RDFa to respond to requests to http://iandavis.com/id/me which is
>> a URI that denotes me?
>>
>
> hashless?
>
> mm one could be to return HTML + RDFa describing yourself. add a
> triple saying http://iandavis.com/id/me
> containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource
>

Yes, that's basically what I'm saying in my blog post.


> its up to clients to really care about the distinction, i personally
> know of no useful clients for the web of data that will visibly
> misbehave if a person is mistaken for a page.. so your you can certify
> to your customer your solution works well with "any" client
>

Good to know. That's my sense too.



> if one will come up which operates usefully on both people and pages
> and would benefit from making your distinction than those coding that
> client will definitely learn about your
> containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource
> and support it.
>
> how about this ? :-)

Sounds good to me :)

>
> as an alternative the post i pointed you earlier (the one about 203
> 406) did actually contain an answer i believe.  406 is perfect IMO ..
> I'd say a client which will care to make the distinction would learn
> to support it as in my previous example.
>

I'll look into that.

Ian



Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 11:23 AM, Ian Davis wrote:

On Thu, Nov 4, 2010 at 3:00 PM, Kingsley Idehen  wrote:

On 11/4/10 10:22 AM, Ian Davis wrote:

On Thu, Nov 4, 2010 at 2:13 PM, Kingsley Idehen
  wrote:

Ian,

Q: Is 303 really necessary?

A: Yes, it is.

Why? Read on...

I don't think you explain this in your email.


What's the problem with having many options re. mechanics for associating
an
HTTP based Entity Name with a Descriptor Resource Address?

Do you mean associate a resource with a description? Or do you mean
something else? Can you rephrase using the terminology that everyone
else uses please.


Who is everyone else? How about the fact that terminology that you presume
to be common is actually uncommon across broader spectrum computing.


I don't presume. I prefer to use terms that are familiar with the
people on this list who might be reading the message. Introducing
unnecessary capitalised phrases distracts from the message.


Again, you presume. Capitalization might not work for you, but you are 
not the equivalent of an entire mailing list audience. You are one 
individual entitled to a personal opinion and preferences.





Anyway, translation:

What's the problem with having a variety of methods for using LINKs to
associate a "Non Information Resource" with an "Information Resource" that
  describes it (i.e., carries its structured representation)? Why place an
implementation detail at the front of the Linked Data narrative?

It's already at the front, and as I say in my post it's an impediment
to using Linked Data by mainstream developers.


I don't believe its already at the front. I can understand if there was 
some quasi mandate that put it at the front. Again, you are jumping to 
conclusions, then pivoting off the conclusions to make a point. IMHO: 
Net effect, Linked Data concept murkiness and distraction. You are 
inadvertently perpetuating a misconception.




  This is an
implementation detail that I think could do with improving, making it
simpler and in fact removing it from the front of the "narrative". It
just becomes like commonplace web publishing. Do you agree that's a
good goal to strive for?




We shouldn't be narrowing options for implementing the fundamental
essence
of Linked Data -- hypermedia based data representation. Of course, we can
discuss and debate individual, product, or organization preferences etc..
But please lets not push these as mandates. We should never mandate that
303's are bad, never. Its an implementation detail, no more no less.


I'm suggesting that we relax a mandate to always use 303 and since
you're saying we must not narrow options then you seem to be
supporting my suggestion,

I didn't know there was a mandate to always use 303. Hence my comments.

There is. I find it surprising that you're unaware of it because it's
in all the primary documents about publishing Linked Data.


Please provide a URL for the document that establishes this mandate. I 
know of no such document. Of course I am aware of documents that offer 
suggestions and best practice style guidelines.





The only thing that should be mandatory re. Linked Data is this:  HTTP
based
Entity Names should Resolve to structured Descriptors that are Human
and/or
Machine decipherable.

Are you saying that requesting a URI should return a description document?

Resolve to a Descriptor Document which may exist in a variety of formats.
Likewise, Descriptor documents (RDF docs, for instance) should clearly
identify their Subject(s) via HTTP URI based Names.

Example (in this example we have 1:1 re. Entity Name and Descriptor for sake
of simplicity):

  -- Name
  -- Descriptor Resource (HTML+RDFa) this
resource will expose other representations via  (  + @rel) or
"Link:" in response headers etc..

Not sure what you are trying to say here. I must be misunderstanding
because you appear to be claiming that
  is a name but


That is a Name via HTTP URI (using its Name aspect).


  is a resource.


That is the Address of a Resource (URL) that carries structured 
representation of the unambiguously named entity: 
 .



Assuming you are using angle brackets like they are used in Turtle
then I think they are both resources.


Your resource is not my resource. In my world you have:

1. Referent
2. Identifier
3. Resource.

A trinity that delivers Subject Sense (capitalization deliberate).


I would say:

  -- a resource named by the string
"http://dbpedia.org/resource/Paris";
  -- a resource named by the string
"http://dbpedia.org/page/Paris";

Also, in my view the first resource is actually the city of paris
whereas the second is a document about the first resource.


See comment above:

1. Paris -- Referent
2.  -- Identifier used for Name
3. 

Re: Is 303 really necessary?

2010-11-04 Thread Leigh Dodds
Hi,

On 4 November 2010 13:22, Ian Davis  wrote:
> http://iand.posterous.com/is-303-really-necessary

I was minded to look back at the Cool URIs for the Semantic Web note,
which defines two criteria for naming real-world objects with URIs
[1]:

1. Be on the Web.
2. Be unambiguous. -- There should be no confusion between identifiers
for Web documents and identifiers for other resources...

I think this proposal still achieves those aims.

Cheers,

L.

[1]. http://www.w3.org/TR/cooluris/#semweb

-- 
Leigh Dodds
Programme Manager, Talis Platform
Talis
leigh.do...@talis.com
http://www.talis.com



Re: Is 303 really necessary?

2010-11-04 Thread Giovanni Tummarello
> I think it's an orthogonal issue to the one RDFa solves. How should I
> use RDFa to respond to requests to http://iandavis.com/id/me which is
> a URI that denotes me?
>

hashless?

mm one could be to return HTML + RDFa describing yourself. add a
triple saying http://iandavis.com/id/me
containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource

its up to clients to really care about the distinction, i personally
know of no useful clients for the web of data that will visibly
misbehave if a person is mistaken for a page.. so your you can certify
to your customer your solution works well with "any" client

if one will come up which operates usefully on both people and pages
and would benefit from making your distinction than those coding that
client will definitely learn about your
containstriplesonlyabouttheresourceandnoneaboutitselfasinformationresource
and support it.

how about this ? :-)

as an alternative the post i pointed you earlier (the one about 203
406) did actually contain an answer i believe.  406 is perfect IMO ..
I'd say a client which will care to make the distinction would learn
to support it as in my previous example.

cheers



Re: Is 303 really necessary?

2010-11-04 Thread William Waites
On Thu, Nov 04, 2010 at 01:22:09PM +, Ian Davis wrote:
> Hi all,
> 
> The subject of this email is the title of a blog post I wrote last
> night questioning whether we actually need to continue with the 303
> redirect approach for Linked Data. My suggestion is that replacing it
> with a 200 is in practice harmless and that nothing actually breaks on
> the web. Please take a moment to read it if you are interested.

cf. other discussion about RDF URI References and IRIs,
where a resource is given an IRI that is not a valid
URI as far as HTTP is concerned we can't dereference it
properly so we need some kind of document -> description
indirection... Though in general I think the best practice
is only to give resources IRIs that are also valid URIs...

Cheers,
-w



Re: Is 303 really necessary?

2010-11-04 Thread Leigh Dodds
Hi,

On 4 November 2010 15:21, Giovanni Tummarello
 wrote:
> ..but a number of social community mechanisms will activate if you
> bring this up, ranging from russian style "you're being antipatriotic
> criticizing the existing status quo " to "..but its so deployed now"
> and ".. you're distracting the community from other more important
> issues ", none of this will make sense if analized by proper logical
> means of course (e.g. by a proper IT manager in a proper company, paid
> based on actual results).

It'd be pretty unfortunate for us as a community if we couldn't
continually test our assumptions about technology and best practices,
especially in light of experience taking these technologies to a wider
audience. I don't think we're at that stage yet though :)

> But the core of the matter really is : who cares.

If that's true then simpler approaches to publishing data should be
not just embraced, but actively promoted and encouraged.

It's great to see spread of RDFa, but I don't see that as a complete answer.

Cheers,

L.

-- 
Leigh Dodds
Programme Manager, Talis Platform
Talis
leigh.do...@talis.com
http://www.talis.com



Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 3:21 PM, Giovanni Tummarello
 wrote:
> Hi Ian
>
> no its not needed see this discussion
> http://lists.w3.org/Archives/Public/semantic-web/2007Jul/0086.html
> pointing to 203 406 or thers..
>
> ..but a number of social community mechanisms will activate if you
> bring this up, ranging from russian style "you're being antipatriotic
> criticizing the existing status quo " to "..but its so deployed now"
> and ".. you're distracting the community from other more important
> issues ", none of this will make sense if analized by proper logical
> means of course (e.g. by a proper IT manager in a proper company, paid
> based on actual results).
>
Yes, but I guess I have to face those to make progress.


> But the core of the matter really is : who cares. My educated guess
> looking at Sindice flowing data is that everyday out of 100 new sites
> on  web of data 99.9 simply use RDFa which doesnt have this issue.
>

I think it's an orthogonal issue to the one RDFa solves. How should I
use RDFa to respond to requests to http://iandavis.com/id/me which is
a URI that denotes me?

> choose how to publish yourself but here is another one. If you chose
> NOT to use RDFa you will miss out on anything which will enhance the
> user experience based on annotations. As an example see our entry in
> the  semantic web challange [1].

I'm agnostic on formats, just trying to make things simpler for
publishers who want to use hashless URIs in their data.

Ian

>
> Giovanni
>
> [1] http://www.cs.vu.nl/~pmika/swc/submissions/swc2010_submission_19.pdf
>
>
>
> On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:
>> Hi all,
>>
>> The subject of this email is the title of a blog post I wrote last
>> night questioning whether we actually need to continue with the 303
>> redirect approach for Linked Data. My suggestion is that replacing it
>> with a 200 is in practice harmless and that nothing actually breaks on
>> the web. Please take a moment to read it if you are interested.
>>
>> http://iand.posterous.com/is-303-really-necessary
>>
>> Cheers,
>>
>> Ian
>>
>>
>



Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 3:00 PM, Kingsley Idehen  wrote:
> On 11/4/10 10:22 AM, Ian Davis wrote:
>>
>> On Thu, Nov 4, 2010 at 2:13 PM, Kingsley Idehen
>>  wrote:
>>>
>>> Ian,
>>>
>>> Q: Is 303 really necessary?
>>>
>>> A: Yes, it is.
>>>
>>> Why? Read on...
>>
>> I don't think you explain this in your email.
>>
>>> What's the problem with having many options re. mechanics for associating
>>> an
>>> HTTP based Entity Name with a Descriptor Resource Address?
>>
>> Do you mean associate a resource with a description? Or do you mean
>> something else? Can you rephrase using the terminology that everyone
>> else uses please.
>>
>
> Who is everyone else? How about the fact that terminology that you presume
> to be common is actually uncommon across broader spectrum computing.
>

I don't presume. I prefer to use terms that are familiar with the
people on this list who might be reading the message. Introducing
unnecessary capitalised phrases distracts from the message.


> Anyway, translation:
>
> What's the problem with having a variety of methods for using LINKs to
> associate a "Non Information Resource" with an "Information Resource" that
>  describes it (i.e., carries its structured representation)? Why place an
> implementation detail at the front of the Linked Data narrative?

It's already at the front, and as I say in my post it's an impediment
to using Linked Data by mainstream developers. This is an
implementation detail that I think could do with improving, making it
simpler and in fact removing it from the front of the "narrative". It
just becomes like commonplace web publishing. Do you agree that's a
good goal to strive for?

>
>
>>> We shouldn't be narrowing options for implementing the fundamental
>>> essence
>>> of Linked Data -- hypermedia based data representation. Of course, we can
>>> discuss and debate individual, product, or organization preferences etc..
>>> But please lets not push these as mandates. We should never mandate that
>>> 303's are bad, never. Its an implementation detail, no more no less.
>>>
>> I'm suggesting that we relax a mandate to always use 303 and since
>> you're saying we must not narrow options then you seem to be
>> supporting my suggestion,
>
> I didn't know there was a mandate to always use 303. Hence my comments.

There is. I find it surprising that you're unaware of it because it's
in all the primary documents about publishing Linked Data.


>>>
>>> The only thing that should be mandatory re. Linked Data is this:  HTTP
>>> based
>>> Entity Names should Resolve to structured Descriptors that are Human
>>> and/or
>>> Machine decipherable.
>>
>> Are you saying that requesting a URI should return a description document?
>
> Resolve to a Descriptor Document which may exist in a variety of formats.
> Likewise, Descriptor documents (RDF docs, for instance) should clearly
> identify their Subject(s) via HTTP URI based Names.
>

> Example (in this example we have 1:1 re. Entity Name and Descriptor for sake
> of simplicity):
>
>  -- Name
>  -- Descriptor Resource (HTML+RDFa) this
> resource will expose other representations via  ( + @rel) or
> "Link:" in response headers etc..

Not sure what you are trying to say here. I must be misunderstanding
because you appear to be claiming that
 is a name but
 is a resource.

Assuming you are using angle brackets like they are used in Turtle
then I think they are both resources.

I would say:

 -- a resource named by the string
"http://dbpedia.org/resource/Paris";
 -- a resource named by the string
"http://dbpedia.org/page/Paris";

Also, in my view the first resource is actually the city of paris
whereas the second is a document about the first resource.

I don't really see what relevance this all has to the issue of 303
redirection though. We are all agreed that things are not usually
their own descriptions, we are discussing how that knowledge should be
conveyed using Linked Data.


>>
>>> Ironically, bearing in mind my comments, we do arrive at the same
>>> conclusion, but in different ways. I phrase my conclusion as: heuristics
>>> for
>>> implementing HTTP based Entity Names that Resolve to structured
>>> Descriptor
>>> Resources shouldn't dominate the Linked Data narrative, especially as
>>> comprehension of the fundamental concept remains mercurial.
>>>
>> So are you contradicting your answer at the start of the post?
>
> Huh?
>
> I am saying, what I've already stated: heuristics re. essence of Linked Data
> mechanics shouldn't front the conversation. You sort of arrive there too,
> but we differ re. mandates.

See my  comment above: I am removing them from the front.

>
> Potential point of reconciliation:
>
> You assumed that 303 is an existing mandate. I am totally unaware of any
> such mandate.

See above.

>
> I don't even buy in

Re: Is 303 really necessary?

2010-11-04 Thread Giovanni Tummarello
Hi Ian

no its not needed see this discussion
http://lists.w3.org/Archives/Public/semantic-web/2007Jul/0086.html
pointing to 203 406 or thers..

..but a number of social community mechanisms will activate if you
bring this up, ranging from russian style "you're being antipatriotic
criticizing the existing status quo " to "..but its so deployed now"
and ".. you're distracting the community from other more important
issues ", none of this will make sense if analized by proper logical
means of course (e.g. by a proper IT manager in a proper company, paid
based on actual results).

But the core of the matter really is : who cares. My educated guess
looking at Sindice flowing data is that everyday out of 100 new sites
on  web of data 99.9 simply use RDFa which doesnt have this issue.

choose how to publish yourself but here is another one. If you chose
NOT to use RDFa you will miss out on anything which will enhance the
user experience based on annotations. As an example see our entry in
the  semantic web challange [1].

Giovanni

[1] http://www.cs.vu.nl/~pmika/swc/submissions/swc2010_submission_19.pdf



On Thu, Nov 4, 2010 at 2:22 PM, Ian Davis  wrote:
> Hi all,
>
> The subject of this email is the title of a blog post I wrote last
> night questioning whether we actually need to continue with the 303
> redirect approach for Linked Data. My suggestion is that replacing it
> with a 200 is in practice harmless and that nothing actually breaks on
> the web. Please take a moment to read it if you are interested.
>
> http://iand.posterous.com/is-303-really-necessary
>
> Cheers,
>
> Ian
>
>



Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 10:22 AM, Ian Davis wrote:

On Thu, Nov 4, 2010 at 2:13 PM, Kingsley Idehen  wrote:

Ian,

Q: Is 303 really necessary?

A: Yes, it is.

Why? Read on...

I don't think you explain this in your email.


What's the problem with having many options re. mechanics for associating an
HTTP based Entity Name with a Descriptor Resource Address?

Do you mean associate a resource with a description? Or do you mean
something else? Can you rephrase using the terminology that everyone
else uses please.



Who is everyone else? How about the fact that terminology that you 
presume to be common is actually uncommon across broader spectrum computing.


Anyway, translation:

What's the problem with having a variety of methods for using LINKs to 
associate a "Non Information Resource" with an "Information Resource" 
that  describes it (i.e., carries its structured representation)? Why 
place an implementation detail at the front of the Linked Data narrative?




We shouldn't be narrowing options for implementing the fundamental essence
of Linked Data -- hypermedia based data representation. Of course, we can
discuss and debate individual, product, or organization preferences etc..
But please lets not push these as mandates. We should never mandate that
303's are bad, never. Its an implementation detail, no more no less.


I'm suggesting that we relax a mandate to always use 303 and since
you're saying we must not narrow options then you seem to be
supporting my suggestion,


I didn't know there was a mandate to always use 303. Hence my comments.

The only thing that should be mandatory re. Linked Data is this:  HTTP based
Entity Names should Resolve to structured Descriptors that are Human and/or
Machine decipherable.

Are you saying that requesting a URI should return a description document?
Resolve to a Descriptor Document which may exist in a variety of 
formats. Likewise, Descriptor documents (RDF docs, for instance) should 
clearly identify their Subject(s) via HTTP URI based Names.


Example (in this example we have 1:1 re. Entity Name and Descriptor for 
sake of simplicity):


 -- Name
 -- Descriptor Resource (HTML+RDFa) this 
resource will expose other representations via  ( + @rel) 
or "Link:" in response headers etc..



Ironically, bearing in mind my comments, we do arrive at the same
conclusion, but in different ways. I phrase my conclusion as: heuristics for
implementing HTTP based Entity Names that Resolve to structured Descriptor
Resources shouldn't dominate the Linked Data narrative, especially as
comprehension of the fundamental concept remains mercurial.


So are you contradicting your answer at the start of the post?

Huh?

I am saying, what I've already stated: heuristics re. essence of Linked 
Data mechanics shouldn't front the conversation. You sort of arrive 
there too, but we differ re. mandates.


Potential point of reconciliation:

You assumed that 303 is an existing mandate. I am totally unaware of any 
such mandate.


I don't even buy into HTTP scheme based Names as a mandate, they simply 
make the most sense courtesy of Web ubiquity.  As is already the case 
re., LINK semantics [1], Hammer stack [2], and WebFinger [3], mailto: 
and acct: schemes work fine as Resolvable Names for Linked Data. In 
addition, XRD [4] also works fine as Descriptor Doc option.


To sum the broader picture up here: let's be inclusive rather than 
exclusive re. Linked Data.



Links:

1. http://tools.ietf.org/html/draft-nottingham-http-link-header-05
2. http://hueniverse.com/2009/11/the-discovery-protocol-stack-redux/
3. http://webfinger.org/
4. http://hueniverse.com/2009/03/the-discovery-protocol-stack/ .




--

Regards,

Kingsley Idehen 

Ian





--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen








Re: Is 303 really necessary?

2010-11-04 Thread Ian Davis
On Thu, Nov 4, 2010 at 2:13 PM, Kingsley Idehen  wrote:
> Ian,
>
> Q: Is 303 really necessary?
>
> A: Yes, it is.
>
> Why? Read on...

I don't think you explain this in your email.

>
> What's the problem with having many options re. mechanics for associating an
> HTTP based Entity Name with a Descriptor Resource Address?

Do you mean associate a resource with a description? Or do you mean
something else? Can you rephrase using the terminology that everyone
else uses please.


>
> We shouldn't be narrowing options for implementing the fundamental essence
> of Linked Data -- hypermedia based data representation. Of course, we can
> discuss and debate individual, product, or organization preferences etc..
> But please lets not push these as mandates. We should never mandate that
> 303's are bad, never. Its an implementation detail, no more no less.
>

I'm suggesting that we relax a mandate to always use 303 and since
you're saying we must not narrow options then you seem to be
supporting my suggestion,

> The only thing that should be mandatory re. Linked Data is this:  HTTP based
> Entity Names should Resolve to structured Descriptors that are Human and/or
> Machine decipherable.

Are you saying that requesting a URI should return a description document?


>
> Ironically, bearing in mind my comments, we do arrive at the same
> conclusion, but in different ways. I phrase my conclusion as: heuristics for
> implementing HTTP based Entity Names that Resolve to structured Descriptor
> Resources shouldn't dominate the Linked Data narrative, especially as
> comprehension of the fundamental concept remains mercurial.
>

So are you contradicting your answer at the start of the post?


> --
>
> Regards,
>
> Kingsley Idehen   

Ian



Re: Is 303 really necessary?

2010-11-04 Thread Kingsley Idehen

On 11/4/10 9:22 AM, Ian Davis wrote:

Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

Cheers,

Ian



Ian,

Q: Is 303 really necessary?

A: Yes, it is.

Why? Read on...

What's the problem with having many options re. mechanics for 
associating an HTTP based Entity Name with a Descriptor Resource Address?


We shouldn't be narrowing options for implementing the fundamental 
essence of Linked Data -- hypermedia based data representation. Of 
course, we can discuss and debate individual, product, or organization 
preferences etc.. But please lets not push these as mandates. We should 
never mandate that 303's are bad, never. Its an implementation detail, 
no more no less.


The only thing that should be mandatory re. Linked Data is this:  HTTP 
based Entity Names should Resolve to structured Descriptors that are 
Human and/or Machine decipherable.


Ironically, bearing in mind my comments, we do arrive at the same 
conclusion, but in different ways. I phrase my conclusion as: heuristics 
for implementing HTTP based Entity Names that Resolve to structured 
Descriptor Resources shouldn't dominate the Linked Data narrative, 
especially as comprehension of the fundamental concept remains mercurial.


--

Regards,

Kingsley Idehen 
President&  CEO
OpenLink Software
Web: http://www.openlinksw.com
Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca: kidehen







Re: Web Based RDFa Editor

2010-11-04 Thread Xi Bai
Hi, Richard,

We have been working on an online RDFa editing service called RDFa²
(RDFa Square) and you may have a try at

[http://demos.inf.ed.ac.uk:8836/rdfasquare]

It is a very lightweight online annotating tool, which is dedicated to
help users in carrying out multi-topic annotation with RDFa. It does
not rely on Drupal or Wordpress but it is still possible for RDFa²  to
be integrated into most recent CMSs as a plugin. The main
functionality of RDFa² have been showcased in the attached two screen
casts and we are still improving its UI and UE at present.

Cheers!

Xi Bai



Is 303 really necessary?

2010-11-04 Thread Ian Davis
Hi all,

The subject of this email is the title of a blog post I wrote last
night questioning whether we actually need to continue with the 303
redirect approach for Linked Data. My suggestion is that replacing it
with a 200 is in practice harmless and that nothing actually breaks on
the web. Please take a moment to read it if you are interested.

http://iand.posterous.com/is-303-really-necessary

Cheers,

Ian