User:Full-date unlinking bot/Test environment

This is where the bot will show off its guns before working in a live environment. Put any sort of date here that should be unlinked, and watch the bot remove their links in blazing glory (or laugh as it falls flat on its ass).

Pundit X was born on February 17, 1972 to a mother born on 15 April, 1950 and a father born on 1945-01-01. Or something like that. With various forms of punctuation, you could say February 17 1972 or maybe 15 April 1950. With over three million articles, you don't know just how atrocious the grammar of editors can be, especially when the autoformatter cleans up their messes.

Although Julius Caesar's reform of the Julian calendar officially took effect 1 January 45 BC his rules concerning leap years were misinterpreted, and records of when leap years were actually observed are fragmentary. Augustus's reform of the Julian calendar led to 29 February 8 being the first leap day that scholars generally agree was properly observed. Thus 1 March AD 4 is the earliest date that can with confidence be regarded as part of the continuous correct observance of the Julian calendar.

If you can think of more examples, add them.

Various single date formats

edit
Ordinary dates
Coded date Display Expected result
[[1 April]] [[2010]] "1 April 2010" "1 April 2010"
[[April 1]], [[2010]] "April 1, 2010" "April 1, 2010"
[[2010]] [[April 1]] "2010 April 1" "2010 April 1"
[[2010-04-01]] "2010-04-01" "2010-04-01"
[[2010]]-[[04-01]] "2010-04-01" "2010-04-01"
Normal variations (DMY)
Coded date Display Expected result
[[01 April]] [[2010]] "01 April 2010" "1 April 2010"
[[30 April]] [[2010]] "30 April 2010" "30 April 2010"
[[1_April]] [[2010]] "1_April 2010" "1 April 2010"
[[1 Apr]] [[2010]] "1 Apr 2010" "1 Apr 2010"
[[1 April]] [[99]] "1 April 99" "1 April 99"
[[1 April]] [[100 BC]] "1 April 100 BC" "1 April 100 BC"
[[1 April]] [[100_BC]] "1 April 100_BC" "1 April 100_BC"†
[[30_Apr]] [[100 BC]] "30_Apr 100 BC" "30 Apr 100 BC"
†Underscore removal not presently implemented.
Normal variations (MDY
Coded date Display Expected result
[[April 01]], [[2010]] "April 01, 2010" "April 1, 2010"
[[April 30]], [[2010]] "April 30, 2010" "April 30, 2010"
[[April_1]], [[2010]] "April_1, 2010" "April 1, 2010"
[[Apr 1]], [[2010]] "Apr 1, 2010" "Apr 1, 2010"
[[April 1]], [[99]] "April 1, 99" "April 1, 99"
[[April 1]], [[100 BC]] "April 1, 100 BC" "April 1, 100 BC"
[[April 1]], [[100_BC]] "April 1, 100_BC" "April 1, 100_BC"†
[[Apr_30]], [[100 BC]] "Apr_30, 100 BC" "Apr 30, 100 BC"
†Underscore removal not presently implemented.
Minor punctuation fixes (DMY)
Coded date Display Expected result
[[1 April]][[2010]] "1 April2010" "1 April 2010"†
[[1 April]],[[2010]] "1 April,2010" "1 April 2010"
[[1 April]] , [[2010]] "1 April , 2010" "1 April 2010"
[[1 April]] [[2010]] "1 April 2010" "1 April 2010"
[[1 April]], [[2010]] "1 April, 2010" "1 April 2010"
†With added space.
Minor punctuation fixes (MDY)
Coded date Display Expected result
[[April 1]][[2010]] "April 12010" "April 1, 2010"†
[[April 1]] [[2010]] "April 1 2010" "April 1, 2010"
[[April 1]] , [[2010]] "April 1 , 2010" "April 1, 2010"
[[April 1]] [[2010]] "April 1 2010" "April 1, 2010"
[[April 1]], [[2010]] "April 1, 2010" "April 1, 2010"
†With added comma and space.
Month names (DMY)
Coded date Display Expected result
[[1 January]] [[2010]] "1 January 2010" "1 January 2010"
[[1 February]] [[2010]] "1 February 2010" "1 February 2010"
[[1 March]] [[2010]] "1 March 2010" "1 March 2010"
[[1 April]] [[2010]] "1 April 2010" "1 April 2010"
[[1 May]] [[2010]] "1 May 2010" "1 May 2010"
[[1 June]] [[2010]] "1 June 2010" "1 June 2010"
[[1 July]] [[2010]] "1 July 2010" "1 July 2010"
[[1 August]] [[2010]] "1 August 2010" "1 August 2010"
[[1 September]] [[2010]] "1 September 2010" "1 September 2010"
[[1 October]] [[2010]] "1 October 2010" "1 October 2010"
[[1 November]] [[2010]] "1 November 2010" "1 November 2010"
[[1 December]] [[2010]] "1 December 2010" "1 December 2010"
Month abbreviations (MDY)
Coded date Display Expected result
[[Jan 1]], [[2010]] "Jan 1, 2010" "Jan 1, 2010"
[[Feb 1]], [[2010]] "Feb 1, 2010" "Feb 1, 2010"
[[Mar 1]], [[2010]] "Mar 1, 2010" "Mar 1, 2010"
[[Apr 1]], [[2010]] "Apr 1, 2010" "Apr 1, 2010"
[[May 1]], [[2010]] "May 1, 2010" "May 1, 2010"
[[Jun 1]], [[2010]] "Jun 1, 2010" "Jun 1, 2010"
[[Jul 1]], [[2010]] "Jul 1, 2010" "Jul 1, 2010"
[[Aug 1]], [[2010]] "Aug 1, 2010" "Aug 1, 2010"
[[Sep 1]], [[2010]] "Sep 1, 2010" "Sep 1, 2010"
[[Oct 1]], [[2010]] "Oct 1, 2010" "Oct 1, 2010"
[[Nov 1]], [[2010]] "Nov 1, 2010" "Nov 1, 2010
[[Dec 1]], [[2010]] "Dec 1, 2010" "Dec 1, 2010
[[Sept 1]], [[2010]] "Sept 1, 2010" "Sept 1, 2010"
Year variants (DMY)
Coded date Display Expected result
[[1 April]] [[2010]] "1 April 2010" "1 April 2010"
[[1 April]] [[999]] "1 April 999" "1 April 999"
[[1 April]] [[66]] "1 April 66" "1 April 66"
[[1 April]] [[5]] "1 April 5" "1 April 5"
[[April 1]], [[1 BC]] "April 1, 1 BC" "April 1, BC"
[[April 1]], [[20 BC]] "April 1, 20 BC" "April 1, 20 BC"
[[April 1]], [[300 BC]] "April 1, 300 BC" "April 1, 300 BC"
[[April 1]], [[4000 BC]] "April 1, 4000 BC" "April 1, 4000 BC"
[[-0001-04-01]] "-0001-04-01" "-0001-04-01"
[[-0001]]-[[04-01]] "-0001-04-01" "-0001-04-01"

Various date range formats

edit

Date range support recognizes a variety of forms that follow the general pattern: *month/day, month/day, ..., year", where:

  • "Month/day" is a linked month and day in either "[[month day]]" or "[[day month]]" form. Piped links of the form "[[month day|day]]" or "[[day month|day]]" are also recognized.
  • "Year" is a linked year of the form "[[yyyy]]" or possibly "[[yyyy BC]]".
  • Separating each part is any combination of comma, white space, a connecting punctuation character or word, and possibly more white space.
    • White space may include ordinary spaces, non-breaking spaces, or an HTML line break (<br>, <br/>, or <br />)
    • Connecting punctuation includes various dashes, hyphens, slash, ampersand, and a few other lesser used characters identified via database scans.
    • Connecting words include common conjunctions (and, or) and prepositions (to, through, until) identified during database scans, including a few abbreviations.

Although some of these forms may not reflect good style, the punctuation is left unchanged. The remainder of the date text is unlinked leaving plain text that matches what would normally be displayed to an anonymous user.

A few general cases:

Various separator symbols

Various separator words

Various separator punctuation

Some interesting real date list examples:

Dth Month forms

edit

Month Dth forms

edit

Piped dates

edit

Day-only forms are typically only used in lists

Ordinal, ordinal-of and piped dates in lists

edit
this one should keep the comma

Nth of Month forms

edit

Lower case:

Lower case month forms

edit

Date ranges and lists

exceptions

  • january 1, 2009 - not delinked, so not case adjusted
  • JANUARY 1, 2009 - only all-lower-case months are adjusted
  • january 1, 2009 - Was not linked to start with, so is not adjusted