INFORMÁTICA Prova de Agente Fiscal de Rendas do ICMS-SP/2013 - FCC. Por Ana Lucia Castilho* Instruções: Para responder às questões de números 71 e 72, considere o texto a seguir: A equipe de TI da empresa A necessita de um módulo de software que pesquise a situação fiscal de seus clientes. Como a entrega do projeto está atrasada, decidiu-se utilizar um web service de uma empresa B. Para saber se o serviço atende às necessidades da empresa, a equipe de TI fez uma busca em um serviço de diretório no qual a empresa B publicou a descrição. Nessa descrição foram disponibilizadas informações como, por exemplo, as funções que o serviço possui, as informações de entrada necessárias para que o serviço possa ser executado e os tipos de resultados que o serviço disponibiliza. Para publicar essas informações, a empresa B utilizou uma linguagem baseada no padrão XML. Após buscar no serviço de diretório e constatar que o serviço atendia às necessidades da empresa, a equipe de TI contratou o serviço. Desenvolveu-se, então, um módulo de software que troca mensagens entre a aplicação e o web service utilizando o protocolo SOAP, baseado em XML. As mensagens são transmitidas utilizando-se o protocolo HTTP em conjunto com outros padrões web. 71. O serviço de diretório citado no texto e a linguagem utilizada para publicar a descrição do serviço são, respectivamente, a) UDDI e XSL. b) EDI e BPEL. c) WS-RPC e XSLT. d) EDI e WS-Inspection. e) UDDI e WSDL. BPEL (Business Process Execution Language): é uma linguagem utilizada para definição e execução de um processo de negócio através da orquestração de web services. Permite a realização de SOA através de uma abordagem top-down para composição, orquestração e coordenação de web services de forma simplificada. BPEL é a junção de duas linguagens de workflow Web Services Flow Language (WSFL) e XLANG. WSFL é uma linguagem da IBM para a descrição de composição de web services. XLANG é uma linguagem da Microsoft para especificação de troca de mensagens entre web services, oferecendo uma forma para orquestrar aplicações.
EDI (Electronic Data Interchange): significa troca estruturada de dados através de uma rede de dados qualquer. UDDI (Universal Description, Discovery and Integration): Diretório de informações que cataloga informação sobre organizações e os seus web services. Serviço UDDI: WSDL e SOAP. WSDL (Web Services Description Language): Documento XML usado para descrever e localizar web services. XML (Extensible Markup Language): é uma linguagem informática com grande flexibilidade geralmente usada na construção de páginas Web. Essa linguagem foi criada pelo W3C (World Wide Consortium) com o objetivo de superar algumas limitações do HTML, principalmente no que diz respeito ao comércio eletrônico. Tem como base a linguagem SGML (Standard Generalized Markup Language), mantidas as funcionalidades mais úteis na criação de páginas Web e removidas as opções de maior complexidade. Uma das principais características do XML é o fato de permitir que várias outras aplicações de software consigam interpretar o significado e o contexto do seu conteúdo. Por outro lado, ao contrário do HTML, o XML permite que as suas tags possam ser definidas pelos web designers e programadores. Além disso, o XML faz recurso de folhas de estilo (stylesheets) que definem o aspecto do documento, permitindo assim que este possa ser definido em vários aspectos. XSL (Extensible Stylesheet Language): é uma linguagem de formatação XML de dados de saída para: tela, papel ou outros meios de comunicação. O XSL começou como uma XML, mas é mais do que uma linguagem de folhas de estilo simplesmente com os seus três componentes. XSLT (Extensible Stylesheet Language Transformations): é a linguagem de transformação que permite, por exemplo, definir uma transformação de XML para algum outro formato. Ou seja, você pode usar XSLT para produzir HTML ou para um XML estrutura. Você pode até mesmo usá-lo para produzir um texto simples ou para colocar a informação em algum formato de documento. Web services: quando a Internet começou a se popularizar, por volta do meio dos anos 90, as tecnologias presentes permitiam a você se conectar a um site e baixar o seu conteúdo. O HTML (Hiper Text Markup Language) era a linguagem de fato que permitia a apresentação da informação presente na rede. Nos últimos anos, porém, novas tecnologias e frameworks de desenvolvimento estão surgindo, permitindo uma maior integração entre os diversos aplicativos e serviços disponíveis na internet. Esse novo modelo em crescimento deve tratar tarefas complexas, como o gerenciamento de transações, por meio da disponibilização de serviços distribuídos que utilizem interfaces de acesso simples e bem definidas. Esses serviços ou aplicativos distribuídos são conhecidos como Web Services.
Os Web Services são baseados em quatro protocolos-padrão, usados pelos principais fabricantes de tecnologias: XML, SOAP, UDDI e WSDL. O XML, um primo avançado do HTML, é um método para descrever dados. O SOAP é simplesmente um protocolo que define como determinada aplicação fala com os SW para realizar uma tarefa. O UDDI funciona como páginas amarelas dos SW, dizendo o quê e onde está disponível. Finalmente, WSDL é a linguagem que permite descrever esses serviços. Para ilustrar a utilização de Web Services em uma situação real, imaginemos um site de vendas pela Internet, que precisa validar o crédito do comprador antes de proceder com a venda. O sistema, então, acessa um serviço (Web Service) que cuida de todos os passos necessários à verificação de crédito: checa o histórico das compras efetuadas pelo consumidor na empresa, a situação de crédito do consumidor no sistema público etc. O Web Service obtém esses dados e retorna a situação de crédito deste consumidor para o site. Esse é apenas um exemplo, entre tantos, de utilização de Web Services. Gabarito: E 72. Segundo o texto, a troca de mensagens entre a aplicação e o web service utiliza o protocolo SOAP. Uma mensagem SOAP é um documento XML que pode conter diversos elementos. Sobre esses elementos, é correto afirmar que a) o elemento SOAP é o elemento raiz de uma mensagem, e define que o documento XML é uma mensagem SOAP. b) um elemento Fault não pode aparecer mais que uma vez em uma mensagem SOAP. c) se um elemento Fault está presente na mensagem, ele deve aparecer como um elemento filho do elemento Header. d) se o elemento Header estiver presente na mensagem SOAP, ele deve ser o primeiro elemento filho do elemento SOAP. e) o elemento Fault é obrigatório e é usado para recuperar mensagens de erro e informações de status resultantes do envio da mensagem. SOAP (Simple Object Access Protocol ou Protocolo Simples de Acesso a Objetos): é um protocolo para troca de informações estruturadas em uma plataforma descentralizada e distribuída. Ele se baseia na XML para seu formato de mensagem e, normalmente, em outros protocolos da camada de aplicação, mais notavelmente em Chamada de Procedimento Remoto (RPC) e Protocolo de Transferência de Hipertexto (HTTP), para negociação e transmissão de mensagens. SOAP pode formar a camada-base de uma pilha de protocolos de web services, fornecendo um framework de mensagens básico sob o qual os serviços web podem ser construídos. Esse protocolo baseado em XML consiste em três partes: um envelope, que define o que está na mensagem e como processá-la, um conjunto de regras codificadas para expressar instâncias dos tipos de dados definidos na aplicação e uma convenção para
representar chamadas de procedimentos e respostas. Sua especificação define um framework que provê maneiras para se construir mensagens que podem trafegar através de diversos protocolos e que foi especificado de forma a ser independente de qualquer modelo de programação ou outra implementação específica. Por não se tratar de um protocolo de acesso a objetos, o acrônimo não é mais utilizado. Geralmente, servidores SOAP são implementados utilizando-se servidores HTTP, embora isso não seja uma restrição para funcionamento do protocolo. Construção de uma mensagem SOAP Mensagem SOAP: é um documento XML comum, contendo um elemento chamado Envelope que identifica este documento como uma mensagem SOAP, um elemento Header que contém informações sobre o cabeçalho do documento, e um elemento Body que é o corpo do documento contendo informações de chamada e resposta. Dentro do corpo contém um elemento Fault, que possui erros e informações de status. O elemento Fault do SOAP é o de falha, no qual estão contidos erros e informações de status de uma mensagem SOAP. Este elemento é opcional e quando estiver presente deve aparecer como um elemento filho do elemento Body. Ele pode conter os seguintes subelementos:
Subelemento Descrição Faultcode Código de identificação de erro Faultstring Explicação legível da falha Faultactor Informações sobre o que pode ter provocado a falha Detail Informações específicas sobre o erro Gabarito: B Site visitado: http://zarelli.wordpress.com/2012/03/22/como-funciona-o-soap-protocolo-simples-de-acesso-a-objetos/ em 24/10/2013. * Ana Lucia Castilho é autora do livro Informática para Concursos, que contempla o conteúdo programático de Informática do concurso do ICMS-RJ 2014, sobretudo os capítulos 2, 3, 6, 9 e 11.