Network Working Group P. Hoffman Internet-Draft VPN Consortium Intended status: Informational November 21, 2010 Expires: May 25, 2011 Requirements for Draft Tracking by the IETF Community in the Datatracker draft-ietf-genarea-datatracker-community-02 Abstract The document gives a set of requirements for extending the IETF Datatracker to give individual IETF community members, including the IETF leadership, easy methods for tracking the progress of the Internet Drafts of interest to them. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on May 25, 2011. Copyright Notice Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Hoffman Expires May 25, 2011 [Page 1] Internet-Draft Datatracker Community Tracking Reqs November 2010 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Usage Scenarios . . . . . . . . . . . . . . . . . . . . . 4 1.2. Context for This Document . . . . . . . . . . . . . . . . 5 1.3. Definitions Used in This Document . . . . . . . . . . . . 6 1.4. Expected user interactions . . . . . . . . . . . . . . . . 6 1.5. Discussion of These Requirements . . . . . . . . . . . . . 7 2. Requirements for Tools Features . . . . . . . . . . . . . . . 7 2.1. Lists . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.1. Requirement: Lists of drafts can be large . . . . . . 7 2.1.2. Requirement: A user can create multiple lists . . . . 7 2.1.3. Requirement: Some lists must be able to be private or anonymous . . . . . . . . . . . . . . . . . . . . . 7 2.1.4. Requirement: It must be easy for IETF leadership and individuals to make lists they create publicly-readable . . . . . . . . . . . . . . . . . . 8 2.1.5. Requirement: Specifying the drafts that are in a list must be simple . . . . . . . . . . . . . . . . . 9 2.1.6. Requirement: Adding groups of drafts to a list by attribute must be simple . . . . . . . . . . . . . . . 9 2.1.7. Requirement: Lists can dynamically include other lists . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.8. Later Requirement: Users can add comments to say why they added a draft or group . . . . . . . . . . . 10 2.1.9. Requirement: These extensions must not make the Datatracker take up too many resources . . . . . . . . 10 2.2. Notifications . . . . . . . . . . . . . . . . . . . . . . 11 2.2.1. Requirement: Users can be notified when a draft changes status . . . . . . . . . . . . . . . . . . . . 11 2.2.2. Requirement: Every list has Atom feeds associated with it . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.3. Requirement: Every list has mail streams associated with it . . . . . . . . . . . . . . . . . . 12 2.2.4. Requirement: Notifications need to specify which list caused the notification . . . . . . . . . . . . . 12 2.2.5. Later Requirement: The tool must have instructions on how to use it Atom feeds . . . . . . . . . . . . . 12 2.3. Display in the Datatracker . . . . . . . . . . . . . . . . 12 2.3.1. Requirement: Users can define how the rows are sorted in a display . . . . . . . . . . . . . . . . . 12 2.3.2. Requirement: Users can choose which attributes to display . . . . . . . . . . . . . . . . . . . . . . . 13 2.3.3. Requirement: Users can flag drafts with dates in the future . . . . . . . . . . . . . . . . . . . . . . 14 2.3.4. Requirement: Users can specify highlighting of drafts with recent changes . . . . . . . . . . . . . . 14 2.4. File Output . . . . . . . . . . . . . . . . . . . . . . . 14 Hoffman Expires May 25, 2011 [Page 2] Internet-Draft Datatracker Community Tracking Reqs November 2010 2.4.1. Requirement: Users can get their current list as a single file . . . . . . . . . . . . . . . . . . . . . 15 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 4. Security Considerations . . . . . . . . . . . . . . . . . . . 15 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 16 6. Informative References . . . . . . . . . . . . . . . . . . . . 16 Appendix A. Possible Tracking of Non-draft Documents . . . . . . 16 A.1. Tracking RFC Status Changes and Errata . . . . . . . . . . 17 A.2. Tracking WG Charter Changes . . . . . . . . . . . . . . . 17 A.3. Tracking IANA Registry Changes . . . . . . . . . . . . . . 17 A.4. Tracking Changes in Documents Outside the IETF Sphere . . 17 Appendix B. Some Known Open Issues . . . . . . . . . . . . . . . 17 Appendix C. Differences Between -00 and -01 . . . . . . . . . . . 18 Appendix D. Differences Between -01 and -02 . . . . . . . . . . . 18 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 20 Hoffman Expires May 25, 2011 [Page 3] Internet-Draft Datatracker Community Tracking Reqs November 2010 1. Introduction IMPORTANT NOTE: This is an early draft of a set of requirements. It has gone through one round of community review at IETF 79 in Beijing, and thus probably is missing things that should be included, and some of the things in this draft are wrong and will be changed in future drafts. Nothing in this draft should be considered solid. The IETF Datatracker is used by many IETF community members to find the status of Internet Drafts (I-Ds) and view drafts that meet particular criteria. The current Datatracker, found at , allows anyone to search for active I-Ds and get a list of drafts matching the given criteria. (The Datatracker also allows for searching RFCs and expired I-Ds, but those are not relevant to this discussion.) Users can search in the Datatracker by the filename of the draft, words in the draft's title, author, associated Working Group (WG) or IETF area, the responsible Area Director (AD), or IESG status. The returned list of drafts includes five columns: draft filename (with an active link to an HTMLized version of the draft maintained by the IETF tools team), the draft's title, the date it was submitted, its status in the IETF process, and the responsible AD (if any). For example, the output of a search in the current Datatracker can be seen at . Instead of using the search capability of the Datatracker to manually find I-Ds of interest, users might want to create lists of drafts that they normally follow. Some users will want to keep their lists to themselves, but others will want to allow others to view their lists. Different users in the IETF community will have different ways that they want to get information on draft updates and status. Many users will want to be notified immediately, such as through an Atom feed (see [RFC4287]) or automatically-generated email. Many users will want to only find out about updates when they go to a web page. Many users might want to get the data for a list as input to other tools. And, of course, some users will want all three. All of these desires are related to the overall desire to track drafts through their lifecycle. 1.1. Usage Scenarios The main motivation for these proposed changes to the Datatracker is to allow a variety of potential users to be able to track drafts and thus be better able to see when important events happen. A few examples include: Hoffman Expires May 25, 2011 [Page 4] Internet-Draft Datatracker Community Tracking Reqs November 2010 o A WG chair might want to keep a list of all the drafts from other WGs that relate to active drafts in his or her WG. o That same WG chair might want to help WG members be able to follow the same drafts that he or she is following. o Someone who cares about an established topic such as the DNS may want to follow the various drafts that might make changes to the DNS. This would include not only drafts that are in the many WGs that directly are changing the DNS (DNSEXT, DNSOP, BEHAVE, and so on), but also individual submissions, IAB drafts, and even IRTF research. o Developers who are not active in the IETF process might want to lightly follow drafts on a particular topic to watch for things that might affect their implementations. o An IETF "regular" might want to follow parts of the process by focusing on all the drafts that are being shepherded by a particular Area Director. 1.2. Context for This Document This document describes the requirements for extending the Datatracker for such capabilities. When complete, this document may be used to issue an RFP for the design and development of these enhancements to the Datatracker. This document was prepared at the request of the IAOC. Some of the requirements in this document are listed as "later requirements". This means that these requirements might not be part of the first RFP for adding these enhancements. The statement of work that led to this document says "The tools that will eventually be provided to individuals in the community include": o the ability to create one or more (possibly large) lists of I-Ds that they want to follow o the ability to get notifications when individual drafts from a list changes state o the ability to see all of the state changes that have occurred on all the drafts in a list over a specified range of dates o the ability to set the granularity of the changes (such as "every change", "just approvals and publication", and so on) o the ability to organize their views of a list in many fashions that would be useful to different types of community members o the ability to share and merge lists with other community members Note that [RFC2026] describes the process that Internet Drafts go through before they either become RFCs or are abandoned. The Datatracker does not control this process: instead, it simply reports on the current state of individual drafts as they go through the Hoffman Expires May 25, 2011 [Page 5] Internet-Draft Datatracker Community Tracking Reqs November 2010 process. During the early discussion of these requirements, some community members proposed that it would be very useful to track other types of documents, such as WG charters. Appendixes A through D list these proposals. It is not clear currently if those sections will be part of the initial deployment of the requirements in the main body of this document. 1.3. Definitions Used in This Document A "user" is an individual person who is member of the IETF community. A "list" is an unordered set of Internet Drafts and groups of Internet Drafts. Lists are specified by users. An "attribute" is a feature of a draft, such as its filename, its current state in the IETF process, and so on. Attributes are usually displayed as columns in the Datatracker. A "row" is a set of attributes about a single draft that is displayed in the Datatracker. A "significant change in status" is all approvals and disposition of the draft. Assuming that the changes to the Datatracker specified in [WGSTATES] and [ALTSTREAMS] are made, "all approvals" means the following: o IETF stream: the WG states "Adopted by a WG", "In WG Last Call", "WG Consensus: Waiting for Write-up", "Parked WG document", and "Dead WG document"; the IESG states "Publication Requested", "In Last Call", and "IESG Evaluation" o IAB stream: "Active IAB Document", "Community Review", and "Sent to the RFC Editor" o IRTF stream: "Active RG Document", "In RG Last Call", "Awaiting IRSG Reviews", "In IESG Review", "Sent to the RFC Editor", and "Document on Hold Based On IESG Request" o ISE stream: "Submission Received", "In ISE Review", "In IESG Review", "Sent to the RFC Editor", and "Document on Hold Based On IESG Request" o All streams: in addition to the above, the disposition states "Approved", "RFC Published", and "Dead" are also included 1.4. Expected user interactions When a user wants to follow a group of drafts, he or she goes to the Datatracker and creates a new list. The requirements for lists are given in Section 2.1. After a list is created, the user has three Hoffman Expires May 25, 2011 [Page 6] Internet-Draft Datatracker Community Tracking Reqs November 2010 ways that he or she might see when drafts in the list are updated: o By going to the Datatracker page for the list (see Section 2.3) o By subscribing to the Atom feed for the list (see Section 2.2.2) in a feed reader that automatically fetches updates o By subscribing to the mail stream for the list (see Section 2.2.3) and reading the stream in their mail reader 1.5. Discussion of These Requirements This document is being discussed on the datatracker-rqmts@ietf.org mailing list. For more information, see . There will probably be virtual interim meetings to discuss this document in late 2010 and early 2011. 2. Requirements for Tools Features This section defines the requirements for the tool described earlier in this document. The eventual tool, if implemented, may have more features than are listed here; however, before this document is finished, it should contain as many requirements as possible upon which the IETF community can agree. 2.1. Lists 2.1.1. Requirement: Lists of drafts can be large An active IETF participant might want to follow the status of hundreds of drafts. For example, some ADs have 100 drafts in their area, and they may also want to follow drafts outside their area that affect documents in their area. 2.1.2. Requirement: A user can create multiple lists A user might have multiple areas of interest and would want to track each area on a different web page. Another example would be a WG chair who wants to track the drafts in his or her WG separately from the drafts in a different area of interest. An IETF participant might want to have a list of drafts that they are following closely, and another list of drafts written by work colleagues. 2.1.3. Requirement: Some lists must be able to be private or anonymous Seeing a list of drafts that covers multiple areas of interest can tell you something about the person who created the list. For Hoffman Expires May 25, 2011 [Page 7] Internet-Draft Datatracker Community Tracking Reqs November 2010 example, you might be able to guess that they might be looking for a job in a different field by looking at their list of drafts of interest. Of course, anyone can follow individual drafts today without having that be exposed; however, following a particular group of drafts can reveal information about a person. There is a open issue about whether lists should be default be private/anonymous or public, and how that default should be manifest in the eventual UI for creating lists. The first proposed methods that might keep lists private/anonymous are: o Private lists might only be available using passwords or some other common authentication mechanism. This would require that the Datatracker have a subscription process for users that could assign passwords, and a per-user process for adding lists to a user account. (If the current Datatracker username and login scheme is used, the interface needs to be improved so that getting a new login, and changing one's password, are significantly easier.) o Anonymous lists might be assigned random URLs from a very large (2^128) namespace, and the user who creates a list does not tell others the assigned URL. This method makes it impossible for someone to search the entire set of assigned lists. Given that the URLs for lists are most likely going to be copy-and-pasted anyway, having long random strings in the list's URL is not an impediment. 2.1.4. Requirement: It must be easy for IETF leadership and individuals to make lists they create publicly-readable Private or anonymous lists are fine for individuals, but publicly- readable lists can magnify the value to the whole community. In fact, some early commenters on this document emphasized that publicly-readable lists will be more valuable to the IETF than helping individuals track documents that are only of interest to them. Probably the easiest method to implement publicly-readable lists is to make them read-only aliases for private or anonymous lists. This would allow the list originators to control the contents of the list as normal, but also allow anyone to view the results in the Datatracker and/or subscribe to notifications. There may be other methods that would also make sense, and this section might change in the future. Publicly-readable lists should have short URLs that can be Hoffman Expires May 25, 2011 [Page 8] Internet-Draft Datatracker Community Tracking Reqs November 2010 transcribed without relying on copy-and-paste. The names in the URLs for lists that are associated with IETF activities (initially, the lists created by WG chairs and ADs) can be mnemonic, but other public lists should have names that are not mnemonic in order to prevent name-squatting. It is important to note that publicly-readable lists can only be changed by the owners. Allowing many people to change the contents of a list would probably lead to lists that are not very useful to typical users. Proposed later requirements include having the Datatracker list all of the publicly-readable lists (or certainly at least the ones associated with IETF activities), and having links from WG pages in Datatracker to the publicly-readable lists maintained by the WG chairs. 2.1.5. Requirement: Specifying the drafts that are in a list must be simple When a user creates a new list, it must be easy to add individual drafts to the list. This could be done using the Datatracker's current search facility, and simply adding a "add to list" option for Further, when editing an existing list, it must be easy to add additional drafts, and it must be easy to remove drafts from a list. 2.1.6. Requirement: Adding groups of drafts to a list by attribute must be simple Drafts have many attributes, and some users might want to follow all of the drafts that have a particular attribute. Some, but not all, attributes have values that make sense for creating lists. It should be easy to add each of the following attributes when adding to or editing a list: o All drafts associated with an individual WG o All drafts associated with all WGs in an individual Area o All drafts with a particular responsible AD o All drafts with a particular author o All drafts with a particular document shepherd o All drafts that have a reference to a particular RFC o All drafts that have a reference to a particular draft o All drafts that are referenced by a particular RFC o All drafts that are referenced by a particular draft o All drafts that contain a particular text string These attributes are dynamic, and thus the list of drafts that have a particular attribute will change after the user adds that attribute Hoffman Expires May 25, 2011 [Page 9] Internet-Draft Datatracker Community Tracking Reqs November 2010 to a list. The Datatracker should update lists with dynamic attributes as often as is sensible for the server environment, such as once an hour or more. Note that some of these attributes are derived by programs created by the IETF Tools Team that parse drafts and are therefore inherently not completely reliable. 2.1.7. Requirement: Lists can dynamically include other lists If a user is authorized to see the contents of a list, he or she can include that other list in a different list. When the referenced list changes, those changes are also reflected in the referring-to list; that is, if list A includes list B, and the set of drafts in list B changes, the set of drafts in list A is automatically changed. This feature is expected to be useful for experts (particularly WG chairs) who create lists on topics that others might consider interesting. For example, if Alice creates a list that contains all the drafts that she thinks relate to TLS, and Bob has access to that list, Bob can add that list to his personal list of things for which he is interested. Bob might also create a list-of-lists about TLS that includes references to Alice's list as well as to a similar list that Eric put together. There needs to be some way to prevent circular references in lists that refer to other lists. 2.1.8. Later Requirement: Users can add comments to say why they added a draft or group In public lists, it might be useful for someone to be able to understand why particular drafts and/or groups are added. Allowing the user who put together the list to add a comment field would help someone else see the motivation. 2.1.9. Requirement: These extensions must not make the Datatracker take up too many resources Currently, the only state that the Datatracker keeps for its users is a very small set of attributes assigned to a username-password pair. The extensions described here will cause the Datatracker to need to keep more information, namely lists. Each list might have additional associated state as well. Depending on the method for keeping lists private or anonymous, this could lead to the Datatracker needing a larger amount of storage and other resources. When this document is near completion, it would probably be good to list exactly which new state will be kept on the Datatracker server. Hoffman Expires May 25, 2011 [Page 10] Internet-Draft Datatracker Community Tracking Reqs November 2010 In order to reduce the chance that these extensions would strain the Datatracker, some sort of denial-of-service prevention should be used when the extensions are added. For example, if the lists are user- based, a user might be limited to having only a certain number of lists; if they are anonymous, the Datatracker might have test to prove that the person creating the list actually exists, such as a CAPTCHA test or a requirement that the user has a reachable mail address. A later requirement might be to cull lists if it seems that storing them on the Datatracker is taking too many resources. If lists are user-based, the Datatracker can periodically send mail to the user reminding them to delete lists that are no longer needed; if the lists are anonymous, the Datatracker can maybe check whether or not a list is viewed or the Atom feed retrieved. Culling presents a problem, however, for lists that are public. The creator of a list might no longer be using it, but others might be. Thus, it is likely that the Datatracker needs to be be able to maintain lists long-term even if their creators are no longer using them. 2.2. Notifications 2.2.1. Requirement: Users can be notified when a draft changes status Some users do not want to go to the Datatracker's display page to find out when a draft has been updated. Instead, they want to be notified immediately after the draft is changed. The Datatracker needs to support this type of immediate notification, where "immediate" means "within an hour of a change to any draft in the list". This requirement can be met with Atom feeds and mail streams, as described in the next two sections. The Datatracker might create a generic "notifications engine" that can be used to generate the Atom feeds and mail streams. This engine can then be used to later add other notification types, such as a Jabber feed. 2.2.2. Requirement: Every list has Atom feeds associated with it The list will have two Atom feeds that are generated from the changes to the list: one for every change in status, and another for significant change of status. Each Atom feed will have a stable URL that can be used by feed readers. Many IETF users are already using Atom feeds created by the IETF Tools Team for individual drafts. Using the new feeds for lists Hoffman Expires May 25, 2011 [Page 11] Internet-Draft Datatracker Community Tracking Reqs November 2010 described here will allow them to have better selection capabilities to reduce the number of feeds they need to follow. 2.2.3. Requirement: Every list has mail streams associated with it A user can subscribe to two email streams that are generated from the changes to the list: one for every change in status, and another for significant change of status. Note that the mail streams are for each change; they are not batched (such as one message per day). Users who want less frequent but batched notifications need to use the Atom feeds instead of the mail streams. Because lists can incorporate other lists, and those other lists might be very large or grow very large, a user might suddenly get a flood of email. The Datatracker needs to warn a user when the list to which he or she is subscribed has more than 100 drafts. 2.2.4. Requirement: Notifications need to specify which list caused the notification Users might have feeds and/or subscriptions to multiple lists. In order to disambiguate duplicate notifications from multiple lists, the body of the message in the Atom feed or mail stream needs to say which list generated the notification. (Ideally, a user who wants notifications will make one list based on multiple lists, but if they subscribe to multiple lists, this requirement will at least suggest to them that they want to limit their overlapping subscriptions.) 2.2.5. Later Requirement: The tool must have instructions on how to use it Atom feeds Even though Atom feeds have been around for years, they are new to many Internet users, and even experienced users only know how to use them in limited ways. The Datatracker should have at least a few paragraphs explaining how the Atom feeds that it provides can be used in different tools such as dedicated feed readers, online feed- display services, and so on. 2.3. Display in the Datatracker 2.3.1. Requirement: Users can define how the rows are sorted in a display There are many ways that a user might want to see the Datatracker's HTML view of a list. For example, a user might want to normally see it in alphabetical order by the drafts' filenames, but after the user Hoffman Expires May 25, 2011 [Page 12] Internet-Draft Datatracker Community Tracking Reqs November 2010 is of the net for a week, he or she might want to see the list in order of changes of status so that those drafts changed recently appear at the top of the list. The default is to first list the groups first in alphabetical order by group name, then individual drafts in alphabetical order by draft filename. When displaying a list, the Datatracker should allow easy sorting of the drafts with the following collation orders: o Alphabetical order by group name followed by individual drafts (default) o Alphabetical by draft filename o Alphabetical by draft title o Alphabetical by associated WG o Date of publication of current version of the draft o Date of most recent change of status of any type o Date of most recent significant change of status In displays, a particular draft should only included once; for example, if someone manually adds draft-ietf-cuteacronym-sometopic to his list and also specifies that all drafts from the "cuteacronym" WG are included in the list, that draft should only appear once in the display. The column saying which included list(s) contain this draft helps alleviate this loss of information. The user might also want to group the files using the groupings in the list, such as "all drafts from this WG" and "all drafts that contain this word in the title". The Datatracker should save the last-chosen sorting for display with the definition of the list. 2.3.2. Requirement: Users can choose which attributes to display There are many attributes that might be displayed, and different users will have different information that they want to see. Also, users will have different display technologies: someone might normally use a web browser on a large screen, but at other times use the browser on their phone. Choosing which attributes should be displayed should be simple for the user. The Datatracker should save the last-chosen set of attributes for display with the definition of the list. The default is to display is draft filename, draft title, date of current draft, status in stream process, associated WG or RG, whether it was changed within the last 7 days, and included list(s) which contain this draft. Hoffman Expires May 25, 2011 [Page 13] Internet-Draft Datatracker Community Tracking Reqs November 2010 The Datatracker should support display of the following attributes: o Draft filename o Draft title o Date of current draft o Status in the IETF process o Associated WG or RG o Associated AD, if any o Changed within the last 1 day o Changed within the last 2 days o Changed within the last 7 days o Included list(s) which contain this draft There is some leeway for how the Datatracker might display these attributes. For example, the "changed within" attributes might be shown with a check mark or a colored box. The "included lists" attribute might show a pop-up with the names of the lists, given that list names might be long. 2.3.3. Requirement: Users can flag drafts with dates in the future When tracking drafts, some users want to be able to say "tell me if this draft has not changes state by a particular date" such as when a draft is starting a two-week last call or a draft author has promised a new version by the end of the week. This feature gives the user a "dashboard" style capability. For each draft in a list, the user should be able to set one date- based deadline. When using the display version of the Datatracker, if that date has passed and no change in status happened between the time that the user set the deadline and the set date, the Datatracker will highlight the deadline in red. It must also be easy to remove these deadlines. 2.3.4. Requirement: Users can specify highlighting of drafts with recent changes The Datatracker cannot easily keep track of when a user last looked at the page for a particular list. Thus, it instead needs to let a user say which range of dates they are most interested in. To that end, the user needs to be able to easily specify the amount of time they consider recent, either as "the past nnn hours", "the past nnn days", or "since this particular date". 2.4. File Output Hoffman Expires May 25, 2011 [Page 14] Internet-Draft Datatracker Community Tracking Reqs November 2010 2.4.1. Requirement: Users can get their current list as a single file Some users have their own tools for displaying and otherwise processing lists of drafts. To make this easier, users should be able to get a machine-parsable file that has a well-known format and syntax that contains all the data that was used to create the current display. The order of the records in the file is not important because it is assumed that the user's program will sort the results themselves. All attributes will be included because it is assumed that the user's programs will only deal with the ones the care about. When a list is marshaled into a data file, each record in the file format represents a single draft. In a file, a particular draft is only included once; for example, if someone manually adds draft-ietf-cuteacronym-sometopic to his list and also specifies that all drafts from the "cuteacronym" WG are included in the list, that draft only appears once. This feature will allow anyone to create mash-ups of their own and create their own web sites based on the IETF data. This is significantly easier than adding features to the Datatracker, and is able to cater to narrower audiences. The format of the file will be XML or JSON or tab-separated fields in a text file. The decision on which format is supported will be based on the desires of the community while discussing this document. (Imagine how much fun that will be!) Regardless of the format chosen, a syntax will need to be specified. 3. IANA Considerations None. 4. Security Considerations A tool for tracking the status of Internet Drafts can affect the privacy of its users. The requirements for privacy of the Datatracker views are discussed earlier in the document. Web applications, particularly those that store data on a web server, are a common source of security issues such as cross-site scripting attacks. The tool described in this document might also use access control for lists, and access control and authentication also cause security issues if not implemented properly. Hoffman Expires May 25, 2011 [Page 15] Internet-Draft Datatracker Community Tracking Reqs November 2010 5. Acknowledgements Ideas used in this document were contributed by Scott Bradner, Leslie Daigle, Spencer Dawkins, Aaron Falk, Russ Housley, Tero Kivinen, Barry Leiba, John Levine, Henrik Levkowetz, Kurtis Lindqvist, Andy Malis, Ray Pelletier, Blake Ramsdell, Julian Reschke, Jim Schaad, Yaron Sheffer, Robert Sparks, Andrew Sullivan, and Sean Turner. 6. Informative References [ALTSTREAMS] Hoffman, P., "Data Tracker States and Annotations for the IAB, IRTF, and Independent Submission Streams", draft-hoffman-alt-streams-tracker (work in progress), September 2010. [CHARTERTOOL] Hoffman, P., "Requirements for a Working Group Charter Tool", draft-ietf-genarea-charter-tool (work in progress), October 2010. [RFC2026] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, October 1996. [RFC4287] Nottingham, M., Ed. and R. Sayre, Ed., "The Atom Syndication Format", RFC 4287, December 2005. [WGSTATES] Juskevicius, E., "Definition of IETF Working Group Document States", draft-ietf-proto-wgdocument-states (work in progress), October 2010. Appendix A. Possible Tracking of Non-draft Documents NOTE: This is the first draft to include the functionality listed in the next four subsections. Thus, it is not at all clear if any of these will be a requirement, a later requirement, or a non- requirement. Further, even if one or more of these non-draft items is made a requirement, it is not clear whether they will be included in the same lists with drafts. That is, if tracking RFC status changes are considered a requirement, it is not clear whether a user would include the RFCs in a list that also contains draft, or whether they would need to create two lists. Hoffman Expires May 25, 2011 [Page 16] Internet-Draft Datatracker Community Tracking Reqs November 2010 A.1. Tracking RFC Status Changes and Errata The contents of RFCs never change after they are published. However, that does not mean that nothing alters the meaning of the RFC. In specific, an RFC can be updated or obsoleted by another RFC; also, errata can be made against RFCs. A user who cares about the RFC might want to know when these changes are made. Currently, the only way for the Datatracker to see these changes is by polling structured files on the RFC Editor site and parsing them. A.2. Tracking WG Charter Changes It will soon be easier to track changes in WG charters and milestones; see [CHARTERTOOL] for more information. Someone subscribing to the stream for a WG would be able to see each of these changes. With the expected changes, the Datatracker would be able to update WGs in a list without any polling. A.3. Tracking IANA Registry Changes Developers may need to get values from IANA registries for their software/hardware implementations. They might want to know when the registry changes, such as additional entries or updates to current entries. Thus, being able to be notified when a registry changes would be valuable to them. Adding this functionality may be tricky for some registries. For example, if a developer cared about DKIM signature tags, they would have to subscribe to which (currently) covers a handful of registries, all related to DKIM. Thus, a change to the DKIM hash algorithms would trigger a message showing that the registry had changed, even though the DKIM signature tags registry had not. A.4. Tracking Changes in Documents Outside the IETF Sphere Users might want to track documents that relate to IETF activities but are produced by other standards development organizations (SDOs) such as the W3C, the IEEE, the Unicode Consortium, the ITU, and others. In order for the tracker to track these documents, it would need to poll occasionally and possibly scrape listings from HTML. Appendix B. Some Known Open Issues Given the early stage of this document, there are actually many more Hoffman Expires May 25, 2011 [Page 17] Internet-Draft Datatracker Community Tracking Reqs November 2010 open issues than are listed here. This list is mostly meant to remind the author of topics that need to be updated in future versions of the document, and to spur readers to think of even more open issues. o There may be legal issues with keeping user data private if we use login accounts. o When an AD agrees to sponsor an individual submission, does the Datatracker consider that draft associated with the AD? If not, that needs to be dealt with here. o Thought: add a button in the normal Datatracker output to add a particular draft to a particular list. New open issues added in -02: o Maybe need a way to let a user delete lists that are no longer used. o Maybe want to remind users monthly that they created a list. o If the Datatracker contains private information (that is still to be seen), that private information needs to be invisible in lists so that it is not accidentally exposed. o Should "significant change in status" be judged by the list creator, such as by a series of check boxes for every possible status change? o Idea for a later requirement: A list creator can add comments about who might be interested in following the list. o If the design goes towards anonymous pages under a common root URI, there should be a robots.txt page telling spiders not to look beneath it. o It should be easy to remove items from list in the Datatracker display. o If the agendas for an upcoming meeting are scraped for draft names, it would be possible to add an attribute to a draft that lists that WG agenda(s) on which it appears. Appendix C. Differences Between -00 and -01 Added info for the mailing list. Appendix D. Differences Between -01 and -02 Note that this is a *huge* modification based on the large number of suggestions given during the meeting at IETF 79 in Beijing. Changed the intro to indicate that there was input from IETF 79. Hoffman Expires May 25, 2011 [Page 18] Internet-Draft Datatracker Community Tracking Reqs November 2010 Added a new section 1.1 on usage scenarios. Added the statement of work to the new "Context for this Document" section 1.2. Added a brief introduction to the ideas in Appendix A through D to section 1.2. Discussed "later requirements". In old 1.1 (now 1.3), updated the definitions of "user" and "list". Also made the definition of "significant change in status" much fuller. In 2.1.3, opened the issue of whether public or private should be the default. Also clarified that the two proposals are just the first two proposals. Also added the note about the Datatracker's GUI for new usernames and changing passwords. Added new 2.1.4 on publicly-readable lists. In old 2.1.4 (now 2.1.5), changed the second sentence to make it clear that the Datatracker's current search facility is fine as-is. Clarified old 2.1.5 (now 2.1.6) to be "best effort" instead of exactly one hour. In old 2.1.6 (now 2.1.7), added the need for prevention of circular references. Added 2.1.8, a later requirement for adding comments. Added 2.1.9, requirement that the Datatracker not take up too many resources. In 2.2, added idea of a notifications stream. In 2.2.1, clarified that this requirement can be met with the following requirements. In 2.2.3, added a note about not having batched mail streams, and added a requirement for warnings on long lists. Added section 2.2.5, the requirement that the tool must have instructions on how to use it Atom feeds. In 2.3, removed the intro text. In 2.3.1, added the default display. In 2.3.2, added the default display. Also removed "Also, the user should also be able to specify the order in which the attributes are Hoffman Expires May 25, 2011 [Page 19] Internet-Draft Datatracker Community Tracking Reqs November 2010 displayed." Added 2.3.3, the requirement for dashboard-style specification of date timers on drafts. Added 2.3.4, the requirement that users can specify highlighting of drafts with recent changes. Added Scott Bradner, Leslie Daigle, Spencer Dawkins, Aaron Falk, Tero Kivinen, Barry Leiba, Henrik Levkowetz, Kurtis Lindqvist, Andy Malis, Jim Schaad, Robert Sparks, and Sean Turner, to the acknowledgements. Made the reference to RFC 2026 to be informative. Added references for the two active drafts. Previous Appendix A, "Some Known Open Issues", and previous Appendix B, "Differences Between -00 and -01", became Appendixes C and D, respectively, due to the addition of the new appendix for non-draft items that might be tracked. Removed the open issue about dashboards because it is now 2.3.3. Removed the open issue about non-IETF streams because the information is now included in the document. Removed the open issue about changing public lists because the document is now clear that they are read-only. Removed the open issue "Is there a formal definition for 'drafts associated with a particular WG'?" based on a response from Henrik Levkowetz on the mailing list. Removed some open issues that could be incorporated later: "Should paging be supported for long lists in the HTML display?" "Should the file output be in all the interesting formats (XML and JSON and tab- separated text) or just one?" Removed open issue "How prescriptive do we want to be? Should this say things like "JavaScript pop-up" and "CSS" and such?" because there is no need to go to that level. Added some more open issues. Hoffman Expires May 25, 2011 [Page 20] Internet-Draft Datatracker Community Tracking Reqs November 2010 Author's Address Paul Hoffman VPN Consortium Email: paul.hoffman@vpnc.org Hoffman Expires May 25, 2011 [Page 21]