コード例 #1
0
        private static void UrciDataciNaZakladeRoku(IDatace dt, int iRok)
        {
            dt.Rok     = iRok;
            dt.Stoleti = (iRok / 100) * 100;
            int iDesetileti = dt.Rok - dt.Stoleti;

            dt.PolovinaStoleti      = PolovinaStoletiNaZakladeDesetileti(iDesetileti);
            dt.Desetileti           = iDesetileti / 10;
            dt.RelativniChronologie = RelativniChronologieNaZakladeRoku(iRok);
            if (dt.NePredRokem == 0)
            {
                dt.NePredRokem = dt.Rok;
            }
            dt.NePoRoce = dt.Rok;
        }
コード例 #2
0
ファイル: AnalyzatorDatace.cs プロジェクト: daliboris/ITJakub
        public static string UrcitObdobiVzniku(IDatace mdtcDatace)
        {
            string sDatace = null;

            if (mdtcDatace.Stoleti != 0)
            {
                if (mdtcDatace.PolovinaStoleti == 2)
                {
                    sDatace = String.Format("{0}50–{1}", (mdtcDatace.Stoleti / 100), mdtcDatace.Stoleti + 100);
                }
                else
                {
                    sDatace = String.Format("{0}–{1}50", mdtcDatace.Stoleti, (mdtcDatace.Stoleti / 100));
                }
            }
            return(sDatace);
        }
