private void explorarEnlaceComplejo(XmlElement xmlElement, IXLinkExtendedLink enlaceExtendido) { foreach (XmlElement elementoHijo in xmlElement.ChildNodes) { XmlAttributeCollection atributos = elementoHijo.Attributes; string tipoElemento = getValueAtributo(atributos, "type").ToLower(); if (tipoElemento.Equals("locator")) { //se trata de un localizador IXLinkLocatorLink localizador = new XLinkLocatorLink(elementoHijo); localizador.Etiqueta = getValueAtributo(atributos, "label"); localizador.Recurso = getValueAtributo(atributos, "href"); localizador.Rol = getValueAtributo(atributos, "role"); localizador.Titulo = getValueAtributo(atributos, "title"); enlaceExtendido.Localizadores.Add(localizador); } else if (tipoElemento.Equals("arc")) { //se trata de un arco IXLinkArco arco = new XLinkArco(elementoHijo); arco.Actuar = getValueAtributo(atributos, "actuate"); arco.Titulo = getValueAtributo(atributos, "title"); arco.Mostrar = getValueAtributo(atributos, "show"); arco.RolArco = getValueAtributo(atributos, "arcrole"); arco.Desde = getValueAtributo(atributos, "from"); arco.Hacia = getValueAtributo(atributos, "to"); enlaceExtendido.Arcos.Add(arco); } else if (tipoElemento.Equals("resource")) { IXLinkResourceLink recurso = new XLinkResourceLink(elementoHijo); recurso.Etiqueta = getValueAtributo(atributos, "label"); recurso.Rol = getValueAtributo(atributos, "role"); recurso.Titulo = getValueAtributo(atributos, "title"); enlaceExtendido.Recursos.Add(recurso); } } }