{"subject_id":"3a3cc48d0099817a82eae8c609a8d420","topico":"Web services: SOAP (WSDL, WS-Security) × REST (OpenAPI)","stems":["Julgue os itens a seguir, relativos a Java, Swagger, PostgreSQL e JSON.","Acerca das linguagens de programação, das linguagens de script e dos diferentes padrões de representação de dados, julgue os itens a seguir.","Acerca de arquitetura de aplicações, julgue os próximos itens.","A respeito de APIs, web services e JSON, julgue os itens a seguir.","A respeito de arquiteturas de microsserviços, julgue os itens que se seguem.","Acerca de domain‐driven design, de especificação OpenAPI e de design patterns, julgue os itens a seguir.","Julgue os itens a seguir, referentes a ferramentas de integração assíncrona, microsserviços, arquitetura orientada a serviços e gerenciamento de serviços.","Em relação ao desenvolvimento de sistemas e ao padrão SOAP, julgue os próximos itens.","A respeito de arquitetura de software, julgue os itens que se seguem.","Julgue os itens subsequentes, relativos a WebServices, SonarQube.","A respeito de arquitetura de aplicações, julgue os próximos itens.","Julgue os itens seguintes, que tratam de padrões de projeto e dos protocolos para Web services, padrões e tecnologias relacionadas.","Julgue os próximos itens, relativos aos padrões XML, SOAP, REST e JSON.","Um servidor web de uma empresa de e-commerce foi alvo de um ataque DDoS. Durante o ataque, o servidor começou a apresentar lentidão extrema, tornando-se incapaz de atender às requisições legítimas dos clientes. A equipe de segurança detectou um tráfego anormal proveniente de diversos endereços IP, todos de dispositivos comprometidos em diferentes partes do mundo, que inundavam o servidor com solicitações massivas e simultâneas, visando interromper ou degradar significativamente a disponibilidade do serviço de e-commerce. Tendo como referência a situação hipotética precedente, julgue os itens a seguir.","Acerca de web services e de interoperabilidade de sistemas, julgue os itens a seguir.","Em relação à linguagem de programação Java, à arquitetura distribuída de microsserviços e à biblioteca Flyway, julgue os próximos itens.","Em relação a extranet e intranet, bem como à arquitetura orientada a serviços, julgue os itens a seguir.","Julgue os próximos itens, relativos a H2, Keycloak, Webhooks, Git, continuous delivery e continuous integration.","Em relação ao desenvolvimento de sistemas, julgue os itens seguintes.","Julgue os próximos itens, relativos a Java, Swagger e JSON.","Julgue os itens subsequentes, relativos ao desenvolvimento de sistemas de computação.","A respeito da especificação de web services, julgue os itens que se seguem.","Julgue os itens subsecutivos, relativos à arquitetura orientada a serviços (SOA), à arquitetura distribuída, à especificação de web services e a dispositivos móveis.","Com base no código XML precedente, julgue os próximos itens.","Julgue os itens abaixo, relacionados com JavaScript, Web Services e análise estatística de código-fonte.","Julgue os itens a seguir acerca de intranet, extranet, UDDI, XSLT e DevOps.","Com relação a integrações de sistemas de informação por meio de web services e APIs, julgue os itens a seguir.","Julgue os próximos itens, relativos a Hibernate Envers e Swagger.","Julgue os itens que se seguem, relacionados a desenvolvimento de sistemas.","Julgue os próximos itens, que tratam de arquitetura de software, intranet e TDD.","Com relação a conceitos de SOA e de webservice, julgue os próximos itens.","Acerca dos conceitos referentes à arquitetura de aplicações, julgue os itens a seguir.","Considere que um sistema deva ser desenvolvido com os seguintes requisitos: I arquitetura distribuída; II componentes de sistema como serviços autônomos; III plataforma e implementação independentes de linguagem; IV mecanismos básicos para a troca de informações baseados em XML. A partir dessa situação hipotética, julgue os itens a seguir, relativos a arquitetura orientada a serviços (SOA) e web services.","Julgue os itens a seguir, relativos a WSDL, JSON, XML e XSLT.","REST é um estilo de arquitetura de software que define um conjunto de restrições a ser usado para a criação de serviços web. Acerca desse assunto, julgue os itens a seguir.","Acerca de arquitetura de software, julgue os itens a seguir.","Acerca de service-oriented architecture, web services, mensageria e CORBA (common object request broker architecture), julgue os itens a seguir.","De acordo com os padrões de interoperabilidade de governo eletrônico (ePING), julgue os itens subsequentes.","Com relação à interoperabilidade de sistemas, julgue os itens subsequentes.","Julgue os próximos itens, relativos aos padrões XML, XSLT, UDDI, WSDL, SOAP e JSON/REST.","Em relação a web services, julgue os itens seguintes.","Web service é um software que, armazenado em um computador, pode ser acessado por outro software em outro computador por meio de uma rede. A partir dessa afirmação, julgue os itens subsequentes.","A Arquitetura Orientada a Serviços (SOA), no cenário dos modelos arquiteturais modernos, enfatiza o reúso como elemento chave para a maximização dos resultados em tecnologia da informação. A catalogação e a gerência dos ativos de software da organização na condição de serviços de aplicativos são os pilares em meio aos quais devem se sustentar essa nova arquitetura. A esse respeito, julgue os próximos itens."],"questions":[{"id":"f92a43bda483","number":59,"stem":0,"statement":"O código em Java a seguir, ao ser executado, apresentará 22 como resultado.\n\npublic class Main {\n  public static void main(String[] args) {\n    Object valor = “22 TJ PA”;\n    if (valor instanceof String s) {\n      valor = s.replaceAll(“[^a-zA-Z]”, ““);\n    }\n    switch (valor) {\n      case String s -> System.out.println(s);\n      case Integer i -> System.out.println(i);\n      default -> System.out.println(valor);\n    }\n  }\n}","answer":"E","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"A classe de caracteres [^a-zA-Z] casa tudo o que não é letra, e replaceAll substitui essas ocorrências por vazio: de 22 TJ PA sobra TJPA, pois dígitos e espaços é que são removidos. O switch com correspondência de padrões cai no ramo case String s e imprime essa cadeia. A saída é TJPA.","distortion_type":"inversao","distorted_span":"apresentará 22 como resultado","corrected_statement":"O código em Java a seguir, ao ser executado, apresentará TJPA como resultado.","concept":"[^a-zA-Z] remove o que não é letra","citation":null,"trap_note":"O acento circunflexo dentro dos colchetes nega a classe. Em item de expressão regular, leia primeiro se há ^ logo após o colchete: sem ele apagam-se as letras, com ele apaga-se todo o resto."}},{"id":"8f706ea8eefc","number":60,"stem":1,"statement":"JSON e XML são representações usadas para a troca de dados entre aplicações, sendo o XML mais adequado para a troca de dados de forma organizada, e o JSON, quando são exigidas informações de metadata.","answer":"E","source":{"slug":"STM_25","ano":2025},"explanation":{"verdict_reason":"As adequações estão trocadas: quem carrega metadados é o XML, com atributos, espaços de nomes, instruções de processamento e esquemas; o JSON é um formato de dados puro, mais enxuto, adequado à troca simples e rápida. A primeira metade sozinha até passaria, mas o par inteiro está invertido.","distortion_type":"inversao","distorted_span":"e o JSON, quando são exigidas informações de metadata","corrected_statement":"JSON e XML são representações usadas para a troca de dados entre aplicações, sendo o JSON mais adequado para a troca de dados de forma enxuta, e o XML, quando são exigidas informações de metadata.","concept":"Metadados são a força do XML; leveza é a do JSON","citation":null,"trap_note":"XML × JSON cai sempre pelo mesmo par: XML traz atributos, espaços de nomes e metadados; JSON é dado puro e por isso é analisado mais rápido. Se o item inverter esse par, está errado."}},{"id":"bced70622ad3","number":60,"stem":0,"statement":"O Swagger, quando utiliza a OpenAPI 3.0, permite descrever as APIs protegidas por meio do esquema de segurança bearer authentication.","answer":"C","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"A OpenAPI 3.0 descreve os mecanismos de proteção da API em security schemes, e entre eles está o tipo http com scheme bearer, isto é, a autenticação por token portador. O Swagger, como ferramental que consome e gera esses documentos, expõe justamente essa descrição. O item apenas nomeia um recurso previsto na especificação.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"OpenAPI 3.0 descreve esquemas de segurança, inclusive bearer","citation":"OpenAPI Specification 3.0 — Security Scheme Object","trap_note":"Separe o papel: OpenAPI descreve a segurança da API; quem autentica de fato é o servidor. Descrever um esquema de segurança não é implementá-lo."}},{"id":"1a14ba6d9b4a","number":67,"stem":2,"statement":"Web service é uma interface que utiliza protocolo SOAP para conectar o usuário a uma aplicação remota.","answer":"E","source":{"slug":"TELEBRAS_25","ano":2025},"explanation":{"verdict_reason":"Web service é interação entre máquinas por uma rede, com interface descrita em formato processável por máquina — não é a camada que liga o usuário à aplicação, papel que cabe à interface de usuário. Além disso, SOAP é apenas uma das formas de realizá-lo; REST é a outra. O item troca o conceito pela implementação e o interlocutor pelo usuário.","distortion_type":"troca_de_termo","distorted_span":"para conectar o usuário a uma aplicação remota","corrected_statement":"Web service é uma interface que pode utilizar o protocolo SOAP para conectar uma aplicação a outra aplicação remota.","concept":"Web service é interação máquina a máquina","citation":"W3C, Web Services Architecture","trap_note":"Máquina a máquina é a marca da definição de web service. Qualquer item que coloque o usuário humano na ponta da interação está trocando web service por interface de usuário."}},{"id":"5aa88f778c01","number":77,"stem":3,"statement":"Uma API é considerada REST quando utiliza os métodos HTTP GET, POST, PUT e DELETE para manipular recursos, o que a torna, automaticamente, um serviço RESTful.","answer":"E","source":{"slug":"FUB_25","ano":2025},"explanation":{"verdict_reason":"Usar os verbos HTTP é apenas uma das exigências do estilo: uma API só é RESTful quando atende ao conjunto das restrições — cliente-servidor, ausência de estado, cache, interface uniforme e sistema em camadas. O advérbio automaticamente é o que derruba o item, pois há APIs que expõem os quatro métodos e continuam violando restrições essenciais.","distortion_type":"generalizacao","distorted_span":"o que a torna, automaticamente, um serviço RESTful","corrected_statement":"Uma API é considerada REST quando utiliza os métodos HTTP GET, POST, PUT e DELETE para manipular recursos e atende às demais restrições do estilo, o que a torna um serviço RESTful.","concept":"Verbos HTTP são condição necessária, não suficiente, para ser RESTful","citation":null,"trap_note":"Condição necessária apresentada como suficiente é o molde do item. Basta, automaticamente e é o que define são as marcas dessa passagem indevida."}},{"id":"61e12d4d3d8b","number":77,"stem":4,"statement":"No Swagger/OpenAPI, o atributo format em JSON Schema é obrigatório — de modo que sua ausência invalida o esquema — e serve para refinar a semântica de validação de um tipo primitivo, como no caso de strings formatadas como date ou email.","answer":"E","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"No JSON Schema, e por consequência na OpenAPI, format é palavra-chave opcional e, por padrão, apenas anotativa: um esquema sem format é perfeitamente válido e nenhuma validação deixa de ocorrer por causa disso. A segunda metade do item está certa — format refina a semântica de um tipo primitivo, como date ou email —, mas a obrigatoriedade é inventada e é ela que decide o item.","distortion_type":"inversao","distorted_span":"o atributo format em JSON Schema é obrigatório — de modo que sua ausência invalida o esquema","corrected_statement":"No Swagger/OpenAPI, o atributo format em JSON Schema é opcional — de modo que sua ausência não invalida o esquema — e serve para refinar a semântica de validação de um tipo primitivo, como no caso de strings formatadas como date ou email.","concept":"format no JSON Schema é opcional e anotativo","citation":"JSON Schema Validation — vocabulário format","trap_note":"Em toda especificação a lista do que é obrigatório é curta. Decore-a e trate qualquer item que promova opcional a obrigatório — ou rebaixe obrigatório a opcional — como suspeito imediato."}},{"id":"7dd63c8a7413","number":78,"stem":3,"statement":"Uma API serve exclusivamente para o intercâmbio de dados entre sistemas baseados na mesma linguagem de programação.","answer":"E","source":{"slug":"FUB_25","ano":2025},"explanation":{"verdict_reason":"A API é justamente o contrato que permite a sistemas heterogêneos conversarem: a interface é publicada em formato neutro e cada lado pode ser escrito na linguagem que quiser. Restringir seu uso a sistemas na mesma linguagem nega a finalidade da interface. O exclusivamente é o que torna a afirmação falsa.","distortion_type":"generalizacao","distorted_span":"exclusivamente para o intercâmbio de dados entre sistemas baseados na mesma linguagem de programação","corrected_statement":"Uma API serve para o intercâmbio de dados entre sistemas, ainda que baseados em linguagens de programação diferentes.","concept":"API é agnóstica de linguagem","citation":null,"trap_note":"Exclusivamente é verdadeiro neste tópico em um único lugar: o SOAP usa exclusivamente XML. Em qualquer outra frase sobre linguagem, plataforma ou formato, o advérbio denuncia o erro."}},{"id":"04a775fb68f6","number":79,"stem":3,"statement":"A utilização de padrões como XML, SOAP, WSDL e UDDI em web services visa garantir a interoperabilidade entre aplicações desenvolvidas em plataformas distintas, sendo o padrão UDDI utilizado especificamente para a definição formal das mensagens trocadas entre cliente e servidor.","answer":"E","source":{"slug":"FUB_25","ano":2025},"explanation":{"verdict_reason":"A primeira parte está correta: XML, SOAP, WSDL e UDDI existem para dar interoperabilidade entre plataformas distintas. A definição formal das mensagens trocadas, porém, é feita no WSDL, com apoio do XML Schema; o UDDI é o registro de publicação e descoberta. O papel foi trocado na parte final.","distortion_type":"atribuicao_errada","distorted_span":"sendo o padrão UDDI utilizado especificamente para a definição formal das mensagens trocadas entre cliente e servidor","corrected_statement":"A utilização de padrões como XML, SOAP, WSDL e UDDI em web services visa garantir a interoperabilidade entre aplicações desenvolvidas em plataformas distintas, sendo o padrão WSDL utilizado especificamente para a definição formal das mensagens trocadas entre cliente e servidor.","concept":"WSDL define formalmente as mensagens; UDDI apenas registra","citation":null,"trap_note":"Enunciado longo com uma cauda específica costuma esconder o erro na cauda. Leia a lista inteira, depois confira a atribuição individual que vem depois do sendo."}},{"id":"1315e3b847a8","number":79,"stem":5,"statement":"Em arquivos de configuração baseados em esquema, dados YAML devem adotar estrutura e sintaxe compatíveis com o formato JSON, para garantir validação adequada.","answer":"E","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"A relação entre os dois formatos é a inversa da afirmada: JSON é um subconjunto do YAML, de modo que todo JSON é YAML válido, mas o YAML não precisa imitar a sintaxe do JSON para ser processado ou validado contra um esquema. A notação de blocos com indentação é a forma usual do YAML e valida normalmente. A exigência descrita não existe.","distortion_type":"inversao","distorted_span":"dados YAML devem adotar estrutura e sintaxe compatíveis com o formato JSON","corrected_statement":"Em arquivos de configuração baseados em esquema, dados YAML não precisam adotar estrutura e sintaxe compatíveis com o formato JSON, para garantir validação adequada.","concept":"JSON é subconjunto do YAML, não o contrário","citation":null,"trap_note":"Quando o item põe dois formatos em relação de dependência, verifique a direção: é o JSON que cabe dentro do YAML, e é o documento OpenAPI que pode ser escrito em qualquer um dos dois."}},{"id":"65772e1e6379","number":80,"stem":5,"statement":"Em JSON Schema, o formato format é opcional e não valida dados por padrão, sendo alguns tipos, como int32 e password, definidos pela OpenAPI, mas seu suporte varia entre ferramentas.","answer":"C","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"O item reúne as três verdades do format: é opcional, não valida dados por padrão (é anotação, salvo se a ferramenta decidir aplicá-lo) e admite valores próprios da OpenAPI além dos do JSON Schema, como int32 e password. Como o suporte fica a cargo de cada ferramenta, o comportamento varia entre implementações. Nada aí é distorcido.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"format: opcional, anotativo e de suporte variável entre ferramentas","citation":"OpenAPI Specification — Data Types (format)","trap_note":"Este é o enunciado correto do mesmo assunto que a banca inverte em outros itens. Se a frase diz que format é obrigatório ou que valida sozinho, está errada; se diz opcional e anotativo, está certa."}},{"id":"7e97a5e21706","number":81,"stem":5,"statement":"Em design patterns, o padrão strategy introduz forte hierarquia de herança entre algoritmos, violando o OCP (open/closed principle) ao exigir modificações no contexto sempre que uma nova estratégia é adicionada.","answer":"E","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"O strategy troca herança por composição: o contexto guarda uma referência a uma interface de estratégia e delega a ela, de modo que uma nova estratégia é acrescentada como nova classe, sem tocar no contexto. Isso é precisamente o que o princípio aberto/fechado pede — aberto para extensão, fechado para modificação. O item descreve o oposto do que o padrão faz.","distortion_type":"inversao","distorted_span":"introduz forte hierarquia de herança entre algoritmos, violando o OCP (open/closed principle) ao exigir modificações no contexto","corrected_statement":"Em design patterns, o padrão strategy substitui a herança por composição entre algoritmos, favorecendo o OCP (open/closed principle) ao dispensar modificações no contexto sempre que uma nova estratégia é adicionada.","concept":"Strategy: composição e delegação, não herança","citation":null,"trap_note":"Padrões comportamentais do GoF quase sempre existem para eliminar uma cadeia de condicionais ou uma hierarquia de herança. Item que atribui a um deles justamente o defeito que ele resolve está invertido."}},{"id":"aeec685876dd","number":95,"stem":6,"statement":"O WS-Security (web services security) utiliza XML signature e XML encryption para garantir a integridade e a confidencialidade das mensagens SOAP.","answer":"C","source":{"slug":"MP_CE_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"WS-Security é a especificação que leva a segurança para dentro da mensagem SOAP: aplica XML Signature, que dá integridade e autenticidade, e XML Encryption, que dá confidencialidade, a partes selecionadas do envelope. Os cabeçalhos de segurança viajam no Header do SOAP, de modo que a proteção sobrevive a intermediários. É exatamente o par que o item descreve.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"WS-Security = XML Signature (integridade) + XML Encryption (confidencialidade)","citation":"OASIS Web Services Security (WS-Security) — SOAP Message Security","trap_note":"Segurança de canal × segurança de mensagem: TLS/HTTPS protege o trecho de rede e termina no primeiro intermediário; WS-Security protege a mensagem e atravessa intermediários. Item que oferece um no lugar do outro está errado."}},{"id":"6bf01916e552","number":54,"stem":7,"statement":"O uso de CSS3 em uma página web exige a instalação de um plug-in na parte cliente da aplicação, o que é feito de modo invisível para o usuário.","answer":"E","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"CSS3 é interpretado nativamente pelos navegadores: a folha de estilo é baixada e aplicada pelo próprio motor de renderização, sem qualquer instalação no cliente. A exigência de plug-in é característica de tecnologias externas ao navegador, como os antigos applets e o Flash. A necessidade descrita não existe.","distortion_type":"atribuicao_errada","distorted_span":"exige a instalação de um plug-in na parte cliente da aplicação","corrected_statement":"O uso de CSS3 em uma página web dispensa a instalação de um plug-in na parte cliente da aplicação, pois a folha de estilo é interpretada nativamente pelo navegador.","concept":"CSS3 é interpretado nativamente pelo navegador","citation":null,"trap_note":"HTML, CSS e JavaScript são nativos do navegador. Todo item que exija instalação adicional para uma dessas três tecnologias está atribuindo a elas a limitação de complementos externos."}},{"id":"8739f85eb332","number":55,"stem":7,"statement":"Em dispositivos móveis, é recomendado o uso de sítios responsivos, no qual estão envolvidas as tecnologias de layout fluído, imagens flexíveis e media queries.","answer":"C","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"Design responsivo é definido justamente pelos três ingredientes citados: grade fluida, com medidas relativas, imagens flexíveis, que se ajustam ao contêiner, e consultas de mídia, que aplicam regras diferentes conforme as características da tela. É a recomendação corrente para atender a dispositivos móveis com um único sítio.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Responsivo: layout fluido, imagens flexíveis e media queries","citation":null,"trap_note":"Sítio responsivo é um só endereço que se adapta; sítio adaptativo ou dedicado a móvel entrega páginas distintas. Não confunda as duas estratégias."}},{"id":"fcb18ad4f30a","number":56,"stem":7,"statement":"O SOAP permite a comunicação entre serviços web e seus clientes, desde que os códigos em ambas as partes utilizem a mesma linguagem de programação.","answer":"E","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"O SOAP existe exatamente para dispensar essa condição: cliente e servidor trocam um envelope XML descrito em WSDL, e cada lado pode ser escrito em qualquer linguagem, sobre qualquer plataforma. Exigir a mesma linguagem de programação nas duas pontas contraria a razão de ser do protocolo.","distortion_type":"inversao","distorted_span":"desde que os códigos em ambas as partes utilizem a mesma linguagem de programação","corrected_statement":"O SOAP permite a comunicação entre serviços web e seus clientes, ainda que os códigos em cada parte utilizem linguagens de programação diferentes.","concept":"SOAP é independente de linguagem nas duas pontas","citation":null,"trap_note":"Desde que é a expressão que introduz a dependência inventada. Neste tópico, toda condição que amarra linguagem, plataforma ou sistema operacional é falsa por definição de web service."}},{"id":"aa4fa023d4aa","number":60,"stem":8,"statement":"Para facilitar a interoperabilidade entre sistemas, o envelope SOAP utiliza XML em toda a sua estrutura.","answer":"C","source":{"slug":"TRT10_24","ano":2024},"explanation":{"verdict_reason":"O envelope SOAP é integralmente XML — envelope, cabeçalho, corpo e falha —, e é essa uniformidade em um formato aberto e processável por qualquer plataforma que sustenta a interoperabilidade entre sistemas heterogêneos. A causa apontada pelo item coincide com a razão de projeto do protocolo.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Envelope SOAP inteiramente em XML pela interoperabilidade","citation":"W3C, SOAP Version 1.2 Part 1: Messaging Framework","trap_note":"Frases do tipo para facilitar X, usa-se Y costumam esconder causalidade inventada. Aqui a causa é verdadeira, mas vale sempre testar se o fim declarado é mesmo o motivo do meio."}},{"id":"2fbfc127ec56","number":67,"stem":9,"statement":"Em um web services, quando, entre um pedido e uma resposta de mensagem, se procura associar a mensagem de resposta à original que iniciou a solicitação, por meio de algum valor comum que os serviços possam identificar para estabelecer seu relacionamento entre elas, pode-se utilizar a correlação.","answer":"C","source":{"slug":"MP_GO_24_SERVIDOR","ano":2024},"explanation":{"verdict_reason":"O modelo de processamento SOAP trata cada mensagem isoladamente, de modo que ligar uma resposta ao pedido que a originou exige um identificador comum acordado entre as partes. Esse mecanismo é justamente a correlação, tipicamente carregada em cabeçalhos, como faz o WS-Addressing. O item descreve o conceito corretamente.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Correlação: valor comum que liga resposta ao pedido","citation":null,"trap_note":"Correlação existe porque o SOAP, sozinho, não coordena nem correlaciona mensagens. As duas afirmações convivem: a limitação é do protocolo, a correlação é o recurso que a contorna."}},{"id":"fbccd6f5765f","number":68,"stem":10,"statement":"Em um serviço web RESTful, cada um dos métodos possui uma URL única como identificador.","answer":"C","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"No REST cada recurso exposto é endereçado por sua própria URI, e é ela que identifica o que está sendo manipulado a cada chamada — diferentemente do SOAP, em que um único endereço de extremidade recebe todas as operações. O item descreve esse endereçamento por recurso.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"REST endereça cada recurso por URI própria","citation":null,"trap_note":"Uma URI por recurso é do REST; um endpoint para tudo é do SOAP. Esse é um dos pares de comparação que a banca mais usa entre os dois estilos."}},{"id":"ccfd7d304dbf","number":68,"stem":11,"statement":"Na comunicação feita entre cliente e servidor, uma API Restful armazena informações de outras sessões a respeito das solicitações, de modo a fazer um controle confiável das suas transações.","answer":"E","source":{"slug":"PREF_CACHOEIRO_24_ADM","ano":2024},"explanation":{"verdict_reason":"A ausência de estado é restrição do REST: cada requisição deve trazer tudo o que é necessário para ser compreendida, e o servidor não guarda contexto de sessão entre chamadas. Guardar informações de sessões anteriores para controlar transações é justamente o que uma API RESTful não faz — esse estado, quando existe, fica no cliente. O item descreve o contrário da restrição.","distortion_type":"inversao","distorted_span":"armazena informações de outras sessões a respeito das solicitações","corrected_statement":"Na comunicação feita entre cliente e servidor, uma API Restful não armazena informações de outras sessões a respeito das solicitações, cabendo a cada requisição trazer tudo o que é necessário para ser compreendida.","concept":"Ausência de estado no REST: o servidor não guarda sessão","citation":"Roy Fielding, Architectural Styles and the Design of Network-based Software Architectures (restrição stateless)","trap_note":"Sessão, contexto e transação encadeada são as três palavras com que a banca tenta pôr estado no servidor REST. Achou uma delas, desconfie da frase inteira."}},{"id":"415b10572ae9","number":69,"stem":11,"statement":"O elemento header (cabeçalho) do envelope de uma mensagem enviada pelo SOAP é um elemento indispensável, uma vez que ele informa o endereço da mensagem.","answer":"E","source":{"slug":"PREF_CACHOEIRO_24_ADM","ano":2024},"explanation":{"verdict_reason":"No envelope SOAP, o Header é opcional e o Body é obrigatório. O cabeçalho, quando existe, carrega metadados de infraestrutura — segurança, roteamento, transação —, mas a mensagem é válida sem ele; e o endereçamento não é função inerente do Header, e sim de extensões como o WS-Addressing. Chamá-lo de indispensável inverte a regra da especificação.","distortion_type":"inversao","distorted_span":"é um elemento indispensável, uma vez que ele informa o endereço da mensagem","corrected_statement":"O elemento header (cabeçalho) do envelope de uma mensagem enviada pelo SOAP é um elemento opcional, que pode carregar metadados de infraestrutura, como segurança e roteamento.","concept":"SOAP: Header opcional, Body obrigatório","citation":"W3C, SOAP Version 1.2 Part 1: Messaging Framework","trap_note":"Fixe o par: Header opcional, Body obrigatório, e o Fault dentro do Body. Item que promove o Header a indispensável ou tira a obrigatoriedade do Body está errado por essa regra."}},{"id":"d1b949f4c480","number":70,"stem":12,"statement":"Considere o código a seguir, escrito em HTML e JavaScript.\n\n<!DOCTYPE html>\n<html>\n<body>\n<p id=“tceac”></p>\n<script>\nconst desc = [“Tribunal de”, “Contas do”,\n“Estado”, “do Acre”];\nlet texto = ““;\nfor (let i = 1; i < desc.length-2; ++i) {\n texto += desc[i] + “ “;\n}\ndocument.getElementById(“tceac”).innerHTML =\ntexto;\n</script>\n</body>\n</html>\n\nÉ correto afirmar que a execução desse código gerará a seguinte saída. Tribunal de Contas do","answer":"E","source":{"slug":"TCE_AC_24","ano":2024},"explanation":{"verdict_reason":"O vetor tem quatro posições, logo desc.length-2 vale 2 e o laço, começando em i igual a 1, executa uma única vez, com i igual a 1. Só o segundo elemento é concatenado, de modo que a saída é Contas do. O elemento de índice zero nunca entra, porque o laço não começa nele.","distortion_type":"numero_errado","distorted_span":"Tribunal de Contas do","corrected_statement":"É correto afirmar que a execução desse código gerará a seguinte saída. Contas do","concept":"Limites do laço: início em 1 e parada em length-2","citation":null,"trap_note":"Em item de laço, calcule antes os dois limites: o índice inicial e o valor exato da condição de parada. A banca costuma mexer só em um deles e manter a saída plausível."}},{"id":"279d7625ea64","number":70,"stem":10,"statement":"Nos webservices que utilizam o SOAP, as solicitações e respostas são escritas em HTML para que sejam independentes de plataforma.","answer":"E","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"Solicitações e respostas SOAP são documentos XML: o envelope, com Header opcional e Body obrigatório, é definido em XML, e é esse formato neutro que garante a independência de plataforma. HTML é linguagem de marcação para apresentação de páginas, não para transporte de mensagens entre serviços. Um formato foi trocado pelo vizinho.","distortion_type":"troca_de_termo","distorted_span":"as solicitações e respostas são escritas em HTML","corrected_statement":"Nos webservices que utilizam o SOAP, as solicitações e respostas são escritas em XML para que sejam independentes de plataforma.","concept":"Mensagem SOAP é XML, nunca HTML","citation":null,"trap_note":"HTML apresenta, XML estrutura dados. Sempre que a sigla HTML aparecer descrevendo troca de mensagens entre sistemas, o termo foi trocado."}},{"id":"4c114b2834ef","number":71,"stem":13,"statement":"Infere-se da situação que o ataque DDoS afeta a disponibilidade do serviço web da empresa de e-commerce.","answer":"C","source":{"slug":"TCE_AC_24","ano":2024},"explanation":{"verdict_reason":"O DDoS inunda o alvo com requisições para esgotar recursos e impedir o atendimento das requisições legítimas. Dos três pilares da segurança, o atingido é a disponibilidade: os dados não são alterados nem revelados, mas o serviço deixa de responder. A situação descrita apenas materializa esse efeito.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"DDoS ataca a disponibilidade","citation":null,"trap_note":"Classifique todo ataque pelo pilar atingido: DDoS derruba disponibilidade, adulteração de dados atinge integridade, vazamento e interceptação atingem confidencialidade."}},{"id":"6634b56b552c","number":71,"stem":12,"statement":"Ao se utilizar o REST em uma arquitetura com web services, a mensagem SOAP pode ser codificada com o uso de JSON, desde que seja utilizada, no XML resultante, uma referência DTD em que seja possível definir a estrutura, os elementos e os atributos do documento XML.","answer":"E","source":{"slug":"TCE_AC_24","ano":2024},"explanation":{"verdict_reason":"Mensagem SOAP é, por definição da especificação, um documento XML — não existe envelope SOAP codificado em JSON, com ou sem DTD. A condição inventada sobre a referência DTD não salva a afirmação: o DTD sequer é o mecanismo típico de definição de estrutura nos web services, papel que cabe ao XML Schema. A propriedade do mundo REST foi colada no SOAP.","distortion_type":"atribuicao_errada","distorted_span":"a mensagem SOAP pode ser codificada com o uso de JSON","corrected_statement":"Ao se utilizar o REST em uma arquitetura com web services, a carga da mensagem pode ser codificada com o uso de JSON, enquanto a mensagem SOAP é sempre um documento XML.","concept":"SOAP é exclusivamente XML","citation":"W3C, SOAP Version 1.2 Part 1: Messaging Framework","trap_note":"SOAP com JSON, SOAP com HTML, SOAP identificando recursos por URI: são as três colagens mais frequentes. Pergunte de que mundo é a propriedade antes de ler o resto da frase."}},{"id":"1ee15a27242d","number":73,"stem":14,"statement":"Web service consiste em uma instância de uma ideia mais geral de um serviço, definido como um ato ou desempenho oferecido de uma parte para outra.","answer":"C","source":{"slug":"CPNUJE_24","ano":2024},"explanation":{"verdict_reason":"A literatura de web services parte da noção geral de serviço — um ato ou desempenho que uma parte oferece a outra — e apresenta o web service como a realização dessa ideia por meio de tecnologias de rede, com interface processável por máquina. O item apenas situa o conceito nessa relação de gênero e espécie.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Web service é instância técnica da noção geral de serviço","citation":null,"trap_note":"Itens conceituais deste tópico costumam ser corretos quando ampliam o conceito e errados quando o prendem a uma tecnologia, como definir web service pelo SOAP."}},{"id":"26d7b7d9cfde","number":77,"stem":15,"statement":"Swagger é uma interface API compatível com Java que permite que dois sistemas computacionais troquem informações com ausência de estado.","answer":"E","source":{"slug":"STJ_24","ano":2024},"explanation":{"verdict_reason":"Swagger não é uma interface por onde os sistemas trocam dados: é o conjunto de ferramentas em torno da especificação OpenAPI, usado para projetar, documentar, testar e gerar código da API. Quem troca informações é a API descrita, não a descrição. Também não há vínculo com Java — o documento é agnóstico de linguagem.","distortion_type":"atribuicao_errada","distorted_span":"Swagger é uma interface API compatível com Java que permite que dois sistemas computacionais troquem informações","corrected_statement":"Swagger é um conjunto de ferramentas para descrever e documentar APIs, independentemente de linguagem, por meio das quais dois sistemas computacionais trocam informações com ausência de estado.","concept":"Swagger descreve a API; quem comunica é a API","citation":null,"trap_note":"Descrever não é transportar. Vale para WSDL e para OpenAPI/Swagger: o documento é contrato, não canal de comunicação."}},{"id":"736186fbc3e2","number":77,"stem":16,"statement":"WSDL é uma tecnologia que padroniza a descrição da interface de um web service, enquanto UDDI é um repositório mundial de web services utilizado para publicar e(ou) descobrir serviços que já foram criados e utilizar os já existentes.","answer":"C","source":{"slug":"CPNUJE_24","ano":2024},"explanation":{"verdict_reason":"As duas atribuições estão nos lugares certos: o WSDL padroniza a descrição da interface do serviço, e o UDDI é o registro em que serviços são publicados e descobertos para reúso. Descrever e publicar são papéis distintos, e o item os mantém separados.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"WSDL descreve a interface; UDDI publica e descobre","citation":null,"trap_note":"Este é o enunciado correto do par que a banca inverte com frequência. Se em outro item o WSDL aparecer encontrando serviços, ou o UDDI definindo mensagens, os papéis foram trocados."}},{"id":"323a74d7128c","number":82,"stem":17,"statement":"Webhooks permitem conectar aplicativos e sistemas de modo que eles compartilhem dados em tempo real, por meio de funções de retorno de chamada baseadas em HTTP que viabilizam a comunicação orientada por eventos entre os sistemas.","answer":"C","source":{"slug":"STJ_24","ano":2024},"explanation":{"verdict_reason":"Webhook é uma chamada de retorno sobre HTTP: em vez de o destino perguntar periodicamente se algo mudou, a origem dispara uma requisição para uma URL previamente registrada assim que o evento ocorre. Daí o compartilhamento de dados praticamente em tempo real e a comunicação orientada por eventos, com custo menor que o da consulta cíclica.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Webhook: callback HTTP disparado por evento","citation":null,"trap_note":"Webhook × polling: quem avisa é a origem, no instante do evento; no polling é o destino que pergunta de tempos em tempos. Item que descreve webhook como consulta periódica inverteu a direção da iniciativa."}},{"id":"d7db1511c98d","number":90,"stem":18,"statement":"A implementação de um web service em Java é feita por meio de uma classe, que fica residente no servidor e pode ser acessado de forma distribuída.","answer":"C","source":{"slug":"CODEVASF_24","ano":2024},"explanation":{"verdict_reason":"No modelo Java para serviços, a implementação é uma classe comum anotada como ponto de extremidade — o contêiner a publica no servidor e ela passa a atender às invocações remotas. O serviço fica residente no servidor e é acessado de forma distribuída pelos clientes, que só conhecem o contrato. É a descrição correta da implementação.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Serviço em Java implementado como classe publicada no servidor","citation":null,"trap_note":"Implementação e contrato são coisas separadas: a classe fica no servidor, o cliente enxerga apenas o WSDL ou o documento OpenAPI. Nenhum item pode exigir que o cliente conheça a classe."}},{"id":"89fae36fb742","number":96,"stem":19,"statement":"O Swagger é um conjunto de ferramentas voltado para o desenvolvimento de todo o ciclo de vida da API, incluindo as etapas de design, documentação, teste e implantação.","answer":"C","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"Swagger é o ferramental construído em torno da especificação OpenAPI — editor, interface de documentação e geradores de código e de testes — e cobre o ciclo de vida da API do desenho à publicação. O item apenas descreve esse escopo. É a caracterização correta da ferramenta.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Swagger é ferramental de ciclo de vida da API","citation":null,"trap_note":"Distinga os dois nomes: OpenAPI é a especificação, Swagger é o conjunto de ferramentas que a implementa. Nenhum dos dois transporta dados."}},{"id":"7329ed4cdcec","number":99,"stem":20,"statement":"UDDI é uma linguagem usada para a formatação de documentos JSON para comunicação entre serviços web.","answer":"E","source":{"slug":"PREF_MOSSORO_RN_24","ano":2024},"explanation":{"verdict_reason":"UDDI não é linguagem nem formato de documento: é o registro onde serviços web são publicados, classificados e descobertos, com ponteiros para as respectivas descrições WSDL. Formatar documentos não é papel de nenhuma peça da pilha nesse sentido — quem descreve é o WSDL e quem transporta é o SOAP. O papel atribuído é de outro componente.","distortion_type":"atribuicao_errada","distorted_span":"UDDI é uma linguagem usada para a formatação de documentos JSON","corrected_statement":"UDDI é um registro usado para publicar e descobrir serviços web, apontando para suas descrições WSDL.","concept":"UDDI publica e descobre; não formata documentos","citation":null,"trap_note":"Descrever não é publicar, e publicar não é transportar. Quase todo item errado deste tópico cabe em uma dessas três trocas de papel."}},{"id":"45079da077d2","number":100,"stem":21,"statement":"A especificação de web services com uma descrição clara e abrangente da funcionalidade e da interface do serviço, sem expor detalhes internos de implementação, facilita a integração e o reúso em diferentes contextos de aplicação.","answer":"C","source":{"slug":"FUNPRESP_24_EXE","ano":2024},"explanation":{"verdict_reason":"A razão de existir da especificação de um web service é publicar o contrato — o que o serviço faz e como chamá-lo — escondendo a implementação. Descrição clara da funcionalidade e da interface sem expor detalhes internos é o que permite que sistemas heterogêneos integrem e reusem o serviço em contextos diferentes. O item enuncia esse princípio.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Contrato público, implementação oculta","citation":null,"trap_note":"Publicar o contrato e esconder a implementação é a ideia que organiza todo o tópico. Item que exige do consumidor conhecimento interno do serviço contraria essa ideia."}},{"id":"772cb0c289dd","number":100,"stem":20,"statement":"A WSDL é utilizada para descrever os serviços web, incluindo a localização dos serviços e os métodos disponíveis.","answer":"C","source":{"slug":"PREF_MOSSORO_RN_24","ano":2024},"explanation":{"verdict_reason":"O WSDL é o documento de descrição do serviço web: informa as operações disponíveis, no portType, e o endereço efetivo de acesso, no elemento service com seu port. Descrever o que o serviço oferece e onde ele está é exatamente a sua função. O item está de acordo com a especificação.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"WSDL descreve operações e localização do serviço","citation":"W3C, Web Services Description Language (WSDL) 1.1","trap_note":"Localizar no sentido de informar o endereço é do WSDL; localizar no sentido de procurar um serviço desconhecido na rede é do UDDI. A banca explora essa ambiguidade."}},{"id":"d3ff22349c59","number":101,"stem":21,"statement":"A especificação de web services em SOAP é baseada na estrutura XML padronizada e no suporte nativo a descrições de serviço via URIs para identificar recursos.","answer":"E","source":{"slug":"FUNPRESP_24_EXE","ano":2024},"explanation":{"verdict_reason":"A primeira metade está certa: SOAP é baseado em estrutura XML padronizada. A segunda metade descreve o REST — identificar recursos por URI é restrição do estilo arquitetural REST, não característica do SOAP, que expõe tipicamente um único endpoint e descreve o serviço em WSDL. A propriedade de um mundo foi colada no outro.","distortion_type":"atribuicao_errada","distorted_span":"no suporte nativo a descrições de serviço via URIs para identificar recursos","corrected_statement":"A especificação de web services em SOAP é baseada na estrutura XML padronizada e no suporte a descrições de serviço via WSDL, que informa o que o serviço faz, como se comunica e onde está.","concept":"Identificar recursos por URI é do REST, não do SOAP","citation":null,"trap_note":"Metade certa, metade emprestada do vizinho é o formato preferido da banca neste tópico. Confira as duas metades separadamente e pergunte de que mundo é cada propriedade citada."}},{"id":"a1ef6c19ee87","number":102,"stem":22,"statement":"APIs RESTful utilizam formatos leves, como JSON ou XML, enquanto APIs SOAP utilizam exclusivamente XML para a troca de dados.","answer":"C","source":{"slug":"FUNPRESP_24_EXE","ano":2024},"explanation":{"verdict_reason":"O contraste está correto nas duas metades: o REST admite qualquer representação negociada, e JSON e XML são as usuais, ao passo que o SOAP prende a mensagem ao envelope XML por definição da especificação. É a comparação padrão entre os dois estilos de API.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"REST com formato negociado × SOAP exclusivamente XML","citation":null,"trap_note":"Este é o enunciado correto do par que a banca inverte em outros itens. Guarde o exclusivamente do lado do SOAP: é ali que ele é verdadeiro."}},{"id":"3eab571d1326","number":107,"stem":23,"statement":"No referido código, o termo transport indica que o ESB será acessado por meio da URL a seguir. http://schemas.xmlsoap.org/soap/http","answer":"E","source":{"slug":"TCE_AC_24","ano":2024},"explanation":{"verdict_reason":"No binding, o atributo transport identifica a tecnologia sobre a qual as mensagens trafegam, e a URI http://schemas.xmlsoap.org/soap/http é apenas o identificador de SOAP sobre HTTP — não é endereço de acesso a nada. O endereço efetivo do serviço fica no elemento port, em soap:address location. A ação descrita é de outro elemento.","distortion_type":"atribuicao_errada","distorted_span":"o termo transport indica que o ESB será acessado por meio da URL a seguir","corrected_statement":"No referido código, o termo transport indica que as mensagens trafegarão sobre HTTP, conforme o identificador a seguir. http://schemas.xmlsoap.org/soap/http","concept":"transport identifica a tecnologia; location informa o endereço","citation":"W3C, Web Services Description Language (WSDL) 1.1 — SOAP binding","trap_note":"URI não é sinônimo de endereço acessível: em XML e em WSDL boa parte das URIs são identificadores de espaço de nomes ou de tecnologia, que nunca serão baixados."}},{"id":"ae0702555d3f","number":51,"stem":24,"statement":"Para garantir uma correta compilação de um código escrito em JavaScript, é necessário que as variáveis sejam definidas e inicializadas antes de seu uso no código.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"JavaScript não passa por uma compilação prévia que exija declaração e inicialização antecipadas: é uma linguagem interpretada, de tipagem dinâmica, em que as declarações com var são içadas para o topo do escopo e uma variável usada antes da atribuição simplesmente vale undefined. A exigência descrita é de linguagens compiladas e de tipagem estática. Ela não se aplica aqui.","distortion_type":"escopo_ampliado","distorted_span":"é necessário que as variáveis sejam definidas e inicializadas antes de seu uso no código","corrected_statement":"Para garantir uma correta execução de um código escrito em JavaScript, não é necessário que as variáveis sejam definidas e inicializadas antes de seu uso no código.","concept":"JavaScript é interpretada, com tipagem dinâmica e içamento","citation":null,"trap_note":"Regra verdadeira em uma linguagem aplicada a outra é distorção frequente. Antes de julgar, pergunte se a exigência é de compilação estática ou de interpretação dinâmica."}},{"id":"371b11e23cb5","number":53,"stem":24,"statement":"Web Service possibilita que recursos sejam disponibilizados para aplicações clientes, mesmo que estejam em sistemas diferentes e usando linguagens distintas.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"A independência de plataforma e de linguagem é a propriedade que define o web service: o contrato é publicado em formato neutro e processável por máquina, de modo que cliente e provedor podem estar em sistemas e linguagens diferentes. É por isso que o modelo resolve integração entre sistemas heterogêneos.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Web service integra sistemas e linguagens distintos","citation":null,"trap_note":"Guarde este enunciado como a versão verdadeira: qualquer item que acrescente a condição de mesma linguagem, mesmo sistema operacional ou mesmo hardware está negando o que aqui se afirma."}},{"id":"7893cdebae6c","number":55,"stem":25,"statement":"A principal diferença entre uma intranet e uma extranet é que a primeira é uma rede de uso restrito, enquanto a segunda é uma rede de uso público.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"A extranet não é rede de uso público: ela é a extensão controlada da intranet a parceiros externos — fornecedores, clientes, filiais —, com autenticação e permissões. Rede de uso público é a Internet. A distinção correta é entre acesso interno e acesso externo autorizado, não entre restrito e público.","distortion_type":"troca_de_termo","distorted_span":"enquanto a segunda é uma rede de uso público","corrected_statement":"A principal diferença entre uma intranet e uma extranet é que a primeira é uma rede de uso restrito aos membros da organização, enquanto a segunda estende esse acesso, de forma controlada, a parceiros externos.","concept":"Extranet é acesso externo autorizado, não acesso público","citation":null,"trap_note":"Três níveis, três nomes: intranet para dentro, extranet para parceiros autorizados, Internet para todos. Item que chama extranet de pública trocou a extranet pela Internet."}},{"id":"3c2c4d261d5d","number":56,"stem":25,"statement":"Os registros UDDI podem estar disponíveis de forma pública ou privada.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"O UDDI foi concebido tanto para registros públicos na Internet quanto para registros privados, mantidos dentro da infraestrutura de uma organização ou compartilhados por um grupo de parceiros. Não há restrição a uma dessas formas. O item enuncia essa flexibilidade.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Registros UDDI podem ser públicos ou privados","citation":"OASIS UDDI (Universal Description, Discovery and Integration)","trap_note":"O fim dos grandes registros públicos não retirou o UDDI do papel: em prova ele continua sendo o componente de publicação e descoberta, público ou interno."}},{"id":"049bb41a0751","number":58,"stem":25,"statement":"No XSLT, o processo de transformação do documento XML usa XPath.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"A folha XSLT casa modelos com nós do documento de entrada, e a linguagem usada para navegar e selecionar esses nós é o XPath — nas expressões de match, de select e nas condições. Sem XPath não há como endereçar o que será transformado. O item afirma essa dependência corretamente.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"XSLT usa XPath para selecionar nós","citation":"W3C, XSL Transformations (XSLT)","trap_note":"Separe os três papéis do mundo XML: XSD valida, XPath localiza, XSLT transforma. O XSLT usa o XPath; nenhum dos dois substitui o outro."}},{"id":"d4b12ee650e0","number":66,"stem":26,"statement":"A integração do tipo nativa é realizada por meio do desenvolvimento e da manutenção de APIs de integração personalizadas internamente, utilizando-se de equipes capazes de projetar, implantar e manter as APIs em conformidade com as especificações da integração.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"O que o item descreve — equipes internas projetando, implantando e mantendo APIs feitas sob medida — é a integração personalizada, como o próprio texto denuncia ao falar em APIs personalizadas. Integração nativa é a que já vem pronta no produto, oferecida pelo fornecedor como conector embutido, sem desenvolvimento próprio. O rótulo foi trocado pelo do tipo vizinho.","distortion_type":"troca_de_termo","distorted_span":"A integração do tipo nativa","corrected_statement":"A integração do tipo personalizada é realizada por meio do desenvolvimento e da manutenção de APIs de integração personalizadas internamente, utilizando-se de equipes capazes de projetar, implantar e manter as APIs em conformidade com as especificações da integração.","concept":"Integração nativa vem pronta; personalizada é desenvolvida internamente","citation":null,"trap_note":"Quando o item define um tipo, leia a definição antes do rótulo e pergunte de qual tipo ela é. Aqui o próprio corpo da frase dizia personalizada enquanto o rótulo dizia nativa."}},{"id":"739f837c155a","number":68,"stem":26,"statement":"Web service é um modelo de computação distribuída que depende dos sistemas operacionais, porém independe da linguagem de desenvolvimento e do hardware onde os sistemas integrados são processados.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"A razão de existir do web service é a independência total do ambiente: de linguagem, de plataforma, de sistema operacional e de hardware — é isso que permite integrar sistemas que ninguém combinou. Criar dependência do sistema operacional contraria justamente a propriedade que define o modelo. As demais independências citadas estão certas; a inventada é o erro.","distortion_type":"inversao","distorted_span":"depende dos sistemas operacionais","corrected_statement":"Web service é um modelo de computação distribuída que independe dos sistemas operacionais, da linguagem de desenvolvimento e do hardware onde os sistemas integrados são processados.","concept":"Web service independe de linguagem, plataforma, SO e hardware","citation":null,"trap_note":"Dependência inventada é padrão fixo aqui: desde que usem a mesma linguagem, depende do sistema operacional, desde que haja DTD. A condição acrescentada é o próprio erro."}},{"id":"de8dd24c7afa","number":69,"stem":26,"statement":"As APIs do tipo REST, também chamadas de APIs RESTful, utilizam o protocolo HTTP e oferecem suporte à criptografia TLS (Transport Layer Security), mantendo a privacidade em uma conexão HTTPS na Internet.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"APIs REST usam o HTTP como protocolo de aplicação e, por isso, herdam toda a infraestrutura da web, inclusive o TLS: sobre HTTPS a conexão fica cifrada e a privacidade do tráfego é preservada. Chamar de RESTful a API que segue as restrições do estilo também é uso corrente. Não há distorção no item.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"REST sobre HTTP herda TLS/HTTPS para proteger o canal","citation":null,"trap_note":"No REST a segurança padrão é de canal, com TLS e complementos como OAuth e JWT; no SOAP existe também a segurança de mensagem, com WS-Security. Não troque os dois níveis."}},{"id":"4f695812efc1","number":70,"stem":26,"statement":"APIs do tipo SOAP utilizam protocolo com estrutura de mensagem restrita que independe de XML.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"A primeira metade está certa: o SOAP é um protocolo com estrutura de mensagem rígida, o envelope com Header opcional e Body obrigatório. Mas essa estrutura é definida em XML e não existe SOAP fora dele — a dependência do XML é constitutiva do protocolo. Dizer que independe de XML inverte a característica.","distortion_type":"inversao","distorted_span":"que independe de XML","corrected_statement":"APIs do tipo SOAP utilizam protocolo com estrutura de mensagem restrita que depende de XML.","concept":"O envelope SOAP é sempre XML","citation":"W3C, SOAP Version 1.2 Part 1: Messaging Framework","trap_note":"Independência é palavra que o web service tem em relação a linguagem, plataforma e sistema operacional, nunca em relação ao XML quando o protocolo é SOAP."}},{"id":"a9cf60be8d81","number":114,"stem":27,"statement":"Um documento Swagger é o equivalente a API REST de um documento WSDL para um serviço web baseado em SOAP.","answer":"C","source":{"slug":"INPI_23","ano":2023},"explanation":{"verdict_reason":"Um documento Swagger, hoje OpenAPI, cumpre para uma API REST a mesma função que o WSDL cumpre para um serviço SOAP: é o contrato legível por máquina que descreve operações, parâmetros, respostas e segurança, permitindo gerar clientes e documentação. A equivalência de papéis é exata.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"OpenAPI/Swagger é o WSDL do mundo REST","citation":null,"trap_note":"Guarde a analogia por papel, não por tecnologia: os dois descrevem, nenhum dos dois transporta. A diferença é que o WSDL é praticamente obrigatório no SOAP e o documento OpenAPI é opcional no REST."}},{"id":"6cd6cb49c4b5","number":60,"stem":28,"statement":"Ao se implementar uma classe com o uso do Apache CXF para interpretar as chamadas ao serviço, são utilizadas informações da anotação WebService.","answer":"C","source":{"slug":"PGE_RJ_22","ano":2022},"explanation":{"verdict_reason":"O Apache CXF implementa o modelo de serviços em Java em que a classe é marcada com a anotação WebService: é dela que a infraestrutura extrai o nome do serviço, o espaço de nomes e as operações expostas, gerando o WSDL e interpretando as chamadas recebidas. O item descreve corretamente esse uso.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Anotação WebService expõe a classe como serviço no CXF","citation":null,"trap_note":"No mundo Java, a anotação é o contrato declarado no código, do qual a ferramenta deriva o WSDL. Contrato primeiro ou código primeiro são as duas abordagens; a anotação é a segunda."}},{"id":"32563af31b2b","number":67,"stem":29,"statement":"Um componente de uma arquitetura orientada a serviços (SOAP) é a descrição WSDL, que é responsável por encontrar um serviço e sua descrição na Web.","answer":"E","source":{"slug":"PGE_RJ_22","ano":2022},"explanation":{"verdict_reason":"Encontrar um serviço e sua descrição na rede é função do UDDI, o registro de publicação e descoberta. O WSDL é o documento que descreve o serviço já localizado — o que ele faz, como se comunica e onde está —, mas não realiza busca alguma. A ação existe na arquitetura, porém pertence a outro componente.","distortion_type":"atribuicao_errada","distorted_span":"que é responsável por encontrar um serviço e sua descrição na Web","corrected_statement":"Um componente de uma arquitetura orientada a serviços (SOAP) é a descrição WSDL, que é responsável por descrever o que o serviço faz, como ele se comunica e onde está.","concept":"Descobrir é do UDDI; descrever é do WSDL","citation":null,"trap_note":"O verbo entrega o papel: descrever é WSDL, publicar e encontrar é UDDI, transportar é SOAP. Leia o verbo antes da sigla."}},{"id":"953e96cec4a0","number":85,"stem":30,"statement":"Universal Description, Discovery and Integration (UDDI) é a representação de dados e metadados sobre serviços da Web e consiste de um registro, para uso em uma rede pública ou na infraestrutura interna de uma organização, para classificar, catalogar e gerenciar serviços.","answer":"C","source":{"slug":"FUB_22","ano":2022},"explanation":{"verdict_reason":"O UDDI é a representação de dados e metadados sobre serviços web organizada como um registro, que pode servir tanto a uma rede pública quanto à infraestrutura interna de uma organização. Sua função é classificar, catalogar e gerenciar serviços para que sejam descobertos. O item reproduz a definição.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"UDDI é registro público ou privado de serviços","citation":"OASIS UDDI (Universal Description, Discovery and Integration)","trap_note":"Retenha o público ou privado: itens que restringem o UDDI a registros mundiais e abertos, ou apenas a registros internos, erram por estreitar o alcance."}},{"id":"44a894e86760","number":65,"stem":31,"statement":"Web service é um sistema de software projetado para suportar interação entre máquinas através de uma rede; esse sistema possui uma interface descrita em formato processável por máquina, especificamente o WSDL (web services descriptor language).","answer":"C","source":{"slug":"PETROBRAS_21_NS","ano":2021},"explanation":{"verdict_reason":"A definição é a da arquitetura de web services do W3C: sistema de software projetado para suportar a interação entre máquinas por uma rede, com interface descrita em formato processável por máquina — e o formato canônico dessa descrição é o WSDL. O item reproduz a definição e nomeia corretamente o documento de descrição.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Definição W3C de web service e papel do WSDL","citation":"W3C, Web Services Architecture","trap_note":"Guarde a definição inteira: interação entre máquinas, por rede, com interface processável por máquina. A banca ataca cada uma dessas três marcas em itens diferentes."}},{"id":"658a046669f8","number":66,"stem":31,"statement":"Uma das vantagens do SOAP é a sua utilização correta dos métodos HTML (PUT, GET, POST, DELETE), enquanto o REST utiliza apenas o método POST para realizar as requisições através de um arquivo XML.","answer":"E","source":{"slug":"PETROBRAS_21_NS","ano":2021},"explanation":{"verdict_reason":"As duas descrições estão trocadas de lugar: quem usa os verbos com semântica própria — GET, POST, PUT, DELETE — é o REST; o SOAP trata o HTTP como mero transporte e trafega tipicamente por POST. Além disso os métodos citados são do HTTP, não do HTML. Basta conferir o par para derrubar o item.","distortion_type":"inversao","distorted_span":"a sua utilização correta dos métodos HTML (PUT, GET, POST, DELETE), enquanto o REST utiliza apenas o método POST","corrected_statement":"Uma das vantagens do REST é a sua utilização correta dos métodos HTTP (PUT, GET, POST, DELETE), enquanto o SOAP utiliza tipicamente apenas o método POST para realizar as requisições através de um arquivo XML.","concept":"Verbos HTTP com semântica são do REST; SOAP usa HTTP como transporte","citation":null,"trap_note":"Quando o item descreve SOAP e REST na mesma frase, leia as duas metades como um par e teste a troca: se ficar verdadeiro ao inverter os nomes, o gabarito é errado."}},{"id":"87c33f110809","number":68,"stem":31,"statement":"Os protocolos SOAP e REST são os padrões mais utilizados na comunicação entre os sistemas por meio do web service; esses protocolos, unidos à estrutura básica XML, compõem a estrutura básica dos web services.","answer":"C","source":{"slug":"PETROBRAS_21_NS","ano":2021},"explanation":{"verdict_reason":"O item afirma o essencial: SOAP e REST são os dois padrões dominantes de comunicação entre sistemas por web services, e o XML compõe a base clássica dessa pilha, do envelope SOAP ao WSDL. É a caracterização geral do tópico, e é por ela que o item é julgado.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"SOAP e REST como os dois padrões dominantes de web services","citation":null,"trap_note":"Aqui a banca cobra o reconhecimento dos dois padrões. Em outros itens ela cobra a taxonomia fina — SOAP é protocolo e REST é estilo arquitetural —, e aí a distinção decide."}},{"id":"af6fb6cda297","number":66,"stem":32,"statement":"A criação de serviços por meio de web services atende os requisitos II e III, desde que esses serviços não sejam realizados por meio de REST, uma vez que, no RESTful, as transações são inter-relacionadas, ou seja, não pode haver serviços autônomos.","answer":"E","source":{"slug":"DPDF_20_ANALISTA","ano":2020},"explanation":{"verdict_reason":"A justificativa é o oposto do que o REST determina: uma das suas restrições é a ausência de estado, isto é, cada requisição carrega tudo o que é preciso para ser compreendida e nada depende de transações anteriores. Serviços REST são, portanto, plenamente compatíveis com componentes autônomos e com independência de linguagem e plataforma. Não há a restrição inventada pelo item.","distortion_type":"inversao","distorted_span":"no RESTful, as transações são inter-relacionadas, ou seja, não pode haver serviços autônomos","corrected_statement":"A criação de serviços por meio de web services atende os requisitos II e III, inclusive quando esses serviços são realizados por meio de REST, uma vez que, no RESTful, as requisições são independentes entre si, ou seja, pode haver serviços autônomos.","concept":"REST é sem estado: requisições independentes","citation":null,"trap_note":"Ausência de estado é a restrição do REST mais atacada. Sessão guardada no servidor, transações encadeadas, dependência de requisição anterior: qualquer uma dessas marcas contraria o estilo."}},{"id":"b7d673a1c3b8","number":67,"stem":32,"statement":"Para atender os requisitos I e IV, é correto utilizar SOA, que, além de ser uma forma de desenvolvimento de sistemas distribuídos por meio de protocolos de web services, possui mecanismos básicos para a troca de informações de serviço (SOAP) e padrões de linguagem da programação (WS- BPEL) baseados em XML.","answer":"C","source":{"slug":"DPDF_20_ANALISTA","ano":2020},"explanation":{"verdict_reason":"SOA é uma forma de construir sistemas distribuídos a partir de serviços, o que atende ao requisito de arquitetura distribuída; e sua pilha clássica é toda baseada em XML — o SOAP para a troca de mensagens e o WS-BPEL para descrever a composição dos serviços em processos. Os dois requisitos citados ficam cobertos pelos padrões nomeados.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"SOA distribuída sobre padrões XML: SOAP e WS-BPEL","citation":null,"trap_note":"Fixe o papel do WS-BPEL: orquestrar, isto é, compor serviços em um processo de negócio. Ele não transporta mensagem (SOAP) nem descreve interface (WSDL)."}},{"id":"349b94bc19f0","number":71,"stem":33,"statement":"A estrutura a seguir descreve corretamente, na notação JSON, um veículo da marca ABC, modelo G5 e ano 2019. [marca:\"ABC\";modelo:\"G5\";ano:\"2019\"]","answer":"E","source":{"slug":"DPDF_20_ANALISTA","ano":2020},"explanation":{"verdict_reason":"A notação apresentada não é JSON: um objeto JSON é delimitado por chaves, tem os nomes das propriedades entre aspas duplas e separa os pares por vírgula. Colchetes delimitam vetores, nomes sem aspas não são aceitos e o ponto e vírgula não é separador da notação. A estrutura correta seria {\"marca\":\"ABC\",\"modelo\":\"G5\",\"ano\":\"2019\"}.","distortion_type":"troca_de_termo","distorted_span":"[marca:\"ABC\";modelo:\"G5\";ano:\"2019\"]","corrected_statement":"A estrutura a seguir descreve corretamente, na notação JSON, um veículo da marca ABC, modelo G5 e ano 2019. {\"marca\":\"ABC\",\"modelo\":\"G5\",\"ano\":\"2019\"}","concept":"Objeto JSON: chaves, nomes entre aspas, vírgula como separador","citation":null,"trap_note":"Em item de sintaxe JSON confira três coisas na ordem: delimitador (chave para objeto, colchete para vetor), aspas duplas nos nomes e vírgula entre os pares."}},{"id":"fa6b9c5d0490","number":72,"stem":33,"statement":"WSDL é utilizada em web services para a definição de suas interfaces em relação a três aspectos: o que faz o serviço, como ele se comunica e onde encontrá-lo.","answer":"C","source":{"slug":"DPDF_20_ANALISTA","ano":2020},"explanation":{"verdict_reason":"É a síntese clássica do WSDL: types, message e portType dizem o que o serviço faz; binding diz como ele se comunica; service e port dizem onde encontrá-lo. As três perguntas são exatamente os três aspectos que o item enumera.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"WSDL responde: o que faz, como se comunica, onde está","citation":"W3C, Web Services Description Language (WSDL) 1.1","trap_note":"Decore a tríade o que faz, como se comunica, onde está e associe cada pergunta ao elemento: portType, binding e service/port. Ela resolve quase todo item de WSDL."}},{"id":"00a682bd5288","number":73,"stem":33,"statement":"O código a seguir está correto de acordo com os padrões da sintaxe do XML. <?xml version=\"1.0\" encoding=\"UTF-8\"?> <menu> <bebida> <nome>Água<nome> <preco>R$2,50<preco> </bebida> <bebida> <nome>Vinho<nome> <preco>R$32,50<preco> </bebida> </menu>","answer":"E","source":{"slug":"DPDF_20_ANALISTA","ano":2020},"explanation":{"verdict_reason":"O XML é bem formado apenas quando cada elemento é fechado com a marcação correspondente iniciada por barra. No trecho, nome e preco são reabertos em vez de fechados — falta a barra em cada marcação de fechamento —, de modo que o documento não atende à regra de boa formação e nenhum analisador o aceitará.","distortion_type":"troca_de_termo","distorted_span":"<nome>Água<nome>","corrected_statement":"O código a seguir está correto de acordo com os padrões da sintaxe do XML. <?xml version=\"1.0\" encoding=\"UTF-8\"?> <menu> <bebida> <nome>Água</nome> <preco>R$2,50</preco> </bebida> <bebida> <nome>Vinho</nome> <preco>R$32,50</preco> </bebida> </menu>","concept":"XML bem formado exige marcação de fechamento com barra","citation":"W3C, Extensible Markup Language (XML) 1.0","trap_note":"Boa formação em XML é checada por três regras: elemento único de raiz, todo elemento fechado e aninhamento sem cruzamento. É diferente de validade, que é a conformidade a um DTD ou esquema."}},{"id":"4191da3fc47f","number":99,"stem":34,"statement":"Em um serviço web REST, as solicitações feitas ao URI (uniform resource identifier) de um recurso obterão uma resposta com uma carga formatada em HTML, XML, JSON ou em outro formato suportado.","answer":"C","source":{"slug":"DPDF_20_ANALISTA","ano":2020},"explanation":{"verdict_reason":"No REST o recurso é identificado por uma URI, e o que trafega é uma representação dele — o formato não é fixado pelo estilo e resulta da negociação de conteúdo entre cliente e servidor. JSON, XML, HTML ou qualquer outro tipo de mídia suportado são respostas legítimas. O item enuncia essa liberdade de representação.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"REST devolve representações em formato negociado","citation":null,"trap_note":"Formato livre é do REST; XML obrigatório é do SOAP. Item que prende o REST a um único formato, ou que solta o SOAP do XML, está trocando os dois mundos."}},{"id":"2673cd975eba","number":100,"stem":34,"statement":"Em geral, um serviço web REST fornece interoperabilidade entre sistemas de computadores em redes com TCP/IP.","answer":"C","source":{"slug":"DPDF_20_ANALISTA","ano":2020},"explanation":{"verdict_reason":"Serviços REST trafegam sobre HTTP, que roda sobre a pilha TCP/IP, e expõem uma interface uniforme independente de linguagem e de plataforma. Essa combinação é o que lhes permite interligar sistemas heterogêneos em rede. A afirmação é a caracterização geral e correta do estilo.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"REST sobre HTTP/TCP-IP promove interoperabilidade","citation":null,"trap_note":"Interoperabilidade entre sistemas heterogêneos é o objetivo comum de SOAP e REST. O que muda é o preço: rigor de contrato de um lado, simplicidade da web do outro."}},{"id":"8abc4dc4f80c","number":91,"stem":35,"statement":"Um web service pode assumir o papel de provedor de serviço e de consumidor de serviço.","answer":"C","source":{"slug":"SLU_DF_19","ano":2019},"explanation":{"verdict_reason":"Provedor e consumidor são papéis exercidos em uma interação, não naturezas fixas de um componente: um mesmo serviço atende chamadas de terceiros e, para cumprir sua função, invoca outros serviços. É essa composição que sustenta a orquestração em SOA. Por isso a afirmação é correta.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Provedor e consumidor são papéis, não naturezas fixas","citation":null,"trap_note":"Em SOA, papel depende da interação. Item que fixe um serviço em um único papel, ou que negue a composição entre serviços, contraria o princípio de composição."}},{"id":"357beffb7d2a","number":81,"stem":36,"statement":"CORBA é um padrão para integração desacoplada de sistemas que possibilita interligar sistemas com o mínimo de acoplamento e de segurança possível e com a vantagem de tais sistemas não necessitarem estar online para receber os dados no exato momento em que sejam enviados.","answer":"E","source":{"slug":"PREF_JP_17_CGM","ano":2017},"explanation":{"verdict_reason":"CORBA é middleware de objetos distribuídos com invocação tipicamente síncrona: cliente e servidor precisam estar disponíveis no momento da chamada, pois o requisitante fica aguardando a resposta pelo ORB. Entregar dados sem que o destino esteja on-line no instante do envio é característica de mensageria, com filas que armazenam e encaminham depois. A vantagem descrita é de outra tecnologia.","distortion_type":"atribuicao_errada","distorted_span":"a vantagem de tais sistemas não necessitarem estar online para receber os dados no exato momento em que sejam enviados","corrected_statement":"CORBA é um padrão para integração desacoplada de sistemas que possibilita interligar sistemas com o mínimo de acoplamento e de segurança possível, sendo a invocação tipicamente síncrona, de modo que as partes precisam estar disponíveis no momento da chamada.","concept":"CORBA é síncrono; entrega diferida é da mensageria","citation":null,"trap_note":"Síncrono × assíncrono decide a comparação entre CORBA, RPC e mensageria: fila desacopla no tempo, chamada remota não. Achou não precisar estar on-line, pense em MOM."}},{"id":"2e5947c7f384","number":82,"stem":36,"statement":"Web services permitem disponibilizar serviços de forma agnóstica quando a UDDI (universal description, discovery and integration) estabelece um formato padrão de mensagem que consiste em um documento XML capaz de hospedar dados RPC centrados em documentos, para que haja intercâmbio de dados de modelos síncronos (pedido e resposta) e assíncronos (orientados a processo).","answer":"E","source":{"slug":"PREF_JP_17_CGM","ano":2017},"explanation":{"verdict_reason":"Estabelecer um formato padrão de mensagem em documento XML, capaz de transportar chamadas remotas e trocas síncronas ou assíncronas, é a descrição do SOAP. O UDDI não define formato de mensagem: é o registro que classifica, cataloga e permite descobrir serviços. A ação descrita pertence a outra peça da pilha.","distortion_type":"atribuicao_errada","distorted_span":"a UDDI (universal description, discovery and integration) estabelece um formato padrão de mensagem","corrected_statement":"Web services permitem disponibilizar serviços de forma agnóstica quando o SOAP (simple object access protocol) estabelece um formato padrão de mensagem que consiste em um documento XML capaz de hospedar dados RPC centrados em documentos, para que haja intercâmbio de dados de modelos síncronos (pedido e resposta) e assíncronos (orientados a processo).","concept":"Formato de mensagem é do SOAP; registro é do UDDI","citation":null,"trap_note":"Quando a frase descreve um envelope, um formato de mensagem ou um documento XML que carrega a chamada, o sujeito só pode ser SOAP. Se a sigla no sujeito for outra, o item está errado."}},{"id":"cade47acac7a","number":61,"stem":37,"statement":"Para o intercâmbio de informações em webservices, a linguagem de definição do serviço considerada adotada é a WSDL (Web Service Description Language).","answer":"C","source":{"slug":"FUNPRESP_16_JUD","ano":2016},"explanation":{"verdict_reason":"Nos padrões de interoperabilidade de governo eletrônico, a linguagem de definição de serviços para intercâmbio por web services é o WSDL, situado como adotado. É o documento que descreve a interface do serviço no padrão de interoperabilidade. O item apenas nomeia essa escolha.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"ePING adota WSDL como linguagem de definição de serviço","citation":"Padrões de Interoperabilidade de Governo Eletrônico (e-PING)","trap_note":"Em item de e-PING, verifique o par tecnologia e situação — adotado, recomendado, em transição ou em estudo. Trocar a situação é distorção tão comum quanto trocar a tecnologia."}},{"id":"e274dc32b2a4","number":73,"stem":38,"statement":"Os documentos técnicos e de suporte necessários a desenvolvedores que utilizem web services não são armazenados no registro do UDDI.","answer":"C","source":{"slug":"FUNPRESP_16_JUD","ano":2016},"explanation":{"verdict_reason":"O registro UDDI guarda dados e metadados sobre os serviços — quem publica, em que categoria se enquadra e como chamá-lo — e ponteiros para as descrições. A documentação técnica e de apoio ao desenvolvedor fica fora do registro, hospedada pelo provedor; o UDDI aponta para ela, não a armazena. O item afirma exatamente isso.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"UDDI aponta para os documentos, não os hospeda","citation":null,"trap_note":"Catalogar não é hospedar. O registro guarda metadados e referências; os artefatos técnicos permanecem com o provedor do serviço."}},{"id":"529ed9d1dbf4","number":82,"stem":39,"statement":"No arquivo XSLT, a inclusão do elemento <xsl:sort> em qualquer ponto do documento garante que os dados de saída sejam ordenados.","answer":"E","source":{"slug":"TCE_PA_16","ano":2016},"explanation":{"verdict_reason":"O elemento xsl:sort só tem efeito onde a especificação permite que ele apareça: como filho de xsl:for-each ou de xsl:apply-templates, ordenando a lista de nós que aquele elemento processa. Colocado em qualquer outro ponto, o documento sequer é uma folha de estilo válida. O absoluto qualquer ponto é o que derruba o item.","distortion_type":"generalizacao","distorted_span":"em qualquer ponto do documento","corrected_statement":"No arquivo XSLT, a inclusão do elemento <xsl:sort> como filho de <xsl:for-each> ou de <xsl:apply-templates> garante que os dados de saída sejam ordenados.","concept":"xsl:sort só vale dentro de for-each ou apply-templates","citation":"W3C, XSL Transformations (XSLT) — elemento xsl:sort","trap_note":"Qualquer, sempre, automaticamente e basta são gatilhos. Achado o absoluto, procure o caso que ele exclui antes de julgar o resto da frase."}},{"id":"14e4406834b4","number":83,"stem":39,"statement":"Um nó UDDI é membro de um único registro UDDI.","answer":"C","source":{"slug":"TCE_PA_16","ano":2016},"explanation":{"verdict_reason":"Na arquitetura do UDDI, um registro é formado por um ou mais nós que compartilham o mesmo conjunto de dados, e cada nó pertence a um único registro. Não há nó servindo simultaneamente a dois registros. O item reproduz essa regra de composição.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Um nó UDDI pertence a um único registro","citation":"OASIS UDDI Version 3 — Specification","trap_note":"Registro é o conjunto, nó é a instância que o serve. A relação é de um para muitos do registro para os nós, nunca de muitos para muitos."}},{"id":"9c879fc65434","number":84,"stem":39,"statement":"Em um serviço definido por meio de WSDL, o elemento portType provê as definições de tipos de dados utilizados para descrever as mensagens trocadas.","answer":"E","source":{"slug":"TCE_PA_16","ano":2016},"explanation":{"verdict_reason":"Quem provê as definições de tipos de dados no WSDL é o elemento types, normalmente com um esquema XML embutido. O portType agrupa as operações do serviço, cada uma com suas mensagens de entrada e saída. O item descreve a função de types atribuindo-a ao portType.","distortion_type":"troca_de_termo","distorted_span":"o elemento portType provê as definições de tipos de dados","corrected_statement":"Em um serviço definido por meio de WSDL, o elemento types provê as definições de tipos de dados utilizados para descrever as mensagens trocadas.","concept":"types define tipos; portType define operações","citation":"W3C, Web Services Description Language (WSDL) 1.1","trap_note":"É o par mais cobrado do WSDL. Guarde a ordem dos elementos como uma escada: types tipa, message monta, portType agrupa operações, binding concretiza, service publica o endereço."}},{"id":"9b5688819ef1","number":85,"stem":39,"statement":"Comparativamente ao XML, o parsing de informações em JSON é mais rápido devido ao fato de ser capaz de executar instruções de processamento.","answer":"E","source":{"slug":"TCE_PA_16","ano":2016},"explanation":{"verdict_reason":"O JSON é realmente analisado mais rápido que o XML, mas pelo motivo oposto ao alegado: ele é um formato de dados puro, sem instruções de processamento, sem espaços de nomes e sem metadados, o que torna o analisador simples. Quem admite instruções de processamento é o XML. A causa apontada é invertida.","distortion_type":"relacao_causal","distorted_span":"devido ao fato de ser capaz de executar instruções de processamento","corrected_statement":"Comparativamente ao XML, o parsing de informações em JSON é mais rápido devido ao fato de ser um formato mais simples, sem instruções de processamento nem metadados.","concept":"JSON é rápido por ser simples, não por processar instruções","citation":null,"trap_note":"Conclusão certa com causa errada continua sendo item errado. Quando a frase tem devido a, porque ou para, julgue a causa separadamente do efeito."}},{"id":"378daa8279f2","number":86,"stem":39,"statement":"No modelo de processamento SOAP, as mensagens não são coordenadas nem se correlacionam.","answer":"C","source":{"slug":"TCE_PA_16","ano":2016},"explanation":{"verdict_reason":"O modelo de processamento SOAP trata cada mensagem isoladamente: define como um nó a recebe, interpreta os cabeçalhos e a repassa, mas não estabelece qualquer coordenação ou correlação entre mensagens distintas. Ligar pedido e resposta depende de um valor comum acordado entre as partes ou de especificações complementares, como o WS-Addressing. O item enuncia essa limitação do protocolo.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"SOAP não coordena nem correlaciona mensagens por si","citation":"W3C, SOAP Version 1.2 Part 1: Messaging Framework — SOAP Processing Model","trap_note":"Um protocolo faz apenas o que sua especificação define. Tudo o que a pilha WS-* acrescenta — endereçamento, segurança, transação, confiabilidade — existe porque o SOAP puro não faz."}},{"id":"5aaf738225c7","number":87,"stem":39,"statement":"As desvantagens dos esquemas XML incluem a falta de suporte a diferentes tipos de dados.","answer":"E","source":{"slug":"TCE_PA_16","ano":2016},"explanation":{"verdict_reason":"A tipagem rica é justamente a vantagem do XML Schema, e não uma desvantagem: ele traz dezenas de tipos primitivos e permite derivar tipos próprios, o que o DTD não fazia. O item toma o principal ganho do XSD e o apresenta como falta.","distortion_type":"inversao","distorted_span":"a falta de suporte a diferentes tipos de dados","corrected_statement":"As vantagens dos esquemas XML incluem o suporte a diferentes tipos de dados.","concept":"XSD oferece tipagem rica, ao contrário do DTD","citation":"W3C, XML Schema Part 2: Datatypes","trap_note":"XSD × DTD cai pelo mesmo par: o DTD é pobre em tipos e usa sintaxe própria; o XSD é rico em tipos e é escrito em XML. Item que atribui a pobreza ao XSD inverte a comparação."}},{"id":"f3cb45bef5ea","number":96,"stem":40,"statement":"Serviços expressos por meio de contratos web services têm o potencial de evitar completamente a transformação, objetivo-chave dos contratos de serviços padronizados.","answer":"C","source":{"slug":"SEE_16_DF","ano":2016},"explanation":{"verdict_reason":"O princípio do contrato de serviço padronizado existe na SOA justamente para que consumidores diferentes falem a mesma linguagem de dados e nenhuma conversão de formato seja necessária entre eles. Expresso em padrões abertos de web services, o contrato tem o potencial declarado de evitar completamente a transformação. O item enuncia o objetivo-chave do princípio tal como ele é formulado.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Contrato de serviço padronizado visa eliminar transformação de dados","citation":"Thomas Erl, SOA: Principles of Service Design — Standardized Service Contract","trap_note":"Princípios de SOA caem pelo objetivo de cada um: contrato padronizado evita transformação; baixo acoplamento reduz dependência; abstração esconde o detalhe interno; autonomia dá controle sobre o ambiente de execução."}},{"id":"aef6e8f470d1","number":97,"stem":40,"statement":"Por oferecerem um framework de comunicação com base em contratos de serviços fisicamente desacoplados, os web services permitem que um contrato de serviços seja totalmente padronizado, independentemente de sua implementação.","answer":"C","source":{"slug":"SEE_16_DF","ano":2016},"explanation":{"verdict_reason":"Em web services o contrato — WSDL, esquemas XML, políticas — é um artefato separado do código que implementa o serviço. Esse desacoplamento físico é o que permite padronizar o contrato inteiro sem que a padronização dependa da linguagem ou da tecnologia da implementação. Por isso a afirmação é correta.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Contrato fisicamente desacoplado da implementação","citation":null,"trap_note":"Guarde a cadeia: contrato desacoplado da implementação leva a contrato padronizável, que leva a transformação evitada. Os itens de SOA costumam cobrar um elo dessa cadeia por vez."}},{"id":"ca0188447c49","number":100,"stem":41,"statement":"Ao se usar o protocolo SOAP (simple object access protocol), cada solicitação e cada resposta são colocadas em um envelope SOAP, nos momentos de invocação e retorno de um web service, respectivamente.","answer":"C","source":{"slug":"TCE_PA_16","ano":2016},"explanation":{"verdict_reason":"O SOAP funciona por troca de envelopes: a invocação é serializada em um envelope XML enviado ao serviço, e o retorno vem em outro envelope, com o resultado no Body ou um Fault em caso de erro. Uma mensagem por sentido é exatamente o mecanismo descrito.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Cada solicitação e cada resposta viajam em um envelope SOAP","citation":"W3C, SOAP Version 1.2 Part 1: Messaging Framework","trap_note":"Envelope é a palavra que identifica o SOAP em qualquer item. Se a frase fala em envelope, o assunto é SOAP, e valem Header opcional, Body obrigatório e Fault dentro do Body."}},{"id":"04878759003a","number":70,"stem":42,"statement":"As linguagens XML e SOAP são utilizadas para descrever os tipos e as estruturas de dados em SOA; a linguagem WSDL é utilizada para descrever os serviços.","answer":"E","source":{"slug":"TJDFT_15_SERVIDOR","ano":2015},"explanation":{"verdict_reason":"Quem descreve tipos e estruturas de dados nas mensagens é o XML Schema, referenciado no elemento types do WSDL. O SOAP não descreve tipos: ele é o protocolo que empacota a chamada e a resposta em um envelope XML e as transporta. A afirmação sobre o WSDL está certa, mas o papel dado ao SOAP é de outro componente da pilha.","distortion_type":"atribuicao_errada","distorted_span":"As linguagens XML e SOAP são utilizadas para descrever os tipos e as estruturas de dados em SOA","corrected_statement":"As linguagens XML e XML Schema são utilizadas para descrever os tipos e as estruturas de dados em SOA; a linguagem WSDL é utilizada para descrever os serviços.","concept":"XML Schema tipa, SOAP transporta, WSDL descreve","citation":null,"trap_note":"Descrever, publicar e transportar são três papéis distintos: WSDL descreve, UDDI publica, SOAP transporta e XSD tipa. Antes de julgar, diga em voz alta o papel de cada sigla citada."}}]}