コード例 #3
0
        public string UrcitObdobiVzniku(IDatace mdtcDatace)
        {
            /*
             * Zvolené řešení: (1. století začíná 1. 1. 1 (není 1. 1. 0)
             * 13. století: 1201-1300
             * 1. polovina 13. století: 1201-1250
             * 2. polovina 13. století: 1251-1300
             */
            /*
             * Rozmezí datace; odlišné přístupy:
             * XML TEI (http://www.tei-c.org/release/doc/tei-p5-doc/en/html/examples-date.html):
             * <date notBefore="1250" notAfter="1300">the second half of the thirteenth century</date>
             *
             * Deep encoding of etymological information in TEI - arXiv (https://arxiv.org/pdf/1611.10122)
             * <date notBefore="0350" notAfter=“0399”> IVe2 </date> (= second half of the 4th century (CE))
             *
             * TEI P5 Customization and Encoding Guidelines for Greek Manuscripts in Sweden (https://www.manuscripta.se/guidelines)
             * 13th century = 1201–1300
             * 13th century (1st half) = 1201–1250
             * 13th century (2nd half) = 1251-1300
             *
             * PreiodO (http://perio.do/; https://test.perio.do/#/p/)
             * 17th Century::1st half (1600 - 1649)
             * 17th Century::2nd half (1650 - 1699)
             *
             * Eagle/Europeana (https://www.eagle-network.eu/resources/vocabularies/dates/; https://www.eagle-network.eu/voc/dates/lod/291.html)
             *
             * first half of II CE; 0101 ; 0150
             * second half of II CE; 0151 ; 0200
             * third quarter of II AD: 0151 ; 0175
             * beginning of II AD: 0101 ; 0110 (https://www.eagle-network.eu/voc/dates/lod/278.html)
             * earlier II AD: 0101 ; 0115 (https://www.eagle-network.eu/voc/dates/lod/288.html)
             * second quarter of II AD: 0126 ; 0150 (https://www.eagle-network.eu/voc/dates/lod/290.html)
             * early II AD: 0101 ; 0125 (https://www.eagle-network.eu/voc/dates/lod/289.html)
             * mid II AD: 0126 ; 0175 (https://www.eagle-network.eu/voc/dates/lod/292.html)
             * late II AD: 0176 ; 0200 (https://www.eagle-network.eu/voc/dates/lod/295.html)
             *
             * Úseky 2. století (https://www.eagle-network.eu/voc/dates/lod/103.html)
             *
             *
             * TEI Mediaval Manuscripts (http://medieval.bodleian.ox.ac.uk/source/added/MS.%20Canon.%20Gr.%2065)
             * <date calendar="Gregorian" notAfter="1300" notBefore="1266">13th century, last third</date>
             * http://medieval.bodleian.ox.ac.uk/source/added/MS.%20Auct.%20T.%204.%202
             * <date calendar="Gregorian" notAfter="1460" notBefore="1440">15th century, middle</date>
             * http://medieval.bodleian.ox.ac.uk/source/added/MS.%20Auct.%20T.%204.%202
             * <date calendar="Gregorian" notBefore="1290" notAfter="1333">13th century, end - 14th century, first third</date>
             *
             *
             * Syriaca (http://syriaca.org/documentation/dates.html)
             * first half of 5th century: 0400; 0450
             * second half of 6th century: 0550; 0600
             *
             * HOW TO USE DATES IN HISTORY (http://courses.wcupa.edu/jones/his101/misc/dates.htm)
             * The first century CE includes the first one hundred years after the first minute of YEAR ONE. In other words, if YEAR ONE began at midnight of January 1, YEAR ONE, then the last day of the first century was December 31, 100.
             *
             * Český národní korpus (http://wiki.korpus.cz/doku.php/seznamy:index#zdrojove_texty_diachronnich_korpusu; http://wiki.korpus.cz/lib/exe/fetch.php/seznamy:diakorp.xlsx)
             * 1350-1400 (Pasionál muzejní (Muz III D 44) (R))
             * 1400-1450 (Životy svatých otců (UK XVII D 36) (R))
             *
             * Internetová jazyková příručka (http://prirucka.ujc.cas.cz/?id=795)
             * 20. a 30. léta, 20. a 21. století
             *
             * Dvacátá léta jsou ta, která mají na místě desítek dvojku, tedy např. 1820–1829, 1920–1929, 2020–2029. Třicátá léta jsou 1830–1839, 1930–1939, 2030–2039 atd. Pro roky 1900–1909, 1910–1919, 2000–2009, 2009–2019 atp. čeština žádné specifické pojmenování nemá („nultá“ a „desátá“ léta se užívají zřídka). Tato období většinou označujeme jako první léta století, začátek století, první desetiletí, druhé desetiletí apod.
             *
             * Do prvního století počítáme roky 1, 2, …, 100, do druhého století roky 101, 102, …, 200. Dvacáté století začalo 1. ledna 1901 a skončilo o půlnoci z 31. prosince 2000 na 1. ledna 2001. Devadesátá léta dvacátého století však skončila o rok dříve, 31. prosince 1999. Rok 2000 byl posledním rokem desátého desetiletí dvacátého století a zároveň posledním rokem dvacátého století. Dvacáté první století začalo dnem 1. ledna roku 2001 a skončí o půlnoci z 31. prosince 2100 na 1. ledna 2101, přičemž devadesátá léta dvacátého prvního století budou léta 2090–2099.
             *
             * Datum 1. ledna 2001 analogicky považujeme i za počátek třetího tisíciletí, jež skončí o půlnoci z 31. prosince 3000 na 1. ledna 3001.
             *
             * Způsoby sdružování časových úseků do větších celků, další členění a jejich pojmenovávání mají své historické příčiny a překrývají se v nich dva principy: aritmetický a praktický.
             *
             */

            /*
             * https://developers.google.com/chart/interactive/docs/gallery/timeline
             * google.charts.load("current", {packages:["timeline"]});
             * google.charts.setOnLoadCallback(drawChart);
             * function drawChart() {
             *
             * var container = document.getElementById('timeline');
             * var chart = new google.visualization.Timeline(container);
             * var dataTable = new google.visualization.DataTable();
             * dataTable.addColumn({ type: 'string', id: 'Position' });
             * dataTable.addColumn({ type: 'string', id: 'Name' });
             * dataTable.addColumn({ type: 'date', id: 'Start' });
             * dataTable.addColumn({ type: 'date', id: 'End' });
             * dataTable.addRows([
             *          [ 'Století', '14. století', new Date(1301, 0, 0) , new Date(1400, 11, 30)],
             *          [ 'Století', '15. století', new Date(1401, 0, 0) , new Date(1500, 11, 30)]
             *          [ 'Polovina', '1. polovina', new Date(1301, 0, 0) , new Date(1350, 11, 30)],
             *          [ 'Polovina', '2. polovina', new Date(1351, 0, 0) , new Date(1400, 11, 30)]
             *          [ 'Třetina', '1. třetina', new Date(1301, 0, 0) , new Date(1333, 11, 30)],
             *          [ 'Třetina', '2. třetina', new Date(1334, 0, 0) , new Date(1366, 11, 30)],
             *          [ 'Třetina', '3. třetina', new Date(1367, 0, 0) , new Date(1400, 11, 30)]
             *          [ 'Čtvrtina', '1. čtvrtina', new Date(1301, 0, 0) , new Date(1325, 11, 30)],
             *          [ 'Čtvrtina', '2. čtvrtina', new Date(1326, 0, 0) , new Date(1350, 11, 30)],
             *          [ 'Čtvrtina', '3. čtvrtina', new Date(1351, 0, 0) , new Date(1375, 11, 30)],
             *          [ 'Čtvrtina', '4. čtvrtina', new Date(1376, 0, 0) , new Date(1400, 11, 30)]
             *          [ 'Desetiletí', '10. léta', new Date(1310, 0, 0) , new Date(1319, 11, 30)],
             *          [ 'Desetiletí', '20. léta', new Date(1320, 0, 0) , new Date(1329, 11, 30)],
             *          [ 'Desetiletí', '30. léta', new Date(1330, 0, 0) , new Date(1339, 11, 30)],
             *          [ 'Desetiletí', '40. léta', new Date(1340, 0, 0) , new Date(1349, 11, 30)],
             *          [ 'Desetiletí', '50. léta', new Date(1350, 0, 0) , new Date(1359, 11, 30)],
             *          [ 'Desetiletí', '60. léta', new Date(1360, 0, 0) , new Date(1369, 11, 30)],
             *          [ 'Desetiletí', '70. léta', new Date(1370, 0, 0) , new Date(1379, 11, 30)],
             *          [ 'Desetiletí', '80. léta', new Date(1380, 0, 0) , new Date(1389, 11, 30)],
             *          [ 'Desetiletí', '90. léta', new Date(1390, 0, 0) , new Date(1399, 11, 30)]
             *          [ 'Předěly', 'začátek 14. století', new Date(1301, 0, 0) , new Date(1315, 11, 30)],
             *          [ 'Předěly', 'konec 14. století', new Date(1385, 0, 0) , new Date(1400, 11, 30)],
             *          [ 'Předěly', 'okolo roku 1420', new Date(1417, 0, 0) , new Date(1423, 11, 30)],
             *          [ 'Předěly', 'po roce 1423', new Date(1423, 0, 0) , new Date(1426, 11, 30)],
             *          [ 'Předěly', 'přelom 13. a 14. století', new Date(1290, 0, 0) , new Date(1310, 11, 30)]
             * ]);
             *
             * chart.draw(dataTable);
             * }
             */

            string sDatace = null;

            if (mdtcDatace.Stoleti != 0)
            {
                if (mdtcDatace.PolovinaStoleti == 2 || (mdtcDatace.PolovinaStoleti == 0 && (mdtcDatace.NePoRoce - mdtcDatace.Stoleti) > 50))
                {
                    sDatace = String.Format("{0}51–{1}", (mdtcDatace.Stoleti / 100), mdtcDatace.Stoleti + 100);
                }
                else
                {
                    sDatace = String.Format("{0}–{1}50", mdtcDatace.Stoleti + 1, (mdtcDatace.Stoleti / 100));
                }
            }
            return(sDatace);
        }