W3C | TAG | Previous: 10 Nov 2003 | Next: 24 Nov 2003 teleconf

Minutes of 15-17 November 2003 TAG face-to-face meeting in Shin-Yokohama, Japan

Nearby: Teleconference details issues list (handling new issues) www-tag archive

TAG group photo

Roll call from left: Stuart Williams, Tim Bray (kneeling), Tim Berners-Lee, Chris Lilley, Norm Walsh, Cathy Cotton, Paul Cotton, Deanna Orchard, David Orchard, Ian Jacobs, Dan Connolly. Regrets: Roy Fielding. Photo courtesy of Tim Bray.


  1. Architecture Document
    1. Meta-review
    2. Status, Intro
    3. Section 2 (Identification)
    4. Section 3 (Interaction)
    5. Slides/diagrams from Dan Connolly
    6. Section 4 (Data formats)
    7. Section 5 (Conformance)
  2. Discussion of selected topics
    1. Good practice note on error handling in 1.2.2
    2. Proposal to add SOAP to example list of protocols in 3.2
    3. Primacy of HTTP URI Scheme
    4. Definition of "on the Web", relation to "information resource"
    5. Edits to extensibility/versioning finding
    6. On URI Ambiguity
    7. Definition of "agent"
    8. XInclude relation to fragment identifiers
    9. New issue ultimateQuestion-42
    10. Orthogonality of specifications
    11. Media Types and Fragment Identifier Semantics
    12. Proposal for new 1. subsection on Extensibility principle
    13. Qnames in XML
    14. Separation of content / presentation
    15. Other actions
  3. Planning
    1. TAG Communications
    2. Last Call
    3. XML 2003
    4. Tech Plenary 2004
  4. Closing thoughts


Upcoming meetings:

  1. 24 Nov teleconf. Regrets: PC, DO, DC
  2. 1 Dec teleconf
  3. 4 Dec EXTRA teleconference @ 8am PT/11am ET for one hour.
  4. 8 Dec. Regrets: TBL, CL
  5. The TAG considered the possibility of a remote video teleconf in Feb 2004.

1. Architecture Document

The following people reviewed the 11 Nov 2003 Editor's Draft of the Arch Doc: TBL, TB, SW, NW, DO.

1.1 Meta-review / Overall impressions

Zen Masters ponder
For Enlightenment


