[XML Records] HTML inside a node

Forge Component
(44)
Published on 2019-11-25 by Afonso Carvalho
44 votes
Published on 2019-11-25 by Afonso Carvalho

Hi, i'm using XML Records to read a file that contains html tags inside the <description> node, but when the XMLToRecordsList action processes the file it removes the tags and the content, outputting only the text i would like to keep the <img> tags in order to display them, amongst the configurations the action has any of them enables me to do this?


Best Regards,

Fábio Santos

Hi Fábio,

Not sure I follow - you have raw HTML inside an XML node, and it's not being returned? In order to avoid escaping and tag issues, HTML within an XML file should be represented as base64, or be contained within a CDATA element. Is this your case?

Could you share a sample XML/test module to look over?

Afonso Carvalho wrote:

Hi Fábio,

Not sure I follow - you have raw HTML inside an XML node, and it's not being returned? In order to avoid escaping and tag issues, HTML within an XML file should be represented as base64, or be contained within a CDATA element. Is this your case?

Could you share a sample XML/test module to look over?

Hi Afonso, exactly i can't change the source of the XML and it the HTML is not contained on a CDATA element. Below there is a snippet of the description i am trying to get the image from: 

<description>
<p class="sapomedia images"><a class="blog-img-link" title="Comunicações Unificadas: elevar a capacidade de comunicar e de colaborar a um outro nível" href="https://blog.ptempresas.pt/comunicacoes-unificadas-elevar-a-96887" rel="noopener"><img class="" style="width: 900px; padding: 10px 10px;" title="Comunicações Unificadas: elevar a capacidade de comunicar e de colaborar a um outro nível" src="https://c026204.cdn.sapo.io/1/c026204/cld-thumb/1426522730/6d77c9965e17b15/0634d90d42d0ab4a5a22aafd80eea1fe/Altoce-empresas/2020/iStock-962094446.jpg?size=xl" alt="Comunicações Unificadas: elevar a capacidade de comunicar e de colaborar a um outro nível" width="900" height="600" /></a></p> <p>O universo das comunicações transformou-se significativamente, com a disseminação e democratização das tecnologias digitais e a evolução das redes. À medida que o “cenário” mudou, também mudaram as necessidades e as expetativas das empresas, colaboradores e clientes. Os sistemas de Unified Communications podem ser a resposta.</p> <p> </p> <a name="cutid1"></a><div class="ljcut" text="Saiba mais..."> <p>Qualquer organização, independentemente da sua dimensão, precisa de comunicar de forma eficaz, garantindo o contacto, internamente, com as suas equipas, mas também externamente, com os seus fornecedores e com os seus clientes a partir de qualquer local e, praticamente, a qualquer hora.</p> <p> </p> <p>As Comunicações Unificadas são uma excelente resposta a estas novas necessidades, combinando e maximizando todos os canais de comunicação corporativa de forma centralizada e coesa.</p> <p> </p> <p>Desta forma, os colaboradores das empresas podem utilizar os diversos canais - voz, vídeo, SMS, mensagens instantâneas, correio eletrónico e internet, entre outros, recorrendo a diferentes equipamentos, desde o computador ao smartphone e tablet, e mantendo sempre um ponto único de contacto.</p> <p> </p> <p>O recurso a sistemas de Comunicações Unificadas poderá ajudar a evitar falhas de comunicação muitas vezes prejudiciais para o negócio e contribuir, desta forma, para o desenvolvimento de empresas de todas as dimensões. Mas há várias outras vantagens normalmente apontadas às Comunicações Unificadas.</p> <p> </p> <h3>Custos reduzidos, produtividade aumentada</h3> <p>As empresas podem poupar de diversas formas se investirem numa plataforma de Comunicações Unificadas.</p> <p> </p> <p>Para além da comunicação a custo zero dentro da rede da empresa e dos custos reduzidos nas comunicações entre equipamentos fixos e móveis, o recurso a soluções de conferência em alternativa às reuniões presenciais, seja com conferência web ou através da internet, traz grandes vantagens às empresas, contribuindo para reduzir o tempo e o custo de deslocações desnecessárias, ao mesmo tempo que aumenta a agilidade da empresa.</p> <p> </p> <p>Sendo uma plataforma integrada, também implica menos despesas na instalação de aplicações singulares, manutenção de sistemas e custos de monitorização.</p> <p> </p> <p>Ao reunir todas as formas de comunicação numa única plataforma, os ganhos de produtividade e eficiência também são notórios, uma vez que as equipas, que são cada vez mais móveis, podem colaborar em mobilidade, partilhando informação e documentos de forma fácil e em tempo real, a partir de qualquer lugar.</p> <p> </p> <p>Usar uma plataforma única de comunicações também permite melhorar a satisfação do cliente, sendo possível saber, a qualquer instantante, que colaboradores estão disponíveis para atender uma chamada, num determinado momento. Os tempos de resposta também serão menores, já que os colaboradores têm acesso a um sistema integrado e constantemente atualizado para obter a informação pretendida.</p> <p> </p> <p>A segurança é outra das vantagens indiscutíveis da aposta num sistema de Comunicações Unificadas com a possibilidade de configuração das soluções para a realização de backups e arquivo de dados e com a garantia de que as informações confidenciais só são vistas pelos seus reais destinatários.</p> <p> </p> <h3>Comunicação e colaboração ainda mais integradas no futuro</h3> <p>As Comunicações Unificadas estão em constante evolução, por forma a acompanharem as exigências de comunicação e de colaboração das empresas. Uma das grandes tendências do setor aponta para uma cada vez maior migração destas aplicações para a nuvem, com as grandes organizações a apostarem na hospedagem de serviços mais customizados e as empresas de menor dimensão a preferirem a flexibilidade e o menor custo das Comunicações Unificadas como um serviço.</p> <p> </p> <p>O foco na colaboração em equipa também deverá aumentar. Espera-se uma maior preocupação não apenas com a adoção, mas também com a integração de fluxos de trabalho e ferramentas externas nas aplicações de colaboração em equipa.</p> <p> </p> <p>E se até agora se falava muito da “customer experience” como uma das forças motrizes das Comunicações Unificadas, no futuro vai falar-se cada vez mais de “employee experience”, à medida que cada vez mais empresas adotarem este tipo de plataformas e os colaboradores as considerarem essenciais no local de trabalho.</p> <p> </p> <p>O futuro é cada vez mais remoto, com funcionários a trabalharem em casa, filiais, cidades e fusos horários diferentes. Consequentemente, as Comunicações Unificadas e as tecnologias de colaboração têm de oferecer aos utilizadores uma experiência contínua, que lhes permita tornar mais eficiente o seu trabalho. É aqui que a Inteligência Artificial (IA) “entra” como outra das grandes tendências nesta área.</p> <p> </p> <p>A integração da IA com os sistemas de Comunicações Unificadas vai permitir uma colaboração centrada nas pessoas e mais uniforme, automatizando determinados fluxos de trabalho, nomeadamente permitindo alternar entre canais de comunicação sem que isso seja percetível para os utilizadores.</p> <p> </p> <p>Espera-se também uma evolução ainda maior na utilização do vídeo, que servirá para mais do que apenas fazer videoconferências. Se o streaming de vídeo está a dois cliques de distância de qualquer consumidor, porque não estar também à mesma distância para uma equipa de trabalho? Desta forma, um colaborador poderá criar e partilhar instantaneamente vídeos ou até fazer vídeos em direto, em substituição de outras formas de comunicação, seja à equipa ou a clientes.</p> <p> </p> <h3>Escolha a melhor solução</h3> <p>Atualmente, estão disponíveis diversas soluções de comunicação, cada vez mais abrangentes e flexíveis para dar resposta às diferentes necessidades das empresas.</p> <p> </p> <p>Nesta área, a Altice Empresas, marca para o segmento empresarial da Altice Portugal, tem uma oferta alargada de soluções de Comunicações Unificadas, integradas ou à medida, desde uma central telefónica virtual que permite juntar fixo, móvel e cloud, a uma solução que permite a integração total de comunicações de voz e de dados fixos e móveis, com a possibilidade de adicionar vídeo, mensagens instantâneas e ferramentas de colaboração.</p> <p> </p> <p>Destaque também para a solução de contact center, que permite agregar diferentes meios de comunicação por todos os canais da empresa, através de uma única plataforma de gestão integrada.</p> <section class="relacionados"> <div class="container"> <h3>Artigos Relacionados</h3> <ul class="coluna-row"> <li> <figure><a href="https://blog.ptempresas.pt/comunicacoes-unificadas-quando-a-soma-22943?blog=unificadas" target="_blank" rel="noopener"><img src="https://c026204.cdn.sapo.io/1/c026204/cld-thumb/1426522730/6d77c9965e17b15/0634d90d42d0ab4a5a22aafd80eea1fe/pt-empresas/2016/comunicacoes_unificadas.jpg?size=xl" alt="" /></a></figure> <h4>Comunicações Unificadas: Quando a soma dos serviços se traduz em mais eficiência</h4> <p>As empresas procuram constantemente formas de otimizar processos de negócio e aumentar a colaboração entre equipas e colaboradores, cada vez mais móveis, o que está a dinamizar a procura por soluções de comunicação unificadas. Os efeitos passam também pela redução de custos.<a class="btn-link" href="https://blog.ptempresas.pt/comunicacoes-unificadas-quando-a-soma-22943?blog=unificadas" target="_blank" rel="noopener">Saiba mais</a></p> </li> <li> <figure><a href="https://blog.ptempresas.pt/trabalhar-a-distancia-mitos-e-realidade-42635?blog=unificadas" target="_blank" rel="noopener"><img src="https://c026204.cdn.sapo.io/1/c026204/cld-thumb/1426522730/6d77c9965e17b15/0634d90d42d0ab4a5a22aafd80eea1fe/pt-empresas/2017/iStock-500228118.jpg.jpeg?size=xl" alt="" /></a></figure> <h4>Trabalhar à distância, mitos e realidade</h4> <p>O melhor colaborador pode estar no norte ou no sul, no interior ou no litoral, não precisa de estar num raio aceitável para as deslocações diárias.<a class="btn-link" href="https://blog.ptempresas.pt/trabalhar-a-distancia-mitos-e-realidade-42635?blog=unificadas" target="_blank" rel="noopener">Saiba mais</a></p> </li> <li> <figure><a href="https://blog.ptempresas.pt/clientes-procuram-bem-estar-e-91044?blog=unificadas" target="_blank" rel="noopener"><img src="https://c026204.cdn.sapo.io/1/c026204/cld-thumb/1426522730/6d77c9965e17b15/0634d90d42d0ab4a5a22aafd80eea1fe/pt-empresas/2018/wp-cloud-first.jpg?size=xl" alt="" /></a></figure> <h4>White Paper: Acelere a transformação com uma estratégia Cloud First</h4> <p>Veja as opções e a forma como pode preparar-se para esta mudança.<a class="btn-link" href="https://blog.ptempresas.pt/clientes-procuram-bem-estar-e-91044?blog=unificadas" target="_blank" rel="noopener">Saiba mais</a></p> </li> </ul> </div> </section> <section class="relacionados fundo"> <div class="container"> <h3>Soluções Recomendadas</h3> <ul class="coluna-row"> <li> <figure><a href="https://www.ptempresas.pt/solucoes/comunicacoes#unificadas?blog=unificadas" target="_blank" rel="noopener"><img src="https://www.ptempresas.pt/PublishingImages/Empresas/Header/globalconnect-custom-fusao-montra.jpg" alt="Comunicações Unificadas" /></a></figure> <h4>COMUNICAÇÕES UNIFICADAS</h4> <p>Integração das funcionalidades de central telefónica virtual com os equipamentos da organização.<a class="btn-link" href="https://www.ptempresas.pt/solucoes/comunicacoes#unificadas?blog=unificadas" target="_blank" rel="noopener">Saiba mais</a></p> </li> <li> <figure><a href="https://www.ptempresas.pt/pacotes/globalconnect-pack?blog=unificadas" target="_blank" rel="noopener"><img src="https://www.ptempresas.pt/PublishingImages/Empresas/Header/globalconnect-pack-montra.jpg" alt="GlobalConnect Pack" /></a></figure> <h4>GLOBALCONNECT PACK</h4> <p>Solução única de comunicações que intrega fixo, móvel e cloud, com controlo de custos.<a class="btn-link" href="https://www.ptempresas.pt/pacotes/globalconnect-pack?blog=unificadas" target="_blank" rel="noopener">Saiba mais</a></p> </li> <li> <figure><a href="https://www.ptempresas.pt/solucoes/comunicacoes/unificadas/globalconnect-hcs?blog=unificadas" target="_blank" rel="noopener"><img src="https://www.ptempresas.pt/PublishingImages/Empresas/Header/globalconnect-hcs-montra.jpg" alt="GlobalConnect HCS" /></a></figure> <h4>GLOBALCONNECT HCS</h4> <p>Solução avançada de voz e dados fixos e móveis.<a class="btn-link" href="https://www.ptempresas.pt/solucoes/comunicacoes/unificadas/globalconnect-hcs?blog=unificadas" target="_blank" rel="noopener">Saiba mais</a></p> </li> </ul> </div> </section> </div>
</description>

Best Regards,

Fábio Santos




Solution

The issue with that XML is that there's no way to tell what belongs to the structure and what belongs to the content: both <description> and <p> are valid tags, we just consider what's inside <description> to be content in an arbitrary way.

I think there's two ways to work around this:

 - you model the HTML structure as XML tags until you reach the image you're looking for. This is tough, depending on where exactly the image is and often this HTML is going to change - if it changes, your XML structure will break until you correct it with the HTML changes. As practice, treating HTML as XML is a bad idea;

 - you pre-process the XML, find the <description> tag, and before feeding it to the XMLToRecordsList, wrap the content with a CDATA element. This would be the more solid option and less fit to break in the future.

When you say that you can't change the source of the XML, you should still be able to edit it before processing it - this way you should be able to obtain the HTML you need without further issues.

Solution

I didn't actually know you needed to nest the HTML in a CDATA element but yes the format of the XML brought alot of problems even using regex, i will try to follow the 2nd approach and if it works i will mark it as solution.

Thanks for the help!


Best Regards,

Fábio Santos

No problem Fábio - let us know if you have any issues!