- From: Nathan <nathan@webr3.org>
- Date: Thu, 04 Nov 2010 01:20:17 +0000
- To: Larry Masinter <masinter@adobe.com>
- CC: Jonathan Rees <jar@creativecommons.org>, "www-tag@w3.org" <www-tag@w3.org>
Larry Masinter wrote: > This idea has been bouncing around for such a long time, > but I updated the document > > http://tools.ietf.org/html/draft-masinter-dated-uri-07 Hi Larry, some proper feedback for you this time, comments out-dented: This document defines two URI schemes. The first, 'duri' (standing for "dated URI"), allows indicating a URI as of a particular date (and time)... As Jonathan commented, suggest [[[ allows indicating a resource as of a particular date (and time). ]]] The second scheme, 'tdb' ( standing for "Thing Described By"), provides a way of using a way of minting URIs for anything that can be described, with the ability to fix the description to a given date or time. The 'tdb' URI scheme may reduce the need to define define new URN namespaces merely for the purpose of creating stable identifiers for concepts or abstractions: it provides a ready means for identifying "non-information resources" by semantic indirection -- a way of creating a URI for anything. Having difficulty making sense of "provides a way of using a way of minting URIs for", similarly defining what "anything that can be described is" (as opposed to "anything"), unsure if the "reduce the need to define new URN namespaces for" sentence is needed here. Suggest [[[ The second scheme, 'tdb' (standing for "Thing Described By"), allows indicating the thing described by a resource as of a particular date (and time). It also provides a ready means for identifying "non-information resources" by semantic indirection -- a way of creating a URI for anything. ]]] 2.1. 'duri' Syntax . . . . . . . . . . . . . . . . . . . . . . 6 2.2. tdb Syntax . . . . . . . . . . . . . . . . . . . . . . . . 6 should be [ 'tdb' Syntax ] with single quotes. 7.1. 'duri' Scheme Template . . . . . . . . . . . . . . . . . . 13 7.2. tdb Scheme Template . . . . . . . . . . . . . . . . . . . 13 same again missing the single quotes, [ 'tdb' Scheme Template ] In some cases, the guarantee of persistence comes through a promise of good management practice, such as is encouraged in "Cool URLs don't change" [COOL]. However, relying on promise of good management Is the reference not to [ "Cool URIs don't change" ] ? (URIs rather than URLs) guarantee stability over time. Despite best efforts and intentions, identifying information can change in unpredictable ways: domain names can disappear or be reassigned, name assigning organizations can change structure, responsibility, disappear, merge, or change in unpredictable ways. Having trouble with "identifying information can change in unpredictable ways: " suggest [[[ Despite best efforts and intentions, identified information can change unpredictably over time: ]]] There is a significant dependence in the interpretation of many URNs with the concept of "naming authority". The authority is presumably some individual or organization both to insure uniqueness of assignment and also to help with understanding the meaning of the link between the name and the named. Suggest [[[ There is a significant dependence in the interpretation of many URNs from the concept of a "naming authority". The authority is usually some individual or organization, both to insure uniqueness of assignment, and also to help with understanding the meaning of the link between the name and the thing named. ]]] However, authorities, whether individuals or organizations, have a lifetime, and must be consulted at some point to understand the bindings. The functioning of names as unique identifiers and holders of meaning depends on having a reliable infrastructure of consulting the authority or the authorities records to determine the thing referenced. Suggest swapping the final words "thing referenced" for [ thing named ]. One might use a URI such as "mailto:" email address to identify a person, or a "http:" URI to identify an abstract comment. However, this leaves the question of how one might identify, within the same context, both the system mailbox and the person to which it is assigned, or the web page at a http URI and the concept it describes. The 'tdb' URI scheme allows ready assignment of URIs for abstractions that are distinguished from the media content that describes them. mailto identifies a mailbox not a person, and doesn't describe it, also a minor omission of a word and swapped to double-quotes rather than single quotes around mailto. "a http" or "an http"? also missing single-quotes and colon on http. Bit of a worry about the indication of 1-1 mapping between and what's described, as indicated by "thing described by" and the text "the concept it describes" - could easily describe several "things". Final sentence may benefit from a re-word. Suggest [[[ One might use an 'http:' URI to identify a web page about a certain thing. However, this leaves the question of how one might identify, within the same context, both the web page and the thing it describes. The 'tdb' URI scheme addresses this issue by allowing ready assignment of identifiers for things which are described, distinguished from the identifier of the media content which describes it. ]]] The goal, then, of the 'tdb' URI scheme is to provide a mechanism which is, at the same time: consider removing ", then," to read more assertive [ The goal of the ] ... explicitly bound: The mechanism by which the identified resource can be determined is explicitly included in the URI. is this true? useful for non-networked items: Allows identification of resources outside the network: people, organizations, abstract concepts. suggest [[[ useful for non-networked items: Allows identification of resources outside the network: people, organizations, anything. ]]] no administration: The mechanism does not depend on reliable administrative processes of authorities for either assignment or interpretation. suggest [[[ no administration: The mechanism does not depend on administrative processes or authorities for either assignment or interpretation. ]]] A 'duri' URI takes the form: duri:<timestamp>:<encoded-URI> where <timestamp> is s sequence of digits representing a date and time (Section 2.4) and <encoded-URI> is an absolute URI-reference [RFC3986] in which any reserved character other than "/" have been percent-encoded (Section 2.3). Note that the URI which has been encoded MAY include a fragment identifier. I've reviewed this section and Section 2.3 thoroughly, several times over, and would first suggest that an absolute URI-reference with an optional fragment is just a "URI" as per the ABNF of RFC 3986 (not URI-reference). Secondly, I'd suggest that the encoded-URI should drop the encoding part all together. Section 2.3 only states that "#" and "%" must be encoded. And further Section 2.3 states that this is because the fragment of a uri within a 'tdb' may include the description, however the description could be any where within the URI, indeed even the examples promote this usage: "tdb:2001:data:,The%20US%20president". And the "%" encoding looks like nothing but problems ahead. I would suggest, that unless there is a strong technical interoperability reason that encoded-URI be respecified to say that all URIs MUST be percent-encoding normalised as per RFC3898 sections 2.3 (http://tools.ietf.org/html/rfc3986#section-2.3) and 6.2.2.2 (http://tools.ietf.org/html/rfc3986#section-6.2.2.2) before embedding within a duri/tdb. suggested text [[[ A 'duri' URI takes the form: duri:<timestamp>:<normalized-URI> where <timestamp> is a sequence of digits representing a date and time (Section 2.4), and <normalized-URI> is a URI as defined in [RFC3986], of the form: scheme ":" hier-part [ "?" query ] [ "#" fragment ] Percent-encoding normalization of URIs MUST be performed before embedding (Section 2.3). ]]] and then change 2.3 to something like: [[[ 2.3. normalized-URI encoding Percent-Encoding Normalization as described in http://tools.ietf.org/html/rfc3986#section-2.3 MUST be applied to all URIs before being embedded within a 'duri' or 'tdb'. (reasons..) ]]] where non-terminals "date-fullyear", "date-month", "date-mday", "time-hour", "time-minute", "time-second", "time-secfrac" are taken from [RFC3339]. The goal was to minimize the amount of precision needed, while retaining the possibility of generating timestamps that are exactly compatible with [RFC3339] "date-time" non-terminal. repetition of "The goal was to minimize" suggest [ This is to minimize ] instead Will cover section 3 onwards tomorrow with fresh eyes and pass on, Best, Nathan
Received on Thursday, 4 November 2010 01:21:24 UTC