XD blog

blog page

2013-02


2013-02-02 Parser du XML

Parser du XML est toujours laborieux pour moi parce que je ne retiens jamais les librairies qu'il faut utiliser, le modèle SAX ou DOM. J'avais besoin de lire les fichiers issus du site Wikipedia qui sont organisés comme suit :

<root>
    <page>
        contenu d'une page
    </page>
    <page>
        contenu d'une autre page
    </page/>
...
</root>
Le fichier de Wikipedia fait malhreusement plusieurs gigaoctets, il est juste impossible de tout charger en mémoire (sur la plupart des ordinateurs) sauf si on dispose d'au moins 20Go de mémoire et qu'on ne veut pas s'occuper de Wikipedia en langue anglaise. En procédant de la sorte, on est obligé de découper les fichiers.

Le programme suivant permet d'explorer les premiers objets d'un fichier Wikipedia ou de n'importe quel fichier XML pour peu qu'il contienne une collection d'objets.

from hal_xml_tree import *

file = r"c:\temp\ptwiki-20130125-pages-articles.xml"
f = open (file, "r")

parser  = XMLIterParser ()
handler = XMLHandlerDict ()
parser.setContentHandler (handler)
nb = 0
for o in parser.parse(f) :
    for a,b in o.iterfields() :
        if len(b) > 0 :print [a,b]
    print "---------------------"
    nb += 1
    if nb > 10: break