NW: On the whole I think it's quite good. I'd be happy to send to last call. I've got 4-5 significant things I'd like to address.
TBray: I feel similarly to NW. I think we should go to last call. I think we've reached the point of diminishing returns within the TAG itself. We need fresh eyes to find big problems. I am in favor of amputating the section on conformance.
IJ: I think we are two drafts from last call.
SW: I feel it's becoming quite good. I find the data formats section less strong. I think it's the section that needs the most work. Context-freeness of denotations of URI is a bit of a problem; as well as ambiguity of URI usage.
Discussion on "two drafts" - significant sentiment to avoid structural changes as nobody is going to be able to effectively read end-to-end any more
SW: Whether people can be agents Some good practices are motherhood and apple pie.
Agree with SW on motherhood/apple-pie practices, lose 'em
SW: Section 4 should be centered on an architectural principle about mixing language. I find it doesn't tackle that question head-on. I found the extensibility and versioning stuff too little to be useful.
SW: I think the section on links should be part of the section on identification.
TBL: I feel that it would be positive to have this document out there. That said, I have about three places where I wrote lots of text. I wrote out a piece on authority, on expense of new URI schemes. My main issue is still httpRange-14. There's already the clash in the abstract. Let people know in doc we'll be working on more topics.
DC: Could I quote from this doc to a WG participant and convince that person to, e.g., use URIs? The last time I read this it did not feel to me like I could do that. I need to be clearer about what we're aiming for. If it's to get more review, I don't want to abuse the last call process. I think we've got good practice notes but have not stepped back to point out which arch principles they address..I think we need to tell people which issues we have addressed and which we have not. Some of my big issues are about terminology.
TBL: From a process point of view, are we ready to go to CR/PR if we don't get any comments? If so, we are ready to go to last call.
We should be explicit about those issues which we do expect to fix in last call.
TBL: Make that part of the document.
Action IJ: Add a column to the TAG issues list about the version of the document in which we are expecting to address the issue.
DO: On the whole pretty pleased with it (having read it on the document). It's hard to know when you're done with an arch doc. We've been talking about extensibility and versioning and I think it's more prevalent than I thought..There's a section on general principles where we might want to talk about extensibility and compatibility. I think the extensions / namespaces stuff DO/NW/IJ were working on needs more work. And I really think diagrams are important.
(TBL: some issues affect how the doc is written and don't necessarily have a para in the doc you can point to)
using RFC2119 terms in our statement of principles is _not_ critical, to me.

1.2 Review of Status, Introduction

Dirk and Nadia
Help demonstrate principles
Through their example

Abstract [We'll do last]
SW: We'll need to make changes for the last call draft.
DC: Put in upcoming status section info about which issues we are addressing/not addressing
NW, TB: Please make each of the good practice notes an imperative.
IJ: Two notes:
  1. Imperative makes 2119 hard to use
  2. Constraints are likely to be better in declarative voice.
Proposed; Use noun phrases for GP Notes.
Resolved: Make titles of practice notes consistently noun phrases.
TBL: Get ride of <code> around URIs.
NW: Move 1.1 to 1.0.
TB, DC: No.
SW: I agree with NW.
DC: I'd rather a few readers jarred than everyone bored by admin stuff.
TBL: Diagram is misleading since representation missing media type.
Resolved: Fix diagram in 1.0 to also show media type.
SW: Are people agents?
yes, people are agents, IMO
IJ: Current expectation is that agents is only software.
TBL: I think that agents should include people too.
timbl_jp, you wanted to say that Dan is wrong in thinking that groups go to last call with all issues closed, except in that he redefines "closed" to means "to be taken care of in a future version of the document", which is not what most people men by closed. and to say agents do include people
DC: People are agents.
NW: Delete ", and other user agents (software acting on behalf of a person)."
DC: That wouldn't work for me. It shows up in error handling. someone who makes a get request is a combination of a person and software. It matters there.
TBL Proposal: Agents include people.
TBray: I think that we should talk about software when we mean software and people when we mean people.
TB Proposal: Don't use the term agent. Use "software" and "people" instead.
TBray: Lose the distinction when software acting behalf of a person or not.
agenda + Are people agents?
TBL: An agent can make a commitment.
DC: You can sue a person because of what they do through the Web.
SW: In 1.1.2, should we say "formal model"?
tim, your suggestion about headings and levels in section 1 was well-made; pls put it in email sometime soon.
timbl, that is
SW: Delete "and formal model".
TBL proposal: Lose para on REST in 1.1.2.
TBray: I am in favor of losing the paragraph. However, we need a ref to REST.
correction: RF thesis.
DO: I think we should say we plan to include more of RF's stuff in a future draft.
DC: Propose to move reference to RF's work in section 6.1.
Resolved to accept TBL proposal:
  1. Delete last section of 1.1.2
  2. Add para to 6.1 that explains that these terms follow the work of RF (with reference)
DO on second paragraph of 1.1.2: "The findings do not contain good practice notes, principles, etc. beyond those that appear in the current document."
I propose something like "The findings often provide more detail on particular areas of interest than the web arch document"
s/the web arch/this/
DO: That's not true.
DC: Maybe "generally". E.g., the important ones have been lifted and are in this document.
IJ: I think that if there is no conformance to this doc, then I think it suffices to say "for more detail go look at the findings"
Action IJ: Provide wording to replace text in 1.1.2 about relation between arch doc and findings (w.r.t. good practice notes).
SW: Make a positive statement that this document draws on material of importance from the finding.
Section 1.2.1 Orthogonal specs
TBray: The third para is too fluffy. The good practice note is motherhood and apple pie. I'd prefer deleting third para and good practice notes.
SW: I concur with TB.
TBL: I didn't like the good practice note. An example is that HTTP doesn't specify HTML.
DC: But HTTP does cite HTML; I'm willing to research where we made explicit HTML and that it came back to bite us.
proposal: Action DC to cite pro and counter cases?
what I remember now: HTML spec has charset weirdness, http-equiv, refresh.
... also: query string stuff for forms/cgi
TBL: The format of query URIs impinges on the design of a server.
Action DC: Provide text for 1.2.1 of where this wasn't done and resulting pain.
SW: "Orthogonality is an important principle in Web architecture. " We don't have a principle here, however.
TBray: I'd lose "Orthogonality is an important principle in Web architecture. " Say "Orthogonality in specs facilitates..."
ACTION DanC: elaborate on value of orthogonality of specs in section 1.2.1 including example HTTP/HTML
Resolved: Delete the good practice note.
DaveO, you wanted to talk about 1.2.1 "abstractions" and "orthogonal specifications"
DO: The term "orthogonal" is not clear. Nor "feature"/"architectural boundaries"/"feature".
TBray: I think that when we provide principles we should be super careful about defining terms. When we are writing English prose, it's ok to not define every term that is straightforward English usage.
DC: I see DO's point but I think it's below the threshold of what we need to address.
architectural boundaries -> abstractions
+1 s/across architectural boundaries/across abstractions/
DO: Don't use "architectural boundaries".
DC: Say "Across abstractions" instead.
TBL: Actually, it's about peeking outside the scope of a specification.
Resolved: Editor will delete "arch boundaries" and reuse terms instead, per above proposals.
IJ: In good practice note of 1.2.1 delete "^Format".
DanC_NRT, you wanted to note in the modelling I did on the plane, people are agents http://www.w3.org/2001/tag/fdesc54/webarch-diag-comm.png and to comment on 1.2.2 regarding error handling.
Section 1.2.2
DC: In 1.2.2, the main point is that software behaves on behalf of people and it's bad when it doesn't. I agree that silent recovery is harmful, but I don't think that's the main point.
TBL: The arch principle currently not upheld is that for a given piece of software, one needs to know on what person the software is acting.
SW: We also want our systems to consider robustness.
(I'm satisfied that 1.2.2 isn't critically broken, given that other folks have read it carefully and found it OK)
DO: Propose to lose second bullet in 1.2.2. Good point to make whether unknown things are errors.
TBray: Instead, say in second bullet that when software recognizes unrecognized content, it may be treated as an error or it may not. For more details, see the section on versioning and extensibility...
DO, IJ, NW: Yes.
SW: On good practice note - "behavior". SW proposal: "Specification authors SHOULD specify the semantics of error conditions and the significance to agents."
DC: I disagree with SW and with the good practice note. I think that specs should say what to do and be silent about what to do in the face of error.
TBL: I understand both sides of this debate. I tend to ask groups to define what a conforming document means, but leave error behavior up to agents. Except in some special cases.
DC: 404 is not an error condition, it's part of the protocol.
agenda+ good practice note on error handling in 1.2.2
1.2.3. Syntax and Interoperability
SAX needs a citation
SW: I was indifferent to the first paragraph.
TBray: Hmm, that paragraph is my baby. :)
TBL: The danger of 1.2.4 is that it becomes a religious issue. The Internet works because we've said how protocols work. We don't say what your browser does. That's something worth pointing out. On the other hand, we are moving towards specifying APIs. What's holding up RDF right now is not about what goes across the wire. The SAX API was important to XML adoption, for example. I think there's another point, which is "Why are Web services better than RPC?" Using a grammar for a language when it goes across the wire is better than CDATA. I have a problem with the title. I suggest to change to "syntax, meaning, and sequence of messages exchanged"
TBray: How about "message-level interoperability". The church of the bits on the wire. "Protocol-based interoperability" for the title. Delete "And" before quality
DaveO, you wanted to talk about possible 1.2.4 Extensibility as a new section.
DO: I think there is a general principle on extensibility and versioning that we should capture here. Extensibility appears elsewhere (e.g., URI path space for server managers).There are extensibility points in the URI spec.
The things DO is talking about I think I know as "flexibility points". They are to do with orthogonal design. "Flexibility points" are clean and simple references from one spec to another which allow a lot of independence between the design of each spec.
DO: There is also extensibility regarding fragids (e.g., user agents ignore "#foo" when used with PNG). I propose we talk about extensibility in 1.2, and then refer to specifics on formats.
DanC_NRT, you wanted to concur; we don't "reboot the web for v2.0". continuous evolution is an important top-level principle and to call for volunteers for text to review tomorrow or the next day
DC: I agree that continuous evolution is a top-level principle
TBL: I call this arch principle a "flexibility point".
DO: Distinguish loose coupling from extensibility points.
TBL: Ignoring on fragids is a kludge to a certain extent. In the case of fragids, then flexibility point is a hand off to another spec.
SW: I think of flexibility as adding functionality within a given layer. Rather than, say building on top of a layer.
DO: In the case of unknown frag ids, the user agent convention of ignoring frag ids allows evolution.
TBL: We're on tricky ground here - it's great because it works in browsers, but some things that browsers do (like working around malformed HTML) are not healthy. I think we've made this point up front: "Orthogonality is good"
Action DO/NW: Produce new text for a small subsection 1.2.4 (or perhaps for 1.2.1)
DO: It'll be done by tomorrow.

1.3 Review of section 2 (Identification)

A short string's value
Augmented since shared by all

NW: I'd prefer "identified" to "linked-to"
TBL: I have some text regarding HTTP (see TBL email for this and other suggested text).
Suggested replacement text for note in 2.3
DC: Issue 16 is clearly relevant
Further to this subject: http://phobos.apple.com/WebObjects/MZSearch.woa/wa/itmsLinkMaker
DC: I can't sign up for putting in this text and not saying it's relevant to issue 16. I.e., why leave the issue open?
TBL: I'd love to put in the Apple example... I'd like to put in DDDS as well.
DC: Crisp WG.
TBL: +1 to mentioning crisp.
IJ: We could use the 2.3 good practice note as the expression of TBL's http note: "Authors of protocol specifications SHOULD NOT introduce a new protocol when HTTP provides the desired properties and ..."
IJ clarifies: I am suggesting to use similar language as we use in 2.3 to address/reformulate TBL's proposal.
Use HTTP when appropriate for new designs instead of designing a new space.
TBL: I have a problem with the document. We have been very general and not said enough about HTTP. We have addressed hypertext (which is about HTML) but shied away from HTTP. It's worth pointing out that HTTP has very strong support.
(discussion regards a proposal from timbl to replace "Note: The tag should provide more justification..." in 2.3)
TBray: There seems to be general support for TBL's text. Orthogonally there is the point about scheme v. media type.
agenda+ Primacy of http URI scheme.
DanC_NRT, you wanted to note infelicities around 1st principle in 2 and to ask if other folks like "thoughtful URI creation"
DC: First principle in section 2 doesn't work for me.
DC cites "10 November 2003: XML Inclusions (XInclude) Version 1.0 - Last Call Ends 31 December 2003" and his comments on xinclude not (?) using URIs
NW: XML Core WG compromise is that one attribute contains URI and one includes the fragid.
TBL: XInclude is a fundamentally level-breaking spec. As in C, cpp is a different level.
TBL: Content negotiation works with html:img. It doesn't work with XInclude. XInclude can't cope with resources; it needs to be able to specify a sequence of Unicode characters. But it's useful, and we want to do it. But we have to recognize that it's level-breaking. E.g., ignoring media type ("this is plain text, but parse as XML"). XInclude works at the syntactic levels. XInclude is not an XML application, it should have been part of the XML spec.
DC: I am still trying to decide whether i think that what the xml core wg did is right or wrong. The second attribute is not a URI.
[TBL summarizes history of where xinclude spec syntax came from]
TBL: I think they are doing it right now. It has to do with applying the function before or after retrieval and the position of the info in the URI.
DO: We haven't written up in the arch doc what the arch is in this area.
TBray: I think that what's at the beginning of 2 (first constraint) is sufficient.
DC: I'm hearing that TAG doesn't agree with my disagreement with the Core WG's fix.
TBray: I'm fine with text at beginning of 2.
TBL: I have some nits.
DC: I am not satisfied with text in section 2. I don't understand the point that it's trying to make. I know of a specific point where I wanted to apply something related and I couldn't.
DO: I'd like to talk about the relationship between fragids and xinclude.
agenda+ relation of xinclude to fragids
TBray: Corner cases can shed useful light.
Bug fix in 2.1: Forgot "do not" before necessarily!
NW: In 2.3, I don't believe last sentence before Note about cost of new URI scheme. Epiphany browser lets me do this.
TBray: So does Safari.
IJ: I think Gnome does this too.
We are talking about: "such dispatching can be accomplished at lower expense by registering a new Internet Media Type instead."
TBL: The cost is huge. Suppose that people start populating their web space with "norm:" things. You've slashed the interoperability with the Web. There's a part of the Web that now requires the "norm:" schema.
" New URI schemes are the only thing you can't FollowYourNose to look them up." -- http://esw.w3.org/topic/UriSchemes
SW: But the registry issue is the same for media types.l
TBL: If "norm:" addresses a piece of a broadcast digital TV segment. There's no way you can use HTTP for that. It's reasonable in that case. The cost of the entire community when you include the development of the scheme into a globally usable standard (so that "norm:" can be used by anyone in the world and in a standard fashion) is very high. You have to consider the development of ancillary software (e.g., proxies) and also a social acceptance. The real cost of introducing a new URI scheme (e.g., of introducing HTTP) is huge.
TB: A data format doesn't require new caching or proxy software. It's just bytes.
TBray: I think the statement about cost needs to be reworked.
DC: New URI schemes are the only place where you can't follow your nose.
TBL: You can run a registry for new URI schemes.
(and the pluginspage thing could work for new URI schemes)
(i.e. an analog of the pluginspage)
DC: Talking about relative cost of these things is irrelevant. Pick whichever thing you need.
TBL: But that begs the question - it doesn't tell you when you need a new URI scheme.
DC: I don't think the cost benefit argument in this case is helpful.
IJ: What about something like don't use a URI scheme when you are simply identifying bits in a particular format.
TBL: It's a bad idea to reinvent a new scheme when you don't need to. People try to reinvent HTTP far too often.
TBray: I suggest we strike this text on cost.
DC proposal to delete "If the motivation .... and Note para that follows" (i.e., two paras)
do we argue that introducing new media types is bad? where?
IJ: I just heard "Don't introduce a new URI scheme if you are introducing a new media type"
SW 6 comments on section 2.
1) SW: I am wary of talking about "shared meaning of a URI".
"...shared set of identifiers and on their meaning..."
DC: The text does not say that a URI only means one thing. It carefully avoids that.
[On the topic of ambiguity and indirect identification]
DC: It is a principle of Web architecture that you want to be able to change scale and merge easily.
[Section 2.2]
Third para of 2.2 still needs work.
TBray: How exactly is indirect identification different from identifying a company by its Web page?
TBL: In English there's no different; when you do it in RDF you have problems.
DC: What it says here is that associating companies with Web pages is indirect reference. The problem is when two parties use the same URI to identify two different things.
TBL: I agree with TB that fourth para should say instead "The company whose Web page is..."
TBray: The para about indirect identification concerns me. Why is this important to Web architecture? I understand the example and I'm comfortable with the first 2 paras.
"the person who has a given email address" +1
TBL: Indirect identification happens a huge amount of the time. Relational databases don't have identifiers for the rows. What people do is to use primary keys. So they say "the person whose social security number is this"
TB attempts to summarize: People use URIs as database keys for indirect identification.
TBray: We are saying "Don't confuse using URI as a key and the underlying use as an identifier."
TBL: Please don't mention keys in the text. "People can be identified by "the person who has the email address..." or "the organization that has the home page ....". The architecture is that when you publish something, you try to ensure that the URI is used clearly. You do this in advance of later merges not yet conceived. Don't split the Web. The URI means "x" everywhere.
TBray: I think the example of the database merge is a broken example.
DC: The example is trying to say that persons A and B were using URIs inconsistently. Person B was using the URIs for something else; don't pretend you're in the Web when you're not in the Web.
TBray: If you want to use a URI as a database key, that's fine, but don't pretend that it's being used as the identifier of the resource it identifies.
Action TB: Rewrite paragraph on ambiguity in section 2.2.
2.6.1. Internationalized Identifiers
SW: I think we should say whether IRIs are URIs.
TB, NW: No.
NW: We are explicitly saying this is future work.
2.6.3. Work on Dynamic Authority Delegation
TB, TBL: I don't think we know enough about this.
DC: I think this comes from me. In a word, DDDS is good. I don't think I have a problem with losing 2.6.3. This is discussed in substance in the ID on how IANA should run its Website.
Resolved: Delete 2.6.3, NW abstaining.
2.6.4. Non-hierarchical Administration
DC: I have not delivered on my action item.
TBL: This is an interesting research topic (peer-to-peer) and getting rid of the DNS bottleneck.
TBray: If we are saying down the road we are getting rid of the DNS bottleneck, I'd be ok with that. I propose that we remove it unless someone by tomorrow has proposed text.
Resolved: Remove 2.6.4 unless someone by tomorrow has proposed text.
2.6.2. Determination that Two URIs Identify the Same Resource
TBL: s/equivalentTo/sameAs/ (see TBL email)
....such as "sameAs and FunctionalProperty" to state or indirectly imply that two URIs identify the same resource."
DO: I suggest that this be split into "sameAs asserts" and "functionalProperty <does something else>"
TBL: Could say with ",respectively"
IJ: Do we need "Note" two paras before 2.4?
Resolved: Put back in reference to Gutenberg text in 2.3
DC: I think "Note" in question is worth the screen space.
NW: Delete "Note"
DC: I'd prefer an example of such a URI scheme (e.g., "ftp").
SW/TBL/DC: "Note" works for me to de-emphasize this.
IJ: I could move it down.
no, not an example, a citation
an example of a URI scheme _specification_
(we seem to be breaking for lunch)

1.4 Review of section 3 (Interaction)

Take this URI
Representation is yours
If you dereference

Completed action CL 2003/07/21: Discuss and propose improved wording of language regarding SVG spec in bulleted list in 2.5.1. (Done)

