public static void ClearCurrent() { current = null; }
private void gen_p_date_type(EADGeneratorRule.Processinfo_Date the_Processinfo_Date) { xw.WriteStartElement("p"); bool author = false; // Autor e/ou operador: if (!the_Processinfo_Date.autoridade.Equals(string.Empty)) { xw.WriteString("Autor: " + the_Processinfo_Date.autoridade + " "); author = true; } if (!the_Processinfo_Date.operador.Equals(string.Empty)) xw.WriteString((author ? "; " : "") + "Operador: " + the_Processinfo_Date.operador); if (!the_Processinfo_Date.data_descricao.Equals(string.Empty)) { // <date> xw.WriteStartElement("date"); xw.WriteAttributeString("type", "descrição"); xw.WriteString(the_Processinfo_Date.data_descricao); // </date>: xw.WriteEndElement(); } if (!the_Processinfo_Date.data_registo.Equals(string.Empty)) { // <date> xw.WriteStartElement("date"); xw.WriteAttributeString("type", "registo"); xw.WriteString(the_Processinfo_Date.data_registo); // </date>: xw.WriteEndElement(); } // </p> xw.WriteEndElement(); }
/* * <!ELEMENT c * (head?, did, (%m.desc.full;)*, (thead?, c+)*) * * May contain: * * USADOS: * did; * acqinfo; * custodhist; * scopecontent; * appraisal; * accruals; * arrangement; * * accessrestrict; * userestrict; * otherfindaid; * phystech; * * originalsloc; * altformavail; * relatedmaterial; * bibliography; * * note; * processinfo; * * NAO USADOS: * * , , , , , , * , bioghist, c, controlaccess, , dao, daogrp, descgrp, , * dsc, fileplan, head, index, , odd, , , , * prefercite, , , , separatedmaterial, * thead, */ private void gen_C(long IDNivel_PAI, EADGeneratorRule.NiveisDescendentes NivelActual) { // Pirotecnia: DoAddedEntries(1); //DoRemovedEntries(1); // Gerar o <c> somente se estivermos perante um nivel de tipo 3 (DOCUMENTAL): //if (NivelActual.TipoNivel == 3) { // <c> xw.WriteStartElement("c"); // Attrib. 'level' gen_attrib_LEVEL(IDNivel_PAI, NivelActual.IDNivel); // <did> gen_DID(NivelActual.IDNivel); // <acqinfo> & <custodhist>: gen_acqinfo_custodhist(NivelActual.IDNivel); // <bioghist>: gen_bioghist(NivelActual.IDNivel); // <scopecontent> gen_scopecontent_index(NivelActual.IDNivel); // <appraisal> gen_appraisal(NivelActual.IDNivel); // <accruals> gen_accruals(NivelActual.IDNivel); // <arrangement> gen_arrangement(NivelActual.IDNivel); // <accessrestrict>, <userestrict>, <otherfindaid> gen_accessrestrict_userestrict_otherfindaid(NivelActual.IDNivel); // <phystech> gen_phystech(NivelActual.IDNivel); // <originalsloc>, <altformavail>, <relatedmaterial>, <bibliography> gen_DocumentacaoAssociada(NivelActual.IDNivel); // <note> gen_note(NivelActual.IDNivel); // <processinfo> gen_processinfo(NivelActual.IDNivel); // Procurar os niveis descendentes deste e gerar o elemento <c> recursivamente: //List<EADGeneratorRule.NiveisDescendentes> NiveisDescs = EADGeneratorRule.Current.get_NiveisDescendentes(NivelActual.IDNivel, this.conn); List<EADGeneratorRule.NiveisDescendentes> NiveisDescs = this.tree_todos_descendentes.get_NiveisDescendentes(NivelActual.IDNivel); foreach (EADGeneratorRule.NiveisDescendentes newNivel in NiveisDescs) { if (this.explorados.Add(newNivel)) gen_C(NivelActual.IDNivel, newNivel); else { gen_reference(NivelActual.IDNivel, newNivel.IDNivel); Trace.WriteLine("EAD::gen_C() (dentro de um nivel DOCUMENTAL): o IDNivel " + newNivel.IDNivel + " ja foi explorado"); } } // </c> xw.WriteEndElement(); //} //else { // // Procurar os niveis descendentes deste e gerar o elemento <c> recursivamente: // List<EADGeneratorRule.NiveisDescendentes> NiveisDescs = EADGeneratorRule.Current.get_NiveisDescendentes(NivelActual.IDNivel, this.conn); // foreach (EADGeneratorRule.NiveisDescendentes newNivel in NiveisDescs) { // if (this.explorados.Add(newNivel)) // gen_C(newNivel); // else { // Trace.WriteLine("EAD::gen_C() (NAO DOCUMENTAL): o IDNivel " + newNivel.IDNivel + " ja foi explorado"); // } // } //} }