Pour le faire fonctionner, il faut bien entendu télécharger un fichier Wikipedia ou tout autre fichier XML. Il faut aussi télécharger quelques programmes Python regroupés dans ce fichier zip. Il affiche le résultat suivant :
[u'page/ns', u'0']
[u'page/id', u'226']
[u'page/title', u'Anno Domini']
[u'page/revision/comment', u'/* Bibliografia */']
[u'page/revision/sha1', u'8k8aunn4ksni858pkgz7k14xn2cvkft']
[u'page/revision/format', u'text/x-wiki']
[u'page/revision/timestamp', u'2012-07-20T07:35:08Z']
[u'page/revision/parentid', u'31033385']
[u'page/revision/model', u'wikitext']
[u'page/revision/id', u'31485600']
[u'page/revision/text/_', u'{{T\xedtulo em it\xe1lico}}\n[[Ficheiro:Scriptorium.jpg|thumb|right|250 px|[[Dion\xedsio, o Ex\xedguo]], monge [[Citas|cita]] (m. 540), foi o primeiro a utilizar o ano do nascimento de Cristo como refer\xeancia na data\xe7\xe3o]]  \n\'\'\'\'\'Anno Domini\'\'\'\'\' (termo em [[Latim]] que significa: "ano do Senhor"), tamb\xe9m apresentado na sua forma abreviada \'\'\'\'\'A.D.\'\'\'\'\', \xe9 uma express\xe3o utilizada para marcar os anos seguintes ao [[1|ano 1]] do [[calend\xe1rio]] mais comumente utilizado no Ocidente, designado como \'\'\'"Era Crist\xe3"\'\'\' ou, ainda, como \'\'\'"[[Era Comum]]"\'\'\' (esta \xfaltima designa\xe7\xe3o \xe9 a preferida por quem tenta evitar refer\xeancias religiosas).\n\n==Abreviaturas== \n\n===A.D. ou D.C. ===\nA abreviatura de \'\'Anno Domini\'\' \xe9  \'\'\'A.D.\'\'\'  para designar \'\'depois de Cristo\'\', logo tamb\xe9m  \'\'\'D.C\'\'\' ou \'\'\'d.C.\'\'\'\n===A.C.===\nSegundo este crit\xe9rio, tamb\xe9m se utiliza a abreviatura "a.C." para designar os anos \'\'antes de Cristo\'\', logo \'\'\'A.C.\'\'\' ou \'\'\'a.C.\'\'\'  \n\n==Era cronol\xf3gica==\nEsta era cronol\xf3gica \'\'("Era Crist\xe3" ou "Era Comum")\'\', que \xe9 globalmente adoptada, mesmo em pa\xedses de cultura maioritariamente n\xe3o crist\xe3, para efeitos de unanimidade de crit\xe9rios em v\xe1rios \xe2mbitos, como o cient\xedfico e comercial, foi organizado de forma a contar o suposto ano do nascimento de [[Cristo]] como ano 1, marcando uma linha divis\xf3ria no tempo. A contagem dos anos assemelha-se \xe0 ordem dos [[n\xfamero inteiro|n\xfameros inteiros]] (com a excep\xe7\xe3o de que n\xe3o existiu um ano zero - pelo que o ano 1 a.C. foi imediatamente sucedido pelo ano 1 d.C.), pelo que tamb\xe9m \xe9 comum referir os anos antes de Cristo por n\xfameros inteiros negativos e os anos depois de Cristo por n\xfameros inteiros positivos.\n\nUtiliza-se, nesta forma de data\xe7\xe3o, os calend\xe1rios [[Calend\xe1rio juliano|Juliano]] e [[Calend\xe1rio gregoriano|Gregoriano]]. O termo \'\'Anno Domini\'\' \xe9, por vezes, substitu\xeddo pela express\xe3o mais formal e descritiva \'\'\'\'\'Anno Domini Nostri Iesu Christi\'\'\'\'\' ("Ano de Nosso Senhor Jesus Cristo"). \xc9, por vezes, ainda substitu\xeddo pela express\xe3o \'\'\'na era da Gra\xe7a\'\'\'. A forma de data\xe7\xe3o segundo o \'\'Anno Domini\'\' foi primeiramente utilizada na [[Europa Ocidental]] durante o [[s\xe9culo VIII]]. [[Portugal]] foi um dos \xfaltimos pa\xedses a adotar o novo m\xe9todo, imposto pelo rei [[Jo\xe3o I de Portugal|dom Jo\xe3o I]], a [[15 de Agosto]] de [[1422]], em substitui\xe7\xe3o a "[[era de C\xe9sar]]". A [[Espanha]] j\xe1 o usava desde meados do s\xe9culo precedente.\n\nNem todos os pa\xedses seguem o calend\xe1rio ocidental: [[judeu]]s e [[mu\xe7ulmano]]s, por exemplo, organizam anos e meses de maneiras diferentes. Contudo, \xe9 o padr\xe3o internacional, sendo reconhecido por institui\xe7\xf5es internacionais como a [[Organiza\xe7\xe3o das Na\xe7\xf5es Unidas]] ou a [[Uni\xe3o Postal Universal]]. Isso justifica-se tanto pelo peso da tradi\xe7\xe3o ocidental quanto pelo facto de que o Calend\xe1rio Gregoriano foi, durante muito tempo, considerado astronomicamente corretoNo calend\xe1rio gregoriano, cada ano tem, em m\xe9dia, 365,2425 [[dia]]s (ou seja, 365 dias, 5 horas, 49 [[minuto]]s e 12 [[segundo]]s), sendo assim, aproximadamente, h\xe1 cerca de cinco [[mil\xeanio]]s. O verdadeiro [[ano tr\xf3pico]] m\xe9dio est\xe1, atualmente, muito pr\xf3ximo dos 365,2421875 dias, ou seja, 27 segundos mais curto. Contudo, relativamente ao ano do [[equin\xf3cio vernal]], importante para a determina\xe7\xe3o da data da [[P\xe1scoa]] Crist\xe3, a antiga defini\xe7\xe3o de ano, de [[Aloysius Lilius|Lilius]], mant\xe9m-se como um bom valor. O ano do equin\xf3cio vernal e o ano tr\xf3pico m\xe9dio t\xeam sido, falsamente, considerados id\xeanticos, mesmo por v\xe1rios eruditos..\n\n== Sin\xf3nimos ==\n=== Era Comum ou Era Crist\xe3 ===\n{{Main|Era comum}}\n[[Ficheiro:Leonardo da Vinci 016.jpg|thumb|250 px|Baptismo de Cristo por [[Leonardo da Vinci]]]] \nAinda que mantenha como refer\xeancia o ano convencionado para o nascimento de Jesus de Nazar\xe9, o termo "Era Comum" ou "Era Crist\xe3" \xe9 preferido a "depois de Cristo" ("d.C.") por aqueles que preferem uma posi\xe7\xe3o mais neutra em rela\xe7\xe3o ao significado religioso da Era Crist\xe3, ao n\xe3o pressupor a cren\xe7a em Cristo. \xc9, por isso, considerada a f\xf3rmula mais adequada ao [[di\xe1logo inter-religioso]]. \n\nAssim, utilizam-se as siglas \'\'\'AEC\'\'\' ("\'\'\'Antes da Era Comum\'\'\'" ou "\'\'\'Antes da Era Crist\xe3\'\'\'") ou \'\'\'EC\'\'\' ("\'\'\'Era Comum\'\'\'" ou "\'\'\'Era Crist\xe3\'\'\'"). \xc9 a designa\xe7\xe3o preferida por alguns autores crist\xe3os que consideram o termo "antes e depois de Cristo" incorreto j\xe1 que o nome [[Cristo]], usado vulgarmente como sobrenome de Jesus, em [[L\xedngua grega|grego]] significa "[[un\xe7\xe3o|Ungido]]" (\'\'Khrist\xf3s\'\'). Segundo a B\xedblia, Jesus de Nazar\xe9 teria sido ungido ap\xf3s o seu [[baptismo]], "cerca de trinta anos" depois do seu nascimento ({{citar b\xedblia|livro=Lucas|cap\xedtulo=3|verso=21|verso_final=23}}).\n\nA [[Rep\xfablica Popular da China]], em [[1949]], ao adoptar a data\xe7\xe3o ocidental, designou-a de \'\'g\u014dngyu\xe1n\'\' (em [[L\xedngua chinesa|chin\xeas]]: \u516c\u5143), que significa, literalmente, "Era Comum".\n\n=== \'\'Anno Salutis\'\' ===\n\'\'\'\'\'Anno Salutis\'\'\'\'\' (traduzido do [[latim]], "no ano da [[Salva\xe7\xe3o]]") \xe9 outro estilo de data\xe7\xe3o, correspondente \xe0 mesma era, usando o nascimento de Cristo como refer\xeancia. A express\xe3o foi particularmente utilizada at\xe9 o [[s\xe9culo XVIII]] e refere-se \xe0 cren\xe7a crist\xe3 que sustenta que a vinda de Cristo permitiu resgatar a humanidade da dana\xe7\xe3o eterna devida ao [[pecado original]]. A express\xe3o pode, ainda, ser apresentada sob a forma mais elaborada de \'\'\'\'\'Anno Nostrae Salutis\'\'\'\'\' ("\'no ano da nossa Salva\xe7\xe3o"), \'\'\'\'\'Anno Salutis Humanae\'\'\'\'\' ("no ano da Salva\xe7\xe3o dos Homens"), \'\'\'\'\'Anno Reparatae Salutis\'\'\'\'\' ("no ano da consumada Salva\xe7\xe3o"). Estas express\xf5es est\xe3o tamb\xe9m relacionadas com a muito frequente entre autores portugueses, que preferiam a f\xf3rmula "no ano da [[Gra\xe7a]] de Nosso Senhor Jesus Cristo" ou variantes semelhantes.\n\n== Eras utilizadas pelos primeiros crist\xe3os ==\nA data\xe7\xe3o \'\'Anno Domini\'\' s\xf3 foi adotada na [[Europa Ocidental]] a partir do [[s\xe9culo VIII]]. Tal como os outros habitantes do Imp\xe9rio Romano, os primeiros crist\xe3os usavam diversos m\xe9todos para especificar os anos, inclusive no mesmo documento. Tal redund\xe2ncia tornou-se \xfatil para os historiadores que puderam, assim, elaborar tabelas comparativas de reinados e outros per\xedodos pol\xedticos, com dados de cr\xf3nicas de diferentes regi\xf5es, sob os mesmos governantes.\n\n=== Data\xe7\xe3o consular ===\nUma das formas mais comuns e mais antigas consistia na data\xe7\xe3o consular, que consistia em nomear os dois \'\'consules ordinarii\'\' que iniciavam o seu exerc\xedcio a [[1 de Janeiro]] do ano civil. Por vezes, a designa\xe7\xe3o para o cargo de um dos c\xf4nsules, ou mesmo dos dois, podia n\xe3o ocorrer at\xe9 Novembro ou dezembro do ano precedente, pelo que, como as not\xedcias levavam meses a chegar aos pontos mais afastados do Imp\xe9rio, existem documentos em que o ano \xe9 definido como "depois do consulado de...".\n\n=== Data\xe7\xe3o a partir da funda\xe7\xe3o da cidade ===\nOutro m\xe9todo de data\xe7\xe3o, raramente usado, consistia no \'\'[[anno urbis conditae]]\'\', ou "no ano da funda\xe7\xe3o da Cidade" (abreviadamente, AUC), sendo "a Cidade" [[Roma]]. (Note-se que, apesar de ser uma confus\xe3o freq\xfcente, a abreviatura AUC n\xe3o significa exatamente \'\'[[ab urbe condita]]\'\', que \xe9 o t\xedtulo da Hist\xf3ria de Roma escrita por [[Tito L\xedvio]], e que se adoptou para nomear esta era). A data da funda\xe7\xe3o de Roma era disputada entre os pr\xf3prios romanos, mas os historiadores modernos adoptam, geralmente, a data proposta por [[Marco Ter\xeancio Varr\xe3o|Varr\xe3o]], de [[753 a.C.]]. \n\nNo in\xedcio do [[s\xe9culo V]], o historiador [[Pen\xednsula Ib\xe9rica|ib\xe9rio]] [[Or\xf3sio]] usava a era \'\'ab urbe condita\'\'. O papa [[Bonif\xe1cio IV]], no in\xedcio do [[s\xe9culo VII]], ter\xe1 sido o primeiro a utilizar, simultaneamente, esta forma de data\xe7\xe3o, e o \'\'Anno Domini\'\', equivalendo a data de [[607|607 d.C.]] = 1360 \'\'anno urbis conditae\'\'.\n\n=== Anos de reinado dos imperadores romanos ===\n[[Ficheiro:Rome Statue of Augustus.jpg|thumb|250 px|[[C\xe9sar Augusto]]]]\nOutro sistema, menos usado do que \xe9 frequente pensar-se, consistia na indica\xe7\xe3o do ano de reinado de cada [[imperador romano]]. No in\xedcio, [[Augusto]] indicava os anos do seu governo contando as vezes em que foi investido no cargo de c\xf4nsul, ou as vezes em que o [[Senado de Roma]] renovava os seus privil\xe9gios tribun\xedcios, alimentando a id\xe9ia de que os seus poderes lhe eram legitimamente adjudicados por estes \xf3rg\xe3os de poder e n\xe3o pelo fato de aproveitar o culto da personalidade de que j\xe1 gozava, al\xe9m do n\xfamero de [[Legi\xe3o romana|legi\xf5es]] sob o seu controlo. Os seus sucessores seguiram tal pr\xe1tica at\xe9 que a mem\xf3ria da Rep\xfablica Romana se foi esbatendo (nos final do [[s\xe9culo II]] ou in\xedcio do [[s\xe9culo III]]), quando come\xe7aram a usar explicitamente o seu ano de reinado.\n\nTamb\xe9m a pacifica\xe7\xe3o de uma regi\xe3o por [[Augusto]] serviu como ponto de partida para um calend\xe1rio.  A [[Era de C\xe9sar|Era Hisp\xe2nica]] ou [[Era de C\xe9sar]], que foi um calend\xe1rio usado na [[pen\xednsula Ib\xe9rica]] durante mais de um mil\xeanio, tinha como ano-base o ano da imposi\xe7\xe3o de uma nova taxa regular de impostos sobre os Ib\xe9ricos por Augusto, o que foi um marco simb\xf3lico do in\xedcio [[Pax romana]] sobre as prov\xedncias da [[Hisp\xe2nia]]; muito embora outro motivo para o surgimento deste calend\xe1rio pudesse ter sido a renova\xe7\xe3o do acordo do [[Segundo Triunvirato|Triunvirato]], que confirmou a [[Augusto]] o poder sobre a [[Pen\xednsula Ib\xe9rica|Pen\xednsula]].\n\n=== Ciclos das indic\xe7\xf5es ===\nOs ciclos de [[wikt:indic\xe7\xe3o|indic\xe7\xe3o]] (do [[latim]] \'\'indictio\'\') consistiam em quinze anos (cada um igual a uma \'\'indic\xe7\xe3o\'\') que marcavam um ciclo determinado por um imposto agr\xedcola, contando-se os anos a partir da data em que este era pago. Tal sistema, usado na [[G\xe1lia]], no [[Egipto]] at\xe9 \xe0 conquista Isl\xe2mica, no [[Imp\xe9rio Bizantino|Imp\xe9rio Romano do Oriente]] at\xe9 \xe0 sua queda em [[1453]] e ainda na Santa S\xe9 durante parte da [[Idade M\xe9dia]].\n\n=== Outros sistemas ===\nCoexistiam, ainda v\xe1rios sistemas locais de data\xe7\xe3o ou eras de alguma import\xe2ncia, tal como o ano de funda\xe7\xe3o de uma dada cidade, o ano de reinado dos imperadores [[P\xe9rsia|persas]] e, mesmo, o ano de governo de um dado [[califa]]. Particularmente importantes foram a [[Sel\xeaucidas|Era dos sel\xeaucidas]] (em uso at\xe9 ao [[s\xe9culo VIII]]) e a [[Era Hisp\xe2nica|Era de C\xe9sar]] (ou \'\'Era Hisp\xe2nica\'\').\n\nDa mesma forma, na Europa, at\xe9 ao [[s\xe9culo XVI]], n\xe3o existia unanimidade quanto ao primeiro dia do ano, n\xe3o sendo consensual, exceto em [[Inglaterra]], dat\xe1-lo no primeiro dia de Janeiro.\n\n== Hist\xf3ria ==\n[[Ficheiro:Meister von San Vitale in Ravenna 004.jpg|thumb|250 px|Justiniano]]\nOs primeiros crist\xe3os nomeavam cada ano usando, combinadas, as data\xe7\xf5es consulares, os anos de reinado imperial e a data\xe7\xe3o a partir da [[G\xeanesis|cria\xe7\xe3o do mundo]]. A data\xe7\xe3o consular foi extinta quando o imperador [[Justiniano I]] deixou de nomear c\xf4nsules em meados do [[s\xe9culo VI]]. Pouco depois, tornava-se oficial a data\xe7\xe3o pelo ano de reinado imperial. O \xfaltimo c\xf4nsul a ser nomeado foi [[An\xedcio Fausto Albino Bas\xedlio]] em [[541]]. A [[Santa S\xe9]] manteve, entretanto, um contato regular, durante a [[Idade M\xe9dia]], com embaixadores do [[Imp\xe9rio Bizantino]], pelos quais sabia com alguma certeza qual o imperador no trono, apesar do n\xfamero elevado de mortes s\xfabitas e deposi\xe7\xf5es que se sucediam.\n\nO sistema do \'\'Anno Domini\'\' foi desenvolvido em [[Roma]] por um monge [[Citas|cita]], [[Dion\xedsio, o Ex\xedguo]], em [[527]], como resultado secund\xe1rio do seu trabalho no c\xe1lculo da data da [[P\xe1scoa]] crist\xe3. Cronistas bizantinos, como [[Te\xf3fano, o Confessor]], mantinham, entretanto, crit\xe9rios judaico-crist\xe3os para as datas referidas nas suas cr\xf3nicas universais, como a data\xe7\xe3o a partir da suposta data da cria\xe7\xe3o do mundo por gra\xe7a divina, de acordo com c\xe1lculos efetuados por estudiosos crist\xe3os nos primeiros cinco s\xe9culos da Era Crist\xe3. Tais eras, por vezes designadas como \'\'[[Anno Mundi]]\'\', "ano do Mundo" (de forma abreviada, AM), pelos acad\xeamicos atuais, nem sempre concordavam umas com as outras, existindo grandes discrep\xe2ncias. Nenhuma era de \'\'Anno Mundi\'\' dominava entre os v\xe1rios estudiosos, ainda que a calculada por [[Eus\xe9bio de Cesareia]], historiador na \xe9poca de [[Constantino I]]. [[Jer\xf3nimo de Str\xeddon|S\xe3o Jer\xf3nimo]], tradutor da [[B\xedblia]] para o latim, foi um dos principais divulgadores no ocidente da era AM calculada por Eus\xe9bio. Outra era AM, especialmente adoptada no Oriente durante os primeiros s\xe9culos do Imp\xe9rio Bizantino foi desenvolvida pelo monge [[Anninus de Alexandria]].\n\n=== Sobre a data do nascimento de Jesus ===\nOs c\xe1lculos feitos pelo monge [[Dion\xedsio, o Ex\xedguo]], para datar o nascimento de [[Jesus Cristo]] s\xe3o, em geral, considerados incorretos pela maioria dos acad\xeamicos b\xedblicos, julgando-se que teria ocorrido entre [[8 a.C.]] e [[4 a.C.]]. Sabe-se que Jesus ter\xe1 nascido antes da morte de [[Herodes I o Grande|Herodes, o Grande]], no ano 4 a.C. - ano este que \xe9 determinado pelas informa\xe7\xf5es dadas por [[Fl\xe1vio Josefo]] quanto aos eclipses lunares ocorridos na P\xe1scoa e aos acontecimentos que acompanharam a sua morte, tal como foi calculado por [[Johannes Kepler|Kepler]].\n\n=== Populariza\xe7\xe3o do Anno Domini ===\nO primeiro historiador ou cronista a usar o Anno Domini como mecanismo de data\xe7\xe3o principal foi [[Victor de Tonnenna]], escritor [[\xc1frica|africano]] do [[s\xe9culo VII]]. Poucas gera\xe7\xf5es depois, o [[historiador]] [[Anglo-sax\xf5es|anglo-sax\xe3o]] [[Beda]], que conhecia bem o trabalho de Dion\xedsio, voltou a usar o \'\'Anno Domini\'\' na sua \'\'Historia eclesiastica gentis Anglorum,\'\' ("Hist\xf3ria eclesi\xe1stica do povo ingl\xeas) terminada em [[731]]. Foi nesta obra que se usou pela primeira vez o equivalente, em latim, de "antes de Cristo" (\'\'Ante Christum\'\' - A.C.), estabelecendo o padr\xe3o da n\xe3o exist\xeancia de ano zero - ainda que tenha usado o zero no seu computus, ou determina\xe7\xe3o da [[P\xe1scoa]] crist\xe3. Tanto Dion\xedsio como [[Beda]] dataram o Anno Domini como sendo o momento da [[encarna\xe7\xe3o (religi\xe3o)|encarna\xe7\xe3o]] ou concep\xe7\xe3o de Jesus Cristo por Gra\xe7a do [[Esp\xedrito Santo]] e n\xe3o no seu nascimento, aproximadamente nove meses depois.\n[[Ficheiro:D\xfcrer karl der grosse.jpg|thumb|250 px|Carlos Magno]]\nA implanta\xe7\xe3o do novo sistema foi gradual, primeiro em It\xe1lia e depois no resto do mundo crist\xe3o. A regi\xe3o de Inglaterra foi uma das primeiras a adotar o \'\'Anno Domini\'\', gra\xe7as \xe0 influ\xeancia dos mission\xe1rios romanos, como se pode verificar em documentos do [[s\xe9culo VII]]. No continente Europeu, o \'\'Anno Domini\'\' foi a era de elei\xe7\xe3o de [[Alcu\xedno de Iorque]], durante a [[Renascen\xe7a Carol\xedngia]]. A ado\xe7\xe3o do novo sistema de data\xe7\xe3o por [[Carlos Magno]] e pelos seus [[Lista de reis merov\xedngios|sucessores]] est\xe1 na origem do sucesso do mesmo nos s\xe9culos seguintes, at\xe9 a \xe9poca atual. Na G\xe1lia, o sistema s\xf3 tornou-se vulgar a partir do ano 1000, o que justifica que os franceses usassem o termo \'\'mill\xe9sime\'\' para designar os anos da era Crist\xe3. \n\nFora do [[Imp\xe9rio Carol\xedngio]], a [[Hisp\xe2nia]] continuava a seguir a [[Era Hisp\xe2nica]] (ou "dos C\xe9sares"), que se iniciara em [[38 a.C.]], at\xe9 bem tarde na [[Idade M\xe9dia]]. A [[Era dos M\xe1rtires]], que numerava os anos a partir da ascens\xe3o ao trono de [[Diocleciano]], em [[284]], e que marcava o in\xedcio da \xfaltima e mais severa persegui\xe7\xe3o aos crist\xe3os manteve-se no Oriente, sendo ainda atualmente utilizada pelos crist\xe3os [[coptas]], bem como, durante muito tempo, pela [[Igreja Ortodoxa Et\xedope]]. Outro sistema recorria \xe0 data\xe7\xe3o a partir da data da crucifica\xe7\xe3o de Jesus Cristo, que [[Antipapa Hip\xf3lito|Hip\xf3lito]], [[Lact\xe2ncio]], [[Agostinho de Hipona|Agostinho]] e [[Tertuliano]] situavam em [[29 d.C.]], durante o consulado dos G\xeameos (\'\'L. Rubellius Geminus\'\' e \'\'C. Fufius Geminus\'\').\n\nAinda que o \'\'Anno Domini\'\' j\xe1 fosse comum no [[s\xe9culo IX]], a designa\xe7\xe3o "antes de Cristo", ou outra equivalente s\xf3 se tornou vulgar a partir do final do [[s\xe9culo XV]].\n\n== {{Ver tamb\xe9m}} ==\n* [[Era geol\xf3gica]]\n\n{{refer\xeancias}}\n\n== Bibliografia ==\n* [http://www.mar.mil.br/dhn/bhm/publicacao/download/cap19.pdf \'\'Medida do Tempo\'\' (em Pdf)] in "\'\'Base de Hidrografia da Marinha de Niter\xf3i\'\'" - acesso a 25 de Abril de 2006\n* CUNNINGHAM, Philip A.; STARR, Arthur F.; \'\'Sharing Shalom: A Process for Local Interfaith Dialogue Between Christians and Jews\'\', Paulist Press, 1998\n* DECLERCQ, Georges; \'\'Anno Domini: The origins of the Christian era.\'\', Turnhout: Brepols, 2000\n* \u2014\u2014\u2014. \'\'Dionysius Exiguus and the Introduction of the Christian Era\'\'. Sacris Erudiri 41; 2002 pp.165\u2013246.\n* \'\'[http://www.newadvent.org/cathen/03738a.htm General Chronology]\'\' \'\'in\'\' Catholic Encyclopedia (em ingl\xeas) \u2013 acesso a 4 de Maio de 2006\n* RIGGS, John. \'\'[http://www.ucc.org/ucnews/jan03/asiseeit.htm Whatever happened to B.C. and A.D., and why?]\'\' - acesso a 4 de Maio de 2006\n* SILVA, Isidoro R. da; \'\'A. D.\'\', \'\'in\'\' "Enciclop\xe9dia Verbo Luso-Brasileira da Cultura, Edi\xe7\xe3o S\xe9culo XXI", Volume I, Editorial Verbo, Braga, Janeiro de 1998\n\n[[Categoria:Efem\xe9rides]]\n[[Categoria:Cronologia]]\n[[Categoria:Calend\xe1rios]]\n\n[[als:Christliche Zeitrechnung]]\n[[ar:\u0623\u0646\u0648 \u062f\u0648\u0645\u064a\u0646\u064a]]\n[[az:Miladi tarix]]\n[[bg:\u0421\u043b\u0435\u0434 \u0425\u0440\u0438\u0441\u0442\u0430]]\n[[ca:Anno Domini]]\n[[cs:Anno Domini]]\n[[cy:Oed Crist]]\n[[da:Anno Domini]]\n[[de:Anno Domini]]\n[[el:\u039c.\u03a7.]]\n[[en:Anno Domini]]\n[[eo:A. D.]]\n[[es:Anno Domini]]\n[[et:PKr]]\n[[eu:Anno Domini]]\n[[fa:\u067e\u0633 \u0627\u0632 \u0645\u06cc\u0644\u0627\u062f]]\n[[fi:J\xe4lkeen Kristuksen]]\n[[fr:Anno Domini]]\n[[ga:Anno Domini]]\n[[gd:AC]]\n[[he:\u05e1\u05e4\u05d9\u05e8\u05ea \u05d4\u05e0\u05d5\u05e6\u05e8\u05d9\u05dd]]\n[[hi:\u0908\u0938\u0935\u0940]]\n[[hy:\u0554\u0580\u056b\u057d\u057f\u0578\u057d\u056b\u0581 \u0570\u0565\u057f\u0578]]\n[[id:Anno Domini]]\n[[is:Anno Domini]]\n[[it:Anno Domini]]\n[[ja:\u897f\u66a6]]\n[[ko:\uc11c\ub825 \uae30\uc6d0]]\n[[ku:Pi\u015ft\xee zay\xeen\xea]]\n[[la:Anno Domini]]\n[[mk:\u041d\u0430\u0448\u0430 \u0435\u0440\u0430]]\n[[ml:\u0d15\u0d4d\u0d30\u0d3f\u0d38\u0d4d\u0d24\u0d4d\u0d35\u0d2c\u0d4d\u0d26\u0d02]]\n[[ms:Tahun Masihi]]\n[[mt:WK]]\n[[my:\u1021\u1031\u1012\u102e]]\n[[nl:Anno Domini]]\n[[nn:Kristi f\xf8dsel]]\n[[no:Kristi f\xf8dsel]]\n[[pl:Naszej ery]]\n[[ro:E.n.]]\n[[ru:\u041e\u0442 \u0420\u043e\u0436\u0434\u0435\u0441\u0442\u0432\u0430 \u0425\u0440\u0438\u0441\u0442\u043e\u0432\u0430]]\n[[sco:AD]]\n[[sh:Anno Domini]]\n[[simple:Anno Domini]]\n[[sl:Anno Domini]]\n[[sv:Efter Kristus]]\n[[sw:Baada ya Kristo]]\n[[ta:\u0b85\u0ba9\u0bcb \u0b9f\u0bca\u0bae\u0bbf\u0ba9\u0bbf]]\n[[th:\u0e04\u0e23\u0e34\u0e2a\u0e15\u0e4c\u0e28\u0e31\u0e01\u0e23\u0e32\u0e0a]]\n[[tr:Anno Domini]]\n[[uk:Anno Domini]]\n[[vi:C\xf4ng Nguy\xean]]\n[[zh:\u897f\u5143]]\n[[zh-yue:\u516c\u5143]]']
[u'page/revision/text/xml:space', u'preserve']
[u'page/revision/contributor/username', u'Mcapdevila']
[u'page/revision/contributor/id', u'611229']
Chaque chemin page/revision/format correspond à une section :
<root>
    <page>
        <revision format="text/x-wiki">
        </revision>
    </page>
</root>
Chaque chemin page/revision/text/_ correspond à une section :
<root>
    <page>
        <text>
          {{T\xedtulo em it\xe1lico}}
          [[Ficheiro:Scriptorium.jpg|thumb|...
          ...
        </text>
    </page>
</root>

L'instruction parser.parse(f) retourne un itérateur sur les objets XML que contient le fichier. Le fichier n'est pas entièrement chargé en mémoire et le programme lit les lignes une par une jusqu'à ce qu'il ait atteint la balise qui indique la fin d'un objet.


<--

Xavier Dupré