[Chris Lilley joins the meeting]
Resolved: Delete first paragraph of 3.
3.1. Using a URI to Access a Resource
TBray: Verify that "Section 1.2.2 of [URI]" exists. In [URI] say that references are to sections of URI bis.
DC: What does our reference to [URI] mean for last call? I wouldn't consider it the end of the world if we went to last call this way.
TBL: I think that since we intend to publish later versions of this document, I am comfortable having a loose reference to URIbis since it's the best good.
DC: Doesn't work for me. If this were someone else's document I'd say "choose". But I would rather the put the apology in the status section.
TBray: At beginning of 2, either by ref or directly, point people to place where they can find version info.
Resolved: Mention URIbis in three places: status section, section 2, refs.
(note that the TAG can only advise about the SOTD)
DanC_NRT, you wanted to ask about the httpRange-14 editors note in #.
DC on the editor's note before 3.1, regarding issue httpRange-14. I'm ok with deleting it.
NW: I am ok too.
DO: I am not comfortable with that. I think we need to define "on the Web". I think it's important to have a dfn of "on the web" in the document, and I'm ok with RF's definition.
TBray: I am not very happy with RF's definition of "on the Web". I don't think we have consensus in the community about the meaning of those three words. I don't think we should work hard to get consensus, since it's not fundamental to Web Architecture.
DaveO, you wanted to talk about editors note in 3.
timbl_jp, you wanted to ask whether we actually use the phrase "on the web", and point out that they are very common parlance; to agree with Tim Bray.
TBray: I propose to delete it.
TBray, you wanted to comment on 3.1
DO: Other W3C Recommendations use the term "on the Web"; e.g., SOAP 1.2.
TBL: "On the Web" is common parlance. It's used by newscasters, people on the street, and spec writers in an informal way. We don't build on the term.
IJ: I propose that we say "We don't define "on the Web" since it's not fundamental to Web arch; it can be used informally."
DC: How would it make Web Services clearer to define this?
TBray: Something is clearly not on the Web if it doesn't have a URI. I can live with talking about the negative this way.
Test case 3: http://www.w3.org/People/Berners-Lee/card#i
TBray: Roy's definition is useless; how do you test it?
Test case 4: tel:+1-617-258-5999
CL: I looked quickly at the SOAP Primer. I couldn't see much use for "on the Web". I did see "using RPC on the Web".
TBL: I think we have demonstrated that this is a rat-hole.
CL: The interaction can be across the Web, even if the resource cannot be reached directly via the Web.
no, we have not (yet) decided on a definition of "on the web". The editor's draft correctly notes that.
DO: I think that if the TAG doesn't define "on the Web", they are not listening to the community.
TBL: If we go down this rat-hole, please note that this relates to httpRange-14. If you want to create a defn that would match conventional expectations, you would have to say that my home page is on the Web, but I am not. That's httpRange-14, and for now we have not decided to distinguish info resources from others.
TBray: I think it's painfully obvious that there is not consensus in this room, let alone in the larger community, about the defn of on the Web, or whether such a definition is useful.
TB Proposal: Strike the note.
agenda + ed note re "on the web" and httpRange-14
agenda+ httpRange-14/On the Web
DO: I noticed bullet 5 is a little weird.
# Section 9.3 of [RFC2616] states how the server constructs a GET response (section 6 of [RFC2616]), including the 'Content-Type' field. In this SVG context, the user agent employs the GET method to retrieve the representation.
DO: Switch the sentences. Or break into two bullets
yes, split into separate bullets, but is this a serious technical point or an editorial improvement?
DaveO, you wanted to talk about 3.1
IJ: There is no spec I'm aware of that says the default interaction with an HTTP URI is GET.
timbl's description of how hypertext links work is appealing, but I don't know where it's written.
See http://www.w3.org/2003/11/15-tagmem-irc#T05-25-10
SW: Do was suggesting that there was a default to use GET upon encountering a URI
DO: I observe that this is the default behavior because the web works; this is the way the web works Given a URI, and an instruction to use it, the only reasonable thing to do is a GET. In effect, it's the default behavior
"default" is irrelevant. GET is *the* way to get a representation of an HTTP resource.
default" as though it can be overridden - it is the defined format for accessing representation of a resource.
DC: "default" has nothing to do with it; user agent does a GET for a representation when it needs one.
TBray: In the case of SVG, "visit" suggests to an implementer to use GET.
SVG: Click means visit
Common sense hypertext: "visit" means "be presented with a rep'n of"
HTTP: GET mean "return a representation".
TBL: +1 to what DC said.
ironically, the HTML spec says "The default behavior associated with a link is the retrieval of another Web resource." -- http://www.w3.org/TR/1998/REC-html40-19980424/struct/links.html#h-12.1.1
timbl_jp, you wanted to say that what DO describes is not what I would call a " and to say that what DO is describing is not a "default" as though it can be overridden - it is the defined format for accessing representation of a resource.
this "to present something, get a representation of it"... is that written in webarch somewhere yet?
Chris, you wanted to correct that 'SVG assumes GET'
DaveO, you wanted to clarify from TB that each spec will use some kind word that evaluates to GET
SVG has about ten instances of XLink href - *one* of them is a hypertext link and does indeed imply GET.Others don't imply any traversal at all, and in SVG 1.2 we have a use that allows PUT, and POST, as well as GET
DanC_NRT, you wanted to endorse "visit" and "present" and such; they've been in pre-TAG architecture drafts since the dawn of time
IJ: I think that the point is that application context determines what you do. If what you want is a representation, and you have an http URI, do GET.: I am fine with that.
CL: SVG uses xlink for links.
SVG: 10 or so elements that have links. One of them expects user interaction. "Visits" is used (and I could ask that that be clarified).
DO: I think that each spec seems to have language that translates to GET.
skw, you wanted to ask whether wrt to Xlink the surrounding doc context influences the 'operation'
IJ summarizes what he said: (1) application context determines which access method to use; whether it be GET/HEAD/DELETE (2) don't have the format spec constrain agents to a particular access method.
timbl_jp, you wanted to suggest that this be laid out as an example without a lot of explanation in denial, and the detail be provided in 4.5 [Hypertext] Links
My proposal for bullet 5. "The SVG specification says that a resource may be 'visited'. The protocol author deduces that 'visit' in the HTTP context means using HTTP GET in the user agent context.".
TBL: I think we just need to say what happens here.
+1 to DaveO
TBL: Don't need to say why GET is used.
And I propose the first sentence be moved to 7, and the current 7 become 8.
TBL: Skipping with 4.5 (Links); I suggest we call this Hypertext Links. I think it's clear to me that hypertext is one application built on the information space. It's very different from the sem web. I think we should describe the hypertext system in 4.5. If we need to explain what "visit" means it should go there; and that anything unrelated to hypertext be deleted.
TBray: I support DO's proposed revision. Just say that the agent picks GET. I think it's reasonable for a format to limit verbs. It's fine if HTML didn't do that.
TBL observes that TB and IJ comments are consistent with one another.
+1 split bullet 5
Resolved: Split bullet 5. Include DO text about user agent doing a GET to get a representation.
Action IJ: Revise SVG story in discussion with TBL.
I'm ok with that action as long as there doesn't appear a forward reference to a hypertext section.
SW: I"m not satisfied with " (e.g., both DNS and HTTP are typically used to access an "http" URI's origin server when a representation isn't found in a local cache)."
TBray: I'd lose everything in that para starting with ",and the resolution of some URIs may require.."
+1 lose...
DO: I kind of like it since it reminds people of DNS underpinning
CL: I also like because it shows that there's more than one thing happening.
DC: I think it's worth making the point that the Web relies on the central DNS registry.
hmm... does the HTTP spec really say that DNS is involved?
CL: You could move it to the worked example....
TBray, you wanted to disagree violently with Ian; a spec can indeed specify link semantics
Resolved: Delete sentence from ", and the resolution" to end of paragraph. Mention DNS in the SVG story between steps 5 and 6.
Don't people often say "don't use ip addresses" in URIs, which only leaves dns names for authorities?
yes, but that is derived from 'cool uris don't change'
reference from HTTP spec to DNS is pretty implicit. http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.2.2
you can use ip addresses but they might be more fragile
3.2. Messages and Representations
TBray: A message is not an event; it's a bag of bytes
DC: No it's not.
TBray: I agree that the sending of a message is an event. But a message is a bag of bytes.
the sending of the message is not the message
the sending is an event;the message is not an event
TBray: There are tons of events associated with a message (when created, when sent, etc.). "Messages may carry...." Events don't carry things, bags of bits do...
DO: I agree with TB on this one. Let's separate "message" from event.
DaveO, you wanted to talk about "transmission".
TBray: I disagree that a message has a time. It has a transmission and receipt time.
We talk about the separation of the events of transmitting or receiving messages in terms of transmissions or receipt.
TBL: How about we say that the message is data, minus the date/time stamp.
:msg_sending :message :msg
:msg_sending :datetime :DT
TBL: An event has a time.
dc:msg has date time and tb:msg
tb:msg has metadata/data
TBray: Lots of industry deployed systems have notion of msg as a bag a bits. Events stuff a msg into the system.
DC: I note that TCP/IP spec uses dc:msg.

DC raises question of whether msg is just a bag of bits (and thus two identical bag of bits are the same message), or if not what distinguishes them.

TBray: Computer IP.

