1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309
|
<pre>Network Working Group T. Berners-Lee
Request for Comments: 1866 MIT/W3C
Category: Standards Track D. Connolly
November 1995
<span class="h1">Hypertext Markup Language - 2.0</span>
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Abstract
The Hypertext Markup Language (HTML) is a simple markup language used
to create hypertext documents that are platform independent. HTML
documents are SGML documents with generic semantics that are
appropriate for representing information from a wide range of
domains. HTML markup can represent hypertext news, mail,
documentation, and hypermedia; menus of options; database query
results; simple structured documents with in-lined graphics; and
hypertext views of existing bodies of information.
HTML has been in use by the World Wide Web (WWW) global information
initiative since 1990. This specification roughly corresponds to the
capabilities of HTML in common use prior to June 1994. HTML is an
application of ISO Standard 8879:1986 Information Processing Text and
Office Systems; Standard Generalized Markup Language (SGML).
The "text/html" Internet Media Type (<a href="./rfc1590">RFC 1590</a>) and MIME Content Type
(<a href="./rfc1521">RFC 1521</a>) is defined by this specification.
Table of Contents
<a href="#section-1">1</a>. Introduction ........................................... <a href="#page-2">2</a>
<a href="#section-1.1">1.1</a> Scope .................................................. <a href="#page-3">3</a>
<a href="#section-1.2">1.2</a> Conformance ............................................ <a href="#page-3">3</a>
<a href="#section-2">2</a>. Terms .................................................. <a href="#page-6">6</a>
<a href="#section-3">3</a>. HTML as an Application of SGML .........................<a href="#page-10">10</a>
<a href="#section-3.1">3.1</a> SGML Documents .........................................<a href="#page-10">10</a>
<a href="#section-3.2">3.2</a> HTML Lexical Syntax ................................... <a href="#page-12">12</a>
<a href="#section-3.3">3.3</a> HTML Public Text Identifiers .......................... <a href="#page-17">17</a>
<a href="#section-3.4">3.4</a> Example HTML Document ................................. <a href="#page-17">17</a>
<a href="#section-4">4</a>. HTML as an Internet Media Type ........................ <a href="#page-18">18</a>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 1]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-2" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<a href="#section-4.1">4.1</a> text/html media type .................................. <a href="#page-18">18</a>
<a href="#section-4.2">4.2</a> HTML Document Representation .......................... <a href="#page-19">19</a>
<a href="#section-5">5</a>. Document Structure .................................... <a href="#page-20">20</a>
<a href="#section-5.1">5.1</a> Document Element: HTML ................................ <a href="#page-21">21</a>
<a href="#section-5.2">5.2</a> Head: HEAD ............................................ <a href="#page-21">21</a>
<a href="#section-5.3">5.3</a> Body: BODY ............................................ <a href="#page-24">24</a>
<a href="#section-5.4">5.4</a> Headings: H1 ... H6 ................................... <a href="#page-24">24</a>
<a href="#section-5.5">5.5</a> Block Structuring Elements ............................ <a href="#page-25">25</a>
<a href="#section-5.6">5.6</a> List Elements ......................................... <a href="#page-28">28</a>
<a href="#section-5.7">5.7</a> Phrase Markup ......................................... <a href="#page-30">30</a>
<a href="#section-5.8">5.8</a> Line Break: BR ........................................ <a href="#page-34">34</a>
<a href="#section-5.9">5.9</a> Horizontal Rule: HR ................................... <a href="#page-34">34</a>
<a href="#section-5.10">5.10</a> Image: IMG ............................................ <a href="#page-34">34</a>
<a href="#section-6">6</a>. Characters, Words, and Paragraphs ..................... <a href="#page-35">35</a>
<a href="#section-6.1">6.1</a> The HTML Document Character Set ....................... <a href="#page-36">36</a>
<a href="#section-7">7</a>. Hyperlinks ............................................ <a href="#page-36">36</a>
<a href="#section-7.1">7.1</a> Accessing Resources ................................... <a href="#page-37">37</a>
<a href="#section-7.2">7.2</a> Activation of Hyperlinks .............................. <a href="#page-38">38</a>
<a href="#section-7.3">7.3</a> Simultaneous Presentation of Image Resources .......... <a href="#page-38">38</a>
<a href="#section-7.4">7.4</a> Fragment Identifiers .................................. <a href="#page-38">38</a>
<a href="#section-7.5">7.5</a> Queries and Indexes ................................... <a href="#page-39">39</a>
<a href="#section-7.6">7.6</a> Image Maps ............................................ <a href="#page-39">39</a>
<a href="#section-8">8</a>. Forms ................................................. <a href="#page-40">40</a>
<a href="#section-8.1">8.1</a> Form Elements ......................................... <a href="#page-40">40</a>
<a href="#section-8.2">8.2</a> Form Submission ....................................... <a href="#page-45">45</a>
<a href="#section-9">9</a>. HTML Public Text ...................................... <a href="#page-49">49</a>
<a href="#section-9.1">9.1</a> HTML DTD .............................................. <a href="#page-49">49</a>
<a href="#section-9.2">9.2</a> Strict HTML DTD ....................................... <a href="#page-61">61</a>
<a href="#section-9.3">9.3</a> Level 1 HTML DTD ...................................... <a href="#page-62">62</a>
<a href="#section-9.4">9.4</a> Strict Level 1 HTML DTD ............................... <a href="#page-63">63</a>
<a href="#section-9.5">9.5</a> SGML Declaration for HTML ............................. <a href="#page-64">64</a>
<a href="#section-9.6">9.6</a> Sample SGML Open Entity Catalog for HTML .............. <a href="#page-65">65</a>
<a href="#section-9.7">9.7</a> Character Entity Sets ................................. <a href="#page-66">66</a>
<a href="#section-10">10</a>. Security Considerations ............................... <a href="#page-69">69</a>
<a href="#section-11">11</a>. References ............................................ <a href="#page-69">69</a>
<a href="#section-12">12</a>. Acknowledgments ....................................... <a href="#page-71">71</a>
<a href="#section-12.1">12.1</a> Authors' Addresses .................................... <a href="#page-71">71</a>
<a href="#section-13">13</a>. The HTML Coded Character Set .......................... <a href="#page-72">72</a>
<a href="#section-14">14</a>. Proposed Entities ..................................... <a href="#page-75">75</a>
<span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>. Introduction</span>
The HyperText Markup Language (HTML) is a simple data format used to
create hypertext documents that are portable from one platform to
another. HTML documents are SGML documents with generic semantics
that are appropriate for representing information from a wide range
of domains.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 2]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-3" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
As HTML is an application of SGML, this specification assumes a
working knowledge of [<a href="#ref-SGML">SGML</a>].
<span class="h3"><a class="selflink" id="section-1.1" href="#section-1.1">1.1</a>. Scope</span>
HTML has been in use by the World-Wide Web (WWW) global information
initiative since 1990. Previously, informal documentation on HTML has
been available from a number of sources on the Internet. This
specification brings together, clarifies, and formalizes a set of
features that roughly corresponds to the capabilities of HTML in
common use prior to June 1994. A number of new features to HTML are
being proposed and experimented in the Internet community.
This document thus defines a HTML 2.0 (to distinguish it from the
previous informal specifications). Future (generally upwardly
compatible) versions of HTML with new features will be released with
higher version numbers.
HTML is an application of ISO Standard 8879:1986, "Information
Processing Text and Office Systems; Standard Generalized Markup
Language" (SGML). The HTML Document Type Definition (DTD) is a formal
definition of the HTML syntax in terms of SGML.
This specification also defines HTML as an Internet Media
Type[IMEDIA] and MIME Content Type[MIME] called `text/html'. As such,
it defines the semantics of the HTML syntax and how that syntax
should be interpreted by user agents.
<span class="h3"><a class="selflink" id="section-1.2" href="#section-1.2">1.2</a>. Conformance</span>
This specification governs the syntax of HTML documents and aspects
of the behavior of HTML user agents.
<span class="h4"><a class="selflink" id="section-1.2.1" href="#section-1.2.1">1.2.1</a>. Documents</span>
A document is a conforming HTML document if:
* It is a conforming SGML document, and it conforms to the
HTML DTD (see 9.1, "HTML DTD").
NOTE - There are a number of syntactic idioms that
are not supported or are supported inconsistently in
some historical user agent implementations. These
idioms are identified in notes like this throughout
this specification.
* It conforms to the application conventions in this
specification. For example, the value of the HREF attribute
<span class="grey">Berners-Lee & Connolly Standards Track [Page 3]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-4" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
of the <A> element must conform to the URI syntax.
* Its document character set includes [<a href="#ref-ISO-8859-1">ISO-8859-1</a>] and
agrees with [<a href="#ref-ISO-10646">ISO-10646</a>]; that is, each code position listed
in 13, "The HTML Coded Character Set" is included, and each
code position in the document character set is mapped to the
same character as [<a href="#ref-ISO-10646">ISO-10646</a>] designates for that code
position.
NOTE - The document character set is somewhat
independent of the character encoding scheme used to
represent a document. For example, the `ISO-2022-JP'
character encoding scheme can be used for HTML
documents, since its repertoire is a subset of the
[<a href="#ref-ISO-10646">ISO-10646</a>] repertoire. The critical distinction is
that numeric character references agree with
[<a href="#ref-ISO-10646">ISO-10646</a>] regardless of how the document is
encoded.
<span class="h4"><a class="selflink" id="section-1.2.2" href="#section-1.2.2">1.2.2</a>. Feature Test Entities</span>
The HTML DTD defines a standard HTML document type and several
variations, by way of feature test entities. Feature test entities
are declarations in the HTML DTD that control the inclusion or
exclusion of portions of the DTD.
HTML.Recommended
Certain features of the language are necessary for
compatibility with widespread usage, but they may
compromise the structural integrity of a document. This
feature test entity selects a more prescriptive document
type definition that eliminates those features. It is
set to `IGNORE' by default.
For example, in order to preserve the structure of a
document, an editing user agent may translate HTML
documents to the recommended subset, or it may require
that the documents be in the recommended subset for
import.
HTML.Deprecated
Certain features of the language are necessary for
compatibility with earlier versions of the
specification, but they tend to be used and implemented
inconsistently, and their use is deprecated. This
feature test entity enables a document type definition
that allows these features. It is set to `INCLUDE' by
default.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 4]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-5" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
Documents generated by translation software or editing
software should not contain deprecated idioms.
<span class="h4"><a class="selflink" id="section-1.2.3" href="#section-1.2.3">1.2.3</a>. User Agents</span>
An HTML user agent conforms to this specification if:
* It parses the characters of an HTML document into data
characters and markup according to [<a href="#ref-SGML">SGML</a>].
NOTE - In the interest of robustness and
extensibility, there are a number of widely deployed
conventions for handling non-conforming documents.
See 4.2.1, "Undeclared Markup Error Handling" for
details.
* It supports the `ISO-8859-1' character encoding scheme and
processes each character in the ISO Latin Alphabet No. 1 as
specified in 6.1, "The HTML Document Character Set".
NOTE - To support non-western writing systems, HTML
user agents are encouraged to support
`ISO-10646-UCS-2' or similar character encoding
schemes and as much of the character repertoire of
[<a href="#ref-ISO-10646">ISO-10646</a>] as is practical.
* It behaves identically for documents whose parsed token
sequences are identical.
For example, comments and the whitespace in tags disappear
during tokenization, and hence they do not influence the
behavior of conforming user agents.
* It allows the user to traverse (or at least attempt to
traverse, resources permitting) all hyperlinks from <A>
elements in an HTML document.
An HTML user agent is a level 2 user agent if, additionally:
* It allows the user to express all form field values
specified in an HTML document and to (attempt to) submit the
values as requests to information services.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 5]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-6" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>. Terms</span>
absolute URI
a URI in absolute form; for example, as per [<a href="#ref-URL">URL</a>]
anchor
one of two ends of a hyperlink; typically, a phrase
marked as an <A> element.
base URI
an absolute URI used in combination with a relative URI
to determine another absolute URI.
character
An atom of information, for example a letter or a digit.
Graphic characters have associated glyphs, whereas
control characters have associated processing semantics.
character encoding
scheme
A function whose domain is the set of sequences of
octets, and whose range is the set of sequences of
characters from a character repertoire; that is, a
sequence of octets and a character encoding scheme
determines a sequence of characters.
character repertoire
A finite set of characters; e.g. the range of a coded
character set.
code position
An integer. A coded character set and a code position
from its domain determine a character.
coded character set
A function whose domain is a subset of the integers and
whose range is a character repertoire. That is, for some
set of integers (usually of the form {0, 1, 2, ..., N}
), a coded character set and an integer in that set
determine a character. Conversely, a character and a
coded character set determine the character's code
position (or, in rare cases, a few code positions).
conforming HTML user
agent
A user agent that conforms to this specification in its
processing of the Internet Media Type `text/html'.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 6]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-7" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
data character
Characters other than markup, which make up the content
of elements.
document character set
a coded character set whose range includes all
characters used in a document. Every SGML document has
exactly one document character set. Numeric character
references are resolved via the document character set.
DTD
document type definition. Rules that apply SGML to the
markup of documents of a particular type, including a
set of element and entity declarations. [<a href="#ref-SGML">SGML</a>]
element
A component of the hierarchical structure defined by a
document type definition; it is identified in a document
instance by descriptive markup, usually a start-tag and
end-tag. [<a href="#ref-SGML">SGML</a>]
end-tag
Descriptive markup that identifies the end of an
element. [<a href="#ref-SGML">SGML</a>]
entity
data with an associated notation or interpretation; for
example, a sequence of octets associated with an
Internet Media Type. [<a href="#ref-SGML">SGML</a>]
fragment identifier
the portion of an HREF attribute value following the `#'
character which modifies the presentation of the
destination of a hyperlink.
form data set
a sequence of name/value pairs; the names are given by
an HTML document and the values are given by a user.
HTML document
An SGML document conforming to this document type
definition.
hyperlink
a relationship between two anchors, called the head and
the tail. The link goes from the tail to the head. The
head and tail are also known as destination and source,
respectively.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 7]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-8" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
markup
Syntactically delimited characters added to the data of
a document to represent its structure. There are four
different kinds of markup: descriptive markup (tags),
references, markup declarations, and processing
instructions. [<a href="#ref-SGML">SGML</a>]
may
A document or user interface is conforming whether this
statement applies or not.
media type
an Internet Media Type, as per [<a href="#ref-IMEDIA">IMEDIA</a>].
message entity
a head and body. The head is a collection of name/value
fields, and the body is a sequence of octets. The head
defines the content type and content transfer encoding
of the body. [<a href="#ref-MIME">MIME</a>]
minimally conforming
HTML user agent
A user agent that conforms to this specification except
for form processing. It may only process level 1 HTML
documents.
must
Documents or user agents in conflict with this statement
are not conforming.
numeric character
reference
markup that refers to a character by its code position
in the document character set.
SGML document
A sequence of characters organized physically as a set
of entities and logically into a hierarchy of elements.
An SGML document consists of data characters and markup;
the markup describes the structure of the information
and an instance of that structure. [<a href="#ref-SGML">SGML</a>]
shall
If a document or user agent conflicts with this
statement, it does not conform to this specification.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 8]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-9" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
should
If a document or user agent conflicts with this
statement, undesirable results may occur in practice
even though it conforms to this specification.
start-tag
Descriptive markup that identifies the start of an
element and specifies its generic identifier and
attributes. [<a href="#ref-SGML">SGML</a>]
syntax-reference
character set
A coded character set whose range includes all
characters used for markup; e.g. name characters and
delimiter characters.
tag
Markup that delimits an element. A tag includes a name
which refers to an element declaration in the DTD, and
may include attributes. [<a href="#ref-SGML">SGML</a>]
text entity
A finite sequence of characters. A text entity typically
takes the form of a sequence of octets with some
associated character encoding scheme, transmitted over
the network or stored in a file. [<a href="#ref-SGML">SGML</a>]
typical
Typical processing is described for many elements. This
is not a mandatory part of the specification but is
given as guidance for designers and to help explain the
uses for which the elements were intended.
URI
A Uniform Resource Identifier is a formatted string that
serves as an identifier for a resource, typically on the
Internet. URIs are used in HTML to identify the anchors
of hyperlinks. URIs in common practice include Uniform
Resource Locators (URLs)[<a href="#ref-URL">URL</a>] and Relative URLs
[<a href="#ref-RELURL">RELURL</a>].
user agent
A component of a distributed system that presents an
interface and processes requests on behalf of a user;
for example, a www browser or a mail user agent.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 9]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-10" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
WWW
The World-Wide Web is a hypertext-based, distributed
information system created by researchers at CERN in
Switzerland. <URL:http://www.w3.org/>
<span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>. HTML as an Application of SGML</span>
HTML is an application of ISO 8879:1986 -- Standard Generalized
Markup Language (SGML). SGML is a system for defining structured
document types and markup languages to represent instances of those
document types[SGML]. The public text -- DTD and SGML declaration --
of the HTML document type definition are provided in 9, "HTML Public
Text".
The term "HTML" refers to both the document type defined here and the
markup language for representing instances of this document type.
<span class="h3"><a class="selflink" id="section-3.1" href="#section-3.1">3.1</a>. SGML Documents</span>
An HTML document is an SGML document; that is, a sequence of
characters organized physically into a set of entities, and logically
as a hierarchy of elements.
In the SGML specification, the first production of the SGML syntax
grammar separates an SGML document into three parts: an SGML
declaration, a prologue, and an instance. For the purposes of this
specification, the prologue is a DTD. This DTD describes another
grammar: the start symbol is given in the doctype declaration, the
terminals are data characters and tags, and the productions are
determined by the element declarations. The instance must conform to
the DTD, that is, it must be in the language defined by this grammar.
The SGML declaration determines the lexicon of the grammar. It
specifies the document character set, which determines a character
repertoire that contains all characters that occur in all text
entities in the document, and the code positions associated with
those characters.
The SGML declaration also specifies the syntax-reference character
set of the document, and a few other parameters that bind the
abstract syntax of SGML to a concrete syntax. This concrete syntax
determines how the sequence of characters of the document is mapped
to a sequence of terminals in the grammar of the prologue.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 10]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-11" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
For example, consider the following document:
<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
<title>Parsing Example</title>
<p>Some text. <em>&#42;wow&#42;</em></p>
An HTML user agent should use the SGML declaration that is given in
9.5, "SGML Declaration for HTML". According to its document character
set, `&#42;' refers to an asterisk character, `*'.
The instance above is regarded as the following sequence of
terminals:
1. start-tag: TITLE
2. data characters: "Parsing Example"
3. end-tag: TITLE
4. start-tag: P
5. data characters "Some text."
6. start-tag: EM
7. data characters: "*wow*"
8. end-tag: EM
9. end-tag: P
<span class="grey">Berners-Lee & Connolly Standards Track [Page 11]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-12" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
The start symbol of the DTD grammar is HTML, and the productions are
given in the public text identified by `-//IETF//DTD HTML 2.0//EN'
(9.1, "HTML DTD"). The terminals above parse as:
HTML
|
\-HEAD
| |
| \-TITLE
| |
| \-<TITLE>
| |
| \-"Parsing Example"
| |
| \-</TITLE>
|
\-BODY
|
\-P
|
\-<P>
|
\-"Some text. "
|
\-EM
| |
| \-<EM>
| |
| \-"*wow*"
| |
| \-</EM>
|
\-</P>
Some of the elements are delimited explicitly by tags, while the
boundaries of others are inferred. The <HTML> element contains a
<HEAD> element and a <BODY> element. The <HEAD> contains <TITLE>,
which is explicitly delimited by start- and end-tags.
<span class="h3"><a class="selflink" id="section-3.2" href="#section-3.2">3.2</a>. HTML Lexical Syntax</span>
SGML specifies an abstract syntax and a reference concrete syntax.
Aside from certain quantities and capacities (e.g. the limit on the
length of a name), all HTML documents use the reference concrete
syntax. In particular, all markup characters are in the repertoire of
[<a href="#ref-ISO-646">ISO-646</a>]. Data characters are drawn from the document character set
(see 6, "Characters, Words, and Paragraphs").
<span class="grey">Berners-Lee & Connolly Standards Track [Page 12]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-13" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
A complete discussion of SGML parsing, e.g. the mapping of a sequence
of characters to a sequence of tags and data, is left to the SGML
standard[SGML]. This section is only a summary.
<span class="h4"><a class="selflink" id="section-3.2.1" href="#section-3.2.1">3.2.1</a>. Data Characters</span>
Any sequence of characters that do not constitute markup (see 9.6
"Delimiter Recognition" of [<a href="#ref-SGML">SGML</a>]) are mapped directly to strings of
data characters. Some markup also maps to data character strings.
Numeric character references map to single-character strings, via the
document character set. Each reference to one of the general entities
defined in the HTML DTD maps to a single-character string.
For example,
abc&lt;def => "abc","<","def"
abc&#60;def => "abc","<","def"
The terminating semicolon on entity or numeric character references
is only necessary when the character following the reference would
otherwise be recognized as part of the name (see 9.4.5 "Reference
End" in [<a href="#ref-SGML">SGML</a>]).
abc &lt def => "abc ","<"," def"
abc &#60 def => "abc ","<"," def"
An ampersand is only recognized as markup when it is followed by a
letter or a `#' and a digit:
abc & lt def => "abc & lt def"
abc &# 60 def => "abc &# 60 def"
A useful technique for translating plain text to HTML is to replace
each '<', '&', and '>' by an entity reference or numeric character
reference as follows:
ENTITY NUMERIC
CHARACTER REFERENCE CHAR REF CHARACTER DESCRIPTION
--------- ---------- ----------- ---------------------
& &amp; &#38; Ampersand
< &lt; &#60; Less than
> &gt; &#62; Greater than
NOTE - There are SGML mechanisms, CDATA and RCDATA
declared content, that allow most `<', `>', and `&'
characters to be entered without the use of entity
references. Because these mechanisms tend to be used and
implemented inconsistently, and because they conflict
<span class="grey">Berners-Lee & Connolly Standards Track [Page 13]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-14" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
with techniques for reducing HTML to 7 bit ASCII for
transport, they are deprecated in this version of HTML.
See 5.5.2.1, "Example and Listing: XMP, LISTING".
<span class="h4"><a class="selflink" id="section-3.2.2" href="#section-3.2.2">3.2.2</a>. Tags</span>
Tags delimit elements such as headings, paragraphs, lists, character
highlighting, and links. Most HTML elements are identified in a
document as a start-tag, which gives the element name and attributes,
followed by the content, followed by the end tag. Start-tags are
delimited by `<' and `>'; end tags are delimited by `</' and `>'. An
example is:
<H1>This is a Heading</H1>
Some elements only have a start-tag without an end-tag. For example,
to create a line break, use the `<BR>' tag. Additionally, the end
tags of some other elements, such as Paragraph (`</P>'), List Item
(`</LI>'), Definition Term (`</DT>'), and Definition Description
(`</DD>') elements, may be omitted.
The content of an element is a sequence of data character strings and
nested elements. Some elements, such as anchors, cannot be nested.
Anchors and character highlighting may be put inside other
constructs. See the HTML DTD, 9.1, "HTML DTD" for full details.
NOTE - The SGML declaration for HTML specifies SHORTTAG YES, which
means that there are other valid syntaxes for tags, such as NET
tags, `<EM/.../'; empty start tags, `<>'; and empty end-tags,
`</>'. Until support for these idioms is widely deployed, their
use is strongly discouraged.
<span class="h4"><a class="selflink" id="section-3.2.3" href="#section-3.2.3">3.2.3</a>. Names</span>
A name consists of a letter followed by letters, digits, periods, or
hyphens. The length of a name is limited to 72 characters by the
`NAMELEN' parameter in the SGML declaration for HTML, 9.5, "SGML
Declaration for HTML". Element and attribute names are not case
sensitive, but entity names are. For example, `<BLOCKQUOTE>',
`<BlockQuote>', and `<blockquote>' are equivalent, whereas `&amp;' is
different from `&AMP;'.
In a start-tag, the element name must immediately follow the tag open
delimiter `<'.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 14]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-15" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h4"><a class="selflink" id="section-3.2.4" href="#section-3.2.4">3.2.4</a>. Attributes</span>
In a start-tag, white space and attributes are allowed between the
element name and the closing delimiter. An attribute specification
typically consists of an attribute name, an equal sign, and a value,
though some attribute specifications may be just a name token. White
space is allowed around the equal sign.
The value of the attribute may be either:
* A string literal, delimited by single quotes or double
quotes and not containing any occurrences of the delimiting
character.
NOTE - Some historical implementations consider any
occurrence of the `>' character to signal the end of
a tag. For compatibility with such implementations,
when `>' appears in an attribute value, it should be
represented with a numeric character reference. For
example, `<IMG SRC="eq1.jpg" alt="a>b">' should be
written `<IMG SRC="eq1.jpg" alt="a&#62;b">' or `<IMG
SRC="eq1.jpg" alt="a&gt;b">'.
* A name token (a sequence of letters, digits, periods, or
hyphens). Name tokens are not case sensitive.
NOTE - Some historical implementations allow any
character except space or `>' in a name token.
In this example, <img> is the element name, src is the attribute
name, and `http://host/dir/file.gif' is the attribute value:
<img src='http://host/dir/file.gif'>
A useful technique for computing an attribute value literal for a
given string is to replace each quote and white space character by an
entity reference or numeric character reference as follows:
ENTITY NUMERIC
CHARACTER REFERENCE CHAR REF CHARACTER DESCRIPTION
--------- ---------- ----------- ---------------------
HT &#9; Tab
LF &#10; Line Feed
CR &#13; Carriage Return
SP &#32; Space
" &quot; &#34; Quotation mark
& &amp; &#38; Ampersand
<span class="grey">Berners-Lee & Connolly Standards Track [Page 15]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-16" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
For example:
<IMG SRC="image.jpg" alt="First &quot;real&quot; example">
The `NAMELEN' parameter in the SGML declaration (9.5, "SGML
Declaration for HTML") limits the length of an attribute value to
1024 characters.
Attributes such as ISMAP and COMPACT may be written using a minimized
syntax (see 7.9.1.2 "Omitted Attribute Name" in [<a href="#ref-SGML">SGML</a>]). The markup:
<UL COMPACT="compact">
can be written using a minimized syntax:
<UL COMPACT>
NOTE - Some historical implementations only understand the minimized
syntax.
<span class="h4"><a class="selflink" id="section-3.2.5" href="#section-3.2.5">3.2.5</a>. Comments</span>
To include comments in an HTML document, use a comment declaration. A
comment declaration consists of `<!' followed by zero or more
comments followed by `>'. Each comment starts with `--' and includes
all text up to and including the next occurrence of `--'. In a
comment declaration, white space is allowed after each comment, but
not before the first comment. The entire comment declaration is
ignored.
NOTE - Some historical HTML implementations incorrectly consider
any `>' character to be the termination of a comment.
For example:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HEAD>
<TITLE>HTML Comment Example</TITLE>
<!-- Id: html-sgml.sgm,v 1.5 1995/05/26 21:29:50 connolly Exp -->
<!-- another -- -- comment -->
<!>
</HEAD>
<BODY>
<p> <!- not a comment, just regular old data characters ->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 16]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-17" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h3"><a class="selflink" id="section-3.3" href="#section-3.3">3.3</a>. HTML Public Text Identifiers</span>
To identify information as an HTML document conforming to this
specification, each document must start with one of the following
document type declarations.
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
This document type declaration refers to the HTML DTD in 9.1, "HTML
DTD".
NOTE - If the body of a `text/html' message entity does not begin
with a document type declaration, an HTML user agent should infer
the above document type declaration.
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Level 2//EN">
This document type declaration also refers to the HTML DTD which
appears in 9.1, "HTML DTD".
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Level 1//EN">
This document type declaration refers to the level 1 HTML DTD in 9.3,
"Level 1 HTML DTD". Form elements must not occur in level 1
documents.
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Strict//EN">
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Strict Level 1//EN">
These two document type declarations refer to the HTML DTD in 9.2,
"Strict HTML DTD" and 9.4, "Strict Level 1 HTML DTD". They refer to
the more structurally rigid definition of HTML.
HTML user agents may support other document types. In particular,
they may support other formal public identifiers, or other document
types altogether. They may support an internal declaration subset
with supplemental entity, element, and other markup declarations.
<span class="h3"><a class="selflink" id="section-3.4" href="#section-3.4">3.4</a>. Example HTML Document</span>
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML>
<!-- Here's a good place to put a comment. -->
<HEAD>
<TITLE>Structural Example</TITLE>
</HEAD><BODY>
<H1>First Header</H1>
<P>This is a paragraph in the example HTML file. Keep in mind
<span class="grey">Berners-Lee & Connolly Standards Track [Page 17]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-18" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
that the title does not appear in the document text, but that
the header (defined by H1) does.</P>
<OL>
<LI>First item in an ordered list.
<LI>Second item in an ordered list.
<UL COMPACT>
<LI> Note that lists can be nested;
<LI> Whitespace may be used to assist in reading the
HTML source.
</UL>
<LI>Third item in an ordered list.
</OL>
<P>This is an additional paragraph. Technically, end tags are
not required for paragraphs, although they are allowed. You can
include character highlighting in a paragraph. <EM>This sentence
of the paragraph is emphasized.</EM> Note that the &lt;/P&gt;
end tag has been omitted.
<P>
<IMG SRC ="triangle.xbm" alt="Warning: ">
Be sure to read these <b>bold instructions</b>.
</BODY></HTML>
<span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>. HTML as an Internet Media Type</span>
An HTML user agent allows users to interact with resources which have
HTML representations. At a minimum, it must allow users to examine
and navigate the content of HTML level 1 documents. HTML user agents
should be able to preserve all formatting distinctions represented in
an HTML document, and be able to simultaneously present resources
referred to by IMG elements (they may ignore some formatting
distinctions or IMG resources at the request of the user). Level 2
HTML user agents should support form entry and submission.
<span class="h3"><a class="selflink" id="section-4.1" href="#section-4.1">4.1</a>. text/html media type</span>
This specification defines the Internet Media Type [<a href="#ref-IMEDIA">IMEDIA</a>] (formerly
referred to as the Content Type [<a href="#ref-MIME">MIME</a>]) called `text/html'. The
following is to be registered with [<a href="#ref-IANA">IANA</a>].
Media Type name
text
Media subtype name
html
Required parameters
none
<span class="grey">Berners-Lee & Connolly Standards Track [Page 18]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-19" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
Optional parameters
level, charset
Encoding considerations
any encoding is allowed
Security considerations
see 10, "Security Considerations"
The optional parameters are defined as follows:
Level
The level parameter specifies the feature set used in
the document. The level is an integer number, implying
that any features of same or lower level may be present
in the document. Level 1 is all features defined in this
specification except those that require the <FORM>
element. Level 2 includes form processing. Level 2 is
the default.
Charset
The charset parameter (as defined in <a href="./rfc1521#section-7.1.1">section 7.1.1 of
RFC 1521</a>[<a href="#ref-MIME">MIME</a>]) may be given to specify the character
encoding scheme used to represent the HTML document as a
sequence of octets. The default value is outside the
scope of this specification; but for example, the
default is `US-ASCII' in the context of MIME mail, and
`ISO-8859-1' in the context of HTTP [<a href="#ref-HTTP">HTTP</a>].
<span class="h3"><a class="selflink" id="section-4.2" href="#section-4.2">4.2</a>. HTML Document Representation</span>
A message entity with a content type of `text/html' represents an
HTML document, consisting of a single text entity. The `charset'
parameter (whether implicit or explicit) identifies a character
encoding scheme. The text entity consists of the characters
determined by this character encoding scheme and the octets of the
body of the message entity.
<span class="h4"><a class="selflink" id="section-4.2.1" href="#section-4.2.1">4.2.1</a>. Undeclared Markup Error Handling</span>
To facilitate experimentation and interoperability between
implementations of various versions of HTML, the installed base of
HTML user agents supports a superset of the HTML 2.0 language by
reducing it to HTML 2.0: markup in the form of a start-tag or end-
tag, whose generic identifier is not declared is mapped to nothing
during tokenization. Undeclared attributes are treated similarly. The
entire attribute specification of an unknown attribute (i.e., the
unknown attribute and its value, if any) should be ignored. On the
<span class="grey">Berners-Lee & Connolly Standards Track [Page 19]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-20" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
other hand, references to undeclared entities should be treated as
data characters.
For example:
<div class=chapter><h1>foo</h1><p>...</div>
=> <H1>,"foo",</H1>,<P>,"..."
xxx <P ID=z23> yyy
=> "xxx ",<P>," yyy
Let &alpha; &amp; &beta; be finite sets.
=> "Let &alpha; & &beta; be finite sets."
Support for notifying the user of such errors is encouraged.
Information providers are warned that this convention is not binding:
unspecified behavior may result, as such markup does not conform to
this specification.
<span class="h4"><a class="selflink" id="section-4.2.2" href="#section-4.2.2">4.2.2</a>. Conventional Representation of Newlines</span>
SGML specifies that a text entity is a sequence of records, each
beginning with a record start character and ending with a record end
character (code positions 10 and 13 respectively) (<a href="#section-7.6.1">section 7.6.1</a>,
"Record Boundaries" in [<a href="#ref-SGML">SGML</a>]).
[<a id="ref-MIME">MIME</a>] specifies that a body of type `text/*' is a sequence of lines,
each terminated by CRLF, that is, octets 13, 10.
In practice, HTML documents are frequently represented and
transmitted using an end of line convention that depends on the
conventions of the source of the document; frequently, that
representation consists of CR only, LF only, or a CR LF sequence.
Hence the decoding of the octets will often result in a text entity
with some missing record start and record end characters.
Since there is no ambiguity, HTML user agents are encouraged to infer
the missing record start and end characters.
An HTML user agent should treat end of line in any of its variations
as a word space in all contexts except preformatted text. Within
preformatted text, an HTML user agent should treat any of the three
common representations of end-of-line as starting a new line.
<span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>. Document Structure</span>
An HTML document is a tree of elements, including a head and body,
headings, paragraphs, lists, etc. Form elements are discussed in 8,
"Forms".
<span class="grey">Berners-Lee & Connolly Standards Track [Page 20]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-21" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h3"><a class="selflink" id="section-5.1" href="#section-5.1">5.1</a>. Document Element: HTML</span>
The HTML document element consists of a head and a body, much like a
memo or a mail message. The head contains the title and optional
elements. The body is a text flow consisting of paragraphs, lists,
and other elements.
<span class="h3"><a class="selflink" id="section-5.2" href="#section-5.2">5.2</a>. Head: HEAD</span>
The head of an HTML document is an unordered collection of
information about the document. For example:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HEAD>
<TITLE>Introduction to HTML</TITLE>
</HEAD>
...
<span class="h4"><a class="selflink" id="section-5.2.1" href="#section-5.2.1">5.2.1</a>. Title: TITLE</span>
Every HTML document must contain a <TITLE> element.
The title should identify the contents of the document in a global
context. A short title, such as "Introduction" may be meaningless out
of context. A title such as "Introduction to HTML Elements" is more
appropriate.
NOTE - The length of a title is not limited; however, long titles
may be truncated in some applications. To minimize this
possibility, titles should be fewer than 64 characters.
A user agent may display the title of a document in a history list or
as a label for the window displaying the document. This differs from
headings (5.4, "Headings: H1 ... H6"), which are typically displayed
within the body text flow.
<span class="h4"><a class="selflink" id="section-5.2.2" href="#section-5.2.2">5.2.2</a>. Base Address: BASE</span>
The optional <BASE> element provides a base address for interpreting
relative URLs when the document is read out of context (see 7,
"Hyperlinks"). The value of the HREF attribute must be an absolute
URI.
<span class="h4"><a class="selflink" id="section-5.2.3" href="#section-5.2.3">5.2.3</a>. Keyword Index: ISINDEX</span>
The <ISINDEX> element indicates that the user agent should allow the
user to search an index by giving keywords. See 7.5, "Queries and
Indexes" for details.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 21]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-22" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h4"><a class="selflink" id="section-5.2.4" href="#section-5.2.4">5.2.4</a>. Link: LINK</span>
The <LINK> element represents a hyperlink (see 7, "Hyperlinks"). Any
number of LINK elements may occur in the <HEAD> element of an HTML
document. It has the same attributes as the <A> element (see 5.7.3,
"Anchor: A").
The <LINK> element is typically used to indicate authorship, related
indexes and glossaries, older or more recent versions, document
hierarchy, associated resources such as style sheets, etc.
<span class="h4"><a class="selflink" id="section-5.2.5" href="#section-5.2.5">5.2.5</a>. Associated Meta-information: META</span>
The <META> element is an extensible container for use in identifying
specialized document meta-information. Meta-information has two main
functions:
* to provide a means to discover that the data set exists
and how it might be obtained or accessed; and
* to document the content, quality, and features of a data
set, indicating its fitness for use.
Each <META> element specifies a name/value pair. If multiple META
elements are provided with the same name, their combined contents--
concatenated as a comma-separated list--is the value associated with
that name.
NOTE - The <META> element should not be used where a
specific element, such as <TITLE>, would be more
appropriate. Rather than a <META> element with a URI as
the value of the CONTENT attribute, use a <LINK>
element.
HTTP servers may read the content of the document <HEAD> to generate
header fields corresponding to any elements defining a value for the
attribute HTTP-EQUIV.
NOTE - The method by which the server extracts document
meta-information is unspecified and not mandatory. The
<META> element only provides an extensible mechanism for
identifying and embedding document meta-information --
how it may be used is up to the individual server
implementation and the HTML user agent.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 22]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-23" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
Attributes of the META element:
HTTP-EQUIV
binds the element to an HTTP header field. An HTTP
server may use this information to process the document.
In particular, it may include a header field in the
responses to requests for this document: the header name
is taken from the HTTP-EQUIV attribute value, and the
header value is taken from the value of the CONTENT
attribute. HTTP header names are not case sensitive.
NAME
specifies the name of the name/value pair. If not
present, HTTP-EQUIV gives the name.
CONTENT
specifies the value of the name/value pair.
Examples
If the document contains:
<META HTTP-EQUIV="Expires"
CONTENT="Tue, 04 Dec 1993 21:29:02 GMT">
<meta http-equiv="Keywords" CONTENT="Fred">
<META HTTP-EQUIV="Reply-to"
content="fielding@ics.uci.edu (Roy Fielding)">
<Meta Http-equiv="Keywords" CONTENT="Barney">
then the server may include the following header fields:
Expires: Tue, 04 Dec 1993 21:29:02 GMT
Keywords: Fred, Barney
Reply-to: fielding@ics.uci.edu (Roy Fielding)
as part of the HTTP response to a `GET' or `HEAD' request for
that document.
An HTTP server must not use the <META> element to form an HTTP
response header unless the HTTP-EQUIV attribute is present.
An HTTP server may disregard any <META> elements that specify
information controlled by the HTTP server, for example `Server',
`Date', and `Last-modified'.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 23]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-24" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h4"><a class="selflink" id="section-5.2.6" href="#section-5.2.6">5.2.6</a>. Next Id: NEXTID</span>
The <NEXTID> element is included for historical reasons only. HTML
documents should not contain <NEXTID> elements.
The <NEXTID> element gives a hint for the name to use for a new <A>
element when editing an HTML document. It should be distinct from all
NAME attribute values on <A> elements. For example:
<NEXTID N=Z27>
<span class="h3"><a class="selflink" id="section-5.3" href="#section-5.3">5.3</a>. Body: BODY</span>
The <BODY> element contains the text flow of the document, including
headings, paragraphs, lists, etc.
For example:
<BODY>
<h1>Important Stuff</h1>
<p>Explanation about important stuff...
</BODY>
<a href="#section-5.4">5.4</a>. Headings: H1 ... H6
The six heading elements, <H1> through <H6>, denote section headings.
Although the order and occurrence of headings is not constrained by
the HTML DTD, documents should not skip levels (for example, from H1
to H3), as converting such documents to other representations is
often problematic.
Example of use:
<H1>This is a heading</H1>
Here is some text
<H2>Second level heading</H2>
Here is some more text.
Typical renderings are:
H1
Bold, very-large font, centered. One or two blank lines
above and below.
H2
Bold, large font, flush-left. One or two blank lines
above and below.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 24]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-25" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
H3
Italic, large font, slightly indented from the left
margin. One or two blank lines above and below.
H4
Bold, normal font, indented more than H3. One blank line
above and below.
H5
Italic, normal font, indented as H4. One blank line
above.
H6
Bold, indented same as normal text, more than H5. One
blank line above.
<span class="h3"><a class="selflink" id="section-5.5" href="#section-5.5">5.5</a>. Block Structuring Elements</span>
Block structuring elements include paragraphs, lists, and block
quotes. They must not contain heading elements, but they may contain
phrase markup, and in some cases, they may be nested.
<span class="h4"><a class="selflink" id="section-5.5.1" href="#section-5.5.1">5.5.1</a>. Paragraph: P</span>
The <P> element indicates a paragraph. The exact indentation, leading
space, etc. of a paragraph is not specified and may be a function of
other tags, style sheets, etc.
Typically, paragraphs are surrounded by a vertical space of one line
or half a line. The first line in a paragraph is indented in some
cases.
Example of use:
<H1>This Heading Precedes the Paragraph</H1>
<P>This is the text of the first paragraph.
<P>This is the text of the second paragraph. Although you do not
need to start paragraphs on new lines, maintaining this
convention facilitates document maintenance.</P>
<P>This is the text of a third paragraph.</P>
<span class="h4"><a class="selflink" id="section-5.5.2" href="#section-5.5.2">5.5.2</a>. Preformatted Text: PRE</span>
The <PRE> element represents a character cell block of text and is
suitable for text that has been formatted for a monospaced font.
The <PRE> tag may be used with the optional WIDTH attribute. The
WIDTH attribute specifies the maximum number of characters for a line
<span class="grey">Berners-Lee & Connolly Standards Track [Page 25]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-26" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
and allows the HTML user agent to select a suitable font and
indentation.
Within preformatted text:
* Line breaks within the text are rendered as a move to the
beginning of the next line.
NOTE - References to the "beginning of a new line"
do not imply that the renderer is forbidden from
using a constant left indent for rendering
preformatted text. The left indent may be
constrained by the width required.
* Anchor elements and phrase markup may be used.
NOTE - Constraints on the processing of <PRE>
content may limit or prevent the ability of the HTML
user agent to faithfully render phrase markup.
* Elements that define paragraph formatting (headings,
address, etc.) must not be used.
NOTE - Some historical documents contain <P> tags in
<PRE> elements. User agents are encouraged to treat
this as a line break. A <P> tag followed by a
newline character should produce only one line
break, not a line break plus a blank line.
* The horizontal tab character (code position 9 in the HTML
document character set) must be interpreted as the smallest
positive nonzero number of spaces which will leave the
number of characters so far on the line as a multiple of 8.
Documents should not contain tab characters, as they are not
supported consistently.
Example of use:
<PRE>
Line 1.
Line 2 is to the right of line 1. <a href="abc">abc</a>
Line 3 aligns with line 2. <a href="def">def</a>
</PRE>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 26]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-27" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h5"><a class="selflink" id="section-5.5.2.1" href="#section-5.5.2.1">5.5.2.1</a>. Example and Listing: XMP, LISTING</span>
The <XMP> and <LISTING> elements are similar to the <PRE> element,
but they have a different syntax. Their content is declared as CDATA,
which means that no markup except the end-tag open delimiter-in-
context is recognized (see 9.6 "Delimiter Recognition" of [<a href="#ref-SGML">SGML</a>]).
NOTE - In a previous draft of the HTML specification, the syntax
of <XMP> and <LISTING> elements allowed closing tags to be treated
as data characters, as long as the tag name was not <XMP> or
<LISTING>, respectively.
Since CDATA declared content has a number of unfortunate interactions
with processing techniques and tends to be used and implemented
inconsistently, HTML documents should not contain <XMP> nor <LISTING>
elements -- the <PRE> tag is more expressive and more consistently
supported.
The <LISTING> element should be rendered so that at least 132
characters fit on a line. The <XMP> element should be rendered so
that at least 80 characters fit on a line but is otherwise identical
to the <LISTING> element.
NOTE - In a previous draft, HTML included a <PLAINTEXT> element
that is similar to the <LISTING> element, except that there is no
closing tag: all characters after the <PLAINTEXT> start-tag are
data.
<span class="h4"><a class="selflink" id="section-5.5.3" href="#section-5.5.3">5.5.3</a>. Address: ADDRESS</span>
The <ADDRESS> element contains such information as address, signature
and authorship, often at the beginning or end of the body of a
document.
Typically, the <ADDRESS> element is rendered in an italic typeface
and may be indented.
Example of use:
<ADDRESS>
Newsletter editor<BR>
J.R. Brown<BR>
JimquickPost News, Jimquick, CT 01234<BR>
Tel (123) 456 7890
</ADDRESS>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 27]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-28" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h4"><a class="selflink" id="section-5.5.4" href="#section-5.5.4">5.5.4</a>. Block Quote: BLOCKQUOTE</span>
The <BLOCKQUOTE> element contains text quoted from another source.
A typical rendering might be a slight extra left and right indent,
and/or italic font. The <BLOCKQUOTE> typically provides space above
and below the quote.
Single-font rendition may reflect the quotation style of Internet
mail by putting a vertical line of graphic characters, such as the
greater than symbol (>), in the left margin.
Example of use:
I think the play ends
<BLOCKQUOTE>
<P>Soft you now, the fair Ophelia. Nymph, in thy orisons, be all
my sins remembered.
</BLOCKQUOTE>
but I am not sure.
<span class="h3"><a class="selflink" id="section-5.6" href="#section-5.6">5.6</a>. List Elements</span>
HTML includes a number of list elements. They may be used in
combination; for example, a <OL> may be nested in an <LI> element of
a <UL>.
The COMPACT attribute suggests that a compact rendering be used.
<span class="h4"><a class="selflink" id="section-5.6.1" href="#section-5.6.1">5.6.1</a>. Unordered List: UL, LI</span>
The <UL> represents a list of items -- typically rendered as a
bulleted list.
The content of a <UL> element is a sequence of <LI> elements. For
example:
<UL>
<LI>First list item
<LI>Second list item
<p>second paragraph of second item
<LI>Third list item
</UL>
<span class="h4"><a class="selflink" id="section-5.6.2" href="#section-5.6.2">5.6.2</a>. Ordered List: OL</span>
The <OL> element represents an ordered list of items, sorted by
sequence or order of importance. It is typically rendered as a
<span class="grey">Berners-Lee & Connolly Standards Track [Page 28]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-29" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
numbered list.
The content of a <OL> element is a sequence of <LI> elements. For
example:
<OL>
<LI>Click the Web button to open URI window.
<LI>Enter the URI number in the text field of the Open URI
window. The Web document you specified is displayed.
<ol>
<li>substep 1
<li>substep 2
</ol>
<LI>Click highlighted text to move from one link to another.
</OL>
<span class="h4"><a class="selflink" id="section-5.6.3" href="#section-5.6.3">5.6.3</a>. Directory List: DIR</span>
The <DIR> element is similar to the <UL> element. It represents a
list of short items, typically up to 20 characters each. Items in a
directory list may be arranged in columns, typically 24 characters
wide.
The content of a <DIR> element is a sequence of <LI> elements.
Nested block elements are not allowed in the content of <DIR>
elements. For example:
<DIR>
<LI>A-H<LI>I-M
<LI>M-R<LI>S-Z
</DIR>
<span class="h4"><a class="selflink" id="section-5.6.4" href="#section-5.6.4">5.6.4</a>. Menu List: MENU</span>
The <MENU> element is a list of items with typically one line per
item. The menu list style is typically more compact than the style of
an unordered list.
The content of a <MENU> element is a sequence of <LI> elements.
Nested block elements are not allowed in the content of <MENU>
elements. For example:
<MENU>
<LI>First item in the list.
<LI>Second item in the list.
<LI>Third item in the list.
</MENU>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 29]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-30" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h4"><a class="selflink" id="section-5.6.5" href="#section-5.6.5">5.6.5</a>. Definition List: DL, DT, DD</span>
A definition list is a list of terms and corresponding definitions.
Definition lists are typically formatted with the term flush-left and
the definition, formatted paragraph style, indented after the term.
The content of a <DL> element is a sequence of <DT> elements and/or
<DD> elements, usually in pairs. Multiple <DT> may be paired with a
single <DD> element. Documents should not contain multiple
consecutive <DD> elements.
Example of use:
<DL>
<DT>Term<DD>This is the definition of the first term.
<DT>Term<DD>This is the definition of the second term.
</DL>
If the DT term does not fit in the DT column (typically one third of
the display area), it may be extended across the page with the DD
section moved to the next line, or it may be wrapped onto successive
lines of the left hand column.
The optional COMPACT attribute suggests that a compact rendering be
used, because the list items are small and/or the entire list is
large.
Unless the COMPACT attribute is present, an HTML user agent may leave
white space between successive DT, DD pairs. The COMPACT attribute
may also reduce the width of the left-hand (DT) column.
<DL COMPACT>
<DT>Term<DD>This is the first definition in compact format.
<DT>Term<DD>This is the second definition in compact format.
</DL>
<span class="h3"><a class="selflink" id="section-5.7" href="#section-5.7">5.7</a>. Phrase Markup</span>
Phrases may be marked up according to idiomatic usage, typographic
appearance, or for use as hyperlink anchors.
User agents must render highlighted phrases distinctly from plain
text. Additionally, <EM> content must be rendered as distinct from
<STRONG> content, and <B> content must rendered as distinct from <I>
content.
Phrase elements may be nested within the content of other phrase
elements; however, HTML user agents may render nested phrase elements
<span class="grey">Berners-Lee & Connolly Standards Track [Page 30]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-31" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
indistinctly from non-nested elements:
plain <B>bold <I>italic</I></B> may be rendered
the same as plain <B>bold </B><I>italic</I>
<span class="h4"><a class="selflink" id="section-5.7.1" href="#section-5.7.1">5.7.1</a>. Idiomatic Elements</span>
Phrases may be marked up to indicate certain idioms.
NOTE - User agents may support the <DFN> element, not included in
this specification, as it has been deployed to some extent. It is
used to indicate the defining instance of a term, and it is
typically rendered in italic or bold italic.
<span class="h5"><a class="selflink" id="section-5.7.1.1" href="#section-5.7.1.1">5.7.1.1</a>. Citation: CITE</span>
The <CITE> element is used to indicate the title of a book or
other citation. It is typically rendered as italics. For example:
He just couldn't get enough of <cite>The Grapes of Wrath</cite>.
<span class="h5"><a class="selflink" id="section-5.7.1.2" href="#section-5.7.1.2">5.7.1.2</a>. Code: CODE</span>
The <CODE> element indicates an example of code, typically
rendered in a mono-spaced font. The <CODE> element is intended for
short words or phrases of code; the <PRE> block structuring
element (5.5.2, "Preformatted Text: PRE") is more appropriate
for multiple-line listings. For example:
The expression <code>x += 1</code>
is short for <code>x = x + 1</code>.
<span class="h5"><a class="selflink" id="section-5.7.1.3" href="#section-5.7.1.3">5.7.1.3</a>. Emphasis: EM</span>
The <EM> element indicates an emphasized phrase, typically
rendered as italics. For example:
A singular subject <em>always</em> takes a singular verb.
<span class="h5"><a class="selflink" id="section-5.7.1.4" href="#section-5.7.1.4">5.7.1.4</a>. Keyboard: KBD</span>
The <KBD> element indicates text typed by a user, typically
rendered in a mono-spaced font. This is commonly used in
instruction manuals. For example:
Enter <kbd>FIND IT</kbd> to search the database.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 31]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-32" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h5"><a class="selflink" id="section-5.7.1.5" href="#section-5.7.1.5">5.7.1.5</a>. Sample: SAMP</span>
The <SAMP> element indicates a sequence of literal characters,
typically rendered in a mono-spaced font. For example:
The only word containing the letters <samp>mt</samp> is dreamt.
<span class="h5"><a class="selflink" id="section-5.7.1.6" href="#section-5.7.1.6">5.7.1.6</a>. Strong Emphasis: STRONG</span>
The <STRONG> element indicates strong emphasis, typically rendered
in bold. For example:
<strong>STOP</strong>, or I'll say "<strong>STOP</strong>" again!
<span class="h5"><a class="selflink" id="section-5.7.1.7" href="#section-5.7.1.7">5.7.1.7</a>. Variable: VAR</span>
The <VAR> element indicates a placeholder variable, typically
rendered as italic. For example:
Type <SAMP>html-check <VAR>file</VAR> | more</SAMP>
to check <VAR>file</VAR> for markup errors.
<span class="h4"><a class="selflink" id="section-5.7.2" href="#section-5.7.2">5.7.2</a>. Typographic Elements</span>
Typographic elements are used to specify the format of marked
text.
Typical renderings for idiomatic elements may vary between user
agents. If a specific rendering is necessary -- for example, when
referring to a specific text attribute as in "The italic parts are
mandatory" -- a typographic element can be used to ensure that the
intended typography is used where possible.
NOTE - User agents may support some typographic elements not
included in this specification, as they have been deployed to some
extent. The <STRIKE> element indicates horizontal line through the
characters, and the <U> element indicates an underline.
<span class="h5"><a class="selflink" id="section-5.7.2.1" href="#section-5.7.2.1">5.7.2.1</a>. Bold: B</span>
The <B> element indicates bold text. Where bold typography is
unavailable, an alternative representation may be used.
<span class="h5"><a class="selflink" id="section-5.7.2.2" href="#section-5.7.2.2">5.7.2.2</a>. Italic: I</span>
The <I> element indicates italic text. Where italic typography is
unavailable, an alternative representation may be used.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 32]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-33" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h5"><a class="selflink" id="section-5.7.2.3" href="#section-5.7.2.3">5.7.2.3</a>. Teletype: TT</span>
The <TT> element indicates teletype (monospaced )text. Where a
teletype font is unavailable, an alternative representation may be
used.
<span class="h4"><a class="selflink" id="section-5.7.3" href="#section-5.7.3">5.7.3</a>. Anchor: A</span>
The <A> element indicates a hyperlink anchor (see 7, "Hyperlinks").
At least one of the NAME and HREF attributes should be present.
Attributes of the <A> element:
HREF
gives the URI of the head anchor of a hyperlink.
NAME
gives the name of the anchor, and makes it available as
a head of a hyperlink.
TITLE
suggests a title for the destination resource --
advisory only. The TITLE attribute may be used:
* for display prior to accessing the destination
resource, for example, as a margin note or on a
small box while the mouse is over the anchor, or
while the document is being loaded;
* for resources that do not include a title, such as
graphics, plain text and Gopher menus, for use as a
window title.
REL
The REL attribute gives the relationship(s) described by
the hyperlink. The value is a whitespace separated list
of relationship names. The semantics of link
relationships are not specified in this document.
REV
same as the REL attribute, but the semantics of the
relationship are in the reverse direction. A link from A
to B with REL="X" expresses the same relationship as a
link from B to A with REV="X". An anchor may have both
REL and REV attributes.
URN
specifies a preferred, more persistent identifier for
the head anchor of the hyperlink. The syntax and
<span class="grey">Berners-Lee & Connolly Standards Track [Page 33]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-34" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
semantics of the URN attribute are not yet specified.
METHODS
specifies methods to be used in accessing the
destination, as a whitespace-separated list of names.
The set of applicable names is a function of the scheme
of the URI in the HREF attribute. For similar reasons as
for the TITLE attribute, it may be useful to include the
information in advance in the link. For example, the
HTML user agent may chose a different rendering as a
function of the methods allowed; for example, something
that is searchable may get a different icon.
<span class="h3"><a class="selflink" id="section-5.8" href="#section-5.8">5.8</a>. Line Break: BR</span>
The <BR> element specifies a line break between words (see 6,
"Characters, Words, and Paragraphs"). For example:
<P> Pease porridge hot<BR>
Pease porridge cold<BR>
Pease porridge in the pot<BR>
Nine days old.
<span class="h3"><a class="selflink" id="section-5.9" href="#section-5.9">5.9</a>. Horizontal Rule: HR</span>
The <HR> element is a divider between sections of text; typically a
full width horizontal rule or equivalent graphic. For example:
<HR>
<ADDRESS>February 8, 1995, CERN</ADDRESS>
</BODY>
<span class="h3"><a class="selflink" id="section-5.10" href="#section-5.10">5.10</a>. Image: IMG</span>
The <IMG> element refers to an image or icon via a hyperlink (see
7.3, "Simultaneous Presentation of Image Resources").
HTML user agents may process the value of the ALT attribute as an
alternative to processing the image resource indicated by the SRC
attribute.
NOTE - Some HTML user agents can process graphics linked via
anchors, but not <IMG> graphics. If a graphic is essential, it
should be referenced from an <A> element rather than an <IMG>
element. If the graphic is not essential, then the <IMG> element
is appropriate.
Attributes of the <IMG> element:
<span class="grey">Berners-Lee & Connolly Standards Track [Page 34]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-35" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
ALIGN
alignment of the image with respect to the text
baseline.
* `TOP' specifies that the top of the image aligns
with the tallest item on the line containing the
image.
* `MIDDLE' specifies that the center of the image
aligns with the baseline of the line containing the
image.
* `BOTTOM' specifies that the bottom of the image
aligns with the baseline of the line containing the
image.
ALT
text to use in place of the referenced image resource,
for example due to processing constraints or user
preference.
ISMAP
indicates an image map (see 7.6, "Image Maps").
SRC
specifies the URI of the image resource.
NOTE - In practice, the media types of image
resources are limited to a few raster graphic
formats: typically `image/gif', `image/jpeg'. In
particular, `text/html' resources are not
intended to be used as image resources.
Examples of use:
<IMG SRC="triangle.xbm" ALT="Warning:"> Be sure
to read these instructions.
<a href="http://machine/htbin/imagemap/sample">
<IMG SRC="sample.xbm" ISMAP>
</a>
<span class="h2"><a class="selflink" id="section-6" href="#section-6">6</a>. Characters, Words, and Paragraphs</span>
An HTML user agent should present the body of an HTML document as a
collection of typeset paragraphs and preformatted text. Except for
preformatted elements (<PRE>, <XMP>, <LISTING>, <TEXTAREA>), each
block structuring element is regarded as a paragraph by taking the
<span class="grey">Berners-Lee & Connolly Standards Track [Page 35]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-36" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
data characters in its content and the content of its descendant
elements, concatenating them, and splitting the result into words,
separated by space, tab, or record end characters (and perhaps hyphen
characters). The sequence of words is typeset as a paragraph by
breaking it into lines.
<span class="h3"><a class="selflink" id="section-6.1" href="#section-6.1">6.1</a>. The HTML Document Character Set</span>
The document character set specified in 9.5, "SGML Declaration for
HTML" must be supported by HTML user agents. It includes the graphic
characters of Latin Alphabet No. 1, or simply Latin-1. Latin-1
comprises 191 graphic characters, including the alphabets of most
Western European languages.
NOTE - Use of the non-breaking space and soft hyphen indicator
characters is discouraged because support for them is not widely
deployed.
NOTE - To support non-western writing systems, a larger character
repertoire will be specified in a future version of HTML. The
document character set will be [<a href="#ref-ISO-10646">ISO-10646</a>], or some subset that
agrees with [<a href="#ref-ISO-10646">ISO-10646</a>]; in particular, all numeric character
references must use code positions assigned by [<a href="#ref-ISO-10646">ISO-10646</a>].
In SGML applications, the use of control characters is limited in
order to maximize the chance of successful interchange over
heterogeneous networks and operating systems. In the HTML document
character set only three control characters are allowed: Horizontal
Tab, Carriage Return, and Line Feed (code positions 9, 13, and 10).
The HTML DTD references the Added Latin 1 entity set, to allow
mnemonic representation of selected Latin 1 characters using only the
widely supported ASCII character repertoire. For example:
Kurt G&ouml;del was a famous logician and mathematician.
See 9.7.2, "ISO Latin 1 Character Entity Set" for a table of the
"Added Latin 1" entities, and 13, "The HTML Coded Character Set" for
a table of the code positions of [ISO 8859-1] and the control
characters in the HTML document character set.
<span class="h2"><a class="selflink" id="section-7" href="#section-7">7</a>. Hyperlinks</span>
In addition to general purpose elements such as paragraphs and lists,
HTML documents can express hyperlinks. An HTML user agent allows the
user to navigate these hyperlinks.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 36]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-37" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
A hyperlink is a relationship between two anchors, called the head
and the tail of the hyperlink[DEXTER]. Anchors are identified by an
anchor address: an absolute Uniform Resource Identifier (URI),
optionally followed by a '#' and a sequence of characters called a
fragment identifier. For example:
<a href="http://www.w3.org/hypertext/WWW/TheProject.html">http://www.w3.org/hypertext/WWW/TheProject.html</a>
<a href="http://www.w3.org/hypertext/WWW/TheProject.html#z31">http://www.w3.org/hypertext/WWW/TheProject.html#z31</a>
In an anchor address, the URI refers to a resource; it may be used in
a variety of information retrieval protocols to obtain an entity that
represents the resource, such as an HTML document. The fragment
identifier, if present, refers to some view on, or portion of the
resource.
Each of the following markup constructs indicates the tail anchor of
a hyperlink or set of hyperlinks:
* <A> elements with HREF present.
* <LINK> elements.
* <IMG> elements.
* <INPUT> elements with the SRC attribute present.
* <ISINDEX> elements.
* <FORM> elements with `METHOD=GET'.
These markup constructs refer to head anchors by a URI, either
absolute or relative, or a fragment identifier, or both.
In the case of a relative URI, the absolute URI in the address of the
head anchor is the result of combining the relative URI with a base
absolute URI as in [<a href="#ref-RELURL">RELURL</a>]. The base document is taken from the
document's <BASE> element, if present; else, it is determined as in
[<a href="#ref-RELURL">RELURL</a>].
<span class="h3"><a class="selflink" id="section-7.1" href="#section-7.1">7.1</a>. Accessing Resources</span>
Once the address of the head anchor is determined, the user agent may
obtain a representation of the resource.
For example, if the base URI is `http://host/x/y.html' and the
document contains:
<img src="../icons/abc.gif">
<span class="grey">Berners-Lee & Connolly Standards Track [Page 37]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-38" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
then the user agent uses the URI `http://host/icons/abc.gif' to
access the resource, as in [<a href="#ref-URL">URL</a>]..
<span class="h3"><a class="selflink" id="section-7.2" href="#section-7.2">7.2</a>. Activation of Hyperlinks</span>
An HTML user agent allows the user to navigate the content of the
document and request activation of hyperlinks denoted by <A>
elements. HTML user agents should also allow activation of <LINK>
element hyperlinks.
To activate a link, the user agent obtains a representation of the
resource identified in the address of the head anchor. If the
representation is another HTML document, navigation may begin again
with this new document.
<span class="h3"><a class="selflink" id="section-7.3" href="#section-7.3">7.3</a>. Simultaneous Presentation of Image Resources</span>
An HTML user agent may activate hyperlinks indicated by <IMG> and
<INPUT> elements concurrently with processing the document; that is,
image hyperlinks may be processed without explicit request by the
user. Image resources should be embedded in the presentation at the
point of the tail anchor, that is the <IMG> or <INPUT> element.
<LINK> hyperlinks may also be processed without explicit user
request; for example, style sheet resources may be processed before
or during the processing of the document.
<span class="h3"><a class="selflink" id="section-7.4" href="#section-7.4">7.4</a>. Fragment Identifiers</span>
Any characters following a `#' character in a hypertext address
constitute a fragment identifier. In particular, an address of the
form `#fragment' refers to an anchor in the same document.
The meaning of fragment identifiers depends on the media type of the
representation of the anchor's resource. For `text/html'
representations, it refers to the <A> element with a NAME attribute
whose value is the same as the fragment identifier. The matching is
case sensitive. The document should have exactly one such element.
The user agent should indicate the anchor element, for example by
scrolling to and/or highlighting the phrase.
For example, if the base URI is `http://host/x/y.html' and the user
activated the link denoted by the following markup:
<p> See: <a href="app1.html#bananas">appendix 1</a>
for more detail on bananas.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 38]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-39" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
Then the user agent accesses the resource identified by
`http://host/x/app1.html'. Assuming the resource is represented using
the `text/html' media type, the user agent must locate the <A>
element whose NAME attribute is `bananas' and begin navigation there.
<span class="h3"><a class="selflink" id="section-7.5" href="#section-7.5">7.5</a>. Queries and Indexes</span>
The <ISINDEX> element represents a set of hyperlinks. The user can
choose from the set by providing keywords to the user agent. The
user agent computes the head URI by appending `?' and the keywords to
the base URI. The keywords are escaped according to [<a href="#ref-URL">URL</a>] and joined
by `+'. For example, if a document contains:
<BASE HREF="http://host/index">
<ISINDEX>
and the user provides the keywords `apple' and `berry', then the
user agent must access the resource
`http://host/index?apple+berry'.
<FORM> elements with `METHOD=GET' also represent sets of
hyperlinks. See 8.2.2, "Query Forms: METHOD=GET" for details.
<span class="h3"><a class="selflink" id="section-7.6" href="#section-7.6">7.6</a>. Image Maps</span>
If the ISMAP attribute is present on an <IMG> element, the <IMG>
element must be contained in an <A> element with an HREF present.
This construct represents a set of hyperlinks. The user can choose
from the set by choosing a pixel of the image. The user agent
computes the head URI by appending `?' and the x and y coordinates of
the pixel to the URI given in the <A> element. For example, if a
document contains:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<head><title>ImageMap Example</title>
<BASE HREF="http://host/index"></head>
<body>
<p> Choose any of these icons:<br>
<a href="/cgi-bin/imagemap"><img ismap src="icons.gif"></a>
and the user chooses the upper-leftmost pixel, the chosen
hyperlink is the one with the URI
`http://host/cgi-bin/imagemap?0,0'.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 39]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-40" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h2"><a class="selflink" id="section-8" href="#section-8">8</a>. Forms</span>
A form is a template for a form data set and an associated
method and action URI. A form data set is a sequence of
name/value pair fields. The names are specified on the NAME
attributes of form input elements, and the values are given
initial values by various forms of markup and edited by the
user. The resulting form data set is used to access an
information service as a function of the action and method.
Forms elements can be mixed in with document structuring
elements. For example, a <PRE> element may contain a <FORM>
element, or a <FORM> element may contain lists which contain
<INPUT> elements. This gives considerable flexibility in
designing the layout of forms.
Form processing is a level 2 feature.
<span class="h3"><a class="selflink" id="section-8.1" href="#section-8.1">8.1</a>. Form Elements</span>
<span class="h4"><a class="selflink" id="section-8.1.1" href="#section-8.1.1">8.1.1</a>. Form: FORM</span>
The <FORM> element contains a sequence of input elements, along
with document structuring elements. The attributes are:
ACTION
specifies the action URI for the form. The action URI of
a form defaults to the base URI of the document (see 7,
"Hyperlinks").
METHOD
selects a method of accessing the action URI. The set of
applicable methods is a function of the scheme of the
action URI of the form. See 8.2.2, "Query Forms:
METHOD=GET" and 8.2.3, "Forms with Side-Effects:
METHOD=POST".
ENCTYPE
specifies the media type used to encode the name/value
pairs for transport, in case the protocol does not
itself impose a format. See 8.2.1, "The form-urlencoded
Media Type".
<span class="h4"><a class="selflink" id="section-8.1.2" href="#section-8.1.2">8.1.2</a>. Input Field: INPUT</span>
The <INPUT> element represents a field for user input. The TYPE
attribute discriminates between several variations of fields.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 40]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-41" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
The <INPUT> element has a number of attributes. The set of applicable
attributes depends on the value of the TYPE attribute.
<span class="h5"><a class="selflink" id="section-8.1.2.1" href="#section-8.1.2.1">8.1.2.1</a>. Text Field: INPUT TYPE=TEXT</span>
The default value of the TYPE attribute is `TEXT', indicating a
single line text entry field. (Use the <TEXTAREA> element for multi-
line text fields.)
Required attributes are:
NAME
name for the form field corresponding to this element.
The optional attributes are:
MAXLENGTH
constrains the number of characters that can be entered
into a text input field. If the value of MAXLENGTH is
greater the the value of the SIZE attribute, the field
should scroll appropriately. The default number of
characters is unlimited.
SIZE
specifies the amount of display space allocated to this
input field according to its type. The default depends
on the user agent.
VALUE
The initial value of the field.
For example:
<p>Street Address: <input name=street><br>
Postal City code: <input name=city size=16 maxlength=16><br>
Zip Code: <input name=zip size=10 maxlength=10 value="99999-9999"><br>
<span class="h5"><a class="selflink" id="section-8.1.2.2" href="#section-8.1.2.2">8.1.2.2</a>. Password Field: INPUT TYPE=PASSWORD</span>
An <INPUT> element with `TYPE=PASSWORD' is a text field as above,
except that the value is obscured as it is entered. (see also: 10,
"Security Considerations").
For example:
<p>Name: <input name=login> Password: <input type=password name=passwd>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 41]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-42" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h5"><a class="selflink" id="section-8.1.2.3" href="#section-8.1.2.3">8.1.2.3</a>. Check Box: INPUT TYPE=CHECKBOX</span>
An <INPUT> element with `TYPE=CHECKBOX' represents a boolean choice.
A set of such elements with the same name represents an n-of-many
choice field. Required attributes are:
NAME
symbolic name for the form field corresponding to this
element or group of elements.
VALUE
The portion of the value of the field contributed by
this element.
Optional attributes are:
CHECKED
indicates that the initial state is on.
For example:
<p>What flavors do you like?
<input type=checkbox name=flavor value=vanilla>Vanilla<br>
<input type=checkbox name=flavor value=strawberry>Strawberry<br>
<input type=checkbox name=flavor value=chocolate checked>Chocolate<br>
<span class="h5"><a class="selflink" id="section-8.1.2.4" href="#section-8.1.2.4">8.1.2.4</a>. Radio Button: INPUT TYPE=RADIO</span>
An <INPUT> element with `TYPE=RADIO' represents a boolean choice. A
set of such elements with the same name represents a 1-of-many choice
field. The NAME and VALUE attributes are required as for check boxes.
Optional attributes are:
CHECKED
indicates that the initial state is on.
At all times, exactly one of the radio buttons in a set is checked.
If none of the <INPUT> elements of a set of radio buttons specifies
`CHECKED', then the user agent must check the first radio button of
the set initially.
For example:
<p>Which is your favorite?
<input type=radio name=flavor value=vanilla>Vanilla<br>
<input type=radio name=flavor value=strawberry>Strawberry<br>
<input type=radio name=flavor value=chocolate>Chocolate<br>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 42]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-43" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h5"><a class="selflink" id="section-8.1.2.5" href="#section-8.1.2.5">8.1.2.5</a>. Image Pixel: INPUT TYPE=IMAGE</span>
An <INPUT> element with `TYPE=IMAGE' specifies an image resource to
display, and allows input of two form fields: the x and y coordinate
of a pixel chosen from the image. The names of the fields are the
name of the field with `.x' and `.y' appended. `TYPE=IMAGE' implies
`TYPE=SUBMIT' processing; that is, when a pixel is chosen, the form
as a whole is submitted.
The NAME attribute is required as for other input fields. The SRC
attribute is required and the ALIGN is optional as for the <IMG>
element (see 5.10, "Image: IMG").
For example:
<p>Choose a point on the map:
<input type=image name=point src="map.gif">
<span class="h5"><a class="selflink" id="section-8.1.2.6" href="#section-8.1.2.6">8.1.2.6</a>. Hidden Field: INPUT TYPE=HIDDEN</span>
An <INPUT> element with `TYPE=HIDDEN' represents a hidden field.The
user does not interact with this field; instead, the VALUE attribute
specifies the value of the field. The NAME and VALUE attributes are
required.
For example:
<input type=hidden name=context value="l2k3j4l2k3j4l2k3j4lk23">
<span class="h5"><a class="selflink" id="section-8.1.2.7" href="#section-8.1.2.7">8.1.2.7</a>. Submit Button: INPUT TYPE=SUBMIT</span>
An <INPUT> element with `TYPE=SUBMIT' represents an input option,
typically a button, that instructs the user agent to submit the form.
Optional attributes are:
NAME
indicates that this element contributes a form field
whose value is given by the VALUE attribute. If the NAME
attribute is not present, this element does not
contribute a form field.
VALUE
indicates a label for the input (button).
You may submit this request internally:
<input type=submit name=recipient value=internal><br>
or to the external world:
<input type=submit name=recipient value=world>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 43]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-44" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h5"><a class="selflink" id="section-8.1.2.8" href="#section-8.1.2.8">8.1.2.8</a>. Reset Button: INPUT TYPE=RESET</span>
An <INPUT> element with `TYPE=RESET' represents an input option,
typically a button, that instructs the user agent to reset the form's
fields to their initial states. The VALUE attribute, if present,
indicates a label for the input (button).
When you are finished, you may submit this request:
<input type=submit><br>
You may clear the form and start over at any time: <input type=reset>
<span class="h4"><a class="selflink" id="section-8.1.3" href="#section-8.1.3">8.1.3</a>. Selection: SELECT</span>
The <SELECT> element constrains the form field to an enumerated list
of values. The values are given in <OPTION> elements. Attributes
are:
MULTIPLE
indicates that more than one option may be included in
the value.
NAME
specifies the name of the form field.
SIZE
specifies the number of visible items. Select fields of
size one are typically pop-down menus, whereas select
fields with size greater than one are typically lists.
For example:
<SELECT NAME="flavor">
<OPTION>Vanilla
<OPTION>Strawberry
<OPTION value="RumRasin">Rum and Raisin
<OPTION selected>Peach and Orange
</SELECT>
The initial state has the first option selected, unless a SELECTED
attribute is present on any of the <OPTION> elements.
<span class="h5"><a class="selflink" id="section-8.1.3.1" href="#section-8.1.3.1">8.1.3.1</a>. Option: OPTION</span>
The Option element can only occur within a Select element. It
represents one choice, and has the following attributes:
SELECTED
Indicates that this option is initially selected.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 44]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-45" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
VALUE
indicates the value to be returned if this option is
chosen. The field value defaults to the content of the
<OPTION> element.
The content of the <OPTION> element is presented to the user to
represent the option. It is used as a returned value if the VALUE
attribute is not present.
<span class="h4"><a class="selflink" id="section-8.1.4" href="#section-8.1.4">8.1.4</a>. Text Area: TEXTAREA</span>
The <TEXTAREA> element represents a multi-line text field.
Attributes are:
COLS
the number of visible columns to display for the text
area, in characters.
NAME
Specifies the name of the form field.
ROWS
The number of visible rows to display for the text area,
in characters.
For example:
<TEXTAREA NAME="address" ROWS=6 COLS=64>
HaL Computer Systems
1315 Dell Avenue
Campbell, California 95008
</TEXTAREA>
The content of the <TEXTAREA> element is the field's initial value.
Typically, the ROWS and COLS attributes determine the visible
dimension of the field in characters. The field is typically rendered
in a fixed-width font. HTML user agents should allow text to extend
beyond these limits by scrolling as needed.
<span class="h3"><a class="selflink" id="section-8.2" href="#section-8.2">8.2</a>. Form Submission</span>
An HTML user agent begins processing a form by presenting the
document with the fields in their initial state. The user is allowed
to modify the fields, constrained by the field type etc. When the
user indicates that the form should be submitted (using a submit
button or image input), the form data set is processed according to
its method, action URI and enctype.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 45]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-46" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
When there is only one single-line text input field in a form, the
user agent should accept Enter in that field as a request to submit
the form.
<span class="h4"><a class="selflink" id="section-8.2.1" href="#section-8.2.1">8.2.1</a>. The form-urlencoded Media Type</span>
The default encoding for all forms is `application/x-www-form-
urlencoded'. A form data set is represented in this media type as
follows:
1. The form field names and values are escaped: space
characters are replaced by `+', and then reserved characters
are escaped as per [<a href="#ref-URL">URL</a>]; that is, non-alphanumeric
characters are replaced by `%HH', a percent sign and two
hexadecimal digits representing the ASCII code of the
character. Line breaks, as in multi-line text field values,
are represented as CR LF pairs, i.e. `%0D%0A'.
2. The fields are listed in the order they appear in the
document with the name separated from the value by `=' and
the pairs separated from each other by `&'. Fields with null
values may be omitted. In particular, unselected radio
buttons and checkboxes should not appear in the encoded
data, but hidden fields with VALUE attributes present
should.
NOTE - The URI from a query form submission can be
used in a normal anchor style hyperlink.
Unfortunately, the use of the `&' character to
separate form fields interacts with its use in SGML
attribute values as an entity reference delimiter.
For example, the URI `http://host/?x=1&y=2' must be
written `<a href="http://host/?x=1&#38;y=2"' or `<a
href="http://host/?x=1&amp;y=2">'.
HTTP server implementors, and in particular, CGI
implementors are encouraged to support the use of
`;' in place of `&' to save users the trouble of
escaping `&' characters this way.
<span class="h4"><a class="selflink" id="section-8.2.2" href="#section-8.2.2">8.2.2</a>. Query Forms: METHOD=GET</span>
If the processing of a form is idempotent (i.e. it has no lasting
observable effect on the state of the world), then the form method
should be `GET'. Many database searches have no visible side-effects
and make ideal applications of query forms.
<span class="grey">Berners-Lee & Connolly Standards Track [Page 46]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-47" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
To process a form whose action URL is an HTTP URL and whose method is
`GET', the user agent starts with the action URI and appends a `?'
and the form data set, in `application/x-www-form-urlencoded' format
as above. The user agent then traverses the link to this URI just as
if it were an anchor (see 7.2, "Activation of Hyperlinks").
NOTE - The URL encoding may result in very long URIs, which cause
some historical HTTP server implementations to exhibit defective
behavior. As a result, some HTML forms are written using
`METHOD=POST' even though the form submission has no side-effects.
<span class="h4"><a class="selflink" id="section-8.2.3" href="#section-8.2.3">8.2.3</a>. Forms with Side-Effects: METHOD=POST</span>
If the service associated with the processing of a form has side
effects (for example, modification of a database or subscription to a
service), the method should be `POST'.
To process a form whose action URL is an HTTP URL and whose method is
`POST', the user agent conducts an HTTP POST transaction using the
action URI, and a message body of type `application/x-www-form-
urlencoded' format as above. The user agent should display the
response from the HTTP POST interaction just as it would display the
response from an HTTP GET above.
<span class="h4"><a class="selflink" id="section-8.2.4" href="#section-8.2.4">8.2.4</a>. Example Form Submission: Questionnaire Form</span>
Consider the following document:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<title>Sample of HTML Form Submission</title>
<H1>Sample Questionnaire</H1>
<P>Please fill out this questionnaire:
<FORM METHOD="POST" ACTION="http://www.w3.org/sample">
<P>Your name: <INPUT NAME="name" size="48">
<P>Male <INPUT NAME="gender" TYPE=RADIO VALUE="male">
<P>Female <INPUT NAME="gender" TYPE=RADIO VALUE="female">
<P>Number in family: <INPUT NAME="family" TYPE=text>
<P>Cities in which you maintain a residence:
<UL>
<LI>Kent <INPUT NAME="city" TYPE=checkbox VALUE="kent">
<LI>Miami <INPUT NAME="city" TYPE=checkbox VALUE="miami">
<LI>Other <TEXTAREA NAME="other" cols=48 rows=4></textarea>
</UL>
Nickname: <INPUT NAME="nickname" SIZE="42">
<P>Thank you for responding to this questionnaire.
<P><INPUT TYPE=SUBMIT> <INPUT TYPE=RESET>
</FORM>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 47]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-48" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
The initial state of the form data set is:
name
""
gender
"male"
family
""
other
""
nickname
""
Note that the radio input has an initial value, while the
checkbox has none.
The user might edit the fields and request that the form be
submitted. At that point, suppose the values are:
name
"John Doe"
gender
"male"
family
"5"
city
"kent"
city
"miami"
other
"abc\ndefk"
nickname
"J&D"
The user agent then conducts an HTTP POST transaction using the URI
`http://www.w3.org/sample'. The message body would be (ignore the
line break):
<span class="grey">Berners-Lee & Connolly Standards Track [Page 48]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-49" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
name=John+Doe&gender=male&family=5&city=kent&city=miami&
other=abc%0D%0Adef&nickname=J%26D
<span class="h2"><a class="selflink" id="section-9" href="#section-9">9</a>. HTML Public Text</span>
<span class="h3"><a class="selflink" id="section-9.1" href="#section-9.1">9.1</a>. HTML DTD</span>
This is the Document Type Definition for the HyperText Markup
Language, level 2.
<!-- html.dtd
Document Type Definition for the HyperText Markup Language
(HTML DTD)
$Id: html.dtd,v 1.30 1995/09/21 23:30:19 connolly Exp $
Author: Daniel W. Connolly <connolly@w3.org>
See Also: html.decl, html-1.dtd
<a href="http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html">http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html</a>
-->
<!ENTITY % HTML.Version
"-//IETF//DTD HTML 2.0//EN"
-- Typical usage:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
...
</html>
--
>
<!--============ Feature Test Entities ========================-->
<!ENTITY % HTML.Recommended "IGNORE"
-- Certain features of the language are necessary for
compatibility with widespread usage, but they may
compromise the structural integrity of a document.
This feature test entity enables a more prescriptive
document type definition that eliminates
those features.
-->
<![ %HTML.Recommended [
<!ENTITY % HTML.Deprecated "IGNORE">
<span class="grey">Berners-Lee & Connolly Standards Track [Page 49]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-50" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
]]>
<!ENTITY % HTML.Deprecated "INCLUDE"
-- Certain features of the language are necessary for
compatibility with earlier versions of the specification,
but they tend to be used and implemented inconsistently,
and their use is deprecated. This feature test entity
enables a document type definition that eliminates
these features.
-->
<!ENTITY % HTML.Highlighting "INCLUDE"
-- Use this feature test entity to validate that a
document uses no highlighting tags, which may be
ignored on minimal implementations.
-->
<!ENTITY % HTML.Forms "INCLUDE"
-- Use this feature test entity to validate that a document
contains no forms, which may not be supported in minimal
implementations
-->
<!--============== Imported Names ==============================-->
<!ENTITY % Content-Type "CDATA"
-- meaning an internet media type
(aka MIME content type, as per <a href="./rfc1521">RFC1521</a>)
-->
<!ENTITY % HTTP-Method "GET | POST"
-- as per HTTP specification, in progress
-->
<!--========= DTD "Macros" =====================-->
<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!ENTITY % list " UL | OL | DIR | MENU " >
<!--======= Character mnemonic entities =================-->
<!ENTITY % ISOlat1 PUBLIC
"ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
%ISOlat1;
<!ENTITY amp CDATA "&#38;" -- ampersand -->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 50]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-51" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ENTITY gt CDATA "&#62;" -- greater than -->
<!ENTITY lt CDATA "&#60;" -- less than -->
<!ENTITY quot CDATA "&#34;" -- double quote -->
<!--========= SGML Document Access (SDA) Parameter Entities =====-->
<!-- HTML 2.0 contains SGML Document Access (SDA) fixed attributes
in support of easy transformation to the International Committee
for Accessible Document Design (ICADD) DTD
"-//EC-USA-CDA/ICADD//DTD ICADD22//EN".
ICADD applications are designed to support usable access to
structured information by print-impaired individuals through
Braille, large print and voice synthesis. For more information on
SDA & ICADD:
- ISO 12083:1993, Annex A.8, Facilities for Braille,
large print and computer voice
- ICADD ListServ
<ICADD%ASUACAD.BITNET@ARIZVM1.ccit.arizona.edu>
- Usenet news group bit.listserv.easi
- Recording for the Blind, +1 800 221 4792
-->
<!ENTITY % SDAFORM "SDAFORM CDATA #FIXED"
-- one to one mapping -->
<!ENTITY % SDARULE "SDARULE CDATA #FIXED"
-- context-sensitive mapping -->
<!ENTITY % SDAPREF "SDAPREF CDATA #FIXED"
-- generated text prefix -->
<!ENTITY % SDASUFF "SDASUFF CDATA #FIXED"
-- generated text suffix -->
<!ENTITY % SDASUSP "SDASUSP NAME #FIXED"
-- suspend transform process -->
<!--========== Text Markup =====================-->
<![ %HTML.Highlighting [
<!ENTITY % font " TT | B | I ">
<!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE ">
<!ENTITY % text "#PCDATA | A | IMG | BR | %phrase | %font">
<!ELEMENT (%font;|%phrase) - - (%text)*>
<!ATTLIST ( TT | CODE | SAMP | KBD | VAR )
%SDAFORM; "Lit"
<span class="grey">Berners-Lee & Connolly Standards Track [Page 51]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-52" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
>
<!ATTLIST ( B | STRONG )
%SDAFORM; "B"
>
<!ATTLIST ( I | EM | CITE )
%SDAFORM; "It"
>
<!-- <TT> Typewriter text -->
<!-- <B> Bold text -->
<!-- <I> Italic text -->
<!-- <EM> Emphasized phrase -->
<!-- <STRONG> Strong emphasis -->
<!-- <CODE> Source code phrase -->
<!-- <SAMP> Sample text or characters -->
<!-- <KBD> Keyboard phrase, e.g. user input -->
<!-- <VAR> Variable phrase or substitutable -->
<!-- <CITE> Name or title of cited work -->
<!ENTITY % pre.content "#PCDATA | A | HR | BR | %font | %phrase">
]]>
<!ENTITY % text "#PCDATA | A | IMG | BR">
<!ELEMENT BR - O EMPTY>
<!ATTLIST BR
%SDAPREF; "&#RE;"
>
<!-- <BR> Line break -->
<!--========= Link Markup ======================-->
<!ENTITY % linkType "NAMES">
<!ENTITY % linkExtraAttributes
"REL %linkType #IMPLIED
REV %linkType #IMPLIED
URN CDATA #IMPLIED
TITLE CDATA #IMPLIED
METHODS NAMES #IMPLIED
">
<![ %HTML.Recommended [
<!ENTITY % A.content "(%text)*"
<span class="grey">Berners-Lee & Connolly Standards Track [Page 52]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-53" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
-- <H1><a name="xxx">Heading</a></H1>
is preferred to
<a name="xxx"><H1>Heading</H1></a>
-->
]]>
<!ENTITY % A.content "(%heading|%text)*">
<!ELEMENT A - - %A.content -(A)>
<!ATTLIST A
HREF CDATA #IMPLIED
NAME CDATA #IMPLIED
%linkExtraAttributes;
%SDAPREF; "<Anchor: #AttList>"
>
<!-- <A> Anchor; source/destination of link -->
<!-- <A NAME="..."> Name of this anchor -->
<!-- <A HREF="..."> Address of link destination -->
<!-- <A URN="..."> Permanent address of destination -->
<!-- <A REL=...> Relationship to destination -->
<!-- <A REV=...> Relationship of destination to this -->
<!-- <A TITLE="..."> Title of destination (advisory) -->
<!-- <A METHODS="..."> Operations on destination (advisory) -->
<!--========== Images ==========================-->
<!ELEMENT IMG - O EMPTY>
<!ATTLIST IMG
SRC CDATA #REQUIRED
ALT CDATA #IMPLIED
ALIGN (top|middle|bottom) #IMPLIED
ISMAP (ISMAP) #IMPLIED
%SDAPREF; "<Fig><?SDATrans Img: #AttList>#AttVal(Alt)</Fig>"
>
<!-- <IMG> Image; icon, glyph or illustration -->
<!-- <IMG SRC="..."> Address of image object -->
<!-- <IMG ALT="..."> Textual alternative -->
<!-- <IMG ALIGN=...> Position relative to text -->
<!-- <IMG ISMAP> Each pixel can be a link -->
<!--========== Paragraphs=======================-->
<!ELEMENT P - O (%text)*>
<!ATTLIST P
%SDAFORM; "Para"
>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 53]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-54" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!-- <P> Paragraph -->
<!--========== Headings, Titles, Sections ===============-->
<!ELEMENT HR - O EMPTY>
<!ATTLIST HR
%SDAPREF; "&#RE;&#RE;"
>
<!-- <HR> Horizontal rule -->
<!ELEMENT ( %heading ) - - (%text;)*>
<!ATTLIST H1
%SDAFORM; "H1"
>
<!ATTLIST H2
%SDAFORM; "H2"
>
<!ATTLIST H3
%SDAFORM; "H3"
>
<!ATTLIST H4
%SDAFORM; "H4"
>
<!ATTLIST H5
%SDAFORM; "H5"
>
<!ATTLIST H6
%SDAFORM; "H6"
>
<!-- <H1> Heading, level 1 -->
<!-- <H2> Heading, level 2 -->
<!-- <H3> Heading, level 3 -->
<!-- <H4> Heading, level 4 -->
<!-- <H5> Heading, level 5 -->
<!-- <H6> Heading, level 6 -->
<!--========== Text Flows ======================-->
<![ %HTML.Forms [
<!ENTITY % block.forms "BLOCKQUOTE | FORM | ISINDEX">
]]>
<!ENTITY % block.forms "BLOCKQUOTE">
<span class="grey">Berners-Lee & Connolly Standards Track [Page 54]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-55" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<![ %HTML.Deprecated [
<!ENTITY % preformatted "PRE | XMP | LISTING">
]]>
<!ENTITY % preformatted "PRE">
<!ENTITY % block "P | %list | DL
| %preformatted
| %block.forms">
<!ENTITY % flow "(%text|%block)*">
<!ENTITY % pre.content "#PCDATA | A | HR | BR">
<!ELEMENT PRE - - (%pre.content)*>
<!ATTLIST PRE
WIDTH NUMBER #implied
%SDAFORM; "Lit"
>
<!-- <PRE> Preformatted text -->
<!-- <PRE WIDTH=...> Maximum characters per line -->
<![ %HTML.Deprecated [
<!ENTITY % literal "CDATA"
-- historical, non-conforming parsing mode where
the only markup signal is the end tag
in full
-->
<!ELEMENT (XMP|LISTING) - - %literal>
<!ATTLIST XMP
%SDAFORM; "Lit"
%SDAPREF; "Example:&#RE;"
>
<!ATTLIST LISTING
%SDAFORM; "Lit"
%SDAPREF; "Listing:&#RE;"
>
<!-- <XMP> Example section -->
<!-- <LISTING> Computer listing -->
<!ELEMENT PLAINTEXT - O %literal>
<!-- <PLAINTEXT> Plain text passage -->
<!ATTLIST PLAINTEXT
%SDAFORM; "Lit"
<span class="grey">Berners-Lee & Connolly Standards Track [Page 55]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-56" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
>
]]>
<!--========== Lists ==================-->
<!ELEMENT DL - - (DT | DD)+>
<!ATTLIST DL
COMPACT (COMPACT) #IMPLIED
%SDAFORM; "List"
%SDAPREF; "Definition List:"
>
<!ELEMENT DT - O (%text)*>
<!ATTLIST DT
%SDAFORM; "Term"
>
<!ELEMENT DD - O %flow>
<!ATTLIST DD
%SDAFORM; "LItem"
>
<!-- <DL> Definition list, or glossary -->
<!-- <DL COMPACT> Compact style list -->
<!-- <DT> Term in definition list -->
<!-- <DD> Definition of term -->
<!ELEMENT (OL|UL) - - (LI)+>
<!ATTLIST OL
COMPACT (COMPACT) #IMPLIED
%SDAFORM; "List"
>
<!ATTLIST UL
COMPACT (COMPACT) #IMPLIED
%SDAFORM; "List"
>
<!-- <UL> Unordered list -->
<!-- <UL COMPACT> Compact list style -->
<!-- <OL> Ordered, or numbered list -->
<!-- <OL COMPACT> Compact list style -->
<!ELEMENT (DIR|MENU) - - (LI)+ -(%block)>
<!ATTLIST DIR
COMPACT (COMPACT) #IMPLIED
%SDAFORM; "List"
%SDAPREF; "<LHead>Directory</LHead>"
>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 56]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-57" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ATTLIST MENU
COMPACT (COMPACT) #IMPLIED
%SDAFORM; "List"
%SDAPREF; "<LHead>Menu</LHead>"
>
<!-- <DIR> Directory list -->
<!-- <DIR COMPACT> Compact list style -->
<!-- <MENU> Menu list -->
<!-- <MENU COMPACT> Compact list style -->
<!ELEMENT LI - O %flow>
<!ATTLIST LI
%SDAFORM; "LItem"
>
<!-- <LI> List item -->
<!--========== Document Body ===================-->
<![ %HTML.Recommended [
<!ENTITY % body.content "(%heading|%block|HR|ADDRESS|IMG)*"
-- <h1>Heading</h1>
<p>Text ...
is preferred to
<h1>Heading</h1>
Text ...
-->
]]>
<!ENTITY % body.content "(%heading | %text | %block |
HR | ADDRESS)*">
<!ELEMENT BODY O O %body.content>
<!-- <BODY> Document body -->
<!ELEMENT BLOCKQUOTE - - %body.content>
<!ATTLIST BLOCKQUOTE
%SDAFORM; "BQ"
>
<!-- <BLOCKQUOTE> Quoted passage -->
<!ELEMENT ADDRESS - - (%text|P)*>
<!ATTLIST ADDRESS
%SDAFORM; "Lit"
%SDAPREF; "Address:&#RE;"
<span class="grey">Berners-Lee & Connolly Standards Track [Page 57]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-58" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
>
<!-- <ADDRESS> Address, signature, or byline -->
<!--======= Forms ====================-->
<![ %HTML.Forms [
<!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)>
<!ATTLIST FORM
ACTION CDATA #IMPLIED
METHOD (%HTTP-Method) GET
ENCTYPE %Content-Type; "application/x-www-form-urlencoded"
%SDAPREF; "<Para>Form:</Para>"
%SDASUFF; "<Para>Form End.</Para>"
>
<!-- <FORM> Fill-out or data-entry form -->
<!-- <FORM ACTION="..."> Address for completed form -->
<!-- <FORM METHOD=...> Method of submitting form -->
<!-- <FORM ENCTYPE="..."> Representation of form data -->
<!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX |
RADIO | SUBMIT | RESET |
IMAGE | HIDDEN )">
<!ELEMENT INPUT - O EMPTY>
<!ATTLIST INPUT
TYPE %InputType TEXT
NAME CDATA #IMPLIED
VALUE CDATA #IMPLIED
SRC CDATA #IMPLIED
CHECKED (CHECKED) #IMPLIED
SIZE CDATA #IMPLIED
MAXLENGTH NUMBER #IMPLIED
ALIGN (top|middle|bottom) #IMPLIED
%SDAPREF; "Input: "
>
<!-- <INPUT> Form input datum -->
<!-- <INPUT TYPE=...> Type of input interaction -->
<!-- <INPUT NAME=...> Name of form datum -->
<!-- <INPUT VALUE="..."> Default/initial/selected value -->
<!-- <INPUT SRC="..."> Address of image -->
<!-- <INPUT CHECKED> Initial state is "on" -->
<!-- <INPUT SIZE=...> Field size hint -->
<!-- <INPUT MAXLENGTH=...> Data length maximum -->
<!-- <INPUT ALIGN=...> Image alignment -->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 58]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-59" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ELEMENT SELECT - - (OPTION+) -(INPUT|SELECT|TEXTAREA)>
<!ATTLIST SELECT
NAME CDATA #REQUIRED
SIZE NUMBER #IMPLIED
MULTIPLE (MULTIPLE) #IMPLIED
%SDAFORM; "List"
%SDAPREF;
"<LHead>Select #AttVal(Multiple)</LHead>"
>
<!-- <SELECT> Selection of option(s) -->
<!-- <SELECT NAME=...> Name of form datum -->
<!-- <SELECT SIZE=...> Options displayed at a time -->
<!-- <SELECT MULTIPLE> Multiple selections allowed -->
<!ELEMENT OPTION - O (#PCDATA)*>
<!ATTLIST OPTION
SELECTED (SELECTED) #IMPLIED
VALUE CDATA #IMPLIED
%SDAFORM; "LItem"
%SDAPREF;
"Option: #AttVal(Value) #AttVal(Selected)"
>
<!-- <OPTION> A selection option -->
<!-- <OPTION SELECTED> Initial state -->
<!-- <OPTION VALUE="..."> Form datum value for this option-->
<!ELEMENT TEXTAREA - - (#PCDATA)* -(INPUT|SELECT|TEXTAREA)>
<!ATTLIST TEXTAREA
NAME CDATA #REQUIRED
ROWS NUMBER #REQUIRED
COLS NUMBER #REQUIRED
%SDAFORM; "Para"
%SDAPREF; "Input Text -- #AttVal(Name): "
>
<!-- <TEXTAREA> An area for text input -->
<!-- <TEXTAREA NAME=...> Name of form datum -->
<!-- <TEXTAREA ROWS=...> Height of area -->
<!-- <TEXTAREA COLS=...> Width of area -->
]]>
<!--======= Document Head ======================-->
<![ %HTML.Recommended [
<span class="grey">Berners-Lee & Connolly Standards Track [Page 59]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-60" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ENTITY % head.extra "">
]]>
<!ENTITY % head.extra "& NEXTID?">
<!ENTITY % head.content "TITLE & ISINDEX? & BASE? %head.extra">
<!ELEMENT HEAD O O (%head.content) +(META|LINK)>
<!-- <HEAD> Document head -->
<!ELEMENT TITLE - - (#PCDATA)* -(META|LINK)>
<!ATTLIST TITLE
%SDAFORM; "Ti" >
<!-- <TITLE> Title of document -->
<!ELEMENT LINK - O EMPTY>
<!ATTLIST LINK
HREF CDATA #REQUIRED
%linkExtraAttributes;
%SDAPREF; "Linked to : #AttVal (TITLE) (URN) (HREF)>" >
<!-- <LINK> Link from this document -->
<!-- <LINK HREF="..."> Address of link destination -->
<!-- <LINK URN="..."> Lasting name of destination -->
<!-- <LINK REL=...> Relationship to destination -->
<!-- <LINK REV=...> Relationship of destination to this -->
<!-- <LINK TITLE="..."> Title of destination (advisory) -->
<!-- <LINK METHODS="..."> Operations allowed (advisory) -->
<!ELEMENT ISINDEX - O EMPTY>
<!ATTLIST ISINDEX
%SDAPREF;
"<Para>[Document is indexed/searchable.]</Para>">
<!-- <ISINDEX> Document is a searchable index -->
<!ELEMENT BASE - O EMPTY>
<!ATTLIST BASE
HREF CDATA #REQUIRED >
<!-- <BASE> Base context document -->
<!-- <BASE HREF="..."> Address for this document -->
<!ELEMENT NEXTID - O EMPTY>
<!ATTLIST NEXTID
N CDATA #REQUIRED >
<span class="grey">Berners-Lee & Connolly Standards Track [Page 60]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-61" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!-- <NEXTID> Next ID to use for link name -->
<!-- <NEXTID N=...> Next ID to use for link name -->
<!ELEMENT META - O EMPTY>
<!ATTLIST META
HTTP-EQUIV NAME #IMPLIED
NAME NAME #IMPLIED
CONTENT CDATA #REQUIRED >
<!-- <META> Generic Meta-information -->
<!-- <META HTTP-EQUIV=...> HTTP response header name -->
<!-- <META NAME=...> Meta-information name -->
<!-- <META CONTENT="..."> Associated information -->
<!--======= Document Structure =================-->
<![ %HTML.Deprecated [
<!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
]]>
<!ENTITY % html.content "HEAD, BODY">
<!ELEMENT HTML O O (%html.content)>
<!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
<!ATTLIST HTML
%version.attr;
%SDAFORM; "Book"
>
<!-- <HTML> HTML Document -->
<span class="h3"><a class="selflink" id="section-9.2" href="#section-9.2">9.2</a>. Strict HTML DTD</span>
This document type declaration refers to the HTML DTD with the
`HTML.Recommended' entity defined as `INCLUDE' rather than IGNORE;
that is, it refers to the more structurally rigid definition of HTML.
<!-- html-s.dtd
Document Type Definition for the HyperText Markup Language
with strict validation (HTML Strict DTD).
$Id: html-s.dtd,v 1.3 1995/06/02 18:55:46 connolly Exp $
Author: Daniel W. Connolly <connolly@w3.org>
See Also: <a href="http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html">http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html</a>
-->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 61]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-62" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ENTITY % HTML.Version
"-//IETF//DTD HTML 2.0 Strict//EN"
-- Typical usage:
<!DOCTYPE HTML PUBLIC
"-//IETF//DTD HTML Strict//EN">
<html>
...
</html>
--
>
<!-- Feature Test Entities -->
<!ENTITY % HTML.Recommended "INCLUDE">
<!ENTITY % html PUBLIC "-//IETF//DTD HTML 2.0//EN">
%html;
<span class="h3"><a class="selflink" id="section-9.3" href="#section-9.3">9.3</a>. Level 1 HTML DTD</span>
This document type declaration refers to the HTML DTD with the
`HTML.Forms' entity defined as `IGNORE' rather than `INCLUDE'.
Documents which contain <FORM> elements do not conform to this DTD,
and must use the level 2 DTD.
<!-- html-1.dtd
Document Type Definition for the HyperText Markup Language
with Level 1 Extensions (HTML Level 1 DTD).
$Id: html-1.dtd,v 1.2 1995/03/29 18:53:10 connolly Exp $
Author: Daniel W. Connolly <connolly@w3.org>
See Also: <a href="http://info.cern.ch/hypertext/WWW/MarkUp/MarkUp.html">http://info.cern.ch/hypertext/WWW/MarkUp/MarkUp.html</a>
-->
<!ENTITY % HTML.Version
"-//IETF//DTD HTML 2.0 Level 1//EN"
-- Typical usage:
<!DOCTYPE HTML PUBLIC
"-//IETF//DTD HTML Level 1//EN">
<html>
...
</html>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 62]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-63" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
--
>
<!-- Feature Test Entities -->
<!ENTITY % HTML.Forms "IGNORE">
<!ENTITY % html PUBLIC "-//IETF//DTD HTML 2.0//EN">
%html;
<span class="h3"><a class="selflink" id="section-9.4" href="#section-9.4">9.4</a>. Strict Level 1 HTML DTD</span>
This document type declaration refers to the level 1 HTML DTD with
the `HTML.Recommended' entity defined as `INCLUDE' rather than
IGNORE; that is, it refers to the more structurally rigid definition
of HTML.
<!-- html-1s.dtd
Document Type Definition for the HyperText Markup Language
Struct Level 1
$Id: html-1s.dtd,v 1.3 1995/06/02 18:55:43 connolly Exp $
Author: Daniel W. Connolly <connolly@w3.org>
See Also: <a href="http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html">http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html</a>
-->
<!ENTITY % HTML.Version
"-//IETF//DTD HTML 2.0 Strict Level 1//EN"
-- Typical usage:
<!DOCTYPE HTML PUBLIC
"-//IETF//DTD HTML Strict Level 1//EN">
<html>
...
</html>
--
>
<!-- Feature Test Entities -->
<!ENTITY % HTML.Recommended "INCLUDE">
<!ENTITY % html-1 PUBLIC "-//IETF//DTD HTML 2.0 Level 1//EN">
%html-1;
<span class="grey">Berners-Lee & Connolly Standards Track [Page 63]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-64" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h3"><a class="selflink" id="section-9.5" href="#section-9.5">9.5</a>. SGML Declaration for HTML</span>
This is the SGML Declaration for HyperText Markup Language.
<!SGML "ISO 8879:1986"
--
SGML Declaration for HyperText Markup Language (HTML).
--
CHARSET
BASESET "ISO 646:1983//CHARSET
International Reference Version
(IRV)//ESC 2/5 4/0"
DESCSET 0 9 UNUSED
9 2 9
11 2 UNUSED
13 1 13
14 18 UNUSED
32 95 32
127 1 UNUSED
BASESET "ISO Registration Number 100//CHARSET
ECMA-94 Right Part of
Latin Alphabet Nr. 1//ESC 2/13 4/1"
DESCSET 128 32 UNUSED
160 96 32
CAPACITY SGMLREF
TOTALCAP 150000
GRPCAP 150000
ENTCAP 150000
SCOPE DOCUMENT
SYNTAX
SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 127
BASESET "ISO 646:1983//CHARSET
International Reference Version
(IRV)//ESC 2/5 4/0"
DESCSET 0 128 0
FUNCTION
RE 13
RS 10
SPACE 32
TAB SEPCHAR 9
NAMING LCNMSTRT ""
UCNMSTRT ""
<span class="grey">Berners-Lee & Connolly Standards Track [Page 64]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-65" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
LCNMCHAR ".-"
UCNMCHAR ".-"
NAMECASE GENERAL YES
ENTITY NO
DELIM GENERAL SGMLREF
SHORTREF SGMLREF
NAMES SGMLREF
QUANTITY SGMLREF
ATTSPLEN 2100
LITLEN 1024
NAMELEN 72 -- somewhat arbitrary; taken from
internet line length conventions --
PILEN 1024
TAGLVL 100
TAGLEN 2100
GRPGTCNT 150
GRPCNT 64
FEATURES
MINIMIZE
DATATAG NO
OMITTAG YES
RANK NO
SHORTTAG YES
LINK
SIMPLE NO
IMPLICIT NO
EXPLICIT NO
OTHER
CONCUR NO
SUBDOC NO
FORMAL YES
APPINFO "SDA" -- conforming SGML Document Access application
--
>
<!--
$Id: html.decl,v 1.17 1995/06/08 14:59:32 connolly Exp $
Author: Daniel W. Connolly <connolly@w3.org>
See also: <a href="http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html">http://www.w3.org/hypertext/WWW/MarkUp/MarkUp.html</a>
-->
<span class="h3"><a class="selflink" id="section-9.6" href="#section-9.6">9.6</a>. Sample SGML Open Entity Catalog for HTML</span>
The SGML standard describes an "entity manager" as the portion or
component of an SGML system that maps SGML entities into the actual
storage model (e.g., the file system). The standard itself does not
<span class="grey">Berners-Lee & Connolly Standards Track [Page 65]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-66" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
define a particular mapping methodology or notation.
To assist the interoperability among various SGML tools and systems,
the SGML Open consortium has passed a technical resolution that
defines a format for an application-independent entity catalog that
maps external identifiers and/or entity names to file names.
Each entry in the catalog associates a storage object identifier
(such as a file name) with information about the external entity that
appears in the SGML document. In addition to entries that associate
public identifiers, a catalog entry can associate an entity name with
a storage object identifier. For example, the following are possible
catalog entries:
-- catalog: SGML Open style entity catalog for HTML --
-- $Id: catalog,v 1.3 1995/09/21 23:30:23 connolly Exp $ --
-- Ways to refer to Level 2: most general to most specific --
PUBLIC "-//IETF//DTD HTML//EN" html.dtd
PUBLIC "-//IETF//DTD HTML 2.0//EN" html.dtd
PUBLIC "-//IETF//DTD HTML Level 2//EN" html.dtd
PUBLIC "-//IETF//DTD HTML 2.0 Level 2//EN" html.dtd
-- Ways to refer to Level 1: most general to most specific --
PUBLIC "-//IETF//DTD HTML Level 1//EN" html-1.dtd
PUBLIC "-//IETF//DTD HTML 2.0 Level 1//EN" html-1.dtd
-- Ways to refer to
Strict Level 2: most general to most specific --
PUBLIC "-//IETF//DTD HTML Strict//EN" html-s.dtd
PUBLIC "-//IETF//DTD HTML 2.0 Strict//EN" html-s.dtd
PUBLIC "-//IETF//DTD HTML Strict Level 2//EN" html-s.dtd
PUBLIC "-//IETF//DTD HTML 2.0 Strict Level 2//EN" html-s.dtd
-- Ways to refer to
Strict Level 1: most general to most specific --
PUBLIC "-//IETF//DTD HTML Strict Level 1//EN" html-1s.dtd
PUBLIC "-//IETF//DTD HTML 2.0 Strict Level 1//EN" html-1s.dtd
-- ISO latin 1 entity set for HTML --
PUBLIC "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML" ISOlat1\
sgml
<span class="h3"><a class="selflink" id="section-9.7" href="#section-9.7">9.7</a>. Character Entity Sets</span>
The HTML DTD defines the following entities. They represent
particular graphic characters which have special meanings in places
in the markup, or may not be part of the character set available to
<span class="grey">Berners-Lee & Connolly Standards Track [Page 66]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-67" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
the writer.
<span class="h4"><a class="selflink" id="section-9.7.1" href="#section-9.7.1">9.7.1</a>. Numeric and Special Graphic Entity Set</span>
The following table lists each of the characters included from the
Numeric and Special Graphic entity set, along with its name, syntax
for use, and description. This list is derived from `ISO Standard
8879:1986//ENTITIES Numeric and Special Graphic//EN'. However, HTML
does not include for the entire entity set -- only the entities
listed below are included.
GLYPH NAME SYNTAX DESCRIPTION
< lt &lt; Less than sign
> gt &gt; Greater than signn
& amp &amp; Ampersand
" quot &quot; Double quote sign
<span class="h4"><a class="selflink" id="section-9.7.2" href="#section-9.7.2">9.7.2</a>. ISO Latin 1 Character Entity Set</span>
The following public text lists each of the characters specified in
the Added Latin 1 entity set, along with its name, syntax for use,
and description. This list is derived from ISO Standard
8879:1986//ENTITIES Added Latin 1//EN. HTML includes the entire
entity set.
<!-- (C) International Organization for Standardization 1986
Permission to copy in any form is granted for use with
conforming SGML systems and applications as defined in
ISO 8879, provided this notice is included in all copies.
-->
<!-- Character entity set. Typical invocation:
<!ENTITY % ISOlat1 PUBLIC
"ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
%ISOlat1;
-->
<!-- Modified for use in HTML
$Id: ISOlat1.sgml,v 1.2 1994/11/30 23:45:12 connolly Exp $ -->
<!ENTITY AElig CDATA "&#198;" -- capital AE diphthong (ligature) -->
<!ENTITY Aacute CDATA "&#193;" -- capital A, acute accent -->
<!ENTITY Acirc CDATA "&#194;" -- capital A, circumflex accent -->
<!ENTITY Agrave CDATA "&#192;" -- capital A, grave accent -->
<!ENTITY Aring CDATA "&#197;" -- capital A, ring -->
<!ENTITY Atilde CDATA "&#195;" -- capital A, tilde -->
<!ENTITY Auml CDATA "&#196;" -- capital A, dieresis or umlaut mark -->
<!ENTITY Ccedil CDATA "&#199;" -- capital C, cedilla -->
<!ENTITY ETH CDATA "&#208;" -- capital Eth, Icelandic -->
<!ENTITY Eacute CDATA "&#201;" -- capital E, acute accent -->
<!ENTITY Ecirc CDATA "&#202;" -- capital E, circumflex accent -->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 67]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-68" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ENTITY Egrave CDATA "&#200;" -- capital E, grave accent -->
<!ENTITY Euml CDATA "&#203;" -- capital E, dieresis or umlaut mark -->
<!ENTITY Iacute CDATA "&#205;" -- capital I, acute accent -->
<!ENTITY Icirc CDATA "&#206;" -- capital I, circumflex accent -->
<!ENTITY Igrave CDATA "&#204;" -- capital I, grave accent -->
<!ENTITY Iuml CDATA "&#207;" -- capital I, dieresis or umlaut mark -->
<!ENTITY Ntilde CDATA "&#209;" -- capital N, tilde -->
<!ENTITY Oacute CDATA "&#211;" -- capital O, acute accent -->
<!ENTITY Ocirc CDATA "&#212;" -- capital O, circumflex accent -->
<!ENTITY Ograve CDATA "&#210;" -- capital O, grave accent -->
<!ENTITY Oslash CDATA "&#216;" -- capital O, slash -->
<!ENTITY Otilde CDATA "&#213;" -- capital O, tilde -->
<!ENTITY Ouml CDATA "&#214;" -- capital O, dieresis or umlaut mark -->
<!ENTITY THORN CDATA "&#222;" -- capital THORN, Icelandic -->
<!ENTITY Uacute CDATA "&#218;" -- capital U, acute accent -->
<!ENTITY Ucirc CDATA "&#219;" -- capital U, circumflex accent -->
<!ENTITY Ugrave CDATA "&#217;" -- capital U, grave accent -->
<!ENTITY Uuml CDATA "&#220;" -- capital U, dieresis or umlaut mark -->
<!ENTITY Yacute CDATA "&#221;" -- capital Y, acute accent -->
<!ENTITY aacute CDATA "&#225;" -- small a, acute accent -->
<!ENTITY acirc CDATA "&#226;" -- small a, circumflex accent -->
<!ENTITY aelig CDATA "&#230;" -- small ae diphthong (ligature) -->
<!ENTITY agrave CDATA "&#224;" -- small a, grave accent -->
<!ENTITY aring CDATA "&#229;" -- small a, ring -->
<!ENTITY atilde CDATA "&#227;" -- small a, tilde -->
<!ENTITY auml CDATA "&#228;" -- small a, dieresis or umlaut mark -->
<!ENTITY ccedil CDATA "&#231;" -- small c, cedilla -->
<!ENTITY eacute CDATA "&#233;" -- small e, acute accent -->
<!ENTITY ecirc CDATA "&#234;" -- small e, circumflex accent -->
<!ENTITY egrave CDATA "&#232;" -- small e, grave accent -->
<!ENTITY eth CDATA "&#240;" -- small eth, Icelandic -->
<!ENTITY euml CDATA "&#235;" -- small e, dieresis or umlaut mark -->
<!ENTITY iacute CDATA "&#237;" -- small i, acute accent -->
<!ENTITY icirc CDATA "&#238;" -- small i, circumflex accent -->
<!ENTITY igrave CDATA "&#236;" -- small i, grave accent -->
<!ENTITY iuml CDATA "&#239;" -- small i, dieresis or umlaut mark -->
<!ENTITY ntilde CDATA "&#241;" -- small n, tilde -->
<!ENTITY oacute CDATA "&#243;" -- small o, acute accent -->
<!ENTITY ocirc CDATA "&#244;" -- small o, circumflex accent -->
<!ENTITY ograve CDATA "&#242;" -- small o, grave accent -->
<!ENTITY oslash CDATA "&#248;" -- small o, slash -->
<!ENTITY otilde CDATA "&#245;" -- small o, tilde -->
<!ENTITY ouml CDATA "&#246;" -- small o, dieresis or umlaut mark -->
<!ENTITY szlig CDATA "&#223;" -- small sharp s, German (sz ligature)->
<!ENTITY thorn CDATA "&#254;" -- small thorn, Icelandic -->
<!ENTITY uacute CDATA "&#250;" -- small u, acute accent -->
<!ENTITY ucirc CDATA "&#251;" -- small u, circumflex accent -->
<!ENTITY ugrave CDATA "&#249;" -- small u, grave accent -->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 68]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-69" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ENTITY uuml CDATA "&#252;" -- small u, dieresis or umlaut mark -->
<!ENTITY yacute CDATA "&#253;" -- small y, acute accent -->
<!ENTITY yuml CDATA "&#255;" -- small y, dieresis or umlaut mark -->
<span class="h2"><a class="selflink" id="section-10" href="#section-10">10</a>. Security Considerations</span>
Anchors, embedded images, and all other elements which contain URIs
as parameters may cause the URI to be dereferenced in response to
user input. In this case, the security considerations of [<a href="#ref-URL">URL</a>] apply.
The widely deployed methods for submitting forms requests -- HTTP and
SMTP -- provide little assurance of confidentiality. Information
providers who request sensitive information via forms -- especially
by way of the `PASSWORD' type input field (see 8.1.2, "Input Field:
INPUT") -- should be aware and make their users aware of the lack of
confidentiality.
<span class="h2"><a class="selflink" id="section-11" href="#section-11">11</a>. References</span>
[<a id="ref-URI">URI</a>]
Berners-Lee, T., "Universal Resource Identifiers in WWW:
A Unifying Syntax for the Expression of Names and
Addresses of Objects on the Network as used in the
World- Wide Web", <a href="./rfc1630">RFC 1630</a>, CERN, June 1994.
<URL:ftp://ds.internic.net/rfc/rfc1630.txt>
[<a id="ref-URL">URL</a>]
Berners-Lee, T., Masinter, L., and M. McCahill, "Uniform
Resource Locators (URL)", <a href="./rfc1738">RFC 1738</a>, CERN, Xerox PARC,
University of Minnesota, December 1994.
<URL:ftp://ds.internic.net/rfc/rfc1738.txt>
[<a id="ref-HTTP">HTTP</a>]
Berners-Lee, T., Fielding, R., and H. Frystyk Nielsen,
"Hypertext Transfer Protocol - HTTP/1.0", Work in
Progress, MIT, UC Irvine, CERN, March 1995.
[<a id="ref-MIME">MIME</a>]
Borenstein, N., and N. Freed. "MIME (Multipurpose
Internet Mail Extensions) Part One: Mechanisms for
Specifying and Describing the Format of Internet Message
Bodies", <a href="./rfc1521">RFC 1521</a>, Bellcore, Innosoft, September 1993.
<URL:ftp://ds.internic.net/rfc/rfc1521.txt>
[<a id="ref-RELURL">RELURL</a>]
Fielding, R., "Relative Uniform Resource Locators", <a href="./rfc1808">RFC</a>
<a href="./rfc1808">1808</a>, June 1995
<URL:ftp://ds.internic.net/rfc/rfc1808.txt>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 69]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-70" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
[<a id="ref-GOLD90">GOLD90</a>]
Goldfarb, C., "The SGML Handbook", Y. Rubinsky, Ed.,
Oxford University Press, 1990.
[<a id="ref-DEXTER">DEXTER</a>]
Frank Halasz and Mayer Schwartz, "The Dexter Hypertext
Reference Model", Communications of the ACM, pp.
30-39, vol. 37 no. 2, Feb 1994.
[<a id="ref-IMEDIA">IMEDIA</a>]
Postel, J., "Media Type Registration Procedure",
<a href="./rfc1590">RFC 1590</a>, USC/Information Sciences Institute, March 1994.
<URL:ftp://ds.internic.net/rfc/rfc1590.txt>
[<a id="ref-IANA">IANA</a>]
Reynolds, J., and J. Postel, "Assigned Numbers", STD 2,
<a href="./rfc1700">RFC 1700</a>, USC/Information Sciecnes Institute, October
1994. <URL:ftp://ds.internic.net/rfc/rfc1700.txt>
[<a id="ref-SQ91">SQ91</a>]
SoftQuad. "The SGML Primer", 3rd ed., SoftQuad Inc.,
1991. <URL:http://www.sq.com/>
[<a id="ref-ISO-646">ISO-646</a>]
ISO/IEC 646:1991 Information technology -- ISO 7-bit
coded character set for information interchange
<URL:http://www.iso.ch/cate/d4777.html>
[<a id="ref-ISO-10646">ISO-10646</a>]
ISO/IEC 10646-1:1993 Information technology -- Universal
Multiple-Octet Coded Character Set (UCS) -- Part 1:
Architecture and Basic Multilingual Plane
<URL:http://www.iso.ch/cate/d18741.html>
[<a id="ref-ISO-8859-1">ISO-8859-1</a>]
ISO 8859. International Standard -- Information
Processing -- 8-bit Single-Byte Coded Graphic Character
Sets -- Part 1: Latin Alphabet No. 1, ISO 8859-1:1987.
<URL:http://www.iso.ch/cate/d16338.html>
[<a id="ref-SGML">SGML</a>]
ISO 8879. Information Processing -- Text and Office
Systems - Standard Generalized Markup Language (SGML),
1986. <URL:http://www.iso.ch/cate/d16387.html>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 70]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-71" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h2"><a class="selflink" id="section-12" href="#section-12">12</a>. Acknowledgments</span>
The HTML document type was designed by Tim Berners-Lee at CERN as
part of the 1990 World Wide Web project. In 1992, Dan Connolly wrote
the HTML Document Type Definition (DTD) and a brief HTML
specification.
Since 1993, a wide variety of Internet participants have contributed
to the evolution of HTML, which has included the addition of in-line
images introduced by the NCSA Mosaic software for WWW. Dave Raggett
played an important role in deriving the forms material from the
HTML+ specification.
Dan Connolly and Karen Olson Muldrow rewrote the HTML Specification
in 1994. The document was then edited by the HTML working group as a
whole, with updates being made by Eric Schieler, Mike Knezovich, and
Eric W. Sink at Spyglass, Inc. Finally, Roy Fielding restructured
the entire draft into its current form.
Special thanks to the many active participants in the HTML working
group, too numerous to list individually, without whom there would be
no standards process and no standard. That this document approaches
its objective of carefully converging a description of current
practice and formalization of HTML's relationship to SGML is a
tribute to their effort.
<span class="h3"><a class="selflink" id="section-12.1" href="#section-12.1">12.1</a>. Authors' Addresses</span>
Tim Berners-Lee
Director, W3 Consortium
MIT Laboratory for Computer Science
545 Technology Square
Cambridge, MA 02139, U.S.A.
Phone: +1 (617) 253 9670
Fax: +1 (617) 258 8682
EMail: timbl@w3.org
Daniel W. Connolly
Research Technical Staff, W3 Consortium
MIT Laboratory for Computer Science
545 Technology Square
Cambridge, MA 02139, U.S.A.
Phone: +1 (617) 258 8682
EMail: connolly@w3.org
URI: <a href="http://www.w3.org/hypertext/WWW/People/Connolly/">http://www.w3.org/hypertext/WWW/People/Connolly/</a>
<span class="grey">Berners-Lee & Connolly Standards Track [Page 71]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-72" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<span class="h2"><a class="selflink" id="section-13" href="#section-13">13</a>. The HTML Coded Character Set</span>
This list details the code positions and characters of the HTML
document character set, specified in 9.5, "SGML Declaration for
HTML". This coded character set is based on [<a href="#ref-ISO-8859-1">ISO-8859-1</a>].
REFERENCE DESCRIPTION
-------------- -----------
&#00; - &#08; Unused
&#09; Horizontal tab
&#10; Line feed
&#11; - &#12; Unused
&#13; Carriage Return
&#14; - &#31; Unused
&#32; Space
&#33; Exclamation mark
&#34; Quotation mark
&#35; Number sign
&#36; Dollar sign
&#37; Percent sign
&#38; Ampersand
&#39; Apostrophe
&#40; Left parenthesis
&#41; Right parenthesis
&#42; Asterisk
&#43; Plus sign
&#44; Comma
&#45; Hyphen
&#46; Period (fullstop)
&#47; Solidus (slash)
&#48; - &#57; Digits 0-9
&#58; Colon
&#59; Semi-colon
&#60; Less than
&#61; Equals sign
&#62; Greater than
&#63; Question mark
&#64; Commercial at
&#65; - &#90; Letters A-Z
&#91; Left square bracket
&#92; Reverse solidus (backslash)
&#93; Right square bracket
&#94; Caret
&#95; Horizontal bar (underscore)
&#96; Acute accent
&#97; - &#122; Letters a-z
&#123; Left curly brace
&#124; Vertical bar
<span class="grey">Berners-Lee & Connolly Standards Track [Page 72]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-73" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
&#125; Right curly brace
&#126; Tilde
&#127; - &#159; Unused
&#160; Non-breaking Space
&#161; Inverted exclamation
&#162; Cent sign
&#163; Pound sterling
&#164; General currency sign
&#165; Yen sign
&#166; Broken vertical bar
&#167; Section sign
&#168; Umlaut (dieresis)
&#169; Copyright
&#170; Feminine ordinal
&#171; Left angle quote, guillemotleft
&#172; Not sign
&#173; Soft hyphen
&#174; Registered trademark
&#175; Macron accent
&#176; Degree sign
&#177; Plus or minus
&#178; Superscript two
&#179; Superscript three
&#180; Acute accent
&#181; Micro sign
&#182; Paragraph sign
&#183; Middle dot
&#184; Cedilla
&#185; Superscript one
&#186; Masculine ordinal
&#187; Right angle quote, guillemotright
&#188; Fraction one-fourth
&#189; Fraction one-half
&#190; Fraction three-fourths
&#191; Inverted question mark
&#192; Capital A, grave accent
&#193; Capital A, acute accent
&#194; Capital A, circumflex accent
&#195; Capital A, tilde
&#196; Capital A, dieresis or umlaut mark
&#197; Capital A, ring
&#198; Capital AE dipthong (ligature)
&#199; Capital C, cedilla
&#200; Capital E, grave accent
&#201; Capital E, acute accent
&#202; Capital E, circumflex accent
&#203; Capital E, dieresis or umlaut mark
&#204; Capital I, grave accent
<span class="grey">Berners-Lee & Connolly Standards Track [Page 73]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-74" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
&#205; Capital I, acute accent
&#206; Capital I, circumflex accent
&#207; Capital I, dieresis or umlaut mark
&#208; Capital Eth, Icelandic
&#209; Capital N, tilde
&#210; Capital O, grave accent
&#211; Capital O, acute accent
&#212; Capital O, circumflex accent
&#213; Capital O, tilde
&#214; Capital O, dieresis or umlaut mark
&#215; Multiply sign
&#216; Capital O, slash
&#217; Capital U, grave accent
&#218; Capital U, acute accent
&#219; Capital U, circumflex accent
&#220; Capital U, dieresis or umlaut mark
&#221; Capital Y, acute accent
&#222; Capital THORN, Icelandic
&#223; Small sharp s, German (sz ligature)
&#224; Small a, grave accent
&#225; Small a, acute accent
&#226; Small a, circumflex accent
&#227; Small a, tilde
&#228; Small a, dieresis or umlaut mark
&#229; Small a, ring
&#230; Small ae dipthong (ligature)
&#231; Small c, cedilla
&#232; Small e, grave accent
&#233; Small e, acute accent
&#234; Small e, circumflex accent
&#235; Small e, dieresis or umlaut mark
&#236; Small i, grave accent
&#237; Small i, acute accent
&#238; Small i, circumflex accent
&#239; Small i, dieresis or umlaut mark
&#240; Small eth, Icelandic
&#241; Small n, tilde
&#242; Small o, grave accent
&#243; Small o, acute accent
&#244; Small o, circumflex accent
&#245; Small o, tilde
&#246; Small o, dieresis or umlaut mark
&#247; Division sign
&#248; Small o, slash
&#249; Small u, grave accent
&#250; Small u, acute accent
&#251; Small u, circumflex accent
&#252; Small u, dieresis or umlaut mark
<span class="grey">Berners-Lee & Connolly Standards Track [Page 74]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-75" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
&#253; Small y, acute accent
&#254; Small thorn, Icelandic
&#255; Small y, dieresis or umlaut mark
<span class="h2"><a class="selflink" id="section-14" href="#section-14">14</a>. Proposed Entities</span>
The HTML DTD references the "Added Latin 1" entity set, which only
supplies named entities for a subset of the non-ASCII characters in
[<a href="#ref-ISO-8859-1">ISO-8859-1</a>], namely the accented characters. The following entities
should be supported so that all ISO 8859-1 characters may only be
referenced symbolically. The names for these entities are taken from
the appendixes of [<a href="#ref-SGML">SGML</a>].
<!ENTITY nbsp CDATA "&#160;" -- no-break space -->
<!ENTITY iexcl CDATA "&#161;" -- inverted exclamation mark -->
<!ENTITY cent CDATA "&#162;" -- cent sign -->
<!ENTITY pound CDATA "&#163;" -- pound sterling sign -->
<!ENTITY curren CDATA "&#164;" -- general currency sign -->
<!ENTITY yen CDATA "&#165;" -- yen sign -->
<!ENTITY brvbar CDATA "&#166;" -- broken (vertical) bar -->
<!ENTITY sect CDATA "&#167;" -- section sign -->
<!ENTITY uml CDATA "&#168;" -- umlaut (dieresis) -->
<!ENTITY copy CDATA "&#169;" -- copyright sign -->
<!ENTITY ordf CDATA "&#170;" -- ordinal indicator, feminine -->
<!ENTITY laquo CDATA "&#171;" -- angle quotation mark, left -->
<!ENTITY not CDATA "&#172;" -- not sign -->
<!ENTITY shy CDATA "&#173;" -- soft hyphen -->
<!ENTITY reg CDATA "&#174;" -- registered sign -->
<!ENTITY macr CDATA "&#175;" -- macron -->
<!ENTITY deg CDATA "&#176;" -- degree sign -->
<!ENTITY plusmn CDATA "&#177;" -- plus-or-minus sign -->
<!ENTITY sup2 CDATA "&#178;" -- superscript two -->
<!ENTITY sup3 CDATA "&#179;" -- superscript three -->
<!ENTITY acute CDATA "&#180;" -- acute accent -->
<!ENTITY micro CDATA "&#181;" -- micro sign -->
<!ENTITY para CDATA "&#182;" -- pilcrow (paragraph sign) -->
<!ENTITY middot CDATA "&#183;" -- middle dot -->
<!ENTITY cedil CDATA "&#184;" -- cedilla -->
<!ENTITY sup1 CDATA "&#185;" -- superscript one -->
<!ENTITY ordm CDATA "&#186;" -- ordinal indicator, masculine -->
<!ENTITY raquo CDATA "&#187;" -- angle quotation mark, right -->
<!ENTITY frac14 CDATA "&#188;" -- fraction one-quarter -->
<!ENTITY frac12 CDATA "&#189;" -- fraction one-half -->
<!ENTITY frac34 CDATA "&#190;" -- fraction three-quarters -->
<!ENTITY iquest CDATA "&#191;" -- inverted question mark -->
<!ENTITY Agrave CDATA "&#192;" -- capital A, grave accent -->
<!ENTITY Aacute CDATA "&#193;" -- capital A, acute accent -->
<!ENTITY Acirc CDATA "&#194;" -- capital A, circumflex accent -->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 75]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-76" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ENTITY Atilde CDATA "&#195;" -- capital A, tilde -->
<!ENTITY Auml CDATA "&#196;" -- capital A, dieresis or umlaut mark -->
<!ENTITY Aring CDATA "&#197;" -- capital A, ring -->
<!ENTITY AElig CDATA "&#198;" -- capital AE diphthong (ligature) -->
<!ENTITY Ccedil CDATA "&#199;" -- capital C, cedilla -->
<!ENTITY Egrave CDATA "&#200;" -- capital E, grave accent -->
<!ENTITY Eacute CDATA "&#201;" -- capital E, acute accent -->
<!ENTITY Ecirc CDATA "&#202;" -- capital E, circumflex accent -->
<!ENTITY Euml CDATA "&#203;" -- capital E, dieresis or umlaut mark -->
<!ENTITY Igrave CDATA "&#204;" -- capital I, grave accent -->
<!ENTITY Iacute CDATA "&#205;" -- capital I, acute accent -->
<!ENTITY Icirc CDATA "&#206;" -- capital I, circumflex accent -->
<!ENTITY Iuml CDATA "&#207;" -- capital I, dieresis or umlaut mark -->
<!ENTITY ETH CDATA "&#208;" -- capital Eth, Icelandic -->
<!ENTITY Ntilde CDATA "&#209;" -- capital N, tilde -->
<!ENTITY Ograve CDATA "&#210;" -- capital O, grave accent -->
<!ENTITY Oacute CDATA "&#211;" -- capital O, acute accent -->
<!ENTITY Ocirc CDATA "&#212;" -- capital O, circumflex accent -->
<!ENTITY Otilde CDATA "&#213;" -- capital O, tilde -->
<!ENTITY Ouml CDATA "&#214;" -- capital O, dieresis or umlaut mark -->
<!ENTITY times CDATA "&#215;" -- multiply sign -->
<!ENTITY Oslash CDATA "&#216;" -- capital O, slash -->
<!ENTITY Ugrave CDATA "&#217;" -- capital U, grave accent -->
<!ENTITY Uacute CDATA "&#218;" -- capital U, acute accent -->
<!ENTITY Ucirc CDATA "&#219;" -- capital U, circumflex accent -->
<!ENTITY Uuml CDATA "&#220;" -- capital U, dieresis or umlaut mark -->
<!ENTITY Yacute CDATA "&#221;" -- capital Y, acute accent -->
<!ENTITY THORN CDATA "&#222;" -- capital THORN, Icelandic -->
<!ENTITY szlig CDATA "&#223;" -- small sharp s, German (sz ligature) -->
<!ENTITY agrave CDATA "&#224;" -- small a, grave accent -->
<!ENTITY aacute CDATA "&#225;" -- small a, acute accent -->
<!ENTITY acirc CDATA "&#226;" -- small a, circumflex accent -->
<!ENTITY atilde CDATA "&#227;" -- small a, tilde -->
<!ENTITY auml CDATA "&#228;" -- small a, dieresis or umlaut mark -->
<!ENTITY aring CDATA "&#229;" -- small a, ring -->
<!ENTITY aelig CDATA "&#230;" -- small ae diphthong (ligature) -->
<!ENTITY ccedil CDATA "&#231;" -- small c, cedilla -->
<!ENTITY egrave CDATA "&#232;" -- small e, grave accent -->
<!ENTITY eacute CDATA "&#233;" -- small e, acute accent -->
<!ENTITY ecirc CDATA "&#234;" -- small e, circumflex accent -->
<!ENTITY euml CDATA "&#235;" -- small e, dieresis or umlaut mark -->
<!ENTITY igrave CDATA "&#236;" -- small i, grave accent -->
<!ENTITY iacute CDATA "&#237;" -- small i, acute accent -->
<!ENTITY icirc CDATA "&#238;" -- small i, circumflex accent -->
<!ENTITY iuml CDATA "&#239;" -- small i, dieresis or umlaut mark -->
<!ENTITY eth CDATA "&#240;" -- small eth, Icelandic -->
<!ENTITY ntilde CDATA "&#241;" -- small n, tilde -->
<!ENTITY ograve CDATA "&#242;" -- small o, grave accent -->
<span class="grey">Berners-Lee & Connolly Standards Track [Page 76]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-77" ></span>
<span class="grey"><a href="./rfc1866">RFC 1866</a> Hypertext Markup Language - 2.0 November 1995</span>
<!ENTITY oacute CDATA "&#243;" -- small o, acute accent -->
<!ENTITY ocirc CDATA "&#244;" -- small o, circumflex accent -->
<!ENTITY otilde CDATA "&#245;" -- small o, tilde -->
<!ENTITY ouml CDATA "&#246;" -- small o, dieresis or umlaut mark -->
<!ENTITY divide CDATA "&#247;" -- divide sign -->
<!ENTITY oslash CDATA "&#248;" -- small o, slash -->
<!ENTITY ugrave CDATA "&#249;" -- small u, grave accent -->
<!ENTITY uacute CDATA "&#250;" -- small u, acute accent -->
<!ENTITY ucirc CDATA "&#251;" -- small u, circumflex accent -->
<!ENTITY uuml CDATA "&#252;" -- small u, dieresis or umlaut mark -->
<!ENTITY yacute CDATA "&#253;" -- small y, acute accent -->
<!ENTITY thorn CDATA "&#254;" -- small thorn, Icelandic -->
<!ENTITY yuml CDATA "&#255;" -- small y, dieresis or umlaut mark -->
Berners-Lee & Connolly Standards Track [Page 77]
</pre>
|