TBL: So the identity of a message is its address in memory.
DC: What grounds the thing is that something happened. It's a happening through time.
DO: I'd be ok saying a message is an instance of a set of bits.
TBray: I still find it confusing to talk about a message as a series of events.
DC: "A message is a communication of bits?" A message is the communication of bits from one party to another.
TBray: How about: "The Web's protocols are based on the exchange of messages. Messages may carry..."
DC: +1
TBray: I like "non-exclusive" for protocols; I think we also need to say that for formats.
TBL: I propose we add "SOAP" in the list of examples.
TBray: SOAP operates at a different level from HTTP.
IJ: So HTTP w.r.t. tcp/ip
Proposal: Add SOAP to list of examples.
DO: I object.
agenda + adding SOAP to list in 3.2
CL: Are there "non-messaging protocols"?
[That text was gone anyway...]
ij: I don't expect "messaging protocols" to appear in the txt
CL: "Some examples of protocols are..."
TBray: In "Note that even though the response to an HTTP POST request may contain the above types of data, the response to an HTTP POST request is not a representation of the state of the resource identified in the POST request.": Make this "not NECESSARILY a representation...."
SW: Right. See 2616 section 9.5 for text on what the results of a POST are.
NW: A POST returns a representation of the results of the request.
s/especially/particularly in bullet two at beginning of 3.2
TBray, you wanted to suggest specific wording
timbl_jp, you wanted to ass SOAP and to skip to 3.5 in this context and mention that the fact that that there is no URI for the post or response.
3.3. Internet Media Type
CL: Should we also refer to RFC2049 (conformance criteria)
ok its email-only
in particular, mail user agents
[TAG looks at RFC2049]
DC: I think this is not relevant. This is a conformance clause for mail agents. I don't think this is relevant to what the definition of a media type is.
I found it from http://www.mhonarc.org/~ehood/MIME/
TBray: Delete "If the user agent implements those specifications, it interprets the data accordingly; error handling is discussed below. "
+1 lose "If the user agents implements..."
Resolved: Delete the sentence "If the user agent implements those specifications, it interprets the data accordingly; error handling is discussed below. "
3.3.1. Media Types and Fragment Identifier Semantics
DO: I think the second paragraph is wrong. I think that we said in the abstract component refs finding that the WSDL group can say "U#F" and the interpretation is governed by the WSDL spec. You don't have to dereference U to understand what F means.
Chris, you wanted to suggest mentioning MIME conformance
TBray: Sounds to me like what the WSDL folks are doing is questionable.
DC: I think we can make this clearer by replacing greek letters with Nadia, etc.
TBL: You can use U#F as an identifier without knowing potential representations. But when you do dereference U, it's the mime type of representation that determines interpretation of F.
when doc A links to doc B, A can say things about B, but they aren't authoritative.
DO: You can do as much interpretation of F as you want (without dereferencing), but you do so at your own risk.
... and you can trust/believe A, but you do so at your own risk
DO: one of the points I made in the versioning bit was to recommend that a representation of U to be available on the web to resolve the dispute
Resolved: Replace U#F with Nadia/Dirk.
TBray: Point out that people in some contexts assign meaning to frag ids and that poses some risk, namely inconsistency between that meaning and what authoritative representation would say.
Action DC: Write up some replacement text for text at beginning of 3.3.1.
I see 1 open action item:
ACTION: DanC to elaborate on value of orthogonality of specs in section 1.2.1 including example HTTP/HTML [1]
recorded in http://www.w3.org/2003/11/15-tagmem-irc#T01-05-13
Proposed text: "By looking at u#f out of context, one can tell nothing. Ant web resource may contain information about u#f. Information in document u, however is considered definitive."
CL has submitted changes to point1
<li>Since the URI is part of a hypertext link in an SVG document, the first
relevant specification is the SVG 1.1 Recommendation [<a
... etc...
NW: likes revised CL's first <ol> point

3.3.2. Fragment Identifiers and Multiple Representations

note typo in 2nd para
DO: Need to say how the architecture allows this sort of discrepancy. How/why does this magic happen? Because std implementation of an agent will ignore fragid for a format where one isn't defined
DC: I don't think it's an ignore rule; it's that its unspecified and you can do what you want.
TBL: With user agents, you can fall back to the user - the user can deal with the behavior. People don't notice or it doesn't matter. This does not work with semantic web apps; you cannot fall back from the thing referred to the document itself.
DC: It wouldn't work in the WSDL case either. User agents should complain, but they don't.
is it an error? (silent error recovery harmful)
DO: I was not trying to say that the MUST IGNORE rule is the only rule across all apps. I was saying that in the hypertext Web, the app effectively allows the MUST IGNORE rule which allows this type of evolution.
TBL: I don't want to say that there's a general rule here.
DC: Please include a link from 3.3.2 good practice not to 2.2 unambiguity principle
Action DO: Propose some extra text for 3.3.2 (second paragraph) that hypertext agents often follow an IGNORE rule and this often results in compatible behavior.
3.4. Authoritative Re presentation Metadata
SW: In 3.3.2, consider note to be principle rather than just good practice.
DC: "he design choice for the Web is, in general, that the owner of a resource assigns the authoritative interpretation of representations of the resource." This is not the general case, this is the case for http: URIs. The best thing is to say that URIs work best when the community has consensus; the common mechanism for doing so is to delegate authority.
I have some concerns with 3.5 'safe' because there are several counter examples
TBL: Let's look at my suggested text. "Ownership of URLs."
TBray: I'm fine with TBL's text.
NW: Me too
TBray: We should include "origin server" in the glossary
DanC_NRT, you wanted to note some candidate text in http://lists.w3.org/Archives/Public/public-sw-meaning/2003Oct/0084.html
IJ: Comes from RFC2616
[Review of DC's text:http://lists.w3.org/Archives/Public/public-sw-meaning/2003Oct/0084.html]
DC: "A URI has meaning to the extent that there's consensus in the Internet Community about what it means, as expressed in Internet protocol messages, especially messages that express a relationship between a URI and a representation of what it means; and that the HTTP/DNS case is, while very common, a special case where the Web Community has delegated authority to one party"
Chris, you wanted to pontificate about fragids and images and to discuss "incurs no obligations" in 3.5
Action IJ: Incorporate TBL and DC text into 3.4.
TBray: You'd probably want a 3.4.1 on ownership.
IJ: Should this be in the URI section?
DC: Closely related to URI Ambiguity.
TBL: Put between 2.2 and 2.3.
TBL, TB, IJ: Put between 2.1 and 2.2.
TBL: Heads up: to start off with text about "there is consensus in the community"; that suggests that if I can upset the consensus that's not what it means.
DC: That's what I mean.
TBL: But I object. You are violating Web arch because the Web arch relies on DNS. The arch is what the specs say; it's not always what the street life says it is.
DC to TBL's claim that the text DC suggested breaks his diagrams: I don't believe so.
3.4. Authoritative Representation Metadata
SW: " the authoritative interpretation of representations " I'd rather "the assignment of the media type..." I think that this occurs several times.
skw, you wanted to comment on 3.4
Resolved: In 3.4, s/has license to create representations of this resource and assign their authoritative interpretation./has license to create representations of this resource.
Just before 3.5: Editor's note: Add an example of this principle.
DC: I propose to delete the editor's note and the principle.
TBL: Can we use the principle as a pointer to the finding?
TBray: It's not a principle, it's a good practice.
SW: I don't like the title of it.
TBL: Is an example don't guess the expiry date?
TBray: I recently whacked his apache config file at tbray.org to *always* say charset=UTF-8 and make text/html the default media type
s/appropriate/correct in the note.
DC: Not "correct". It's by definition correct.
TBray: Scenario:
- A doc is being generated with SHIFT-JIS.
- Due to bad server management, it's served with ASCII
DC: I'd like to lose the good practice note here.
TBray: I disagree. I think it's not only correct, it's a problem that happens all the time.
'Oh, that was easy,' says Man, and for an encore goes on to prove that black is white and gets himself killed on the next zebra crossing.
CL, TB: I'd object to dropping it.
DC: I object to having it.
IJ: I expect to include at least a cross ref to the case of XML / charset
3.5. Safe Interactions
CL: If humans and what they do is what's meant, I can think of several examples of when you incur a legal obligation by doing a GET (e.g., getting kiddie porn pretty much everywhere). I want to make sure the arch doc is not talking about that.
Chris, you wanted to discuss "incurs no obligations" in 3.5
DC: You incurred the obligation when you agreed to the laws of that particular country, not when you did a GET on the resource.
TBray: I disagree with Chris. What you did has consequences (namely you have broken the law) but you have not incurred an obligation.
DC: Note carefully - do they have some additional obligation that they didn't have BEFORE the GET?
TBray, you wanted to suggest re-titling 3.6.3 and to
DC: The web arch really is that you don't incur obligations when you do a GET; you incur them through other means (e.g., contractual obligations).
timbl_jp, you wanted to mention http://lists.w3.org/Archives/Public/www-tag/2003Nov/0030.html#bitOn3.5SafeInteractions
TBL: Story ends ... "Neither data transmitted .. nor .. response ...corresponds to a resource named with a URI". This is a bug. We should admit this.
Werner Heisenberg
TBL: These are the most important pieces of data; they don't have URIs. This is a bug. It's a bug that browsers don't keep track of what you've posted (so people use their email clients, which do help you track).
TBray: Browsers should save POST operations.
DC: This is in CUAP http://www.w3.org/TR/CUAP. We need to mention Content-Location header.
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.14 (14.14 Content-Location)
NW: I like TBL's text; endorse with note about Content-location
Resolved: Include TBL's text on POST + Content-Location.
TBL: What should browser do with the Content-Location URI?
DC: Allow you to bookmark the URI. There is an issue about server managers lying, and returning a URI over which the individual has no authority.l
agenda + QA issue around KeepPostRecords for discussion with Janet
3.6. Representation Management
NW: I'd like to drop the parenthetical expression in the story.
DC: "(since, for example, it costs less to update a Web site than to reprint and distribute weather information on paper)"
Resolved: Delete parenthetical.
On 2.1 good practice note: People don't like the word "thoughtful"
TBL: Proposed "Unnecessary aliases"
DC: Yep
3.6.3. Access Control
(might be nice to make markers that show expected edits)
TBray: Publishing URIs is always ok. The reason it's ok is that you have access control.
IJ: 3.6.3 URI Publication?
SW: Restricting Access to Published URIs
TB: Linking and Access Control
Resolved: Changed title to "Linking and Access Control"
TBray: Delete 3.7 since empty currently.
DC: What about peer-to-peer? Instant messaging?Real-time?Voice-over IP?

TBL: And of course Web Services.

DC: Multi-party interactions.
TBray: I think that the way to save the section is to put pointers in it.
TBL: What about the arch of network news? Distinguish future work (not been done) from what this document does not yet include. So there are old peer-to-peer protocols that we don't address.
IETF XMPP jabber WG (and jabber is not p2p)
Instant messaging: XMPP
Peer to Peer: NNTP
DC: RTSP for voice over ip
p2p projects include freenet
p2p projects include mldonkey
WS Choreography?
Resolved: Keep 3.7, by enriching with links.

1.5 Review of Dan Connolly slides/diagram

Circles and Arrows
Show so much. If only
I were artistic

We review slides from DanC; diagrams potentially for the arch doc.
DC: related to terms in index, consistency of terms, diagrams
A Web Resource
TBray: Should arrow read "represents" instead of "representation"?
DC: The convention in some parts of the world is that these labels are role nouns. Note that thick URI means 1-to-1 relationship, thin means many-to-one.
TBL: If you want to use a role noun to go from resource to URI, the role noun is "URI".
DC: Left-hand side is classes; right hand side is instance
[DC one resource can have multiple representations]
DO: Use of circles? Tool defaults to an ellipse; I didn't think about the shapes in all cases. Bold box outline means OWL datatype.
TBL: Make thin-outlined box that is abstract something other than a box.
DO: Is the media type a string?
DC: I wasn't modeling it that way.
Aside: Curried Function Notation
TBL: Currying tough to deal with; instead create a bnode with multiple typed arcs; more intuitive.
Communication Protocols
DO: I think that "receiver" is as important as "sender".
DC: The binding stuff is the interesting stuff to me. Messages bind URIs to their meaning. I think it's less disputed that for a given message, the URI meaning is well-known. Each message has its own idea of what's going on; messages can agree or disagree. This is my current understanding of terms. I have not (1) double-checked against the document or (2) learned whether all terms are useful in the document.
SW: I don't get the binding bit.
TBL: I feel that the small ones we started off with. I think the larger ones might go in an appendix.
TBray: The diagrams are a bit syntax-heavy.
DC: Messages have a bunch of bindings; they make up a representation.
It's valuable when the whole world agrees.
TBL: This diagram explains how one can claim that they have a valid representation of an identified resource.
TB, DO: I prefer verbs on arcs.
TBL: Please not.
[Agreement that consistency is important]
IJ proposal:
  1. Don't use currified diagrams.
  2. If we invest heavily in diagrams - use nouns for arcs, with explanation.
DO: There are more relationships I'd like to show.
TBL: Using UML arrowhead conventions for many-to-one would work.
IJ: I think we need to keep in mind relevance of terms to arch; delete from diagram if not critical.
[We review a diagram from DO that DO expects to send to the list]
DO: I like DC's idea of having class side-by-side with instance. I like the idea of having a complete diagram.
timbl_jp, you wanted to skip to 3.5 in this context and mention that the fact that that there is no URI for the post or response. and to suggest some convergence between diagrams.
TBL: I think the weakness of these sets of diagrams in general is being unable to understand what we can conclude from them. DC's diagrams illustrate, e.g., how you can prove that you have a valid representation. DO's diagrams explain high-level relationships, but don't explain how things work.
DC: My goal was to be able to state the principles in the language I was using to build the diagrams.
TBL: If you take out DC's functions, then there's a lot in common with DO's diagram.
DO: I like seeing the cardinalities in the diagram.
IJ: I have a hard time with big documents; it doesn't communicate to me.
DO: I like them, it helps me find things. Lots of folks in my community find them valuable.
DanC_NRT, you wanted to discuss presenting webarch to WGs and to concur with the appeal of big diagrams as maps
DO: I think there is a value to complete diagrams; that's not incompatible with smaller diagrams.
DC: I was thinking about presenting the web arch in successive elaboration. The diagrams are really useful for doing a presentation.
SW: Tech Plenary is a good target for having a set of slides.
DC: I like having a big diagram as a map. People get a warm fuzzy feeling when they know that all the terms are present.
IJ: Stuart's diagram does that.
[There is some support for SW's diagram that has grouping]
CL: I used to have a huge diagram about the metabolic system; it was useful because it suggested relationships that one wouldn't normally think of.
TBray: I think webarch is primarily rhetorical; that's its point. I'm more moved by design sense than generating a diagram from a useful formal model. If we were to try to get more ambitious, it would not be worth doing unless we really made the diagrams look good.
(some notes on building these diagrams, including a reference to an earlier diagram by dave http://rdfig.xmlhack.com/2003/09/22/2003-09-22.html#1064258658.804608)
timbl_jp, you wanted to say that for us to build a good model we probably need good diagramming tools.
Chris, you wanted to talk about really big diagrams
TBray will scribe for a while
CL: diagrams with RDF machinery behind them are useful in our thinking even if not for production
DC: likes the idea of proceeding in parallel on a formal model
TBL: formal should go in webarch 1.1
TB: neither waits for the other
DO: formal model might not be reconcilable with tutorial objective of webarch
re "put it somewhere", I suggest /2001/tag/fdesc54/
NW: wait till we have both, then decide to merge

1.6 Section 4 (Data Formats)

PC joins meeting

I share my knowledge
My namespace and your namespace
Intermingle, one

4 Data Formats and 4.1. Interoperability and the Use of Standard Format Specifications
* DanC_NRT q+ to question the 'format specification availability' principle
TBL: "Note: This document does not distinguish in any formal way the terms "format," "language," and "vocabulary." Context has determined which term is used." Delete "vocabulary". See my other comments
TBray: I agree.
TBL: Please verify that we do not use vocabulary as synonymous with language.
DC: Don't make format specification a first-class term. We don't say the same thing for URI Scheme specs.
Orthogonality is aided by "flexibility points" . these are clean, simple, interfaces by which one spec calls out functionality which may be implemented by an evolving set of technologies. Examples include mime types and URI schemes.
TBL: Turn good practice notes into facts.
I'm not sure the use of SHOULD/MUST/MAY in the principles etc. works well.
[Several people proposing that conformance section should be dropped]
TBL: SHOULD/MUST may not make sense for this document since there's a delicate balancing act of decisions that designers make according to context.
PC: I think the terms are important.
TBray: I am inclined to side with TBL on this one. On the other hand, people are used to 2119.
IJ: The constraints are expressed declaratively.
TBray: Is this note telling authors that they should justify why they do not include frag id semantics in the spec? Is there any general statement that formats with frag ids are better than those that don't?
DC: Principle that important things should have URIs applies.
DanC_NRT, you wanted to question the 'format specification availability' principle
DC: The bit in 2.5 works for me.
The data format of a representation is defined by the MIME type. The specification of the data format, for a given MIME type, is given by the MIME type registry. That specification defines the fragment identifier syntax and semantic, or that there is none.
TBray: You can point back to txt in 2.5 (from 4.1)
put ref to finding after 2nd TBL sentence

1) "format spec" not first class obj
2) Replace 4.1 with back ref to 2.5
3) Use TBL's three sentences
4) Leave first para of 4.1
5) s/very// in last para of 4.1
6) Leave in ref to finding.

Resolved to accept this proposal.
Resolved: Put "See tag finding"" after tim's sentence #2
4.2. Binary and Textual Data Formats

looks up status of issue 30

NW: There's an issue link at the end of 4.2. What to do with it?

IJ: I was hoping all of these would subsumed by refs to findings. [Discussion of this topic w.r.t. topic of noting issues we do not expect to address in this version of the arch doc]

PC: I support shipping to last call even if we postpone some issues.
DC: Does anyone consider issue 30 critical for last call?
[Nobody considers critical]
Are we closed on http://www.w3.org/2001/tag/issues.html#binaryXML-30 ? (no, from issues list) is it scheduled for this webarch version? (no, from here in the room)
IJ: If a finding is available, refer to is; otherwise issue.
Action IJ: Fix ref to 30 at end of section.
TBL: I'd rather not spend a good practice card on binary stuff since not as strong as others.
(editorial: "View Source" effect or "view source" effect?)
Resolved: Demote the good practice note in 4.2.
(I gather we've noted the editorial infelicity in the para surrounding the reference to issue 30, without constraining the editor on how to fix it.)
SW: Cross ref to charmod?
IJ: I propose to delete 4.2.
DC: Sounds like "how to write a format spec" should be its own document...
IJ: I can't find the strong link to web architecture in 4.2.
TBray: I think that it's important to use text formats; that's an important contribution to the Web. The other important thing to say is that don't assume that binary is faster; sometimes it isn't.
Support to keep: NW, PC, TB
DC: I could go either way.
TBL: I think it's useful.
DC: I note that this 4.2 text did get considerable discussion in www-tag that seemed to come to consensus.
SW: "Textual formats are usually more portable and interoperable, since there are fewer choices for representation of the basic units (characters), and those choices are well-understood and widely implemented."
SW: Can we delete this para?
TBray: Delete "since there are fewer choices for representation "
TBL: I am not convinced that portability and interoperability are improved by text formats. E.g., with GIF you don't worry about whitespace...
DC: The arch principle about text formats is that when there is a problem, you can view the source.
TBray: Could we say that empirically the Web has been more successful than network info systems based on binary formats.
SW: Could say that in section 1.2.
NW: Textual formats are usually more portable and interoperable. Text formats also have the considerable advantage..."
Resolved to delete para in question, adopting NW's proposed edit.
DC: There is a principle about robustness here...
4.3. Extensibility and Versioning
TBray: For "must understand", say that it is an error.
TBL: I think that an important piece is missing: you can distinguish in the syntax. Not clear from para following 1./2. bullets in 4.3 who does the override. The language has to be prepared in advance (syntactically) for different choices.
q+ to ask for xrefs between 4.3 ext/vers and 1.2.1 orthogonal specs
Something which says (or words to this effect) "A powerful technique is for the language to allow either form of...."
Action IJ: Fix para after 1./2. bullets in 4.3 to make clear that language must prepare in advance (i.e., syntax) for this type of override.
DO: Say something about extensibility in the first paragraph as well.
DO: I'd like to change from "format designers" to "language designers". I think that "language" is more appropriate for the audience of this doc.
TBray: What about PNG.
TBL: I think it's arbitrary.
DO Proposal: s/format designer/language designer/. I would leave 4. title as "data formats". Proposal: s/format designer/language designer/ in 4.3 good practice notes
PC: In any case, you might want to s/format/data format/. Readers might have a problem if there is no transition between format to language.
DC: When did we decide not to distinguish between language and format?

IJ: Bristol.

DO: I think readers will find "language" easier.

TBL: I second DO's proposal.
Resolved: In 4.3, s/format/language, DC abstaining.
DO: "Application needs determine the most appropriate extension strategy."
DO: I'd like to move last sentence of that para to the finding.
TBray: Seconded.
Resolved: Move last sentence of that para to the finding.
Dan_NRT, you wanted to ask for xrefs between 4.3 ext/vers and 1.2.1 orthogonal specs
DC: I like good practices to be consequences of principles. The principle for me is about extensibility points. Add a cross ref to 1.2.1. Orthogonality is rationale for "Allow for extensions. The principle is that, e.g., if you don't find something, you can look it up on the Web.
CL: That's a third strategy: may look up
PC and DO are talking about extension/flexibility points
DC: Good practices should be consequences of principles, the one relevant here is flexibility points. I like good practices to be consequences of principles. The principle for me is about extensibility points. Add a cross ref to 1.2.1. Orthogonality is rationale for "Allow for extensions". The principle is that, e.g., if you don't find something, you can look it up on the Web.
CL: difference between motivating it and underlying it.
[discussion of differences between versioning & extensibility]
DO: does versioning layer on top of extensibility?
thinks the text in 4.3 covers both in a reasonable order.
TB: agrees
DC: Extensibility has a cost as well as a benefit. Doesn't agree with good practice "allow for extensions" - since there's a cost, you shouldn't allow for extensions unless you have to
PC: one person's extensibility is another's interop problem
TBray: e.g. XML's hardwired syntax
PC: SOAP got done quickly because it doesn't say very much, it's all extensibility - 3 major extensibility points: body, headers, intermediaries
q+ to note problem with CSS mustignore
IJ: split 4.3 into extensibility & versioning sections.: "In this type of environment, there is an inevitable tension between interoperability in the short term and the desire for extensibility."
CL: because of overlap, don't want 2 sections that are near-duplicates. Wants to draw out common threads
DO: 4.3 extensibility, 4.4 versioning, relating back from 4.4 to 4.3
IJ: I recognize that first para of 4.3 is about versioning; after that about extensibility. I can clean this up.
DC: doesn't feel cooked to me
TBL: shows signs of having been through feast/fast cycle. Extensibility is talking about compatibility, phrases "backward compat" & "forward compat" are the link to versioning. What's there is OK, in v1.1, where we're going to do formal modeling, work through all this (incl material from finding) formally. But meanwhile we rest.
DO: agree that we should do this more formally. If we split this, the must-(understand/ignore) are to do with extensibility not versioning.
NW: don't want to split it into two sections.
TB: me too
NW: because they are deeply entwined
tbl: me to
Chris, you wanted to note problem with CSS mustignore
CL: note wrt cost of extensibility, e.g. CSS mustignore, like swings & roundabouts, there are advantages but also costs
[Strong support for leaving 4.3 as one section]
CL: I want some text there to introduce that trade-off
q+ to say that I can clean up 4.3 even if not splitting in two.
NW: finding has cost/benefit of extensibility, he'll take action to provide it for webarch
+1 to DO's suggestion for cleanup
ACTION Norm: provide language on cost/benefit trade-off
ok so Norm will provide a sentence or two to say that the several "successful technologies" are good but not without drawbacks in all cases
SW: There's a community that is eager to get their hands on this stuff. Do we need the big finding published as a separate W3C Note?
NW: intermediate text is gone. Doesn't want to think about status for finding until January
4.4. Separation of Presentation, Content, and Interaction
TBray: not comfortable with the use of the term "logic". Do we mean "flow of control" instead of "logic"?
TBL: My comment was to s/logic/semantics
DC: What is "flow of control" for a <p>?
TBL proposal: "Semantics"
IJ: Please don't use "content" alone. Lots of people mean different things when they say it.
DC: To me, this is a principle: "The separate of these things allows reuse." s/allows/facilitates
DO: Tie-in with orthogonal.
TBray: The separation of content, presentation, and interaction has positive impact....
Likes suggested text in RC
q+ to say don't use "content". Use semantics instead.
The separation of content, presentation, and interaction has positive consequences including greater reusability and device-independence
CL: s/cannot predict how every/cannot predict in some cases/
q+ to speculate that separation is related to orthogonality and extensibility. Extensibility allows independent evolution of any of the mvc axes.
CL: "widest possible context" is sometimes true, not always - in some cases you want to target certain agents with specialized content.
q+ to advocate explicitly citing DI work, but to note that per-device alternatives are counter to the principle
CL: Experience shows that "one way"...."and another way"...
Chris, you wanted to discuss last 2 sentences of first para of 4.4 and to discuss last 2 sentences of first para of 4.4
Action CL: Propose a sentence for 4.4 about delivery context.
Ian, you wanted to say don't use "content". Use semantics instead.
IJ: WCAG has discussed "content" a loooot
q+ to talk about integration formats that combine content, presentation and interaction
... [missed some] so let's avoid 'content'. I was OK with 'content logic'. [missed some]
DaveO, you wanted to speculate that separation is related to orthogonality and extensibility. Extensibility allows independent evolution of any of the mvc axes.
TBray: I am happy with "content" over "semantics" since you can reuse bits in other semantics.
DO: Tie-in content/presentation/interaction with orthogonality (i.e., they are separate).
several: +1 DO
DanC_NRT, you wanted to advocate explicitly citing DI work, but to note that per-device alternatives are counter to the principle
q+ to say ask what TimBray meant by "semantically surprising".
disagree strongly that it is counter to the principle
CL & DO disagreeing about whether it's better to have one format that works on multiple devices or a central format that generates device-specific formats
DC: hmm... perhaps I'm arguing from ignorance.
CL: I agree with IJ point re: not using "content"
IJ: I will take into account DO's suggestion to do a cross-ref.
[Discussion of separate server-side v. client-side]
TBray: I am happy with "content" over "semantics" since you can reuse bits in other semantics.
DO: Tie-in content/presentation/interaction with orthogonality (i.e., they are separate).
IJ: I will take into account DO's suggestion to do a cross-ref.
CL: I agree with IJ point re: not using "content"
[Discussion of separate server-side v. client-side]
DC: I'm not convinced that available as separate on server-side in sync. Please say that DI work is to make available less general content client-side, which is less useful for re-use.
CL: I disagree with DC.
DO: IJ, please mention "loose coupling" in section on orthogonality.
Chris, you wanted to talk about integration formats that combine content, presentation and interaction
q+ to confirm that we made a decision about this box in 4.4 ... not yet.
The separation of content, presentation, and interaction has positive consequences including greater reusability and device-independence
q+ to agree with Chris , opine that separation of x and Y does not preclude formats for Y, but to consider possibly text if offered. Zakim sees timbl_jp on the speaker queue
the "has positive consequences including" doesn't merit the screen space it consumes. strunk-and-white says lose it.
PC/CL: there needs to be caveat
ACTION IJ To write caveat about integration formats like FO
q+ to talk about relationship between benefits of orthogonality and refining those benefits in this section.
CL: On "Format specification authors SHOULD design formats that allow authors to separate content logic from presentation and interaction concerns." At some point you need to bind things together (e.g., XSL FO).
Proposal: Tim Bray's earlier text be adopted as a principle.
DC: wants this to be a principle
Principle: The separation of content, presentation, and interaction has positive consequences including greater reusability and device-independence
DaveO: This issue is an instance of orthogonality.
DO: this is an instance of the principle of promoting orthogonality, so tie back to that. I believe that this issue is an instance of orthogonality. I'd like to mention orthogonality in the principle itself.
q+ to suggest. "This separation is an example of the principle of orthogonality"
DO: emphasizing general principle of orthogonality and what does it mean in this context (reuse of style as well as content)
DO: can we re-use all of c/p/i?
CL/TB: yes
TBray: I agree with DO, but I think that we should just say do this this is good. It doesn't increase the doc to tie the whole framework together.
DaveO, you wanted to talk about relationship between benefits of orthogonality and refining those benefits in this section.
happy to make a cross-ref.
timbl_jp, you wanted to suggest. "This separation is an example of the principle of orthogonality"
How about something like "This is an example of the benefits of orthogonality as described in ..."
Resolved: Add a cross ref.
4.5 Links

The <ol> description of URI references is poor. Let's try "Links are commonly expressed using URI References [defined in XX] which may be combined with a base URI to yield a usable URI. For example...

q+ to comment as per http://lists.w3.org/Archives/Public/www-tag/2003Nov/0030.html
q+ to ask if "Format specification authors SHOULD provide mechanisms that allow Web-wide linking, not just internal document linking" means IDREF harmful
The paragraphs beginning "Web agents resolve..." and "Section 5 of [URI]" should be flipped, they're in the wrong order.
q+ to add that links are also built from metadata about the URI. Links are URIs+metadata.
4.5 The notion of "active" and "passive" is nowhere defined and is not self-evident and should thus not be used. Just give examples of different behaviors, (a) browser sees <a href= (b) browser sees <img src= (c) robot sees <a href= (d) reasoning system see <rdf:about href= ... i.e. we don't need a taxonomy of types of link in here
q+ to either make an architectural point about URI references (change of scale) or drop it
+1 Hypertext Links
TBL: wants to retitle from "links" to "hypertext links"
"Hypertext Web" makes me uneasy. hmm...
TB: me too.
TBL: talk about relative URIs somewhere else
CL: agreed; relative uris get absolutized for all URIs not just for linking ones
TBL: wherever this goes, mention that the base URI is often the URI of the resource that produced the representation. Nuke "this is called resolving a URI reference". Talk about URI refs before talking about links.
Resolved: Take text from "A link is built...content location header" and make a new section entitled "URI References"

TBL: I support getting rid of active/passive. Delete "On the other hand, a reasoning system might focus activity on assertions, a messaging agent might traverse service descriptions, or a subscriber might describe "callback" control-points." The section makes more sense when it focuses on hypertext links.

DO: You talk about making this about hypertext links. Are we not going to worry about non-hypertext links?
TBL: Each use of URI is not a hypertext link. Hypertext is about user experience.


DanC_NRT, you wanted to either make an architectural point about URI references (change of scale) or drop it
constraining 'links' to 'hypertext links' - does that cut out stylesheet links? some uses of uri are not links, eg namespace URIs
NW: don't object to calling this hypertext links, I think we will get asked what about non-hypertext links and we need an answer. We have to plug this hole
DaveO, you wanted to add that links are also built from metadata about the URI. Links are URIs+metadata.
TBL: a page of N3 is full of URIs; do you lose anything by calling them just URIs?
DO: to me the world-view of a link contains a reference, the word "link" adds value because it's not just a reference, there's a construct there with metadata. I don't care which way we go, but we have to be clear
URI is one component of a link. uri in isolation is not a link
NW: look at an XHTML doc with namespaces at the front and <a href=> inside, which ones are hypertext links and which aren't
DO: this is why Roy talked about active/passive
TBL: an ontology of links would be interesting
NW: I'm not talking about an ontology of links
Why not define link in the general sense, then talk about hypertext links? I propose: 3 sections: 1) URIs; 2) Links; 3) Hypertext Links
Chris, you wanted to ask if "Format specification authors SHOULD provide mechanisms that allow Web-wide linking, not just internal document linking" means IDREF harmful
CL: thus, if we reduce this to hypertext linking, then is this no longer harmful because it's not a hypertext link
TBL: this is a specialization of the principle "Use URIs"
CL: can we have a link back to that?
NW: can't make this a must, it needs to be a SHOULD
TBL: if you later want to relax a same-doc limitation, if you've used a URI you're good but not if you used an IDREF
PC: comment about generic supertypes that I don't understand
DanC_NRT, you wanted to wonder why there are no principles in this section, and to note that 'hyperlink' is a first-class terms
OK so the answer is YES
DC: not sure what we're trying to say
I think we have consensus that IDREF considered harmful, but DanC notes that we have not necessarily told our readers that...
DC: can imagine principles about hypertext linking, idref, etc...
timbl, where do we have the general IDREF principle? I don't see it
NW: to me, a URI in a representation is a link, if there are differences, then we have to be precise
DC: suppose you said a URI in a representation is just a URI in a representation. Never mentioning links. I like the idea of making this a hypertext section
TB: I agree with norm. We need a clear answer or we are going to get the questions that Norm said. Useful to say use general links rather than the local document sub-type only.
1st sentence 2nd para 4.5 "When a representation of one resource refers to another resource with a URI, this constitutes a link between the two resources."
TB: If SVG had been designed without the ability to embed URIs that would have been a less powerful language.
TB: Design for use of links in your language.
[the tag loses those using windows to the irc channel]
"Intended for traversal"
TB: can't live with saying "hypertext links" without saying what that means as opposed to ordinary links
TBL: how about calling the section "hypertext"
DO: let's split into two sections, active/passive per Roy's ideas, some URIs aren't there to be followed e.g. namespace names.
DC & DO talk about when URIs are links
IJ: this contradicts our recommendation that namespace URIs be dereferenceable
DO: talking about existence of namespace names which aren't followed
TBL: Distinction between URIs which are links aren't aren't. "intended for traversal" you mean "at the application level". Whereas passive ones are those the machine uses maybe just for identification. I'd call the active ones hypertext links and the others just URIs. There's no metadata, they're just links.
DO, CL: But a namespace name does have metadata, including the fact that it's a namespace name.
TBL: but neither of us have a way forward.
TB: I don't buy the distinction between active/passive links. I propose that we retitle the section "Hypertext", avoiding the phrase "hypertext link", keeping the existing practices and principles. There may be useful work down the road on taxonomies. Propose: retitle it "hypertext", keep the principles.
IJ: note definition of link as URI in representation from section 2.
CL: a link isn't a link without context. A bare URI isn't good enough.
TB: do you want to change section 2?
CL: yes.
NW: +1 to TB's proposal
TBL: +1 to TB, one reason is that there is a lot of architecture out there around hypertext e.g. the Dexter model. Pre-web stuff. Propose referring to this model in the doc out of politeness if nothing else. Semantics of "back" "next" etc.
SW: +1 to TBL
DC: def'n of link used to be motivation for principle, now not happy with justification for the principle in section 2. Sentence "When a rep contains a URI", move that back before "Identify with URIs". The reason we identify things with URIs is to get the network effect.
DO: don't understand why. The link exists.
DC: Doesn't appeal to me. Network-effect business needs to go above the Use URIs principle. Make that the 2nd para of section 2.
TB: When a URI appears in a representation, it constitutes a link. We can't take that out.
DC: I wouldn't mind losing the first sentence. Move "When a representation..." para back to section 2, and I'm OK with losing first sentence and emboldened link.
TB: not OK with losing 1st sentence.
Resolved to move 2nd para of 4.5 to section 2 before 1st constraint.
TB: when there is a URI in a representation then there bloody well is an element.
CL: What about XLink design, insisting on one URI per element etc?
TB: orthogonal to issue of whether there's a link there or not.
SW: ... didn't get it ...
CL: section about "absolutizing URIs" belongs where? .... general debate...
TBL: halfway between data formats and URIs, currently it's in DF and that's OK
DO: same question as CL
TBL: ... proposes text about the goodness of using URIs and how this leads to the network effect ... ... move the def'n TB likes back into 4.5.
TB: OK with that
CL: to the sentence TB likes, say "additional information may also play part of the link".
DO: worried about defining links in a section entitled "Hypertext" which leaves out non-hypertext apps of links:
TB: it's OK
SW: is XLink-related stuff relevant here?
DC: I used Dexter reference but didn't actually read the source documentation.

Resolved to do following edits for 4.5, DC abstaining:

  1. Retitle 4.5 "Hypertext"
  2. Use TBL's proposed text for 2 that doesn't use the term "link"
  3. Keep definition of "link" in 4.5
  4. Define Link ::= URI Metadata*
  5. Create subsection on uri references; fix text about building links to better text on absolutizing.
  6. - d/Hyperlink
  7. - In 4.5, first para, include example of absolute URI (with /foo)
  8. d Last sentence of paragraph after "Web linking" GPN
  9. Lose the active/passive text; see TB text.

4.6. XML-Based Data Formats

DO: In 4.6, I'd like to talk about languages rather than formats.
DC: I could live either way.
DO: Use a transition from format to language.
IJ: I'll try to switch over to language in 4.6.
4.6.2. Links and Qnames in XML
DO: We need to say more about the badness of QNames. For example, Give an example of qnames harmful. Canonicalization: you can lose the target namespace.
TB: I agree with DO.
DO: "Format specification authors who use QNames MUST provide a mapping to URIs". This should be SHOULD.
SW: Two nuances:
  1. Is there a mapping from qnames to URIs?
  2. Is a qualified name something other than a URI?
SW: If someone is using a Qname because that meets their needs, why should we obligate them to use a URI?
DC: They are using things other than URIs to refer to things; that's a no-no. URI Refs are not URIs; they are mapped to URIs.
TB: Recast this as follows: "The use of Qnames as identifiers without providing a mapping to URIs is inconsistent with Web Architecture"
CL noting on 4.6.1: "The data's usefulness should outlive the tools currently used to process it." Please don't imply that can't use XML for short-lived things.
DC: I like TB's proposal somewhat; I think that this closes issue 6.
Resolved: Close issue 6 with TB language: "The use of Qnames as identifiers without providing a mapping to URIs is inconsistent with Web Architecture".
Action IJ:
IJ: What text from finding can we use to pad section 4.6.2?
Action NW/IJ: Rewrite 4.6.2. Revise first GPN per TB text. Second one ok. Take language from finding to give more context.
Action DO: Point WSDL WG to resolution of issue 6.
4.6.3. XML Namespaces
DC: Anyone like?
NW: I think ok.
TB: Delete "In that respect they are a somewhat special case."
[Support to delete]
[DC starts chairing]
SW: The section is confusing/confused about local names, expanded names, etc. Don't introduce new term "expanded term". Names are either qualified or unqualified. They are not necessarily introduced as qualified names using QName syntax.
TB: "Attributes are always attached to the element instance on which they appear."
SW: The meaning of attributes are either scoped globally or locally. I think in this section need to:
  1. Distinguish qualified/unqualified name.
  2. Talk about global/local scoping of meaning.
DO: I'd like to change format/language in this section.
TB: "Specification of new XML languages". I'm ok with using "language".
DO: Yes.
DC: What is the main point of this section?
TB: Use namespaces.
CL: When to use namespaces.
TB: I think the issue CL raised [scribe missed] is that for attribute there is a range between things that are universally global and others that are local. Ok for the document to talk about a range.
TB: I propose to delete 4.6.3.
DC, SW: Yes.
PC, CL: That doesn't appeal to me.
IJ: I propose shrinking the section to it's main point; leave out ns mechanics.
DC: I support that.
CL: No.
TBL: I can live with keeping the section.
4.6.4. XML Namespaces and Versioning
{Support to keep the section}
NW: I want to move 4.6.4 back to section on versioning.
Resolved: Move 4.6.4 to section on versioning (4.3.1), CL abstaining.
DO: I think there needs to be a clearer relationship between namespaces and versioning. I'd like to tie together the choice of namespace change policy and the extensibility model (e.g., MUST IGNORE).
SW: I'd like to know what in the story convinced Nadia.
IJ: It can be rewritten as: "The choice of extensibility model and namespace policy helps them meet their desired goal (changes, less cost)."
Action IJ:
4.6.5. Namespace Documents
{Lots of support for 4.6.5}
Resolved: "In general, there is no "best" data format for creating a namespace document." Change that to "There is no established best practice".
Resolved: There is support for PC to do a finding; action item still pending
PC: I think that it's valuable to do the finding since we may have glossed over some important points.
DO: I think there's a bug in GPN of 4.6.5. Consider issue 37, which says that it's ok to use frag ids for abstract components. The use of RDDL as a representation in conjunction with the frag id intended for WSDL will break.
TB: I think that that issue is adequately covered in other sections.
DC: What about a cross reference here to the section on fragments?
CL, TB, IJ: Support for DC proposal.
TB: I think it would be ok to put a para under GPN to say that if someone wanted to combine a ns name and a frag id, they need to ensure that the representations served for that resource are consistent.
Resolved: Include a cross ref to frag id issues from 4.6.5 along the lines of what TB said.
4.6.6. Fragment Identifiers and ID Semantics
{People want this section}
CL: Create:
Resolved to make CL's change.
Abstaining: SW, TBL.
TB: In ordered list of 4.6.6, all of a sudden talk of PSVI...
CL: Include a reference.
Action IJ: Add references to Infoset and PSVI.
Resolved: Delete editor's note "Editor's note: W3C's XML Core Working Group is investigating the question of fragment identifier semantics."
Action IJ: Ensure that pointed to from issues list.
4.6.7. Media Types for XML
TB: essential to keep this section.
{People want this section}
4.7. Future Directions for Formats
{Support from three people to keep, three people to lose it}
TB: Delete this section.
CL: I like 4.7.1 as a pointer to a known hole.
TBL: I have some text, meant for a new section of 4 (not future directions) on composition of data formats.
[cf. TBL comments on this section on the list].
CL: +1 to TBL's language.
TB: Lose the section, or replace 4.7.1 with TBL's text.
SW: Extensibility and mixing namespaces are different sides of the same coin.
DO: I suggest that this section relates to extensibility.
TBL: However, there is an issue of talking about extensibility before namespaces.
IJ Proposal:
TB: Don't reorganize 4.3, but ok to create subsection for extensibility.
TBL: We can split my proposed text into a bit on extensibility and a bit on future directions.
CL: "4.7 Composing Data Formats"
Proposal: Amend recent resolution so that 4.7 contains only one item, issue 29.
Resolved: Adopt the amendment.

1.7 Section 5 (Conformance)

Authors, Managers,
Users, Webmasters ask us
For a cool logo

IJ: I propose deleting 5 and talking to the QAWG about what type of conformance section we should have.
DO: I think that it's important to keep this section since we do make MUST statements.
TB: I don't think the utility of this document will improve by allowing conformance to it. There is a cost to having the section raises issues about industry conformance, politics, etc.
SW Proposal: Move useful content of this section to front of document.
TBL: While I'd be happy to see up front why there is no conformance clause here's why there shouldn't be one. The conformance section establishes a bar for a subset of a given class of objects to reach. And if the bar is reached, that implies the following...
TBL: A lot of what we want people to do is expressed in declarative terms (i.e., not MUST) in constraints. That will tend to mislead people about what they think they have to do.
TBL: Also, the document is so multi-faceted, that a single conformance profile doesn't work.
TBL: Also, I've never heard of conformance for people.
PC: I propose to include a statement in 1.1.1 that says:
DC summarizing: Move RFC 2119 reference to early in the document.
IJ proposal:
So resolved, unanimously.

2. Discussion of selected topics

2.1 Good practice note on error handling in 1.2.2

TB: "Specification authors SHOULD specify agent behavior in the face of error conditions." As I recall, DC objected to this note.
DC: I don't agree with it as stated.
TB: Networked informations that acknowledge where errors occur and document them are superior to those that do not. E.g., HTTP. Also, deterministic error-handling in XML. Third, discipline in SOAP of MUST IGNORE/MUST UNDERSTAND. In general, you should specify the reaction of the system in the face of predictable errors.
DC: A better section heading might be "Robustness". HTTP 404 is not error handling; it's part of the protocol.
TB Proposal: Leave it in.
TBL: I think that there are times when it's appropriate for an agent to behave one way, and other times when other behavior is appropriate. I'd prefer that specs say "When this happens, the result is meaningless." Example of inappropriate behavior by an agent is stopping processing when, e.g., not finding a DTD, which is not what the user wants.
PC to DC: Please say more about robustness.
TB: I'd be ok with a section change on robustness.
PC cites example of specifying robustness in xpath 1.0 (regarding "+", to generate a response at all case) that has made it hard to evolve.
TB: I am ok to refine this to say that specs should talk about strategies for handling highly predictable error conditions. Would it be easier to revise GPN to say: "Specification authors SHOULD specify strategies for handling predictable error conditions."
DC: I don't consider the XML case exemplary. The scope of the spec expanded from being just a data format spec to being a protocol as well for handling it. Yes, people should look at history when designing. I don't like "Similarly" in first bullet of 1.2.2. Our readership asked us to comment on "be liberal with what you accept and conservative with what you produce." I'd like for us to include such text and comment on it. I'd be happy to leave other text and delete section GPN in this section. Please also connect this section with section on authoritative server metadata.
TBL distinguishes format spec requirements from protocol spec requirements, where predictable errors are more explicitly specified. In format specs, it's more about meaning.
CL: I would object to promoting the "be liberal with what you accept and conservative with what you produce" paradigm. In practice, this has been harmful.
DO: I think that guideline is useful and promotes interoperability.
DC: I don't object to the principle as revised. I don't think the XML spec is exemplary since there are three parties in the protocol (since "at user option"). I think what XML spec authors did at the time was appropriate, but I don't want to do it again. I think our readership would expect us to comment on that principle. Can we agree to close errorHandling-20 at the same time?
NW Proposal: Delete the second GPN in 1.2.2.
So Resolved.
TBL: I think that we should talk about "be liberal with what you accept and conservative with what you produce". There are three situations where one might find oneself with this possibility.
  1. A specification is unclear.
  2. The specification says "Transmitters should only do this, but receivers should also accept this." That's weird.
  3. Software can be more liberal in what it accepts.
TBL: The XML spec should have said "A document is valid in these conditions."
TB: I think it would be desirable if the arch doc did include some discussion of the liberal/conservative dictum. I would be ok to go to last call without such text. TB: One reason the Web scales is HTTP 404. I think we should discuss what the lessons are.
[TB satisfied with first bullet discussion]
[The TAG reviews issue errorHandling-20]
TB Proposal: Close errorHandling-20 citing Arch Doc.
PC: What about handling of deprecated things?
DC: I don't want us to discuss that.
[We review text from DO on extensibility for beginning of document. The text relates extension to orthogonality and errors.]
TB: I think we can just say we decline to take up the part of the issue related to deprecated features.
TB Proposal:
Resolved to accept TB proposal, TBL and SW abstaining.
Action CL: Write text to reviewer about the resolution of errorHandling-20.
Action DC: Follow up on KeepPOSTRecords with Janet Daly on how to raise awareness of this point (which is in CUAP).

2.2 Proposal to add SOAP to example list of protocols in 3.2

Resolved to add SOAP to list "(e.g., HTTP, FTP, NNTP, SMTP, etc.)" in 3.2.

2.3 Primacy of HTTP URI Scheme

See proposed text from TBL with edits from yesterday.

TB: I think TBL's text is good; this will lead to a flood of email.
IJ Proposal: Talk about how expensive it would be to reinvent HTTP by pointing out all of the things that would have to be changed and how costly that would be.
{Some support for that}
DC: I'd like to resolve HTTPSubstrate here if we can. We need to cite RFC3205.
TBL: If we refer to the RFC, we point out the damage that can be done by following certain parts of the RFC.
Resolved: IJ will write text for this section that demonstrates the cost of implementing (or re-implementing) a URI scheme by way of an HTTP example.
[No closure on issue HTTPSubstrate]

2.4 Definition of "on the Web", relation to "information resource"

What to do with Editor's Note about HTTPRange-14 just before 3.1? Recall that pushback was about losing the term "on the Web".

TB: I think the notion of "information resource" is a useful notion, but we haven't crystallized the notion enough. Whereas it would be useful to talk about something being on the Web, we don't have consensus on that. On the balance, I think we can go to last call without having done that work, so I am in favor of simply losing the note.
DO: I'm roughly comfortable with RF's definition. I think the community uses this term enough that we should talk about it in the document.
TBL: I am uncomfortable with "on the Web" meaning simply that there's a URI for a resource. People on the street use "on the Web" to mean there is a representation available.
TB: I find RF's definition to be non-functional. I also agree with TBL's sentiment regarding the availability of a representation.
CL: Same here.
DO: I agree that there's also an expectation that there's a representation available.

"On the web" is a phrase used for a resource which has at least one URI which can under some circumstances (such as access control) be dereferenced using network protocols.

An information resource is one for which there is a reasonable expectation that representations will be made available.
I can live with TB's proposal.
An information resource is one for which there is a reasonable expectation that representations will be made available.
TEST CASE file:/c/My%20Documents/foo.html is that on the web?
TimBL: "On the web" is a phrase used for a resource which has at least one URI which can under some circumstances (such as access control) be dereferenced using network protocols.
subject to access control *I* can access it
IJ Proposal: "Note: The Web Architecture does not require a formal definition of the commonly used phrase "on the Web." There is general agreement that, informally, something is "on the Web" when the user has (modulo access rights, error conditions, etc.) access to a representation

of the identified resource."

Are things that have URNs "on-the-web"
<general agreement that these formulations say "no, things with URNs aren't on the Web">
NW: I think that "on the Web" is a colloquialism and we don't need to ground it.
TB: I used the phase "expectation".
DO: I can live with expectation or "intended for dereferencing".
NW: I don't think TB's definition helps (w.r.t. httpRange-14).
DO: There are two aspects of "on the Web":
SW: I believe that being GET-table is not a requirement.
I do not wish to define "on the web."
heh, we define the web in the first paragraph of 1.0 Introduction, as an information space etc.
URNs are retrievable on my machine, so they're as much on the web as any other URI to me.
Proposal: "Note: The Web Architecture does not require a formal definition of the commonly used phrase "on the Web." Informally, something is "on the Web" when a user can under some circumstances (access rights, error conditions, etc.) access a representation of the identified resource using network protocols."
re TBray: if we can says something about it then in some sense it is 'in-the-informations-space'
"... when a user can under normal circumstances (e.g. assuming no access-control or network problems arise) can access a representation"
"The Web Architecture does not require a formal definition of the commonly used phrase "on the Web"."
"Note: The Web Architecture does not require a formal definition of the commonly used phrase "on the Web." Informally, a resource is "on the Web" when a user can (modulo access rights, error conditions, etc.) access a representation of it using network protocols."
Informally, a resource is on the Web ...when a URI for it has been published...and the user has access to a representation (given appropriate network connectivity and access privileges)
"Note: The Web Architecture does not require a formal definition of the commonly used phrase "on the Web." Informally, a resource is "on the Web" when it has a URI and a user can (modulo access rights, error conditions, etc.) use the URI access a representation of it using network protocols."
Proposal: "Note: The Web Architecture does not require a formal definition of the commonly used phrase "on the Web." Informally, a resource is "on the Web" when it has a URI and a user can use the URI access a representation of it using network protocols (given appropriate access privileges, network connectivity, etc.)."
"Note: The Web Architecture does not require a formal definition of the commonly used phrase "on the Web." Informally, a resource is "on the Web" when it has a URI and a user can (modulo access rights, error conditions, etc.) use the URI to access a representation of it using network protocols."
change user to agent
IJ Proposal: "Note: The Web Architecture does not require a formal definition of the commonly used phrase "on the Web." Informally, a resource is on the Web" when it has a URI and a user can use the URI access a representation of it using network protocols (given appropriate access privileges, network connectivity, etc.)."
so Resolved. SW, NW abstaining.
PC: Does this cover the case of internal private web?
TB, CL: Yes.

2.5 Edits to extensibility/versioning finding

See SW's photos of the whiteboard of TBL's model.

Proposal: Split the extensibility finding into two documents (rather than two sections); one re: schemas, the other about the other stuff.
Proposal NW:
Is this 1 issue with 2 findings? 2 issues with 2 findings? 1 issue with 1 finding that has 2 sections? If 1 issue with 2 findings, is it "finding #1: General Exten/vers" which refers to "finding #2: XML Schema application of finding #1"?
Proposal NW:
http://www.w3.org/2001/tag/doc/versioning-20031116.html (not yet accessible)
Member only. I'm reluctant to make it public without formal consent from TAG
IJ and NW to talk about latest version link off line.
Refer from issue 41 (issues list) to the schema text in section 9 of the 3 October version of the extensibility finding.
PC proposal:
(i.e. each pointer refers to something agreed by the tag. works for me)
Resolved: Accept PC's proposal.

2.6 On URI Ambiguity

See proposal from Tim Bray

2.7 Definition of "agent"

CL: I think we should look at this closely to see whether it works in all cases.
DO: I think we should say people are not agents.
DC: If people are not included in the class, then say people and software. Agents has a long history in the community.
TBL: I want a generic class that includes people.
"An agent is something which can show independent action, whether conscious or not."
DanC_NRT, you wanted to excerpt from http://www.w3.org/2003/05/27-pubrules.html#status
rather: http://www.cyc.com/cyc-2-1/vocab/agent-vocab.html#Agent
DC: What are the places in the document where the distinction between people and software matters?
ago (egi actum ) : to spend time, live / manage, drive, lead.
Its what we do to the web's full potential.
Resolved: The term "agent" includes people and software.

Action SW: Verify that "agent" is used consistently in the document and makes sense as both people and software.


2.8 XInclude relation to fragment identifiers

NW: Recall - xinclude design uses to strings, not one, to identify a resource.
DC: I would like to follow up with the Working Group.
[NW provides interesting case]
NW: myfile.txt is served as 'text/plain'
... with the WG ala: pls cite "use URIs" and say "we know about that, and we're not doing that because we're building XML infrastructure, not an XML application"
NW: Parser told to override that media type. We pushed back on that design. The new design looks like this.
href="myfile.txt" parse='xml' xpointer="xpointer(#('foo'))"
So this violates the principle to use URIs since there are two strings.
DO: Does a design make sense where there's a choice of fragids that depends on the media type of the content served?
+1 DO, follow up with that design suggestion. it's more complex in a way, but nicer in the common case for the author
CL: When I look at the new design, seems analogous to getting some xml, transforming it with xslt, and manipulating.


timbl_jp, you wanted to say that 1) to have the string "foo.txt#xpointer()...." is an abomination; 2) It isn't overwriting but applying a function , as chris implied. 3) it
... is a common case not a screw case, as XML doesn't have fragid syntax but XHTML and SVG do,...
secondary resource?
TBL: The group is applying a function. They are turning plain text into XML by parsing plain text.
TBL: I see 3 modes: don't touch it, parse it, un-parse it
TBL: I prefer the new design. They are saying:
  1. Get representation of this
  2. Parse the returned text
  3. Determine secondary resource based on those bits and frag id.
DO: I'm concerned that the arch doc doesn't say enough to explain this case. I have concerns that we have not explained in the XML model sufficiently when the frag id is applied.
IJ: I propose we include this as an example in the mime type finding.
NW: I think that DO is right. There is something else that needs to be said. With the arch in hand, I can argue that both are wrong. I am inclined to believe that you can phrase it in such a way that it makes sense.
TBL: Please do not use this as an example in the finding on mime override.
[Discussion of whether we should investigate this further]
TBL: I move that we resolve to consider this as a possible issue after the beginning of last call.
SW Proposal: Add this as an issue to our issues list.
So resolved. DC opposed.
Action IJ: Add to the issues list a new issue.
Suggested names:
- DerivedResources
- XIncludeFragIDs
- DerivedResourceFragIds
for the record I object to a name that lambasts a W3C WG for a previous design that they are no longer promoting hence,fragidoverride etc is totally inappropriate as a name.

2.9 New issue ultimateQuestion-42

Resolved: Add ultimateQuestion-42.
[For discussion in April 2004]
you know, the answer to life, the universe, and everything. in memory of Douglas Adams

2.10 Orthogonality of specifications

Action DC: Elaborate on value of orthogonality of specs in section 1.2.1 including example HTTP/HTML
DC: My proposed text is meant as an elaboration; it might replace part of para 3.
NW: I am happy to accept DC's text as example;.
Proposal to accept DC text with NW's friendly amendment to cite as example.
so Resolved.

2.11 Media Types and Fragment Identifier Semantics

Action DC: Write up some replacement text for text at beginning of 3.3.1.
DC: I propose to withdraw.
Resolved to WITHDRAW.
DC: Recall that we said we would replace variables with names.

2.12 Proposal for new 1. subsection on Extensibility principle

Completed action DO/NW: Produce new text for a small subsection 1.2.4 (or perhaps for 1.2.1)
Extensibility is a type of orthogonality which permits the independent specification and relationship between orthogonal abstractions. <<insert 3rd paragraph from 4.3 and translate "format designer" into abstractions>> <<Experience shows that abstractions that strike the right balance between allowing change and preserving interoperability are more likely to thrive and are less likely to disrupt the Web community..... Some examples of successful.....and u
Some examples of successful.....and user agent plug-ins".
Extensibility is necessary to enable compatible evolution of abstractions. Abstractions that do not provide for extensibility cannot be evolved in a compatible manner. The conditions under which an extension is an error should be clearly specified.
DO: I am trying to tie together extensibility and error-handling.
hmm... mostly looks cool, but extensions and errors are exclusive, to me, so perhaps "under which conditions mutations are extensions and when they are errors"
DC: To me, something is either an extension or an error. Hmm, I can see how it can be a multi-party thing and thus more an error on one side than the other.
[TAG edits para in real time]
(anybody editing with Amaya, beware: it renames fragments surprisingly sometimes)
The conditions under which use of an extension must provoke an error should be clearly specified
(hmm... has that problem/bug been reported? it bit bwm hard when managing RDF Core issues)
DC, DO: +1 to CL text.
(insert movie of timbl dramatically acting out extensibility and flexibility ;-)
tbl writes on whiteboard: [[
L1 -> L2 where L2 \superset L1
]] start over
L1 -> L2 where L2 \superset L1
L3 = L1 x L2 [sum notation above/below L1, L2. skw took a photo]
. Extensibility when you call L1 & L2 versions of the same language
ACTION skw: provide photo of extensibility/versioning whiteboard notes for the meeting record
tbl writes in red...
[[ Vt \superset Vo
L = ML x Vo
L[T] = ML x V[T]
=> L[T] \superset L
(lots of whiteboard discussion)
IJ: that's called a profile [murmurs of agreement. What's 'that'?]
tbl writes more in black [[
L1 -> L2 where L2 \subset L1
and a bit more...
P = L1 x L2 x L3
TBL: another sort of profile -- DC:aggregate? SKW: Composite? -- where you need PNG + SVG + HTML...
[... discussion of composability etc. resumes ...]
"The information that people represent in the Web and the technologies they use to represent that information change over time. Versioning is the process of managing that change."
The information in the Web and the technologies used to represent that information change over time.
then: Some of the established mechanism for managing that change are extensions and profiles.
TBL: You can talk about compatibility of protocols; would require more math.
SKW: A protocol can be considered a language because the description of any trace is in a language.
(Set of sentences => Set of messages connection)
interesting... "4. Extensibility and Architecture" in the SIP spec http://www.zvon.org/tmRFC/RFC3427/Output/chapter4.html
Completed Action TBL: Draft text for a new 1.2.2 on extensibility (see below).
Before the good practice note: Extensibility is not free. Providing hooks for extensibility is another requirement that must be factored into the costs of language design. Experience suggests that the long term benefits generally outweigh the costs.
+1 Norm
Review of proposal from TBL.

DC Proposal: Let DO/IJ/TBL write text and if they come to agreement, we accept it.
so Resolved.

2.13 Qnames in XML

NW: I completed another action - draft a new 4.6 on qnames

Proposed text:

4.6.2 QNames in XML: Qualified names were introduced by [XML Namespaces]. They were defined for element and attribute names and provide a mechanism for concisely identifying a URI/local-name pair. Other specifications, starting with [XSLT], have taken QNames and employed them in contexts other than element and attribute names. Specifically, QNames have been used in attribute values and element content. Some specifications use QNames as shortcuts for unique identifiers derived from a URI/local-name pair that have no relationship to element or attribute names.
Using a QName as a shortcut for a URI/local-name pair is often convenient, but it carries a price. There is no single, accepted way to convert QNames into URI/local-name pairs or vice versa. The identification mechanism for the web is the URI.
Good Practice: QName Mapping
Format specification authors who use QNames MUST provide a mapping to URIs.
QNames and URIs cannot be distinguished lexically

Good Practice: QNames Indistinguishable from URIs Format specification authors MUST NOT define...

IJ: Can we delete "concisely"?
TBL: s/identify/creating
TBL: Leave "concisely"
DC: I'd like NW text in the URI refs section.
DO: What about one of costs of using qname in content - xml canonicalization - loss of namespace name.
DC: I'd expect that in the finding.
s/loss of namespace name/loss of binding
s/canonicalization/exclusive canonicalization/
good question... status of the qnames finding? /me looks it up...
Resolved to accept NW's proposal.
NW: I have an action to add something on canonicalization to the finding. I believe that my action item re: 4.6.2 was replacement text. Note in particular the loss of the link to the TAG issue.
TBL: Put xlinkScope-23 link in section on hyperlinks.
TBL: XLink is an appropriate specification for representing links in hypertext applications.
- Replace 4.6.2. with NW proposed text.
- Move link to issue 23 to section on hypertext with TBL's sentence.
- "Some specifications, e.g. XXX"
- Include an example of specs that include qnames in content.
s/in content//
so Resolved.

2.14 Separation of content / presentation

Proposed text: "Experience shows that the allowing authors to separate content logic from presentation and interaction concerns aids reuse, and helps them reach the widest possible audience. This may be done by serving the separate components for integration on the client, or by sending the delivery context in the request for integration on a server."
[Response to CL: 1) Propose a sentence for 4.4 about delivery context.]
TBL: s/content logic/content semantics/
NW: Recall that TB said it was sometimes useful to reuse bytes no matter what they mean. You might decide to pick up a doc an harvest links.
DC: You've gone outside of the arch doc at that point.
TBL: Or another way to view that is that you are RELYING on the link semantics and doing something else with them.
[off-the-spoken-record response to IJ: was trying to keep it short and we already agreed to link to DI from ArchDoc yesterday]
CL, DO: Don't like "semantics"
("that point" being when you "... disregard that it's a docbook document")
DO: I can live with "content" alone and dealing with the risk of pain.
PC: I think most of the community will know what we mean (80/20 cut). I believe that separating content from presentation aids reuse but also produces a more robust application.
IJ: Did we agree yesterday that there would be a link to orthogonality here?
There is no hard and fast division between what is 'purely semantic content' and what is 'just presentation'. The term "semantics" is often used or misused in this context, however any structured format is likely to have some semantics; and some semantics refer to precise details of presentation. Thus, 'semantics' is not used in this section.
Resolved to accept CL's proposal, IJ abstaining.
TB's action completed then subsumed.

2.15 Other actions

3. Planning

3.1 TAG Communications

The TAG met with Janet Daly (Head of W3C Communications) during lunch to discuss promotion and communication of TAG work.

3.2 Last Call

[DC Chairing]
The TAG discussed last call planning
Action IJ: When the time comes, IJ will write up status section.

3.3 XML 2003

Plan to attend: DC, NW, CL, TB, PC.

PC: I don't think we need slides; just stand up in front of the crowd.

3.4 Tech Plenary 2004

[The TAG did some tech plenary planning]
PC: Ask for 60-90 minutes for a TAG slot.
DC, DO: Yes, min 90 minutes.
Action SW: Take to tech plenary committee the TAG's proposal.

4. Closing thoughts

PROPOSED: to thank the hosts, Keio, ...
seconded, thirded generally

Resolved, with applause.

Thanks to Gerald Oskoboiny, Wendy Chisholm, and Dan Connolly for haiku musing.

The World Wide Web is
the Sum of Human Knowledge
Click Here for Free Porn

Ian Jacobs for Stuart Williams and TimBL
Last modified: $Date: 2007/03/19 10:35:50 $