BR122022003477A2 - Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita - Google Patents

Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita Download PDF

Info

Publication number
BR122022003477A2
BR122022003477A2 BR122022003477-2A BR122022003477A BR122022003477A2 BR 122022003477 A2 BR122022003477 A2 BR 122022003477A2 BR 122022003477 A BR122022003477 A BR 122022003477A BR 122022003477 A2 BR122022003477 A2 BR 122022003477A2
Authority
BR
Brazil
Prior art keywords
document
enhanced
byte sequence
metadata
encoded content
Prior art date
Application number
BR122022003477-2A
Other languages
English (en)
Inventor
James FREUNDLICH
John GLASE
Kip DAYNARD
Pukar BHANDARI
Original Assignee
Bold Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bold Limited filed Critical Bold Limited
Publication of BR122022003477A2 publication Critical patent/BR122022003477A2/pt

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • G06F16/3323Query formulation using system suggestions using document space presentation or visualization, e.g. category, hierarchy or range presentation and selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/34Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/383Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/106Enforcing content protection by specific content processing
    • G06F21/1063Personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/105Human resources
    • G06Q10/1053Employment or hiring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4446Hiding of documents or document information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/448Rendering the image unintelligible, e.g. scrambling
    • H04N1/4486Rendering the image unintelligible, e.g. scrambling using digital data encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Human Resources & Organizations (AREA)
  • Library & Information Science (AREA)
  • Bioethics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Mathematical Physics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Document Processing Apparatus (AREA)
  • Sheet Holders (AREA)

Abstract

A presente invenção refere-se a sistemas de criação e análise de documentos aprimorados descritos que lidam com documentos aprimorados que permitem a apresentação do conteúdo do documento de uma maneira visual preferida, garantindo que o conteúdo do documento possa ser capturado com precisão por um analisador automatizado sem que nada seja descartado ou deturpado. O sistema de criação de documentos aprimorados pode criar um documento aprimorado codificando o conteúdo do documento de acordo com um esquema definido, criptografando opcionalmente os dados estruturados resultantes em uma sequência de bytes criptografada, e incorporando a sequência de bytes criptografada como metadados não visíveis em um documento renderizado. O documento aprimorado resultante pode ser analisado de forma completa e precisa por um sistema de análise de documentos aprimorados que é capaz de extrair, descriptografar e decodificar os metadados de documento incorporado.

Description

SISTEMAS E MÉTODOS PARA CRIAR DOCUMENTOS APRIMORADOS PARA ANÁLISE AUTOMATIZADA PERFEITA DIVIDIDO DO PEDIDO BR112022001256-0, DEPOSITADO EM 5 DE MARÇO DE 2021 Campo da invenção
[0001] A descrição a seguir geralmente refere-se a sistemas e métodos para criar documentos eletrônicos aprimorados que permitem a análise perfeita dos documentos aprimorados usando métodos automatizados.
Fundamentos da Invenção
[0002] Os documentos eletrônicos são frequentemente armazenados em formatos de arquivo, tal como o formato DOCX do Microsoft Word ou o formato PDF do Adobe Acrobat, que permitem que os documentos sejam renderizados de uma maneira visualmente atraente para um leitor humano. Mas esses formatos geralmente armazenam informações de uma maneira não estruturada, dificultando a interpretação do documento eletrônico pelo software de análise automatizada (ou analisadores), resultando em dados mal interpretados ou mal categorizados. A título de exemplo, um candidato a emprego normalmente prepara um currículo formatado com precisão (por exemplo, tal como um arquivo DOCX ou PDF) que pode ser carregado no processo de envio de uma solicitação de emprego online. O currículo formatado é frequentemente processado por meio de um sistema de triagem de candidatos (ATS) ou outro sistema de revisão de currículo, que pode tentar analisar o currículo usando um software de análise para extrair informações significativas do currículo. O sistema de revisão de currículos pode usar as informações extraídas para filtrar currículos a serem visualizados pela equipe de recursos humanos em uma entidade contratante com base em qualificações pré-selecionadas ou outra análise. Se as informações não forem extraídas corretamente do currículo do candidato a emprego, o currículo pode nunca chegar a um revisor humano ou o revisor humano pode estar visualizando informações incorretas sobre o candidato. Embora certos formatos de arquivo permitam que as informações sejam armazenadas de maneira estruturada (por exemplo, de acordo com um esquema XML ou JSON definido), o que pode melhorar a legibilidade da máquina, esses formatos de dados de texto bruto são incapazes de capturar a maneira na qual essas informações devem ser apresentadas visualmente a um indivíduo. Existe, portanto, uma necessidade pela capacidade de criar documentos eletrônicos que sejam visualmente atraentes para um leitor humano e capazes de serem interpretados com precisão por um analisador.
Sumário da Invenção
[0003] O sistema de criação de documentos aprimorados atualmente descrito procura abordar as limitações mencionadas acima que são enfrentadas quando aplicando técnicas de análise automatizada a documentos não estruturados codificando o conteúdo do documento de acordo com um esquema definido, opcionalmente criptografando os dados estruturados resultantes em uma sequência de bytes criptografada, e incorporando a sequência de bytes criptografada como metadados não visíveis no documento. O documento resultante pode ser analisado de forma completa e precisa por um sistema de análise de documentos aprimorados que é capaz de extrair, descriptografar e decodificar os metadados do documento incorporado. Em algumas modalidades, o sistema de criação de documentos aprimorados pode armazenar o conteúdo do documento codificado (e opcionalmente criptografado) em associação com um identificador de documento, que pode, em vez disso, ser incorporado como metadados não visíveis no documento. Nesses casos, o sistema de análise de documentos aprimorados pode extrair o identificador de documento incorporado, solicitar o conteúdo codificado associado a ele a partir do sistema de criação de documentos aprimorados, e decodificar (e descriptografar) os dados estruturados recebidos a partir do sistema de criação de documentos aprimorados para analisar perfeitamente o documento. Dessa forma, um único documento que pode ser criado permite que um indivíduo apresente o conteúdo do documento em sua maneira visual preferida para obter o máximo impacto, além de garantir que o conteúdo do documento possa ser capturado com precisão pelo analisador, ou outra ferramenta similar, sem nada descartado ou deturpado.
Breve Descrição dos Desenhos
[0004] Os desenhos em anexo, que são incorporados neste documento e fazem parte da especificação, ilustram um ou mais aspectos da presente invenção e, juntamente com a descrição, servem ainda para explicar os princípios da invenção e para permitir que um versado na(s) técnica(s) relevante(s) faça e use a invenção.
[0005] A Figura 1 ilustra um ambiente exemplificativo no qual as técnicas de criação de documentos e de análise de documentos da presente invenção podem ser usadas.
[0006] A Figura 2 ilustra um primeiro exemplo de um elemento gráfico sendo codificado de acordo com um esquema definido.
[0007] A Figura 3 ilustra um segundo exemplo de um elemento gráfico sendo codificado de acordo com um esquema definido.
[0008] A Figura 4 ilustra um terceiro exemplo de um elemento gráfico sendo codificado de acordo com um esquema definido.
[0009] A Figura 5 ilustra um quarto exemplo de um elemento gráfico sendo codificado de acordo com um esquema definido.
[0010] A Figura 6 ilustra uma visão de alto nível de um esquema exemplificativo que o sistema de criação de documentos aprimorados pode empregar para codificar um documento inicial.
[0011] A Figura 7 representa um fluxo lógico de alto nível que o sistema de criação de documentos aprimorados pode empregar na criação de um documento inicial.
[0012] A Figura 8 descreve um fluxo lógico de alto nível que o sistema de criação de documentos aprimorados pode empregar na exportação de um documento inicial como um documento aprimorado.
[0013] A Figura 9 representa um fluxo lógico exemplificativo que o sistema de criação de documentos aprimorados pode empregar na renderização de um documento estruturado.
[0014] A Figura 10 representa um fluxo lógico exemplificativo que o sistema de criação de documentos aprimorados pode empregar para criptografar um documento estruturado.
[0015] A Figura 11 representa um fluxo lógico exemplificativo que o sistema de criação de documentos aprimorados pode empregar para incorporar conteúdo criptografado em um documento renderizado.
[0016] A Figura 12 representa um fluxo lógico de alto nível que o sistema de análise de documentos aprimorado pode seguir na análise de um documento aprimorado.
[0017] A Figura 13 representa um fluxo lógico exemplificativo que o sistema de análise de documentos aprimorado pode empregar para determinar se um documento aprimorado foi modificado.
[0018] As características e vantagens das modalidades descritas tornar-se-ão mais evidentes a partir da descrição detalhada apresentada abaixo quando tomada em conjunto com os desenhos, nos quais caracteres de referência similares identificam elementos correspondentes por toda parte. Nos desenhos, números de referência similares geralmente indicam elementos idênticos, funcionalmente similares e/ou estruturalmente similares. A menos que indicando ao contrário, os desenhos fornecidos ao longo da descrição não devem necessariamente ser interpretados como desenhos em escala.
Descrição Detalhada da Invenção
[0019] A Figura 1 ilustra um ambiente exemplificativo 100 no qual a presente invenção pode ser implantada. Conforme ilustrado, o ambiente 100 pode incluir um ou mais usuários 101, cada um tendo um dispositivo de usuário 102 (por exemplo, um computador pessoal, um telefone celular, um PDA ou similar), que os usuários 101 podem usar para interagir com o sistema de criação de documentos aprimorados 110 e sistema de envio de documentos 160. O sistema de criação de documentos aprimorados 110 pode hospedar uma plataforma de criação de documentos 180 com a qual os usuários 101 podem interagir pela Internet 140 (por exemplo, usando um navegador da rede no dispositivo de usuário 102) para criar e formatar um documento inicial 150, visualizar e atualizar o documento, e exportar o documento como um documento aprimorado 151. A título de exemplo, o sistema de criação de documentos aprimorados 110 pode hospedar uma plataforma de criação de currículo (como www.myperfectresume.com ou www.zety.com) que os usuários 101 podem usar para criar, visualizar e atualizar currículos, e exportar os currículos como documentos de currículo aprimorados. Como outro exemplo, o sistema de criação de documentos aprimorados 110 pode hospedar uma plataforma de preparação de declaração de imposto, através da qual um usuário 101 pode preparar suas declarações de imposto de renda pessoal.
[0020] A plataforma de criação de documentos 180, por exemplo, pode permitir que os usuários 101 criem um documento inicial 150 apresentando ao usuário 101 um formulário preenchível, um assistente que solicita ao usuário 101 informações específicas, um editor WYSWIG ou similar. Em resposta a uma solicitação do usuário para exportar o documento inicial 150 em um formato de arquivo particular (por exemplo, no formato DOCX do Microsoft Word ou no formato PDF do Adobe Acrobat), o sistema de criação de documentos aprimorados 110 pode exportar o documento inicial 150 como um documento aprimorado 151, isto é, codificando o conteúdo do documento de acordo com um esquema definido e incorporando o conteúdo estruturado como metadados não visíveis no documento aprimorado 151. O sistema de criação de documentos aprimorados 110 pode opcionalmente criptografar o conteúdo estruturado antes de incorporá-lo no documento aprimorado 151. Em algumas modalidades, o sistema de criação de documentos aprimorados 110 pode armazenar o conteúdo codificado (e opcionalmente criptografado) em um banco de dados de documentos 116 em associação com um identificador de documento exportado. O identificador de documento exportado pode ser incorporado no documento aprimorado 151 em vez (ou em adição) do próprio conteúdo codificado, e pode ser usado posteriormente para solicitar o conteúdo codificado a partir do sistema de criação de documentos aprimorados 110 (por exemplo, pelo sistema de análise de documentos aprimorados 130).
[0021] O usuário 101 pode então enviar o documento aprimorado 151 para um sistema de envio de documentos 160. O sistema de envio de documentos 160, por exemplo, pode fornecer uma plataforma de envio de documentos 190 com a qual os usuários 101 podem interagir pela Internet 140 (por exemplo, usando um navegador da rede no dispositivo de usuário 102) para carregar e processar o documento aprimorado 151 de uma maneira particular. A título de exemplo, o sistema de envio de documentos 160 pode ser um quadro de inscrições de emprego, que pode fornecer ao usuário 101 a capacidade de pesquisar anúncios de emprego e candidatar-se a um emprego carregando um currículo e outros materiais de inscrição (por exemplo, carta de apresentação, referências, etc.), que pode então ser processado através de um ATS ou outro sistema de filtragem de currículos.
[0022] O sistema de envio de documentos 160 pode recorrer ao sistema de análise de documentos aprimorados 130 para extrair e processar os metadados incorporados para analisar completamente e com precisão o documento aprimorado 151, sistema de envio de documentos 160 que pode utilizar para processar ainda mais o documento aprimorado 151. O sistema de análise de documentos aprimorados 130, por exemplo, pode fornecer um serviço público ou externo (por exemplo, um serviço da rede SOAP ou REST) que o sistema de envio de documentos 160 pode invocar para analisar um documento aprimorado 151. A título de exemplo, o quadro de inscrições de emprego pode receber um currículo aprimorado carregado por um usuário e enviá-lo para um sistema de análise de currículo aprimorado 130 como parte de uma solicitação de análise. O sistema de análise de currículo aprimorado 130 pode determinar se o currículo é de fato um currículo aprimorado, e pode extrair e (se necessário) descriptografar os metadados incorporados, e retornar o conteúdo de currículo codificado que é extraído para o quadro de inscrições de emprego. Em algumas modalidades, o sistema de análise de documentos aprimorados 130 pode processar ainda mais o conteúdo extraído para colocá-lo em uma forma utilizável pelo quadro de inscrições de emprego (por exemplo, com base em um mapeamento de alguns ou todos os campos e elementos do esquema definido para outro esquema usado pelo quadro de inscrições de emprego). O quadro de inscrições de emprego pode usar os dados estruturados retornados pelo sistema de análise de documentos aprimorados 130 para preencher automaticamente um ou mais campos de um formulário de inscrição de emprego para o usuário (por exemplo, com base em um mapeamento de alguns ou de todos os elementos e campos nos dados estruturados do formulário de inscrição). Como outro exemplo, o sistema de envio de documentos 160 pode ser a plataforma de preparação de declaração de impostos descrita anteriormente, que pode permitir que um usuário 101 envie documentos de declaração de impostos aprimorados de anos anteriores. A plataforma de preparação de declaração de impostos pode utilizar um sistema de análise de documentos aprimorados 130 para extrair e processar os metadados incorporados para extrair completa e precisamente as informações contidas nos documentos de declaração de impostos aprimorados. A plataforma de preparação de declaração de impostos, por sua vez, pode utilizar essas informações para calcular e/ou preencher campos em uma declaração atual sendo preparada por um usuário 101.
[0023] Em modalidades em que um identificador de documento exportado está incorporado no documento aprimorado 151, o sistema de análise de documentos aprimorados 130 pode extrair o identificador de documento e solicitar o conteúdo codificado associado a partir do sistema de criação de documentos aprimorados 110. O sistema de criação de documentos aprimorados 110, por exemplo, pode fornecer um serviço público ou externo (por exemplo, um serviço da rede SOAP ou REST) que o sistema de análise de documentos aprimorados 130 pode invocar para solicitar o conteúdo codificado (por exemplo, passando o identificador de documento extraído). O sistema de criação de documentos aprimorados 110 pode retornar o conteúdo solicitado para o sistema de análise de documentos aprimorados 130, que pode então passar o conteúdo codificado de volta para o sistema de envio de documentos 160 para processamento adicional. Como parte da solicitação ao sistema de criação de documentos aprimorados 110, os sistemas de análise de documentos aprimorados 130 podem especificar o formato no qual o conteúdo codificado deve ser retornado (por exemplo, um formato JSON, HTML, RTF ou TXT). E, como antes, o sistema de análise de documentos aprimorados 130 pode processar ainda mais o conteúdo codificado para colocá-lo em uma forma esperada pelo sistema de envio de documentos 160 (por exemplo, com base em um mapeamento de alguns ou todos os campos e elementos do esquema definido para outro esquema utilizado pelo sistema de envio de documentos 160).
[0024] O sistema de criação de documentos aprimorados 110 também pode exigir que o sistema de análise de documentos aprimorados 130 se autentique como parte da solicitação (por exemplo, passando uma chave de licença única associada ao sistema de análise de documentos aprimorados 130, ou empregando algum outro mecanismo de autenticação adequado). O sistema de criação de documentos aprimorados 110 também pode procurar verificar se o documento aprimorado 151 não foi alterado desde que foi inicialmente exportado para fornecer uma camada adicional de segurança e garantir que o conteúdo codificado retornado ao sistema de análise de documentos aprimorados 130 seja preciso. Por exemplo, um currículo aprimorado pode ser modificado por um usuário após ter sido exportado, ou pode ser reaproveitado por outro indivíduo, mas pode reter o identificador do documento exportado como metadados incorporados. Nesses casos, o conteúdo codificado associado ao identificador de documento exportado não corresponderia mais ao conteúdo do documento aprimorado 151, e não deveria ser retornado ao sistema de análise de documentos aprimorados 130. De modo a realizar essa verificação, o sistema de criação de documentos aprimorados 110 pode exigir que o sistema de análise de documentos aprimorados 130 forneça um valor hash do documento aprimorado 151 carregado pelo usuário como parte da solicitação, que o sistema de criação de documentos aprimorados 110 pode então comparar com um valor hash do conteúdo codificado armazenado no banco de dados de documentos 116. Se os valores hash corresponderem, o sistema de criação de documentos aprimorados 110 pode retornar o conteúdo codificado para o sistema de análise de documentos aprimorados 130, mas se não corresponderem, uma mensagem de erro adequada pode ser enviada em vez disso. Em modalidades alternativas, o sistema de análise de documentos aprimorados 130 pode fornecer o documento aprimorado 151 juntamente com a solicitação, e o sistema de criação de documentos aprimorados 110 pode ser responsável por calcular o valor hash para o documento aprimorado 151.
[0025] Embora o sistema de envio de documentos 160 e o sistema de análise de documentos aprimorados 130 sejam ilustrados como sistemas separados, esse não precisa ser o caso, e os componentes e/ou funcionalidade do sistema de análise de documentos 130 podem ser integrados dentro do próprio sistema de envio de documentos 160. Os componentes lógicos do sistema de análise de documentos 130 descritos abaixo, por exemplo, podem ser fornecidos no sistema de envio de documentos 160 (por exemplo, como bibliotecas executáveis utilizáveis pelo sistema de envio de documentos 160). Em algumas modalidades, o sistema de envio de documentos 160 pode fornecer um widget como parte da plataforma de envio de documentos 190 (por exemplo, instalado em um formulário de inscrição de emprego) através do qual um usuário 101 seria capaz de enviar diretamente um documento aprimorado 151 para ser perfeitamente analisado (isto é, com o widget operando como o sistema de análise de documentos aprimorados 130). O usuário 101 pode ter uma ou mais opções pelas quais ele pode enviar ou fornecer o documento aprimorado 151 para o sistema de envio de documentos 160 através do widget. O usuário 101, por exemplo, pode ser capaz de carregar um documento aprimorado 151 previamente exportado através do widget.
[0026] Em algumas modalidades, o widget pode procurar ver se o usuário tem uma relação com o sistema de criação de documentos aprimorados 110 ou plataforma de criação de documentos 180, e pode permitir que um usuário selecione um documento aprimorado 151 para enviar diretamente de lá. O usuário 101, por exemplo, pode ser capaz de recuperar o documento aprimorado 151 diretamente a partir do sistema de criação de documentos aprimorados 110 (por exemplo, através de um serviço público ou externo REST ou SOAP). Nos casos em que o usuário 101 criou vários documentos aprimorados 151 através da plataforma de criação de documentos 180, o usuário 101 pode ser avisado para selecionar qual documento gostaria de enviar. Por outro lado, se o usuário 101 ainda não criou um documento aprimorado 151, o usuário 101 pode ser redirecionado para a plataforma de criação de documentos 180 para fazê-lo.
[0027] Em alguns casos, o widget pode exigir que o usuário se autentique para enviar ou fornecer o documento aprimorado 151 para o sistema de envio de documentos 160. O widget, por exemplo, pode detectar a presença de um cookie, indicando que o usuário 101 está conectado à plataforma de criação de documentos 180, e pode solicitar ao usuário 101 que confirme se deseja enviar um documento aprimorado 151. Desta forma, um usuário 101 é capaz de controlar se o documento aprimorado 151 é fornecido ao sistema de envio de documentos 160, e o sistema de criação de documentos aprimorados 110 pode rastrear e facilitar o uso de documentos aprimorados 151. Se nenhum cookie for detectado, o usuário 101 pode ser avisado para entrar na plataforma de criação de documento 180 antes de poder prosseguir. Em outras modalidades, o widget pode solicitar que o usuário delegue ao sistema de envio de documentos 160 acesso contínuo (por exemplo, via OAuth ou um protocolo de delegação de acesso similar) ao documento aprimorado 151 a partir do sistema de criação de documentos 110. Desta forma, o usuário 101 pode, por exemplo, conceder ao sistema de envio de documentos 160 a capacidade de verificar versões mais recentes do documento aprimorado 151 no futuro, receber notificações de revisões de documentos subsequentes, ou receber outras informações relevantes sobre o usuário 101 e/ou o documento aprimorado (por exemplo, permitir que o sistema de envio de documentos 160 verifique o estado de procura de emprego do usuário, disponibilidade para uma entrevista, etc.). A plataforma de criação de documentos 180 também pode exigir que o sistema de envio de documentos 160 se autentique (por exemplo, usando uma chave de licença previamente fornecida ou um mecanismo de autenticação similar) antes que o documento aprimorado 151 seja comunicado, fornecendo outra camada de segurança para a troca de informações de usuários.
[0028] Uma vez que o usuário tenha carregado, escolhido ou criado o documento aprimorado 151 que gostaria de enviar para o sistema de envio de documentos 160, o widget pode extrair o conteúdo codificado nele incorporado. Nos casos em que o usuário 101 optou por recuperar o documento aprimorado 151 diretamente a partir do sistema de criação de documentos aprimorados 110, o sistema de criação de documentos aprimorados 110 pode simplesmente retornar o próprio conteúdo codificado. O widget, por sua vez, pode mapear um ou mais campos dentro do conteúdo codificado para campos correspondentes na plataforma de envio de documentos 190 (por exemplo, para campos correspondentes no formulário de inscrição de emprego).
[0029] O sistema de criação de documentos aprimorados 110 pode incluir uma ou mais interfaces de comunicação 111 (por exemplo, uma interface de comunicação WiFi ou uma interface LAN), um ou mais processadores 112, uma memória 113, um dispositivo de armazenamento 114, que pode conter uma biblioteca de skins 114a, e um ou mais bancos de dados, incluindo um banco de dados de usuário 117, um banco de dados de senha de criptografia 115, e banco de dados de documentos 116. A memória 113 pode incluir lógica de plataforma de criação de documentos 120, lógica de codificação 121, lógica de dessensibilização 122, lógica de renderização 123, lógica de criptografia 124, lógica de incorporação 125 e lógica de servidor de licença 126, que os processadores 112 podem utilizar para fornecer a funcionalidade do sistema descrita abaixo.
[0030] A lógica da plataforma de criação de documentos 120, por exemplo, pode permitir que o sistema de criação de documentos aprimorados 110 forneça uma plataforma de criação de documentos 180 através da qual um usuário 101 pode criar um documento inicial 150. O sistema de criação de documentos aprimorados 110, por exemplo, pode utilizar a lógica da plataforma de criação de documentos 120 para apresentar um sítio da rede ou portal ao usuário 101 com elementos de formulário preenchíveis ou campos que um usuário 101 pode preencher, selecionar ou completar de outra forma. Por exemplo, a lógica da plataforma de criação de documentos 120 pode apresentar ao usuário uma ferramenta de construção de currículo, que pode solicitar que um usuário selecione um modelo de currículo, ou pode selecionar um modelo de currículo automaticamente com base em um ou mais atributos do usuário 101, que podem ser armazenados no banco de dados de usuário 117 (por exemplo, como parte de um perfil de usuário).
[0031] Com base no modelo selecionado, a lógica da plataforma de criação de documentos 120 pode então gerar um formulário de currículo, com uma ou mais seções vazias tendo um ou mais campos ou outros elementos de formulário para o usuário 101 preencher. As seções, por exemplo, podem ser direcionadas para informações de identificação pessoal do usuário, formação educacional, experiência profissional ou similares. Como outro exemplo, a plataforma de criação de documentos 180 pode apresentar ao usuário 101 uma lista de seções que um usuário 101 pode selecionar para incluir no documento inicial 150. Através da plataforma de criação de documentos 180, o usuário 101 pode escolher uma seção ou parágrafo para editar, e pode ser apresentado com um formulário de entrada de texto para essa seção ou parágrafo. O usuário 101 pode então modificar o texto e ajustar as entradas de formatação (por exemplo, posicionamento, estilo, etc.) para a seção. Em alguns casos, o formulário de currículo pode ser de natureza dinâmica, por exemplo, permitindo que um usuário adicione ou remova seções (por exemplo, para cada faculdade ou universidade frequentada ou para cada emprego que ocupou).
[0032] A plataforma de criação de documentos 180 também pode permitir que o usuário 101 inclua um ou mais elementos gráficos no documento inicial 150. Um usuário 101, por exemplo, pode ser solicitado a carregar uma foto de perfil a ser incluída no documento inicial 150, ou o elemento gráfico pode ser gerado pela lógica da plataforma de criação de documentos 120 em resposta a uma ou mais entradas de usuário fornecidas através da plataforma de criação de documentos 180. Por exemplo, conforme ilustrado na Figura 3, uma ferramenta de construção de currículo pode apresentar a um usuário 101 um número de controles deslizantes correspondentes a habilidades particulares que o usuário 101 pode ter, que o usuário 101 pode ajustar com base em seu nível de proficiência. Como outro exemplo, representado na Figura 4, a ferramenta de construção de currículo pode alertar um usuário sobre habilidades ou hobbies específicos que ele possa ter, e pode ser apresentada com ícones, emojis, monogramas, imagens, gifs ou outros gráficos que representam essas habilidades, hobbies, ou outros atributos, que um usuário pode selecionar para colocar em seu currículo. O gráfico selecionado pode incluir uma descrição correspondente que o usuário 101 pode alterar. Em outros casos, a ferramenta de construção de currículo pode permitir que um usuário 101 carregue sua própria imagem ou elemento gráfico e, como parte do processo de carregamento, pode solicitar que o usuário forneça uma descrição e/ou identifique uma habilidade, hobby ou outro atributo com o qual está associado
[0033] Em algumas modalidades, a plataforma de criação de documentos 180 pode fornecer ao usuário a capacidade de salvar o documento inicial 150 em um estado particular no banco de dados de documentos 116, e pode utilizar a lógica de codificação de documentos 121 para fazê-lo. Nesses casos, a plataforma de criação de documentos 180 pode permitir que o usuário 101 restaure um documento previamente salvo para visualizar, exportar ou modificar ainda mais. A plataforma de criação de documentos 180 também pode permitir que o usuário 101 forneça um documento não aprimorado existente, que o sistema de criação de documentos aprimorados 110 pode analisar usando software de análise. As informações extraídas pela análise do documento podem ser analisadas pela lógica da plataforma de criação de documentos 120 para identificar a presença de uma ou mais seções, e para semear ou pré-preencher os elementos de formulário preenchíveis do documento inicial 150 correspondentes às seções identificadas. O documento inicial 150 pode então ser codificado como dados estruturados e incorporado em um documento aprimorado 151 usando lógica de codificação de documento 121 conforme discutido abaixo. O usuário 101 também pode editar o conteúdo do documento pré-preenchido antes de ser codificado e incorporado em um documento aprimorado 151, por exemplo, para corrigir quaisquer erros ou omissões resultantes da análise automatizada de um documento não aprimorado.
[0034] A lógica de codificação de documento 121, por sua vez, pode ser usada para codificar o documento inicial 150 como dados estruturados de acordo com um esquema definido (por exemplo, um esquema XML ou JSON proprietário ou padronizado) com base em um significado semântico conhecido de cada elemento de formulário e por associação, o conteúdo nele contido. A lógica de codificação de documento 121, por exemplo, pode mapear cada seção ou parágrafo do currículo preenchido pelo usuário 101 quanto a elementos e campos específicos dentro do esquema definido. A título de exemplo, uma seção de histórico de trabalho de um currículo pode conter um registro do emprego de um usuário, com um parágrafo ou subseção correspondente a cada cargo que o usuário 101 ocupou. Cada cargo pode conter ainda elementos correspondentes ao nome do empregador, às datas de emprego e à descrição da experiência. Com base no significado semântico de cada elemento (por exemplo, como se enquadrando em uma seção de histórico de trabalho ou solicitando um nome de empregador), a lógica de codificação de documento 121 pode codificar o conteúdo inserido pelo usuário como dados estruturados de acordo com um esquema estruturado.
[0035] A lógica de codificação de documento 121 pode armazenar o documento codificado no banco de dados de documento 116. Em algumas modalidades, a lógica de codificação de documento 121 pode codificar e armazenar o documento inicial 150 com base em uma entrada de usuário fornecida através da plataforma de criação de documento 180 (por exemplo, clicando em um botão salvar). Enquanto em outros, a lógica de codificação de documento 121 pode codificar e armazenar cada elemento de formulário do documento inicial 150 em tempo real, conforme preenchido pelo usuário (por exemplo, quando um elemento de formulário fica fora de foco). Desta forma, a plataforma de criação de documentos 180 pode manter um estado do documento inicial 150, e permitir que o usuário 101 atualize e revise o documento em várias sessões. O documento codificado pode ser armazenado no banco de dados de documentos 116 em associação com um identificador de documento, que pode servir como um identificador de versão em casos particulares do documento codificado.
[0036] Nos casos em que o documento inicial 150 inclui um elemento gráfico – que normalmente é difícil para os analisadores tradicionais interpretarem e frequentemente desconsiderados por esses analisadores – a lógica de codificação de documento 121 pode mapear um indicador visual no elemento gráfico quanto a um valor de um campo dentro do esquema definido. A Figura 2, por exemplo, ilustra um elemento gráfico 210 que ilustra o nível de proficiência do usuário em várias habilidades de design que um usuário 101 pode incluir em um currículo, que pode ser gerado pela plataforma de criação de documentos 180 em resposta a um conjunto de perguntas ou solicitações apresentadas ao usuário 101 em relação às suas habilidades de design. O sistema de criação de documentos aprimorados 110, por sua vez, pode codificar o elemento gráfico 210 como dados estruturados 220. A Figura 5, de forma similar, ilustra um elemento gráfico 510 que representa as várias funções que um usuário 101 desempenhou em um trabalho anterior, que o sistema de criação de documentos aprimorados 110 pode codificar como dados estruturados 520.
[0037] Como outro exemplo, a Figura 3 ilustra um elemento gráfico 310, consistindo de uma série de controles deslizantes 311-314 que um usuário pode ajustar para refletir seu nível de habilidade ou especialização com determinado assunto. Conforme ilustrado, a lógica de codificação de documento 121 pode codificar o elemento gráfico 310 como dados estruturados 320, com o valor de cada controle deslizante 311a-311d sendo refletido no campo “skillProficiency” 322a-322d em um elemento de controle deslizante correspondente 321a-321d do documento codificado. A Figura 4 ilustra outro exemplo no qual um elemento gráfico 410 pode ser selecionado por um usuário a partir de uma lista de elementos gráficos 401 fornecidos ao usuário em resposta a uma solicitação em relação às habilidades do usuário 402. O elemento gráfico pode ter uma descrição associada 411, que pode ser fornecida ou modificada pelo usuário 101 através do processo de seleção. Após a exportação como um documento aprimorado 451, apenas o elemento gráfico será visível, mas informações adicionais associadas ao elemento gráfico, tal como sua descrição, podem, no entanto, ser codificadas como dados estruturados 420 e incorporados nele. Em alguns casos, o esquema pode fornecer que o próprio elemento gráfico também seja incluído nos dados estruturados (por exemplo, como uma sequência de bytes ou referencialmente a uma localização do elemento gráfico na parte visível do documento aprimorado). A foto de perfil de um usuário, por exemplo, pode ser codificada nos dados estruturados como um elemento gráfico com um campo de descrição, que pode assumir o valor ‘profile picture’ (foto de perfil) e um campo de representação base64, que pode conter uma representação de sequência de bytes da imagem.
[0038] Em algumas modalidades, a lógica de codificação de documento 121 também pode aumentar o conteúdo codificado com base no significado semântico de elementos de documento individuais. A título de exemplo, um currículo criado usando a ferramenta de criação de currículos descrita anteriormente pode indicar que o candidato a emprego tem experiência significativa como caixa. A fim de melhorar as chances de que o currículo não seja descartado por nenhum filtro de software (por exemplo, aqueles aplicados por um ATS) e apresentado a um revisor humano, a lógica de codificação de documentos 121 pode adicionalmente caracterizar a experiência como “manipulação de dinheiro” ou “relacionamento com o cliente” no documento codificado. Aumentar o documento aprimorado 151 dessa maneira também pode ajudar a fornecer uma experiência de correspondência aprimorada ou aumentada (por exemplo, para um empregador que procura candidatos a emprego qualificados), pois as informações aumentadas podem tornar o documento mais provável de aparecer em resposta a uma pesquisa ou consulta por documento específico (por exemplo, de um banco de dados de currículo ou similar). Esses descritores adicionais podem não ser renderizados visivelmente no documento aprimorado 151, mas persistirão no conteúdo codificado nele incorporado.
[0039] Em outras modalidades, o sistema de criação de documentos aprimorados 110 pode permitir que os usuários 101 designem o conteúdo dentro do documento inicial 150 como sendo não visível, redigido ou, de outra forma, oculto. Por exemplo, um candidato a emprego ativamente empregado pode não querer que seu empregador atual saiba que ele está procurando novas oportunidades, e pode estar relutante em distribuir seu currículo como um resultado. Um usuário 101 pode ser capaz de redigir ou ocultar certas informações (por exemplo, suas informações de identificação pessoal, o nome de seu empregador atual, referências ou qualquer outra informação que ele gostaria de proteger) de modo que não fique visível no currículo, enquanto ainda incluindo-o como conteúdo codificado nele incorporado. Em alguns casos, o sistema de criação de documentos 110 pode incluir um sinalizador ou parâmetro no documento aprimorado 151 indicando que a aprovação do usuário foi obtida para incorporar informações dentro do documento aprimorado 151 e/ou permitir o processamento das informações de incorporação, por exemplo, através dos termos de serviço ou uma solicitação de consentimento apresentada ao usuário 101 através da plataforma de criação de documentos aprimorados 180. Além disso, conforme discutido abaixo, o documento aprimorado 151 pode ser fornecido com métodos de interação através dos quais o retorno pode ser fornecido em relação ao documento aprimorado 151. Neste caso, o documento aprimorado 151 pode permitir que um recrutador ou entidade contratante solicite acesso para visualizar essas informações, que podem ser comunicadas direta ou indiretamente ao usuário 101 do documento aprimorado 151 para aprovação.
[0040] Ainda em outras modalidades, o sistema de criação de documentos aprimorados 110 pode solicitar separadamente ao usuário 101 que forneça conteúdo adicional além do documento inicial 150, que a lógica de codificação de documento 121 pode incluir como conteúdo codificado. Desta forma, o documento aprimorado 151 pode transportar informações adicionais adequadas para extração pelo sistema de análise de documentos aprimorados 130, mantendo a aparência visual do documento inicial 150 quando renderizado. Por exemplo, os usuários 101 normalmente tentam limitar o comprimento de seu currículo a uma página, mas isso geralmente requer a omissão de informações potencialmente relevantes, como habilidades secundárias ou experiência profissional anterior, o que pode prejudicar as chances de um candidato a emprego de ser encontrado e contratado. Como outro exemplo, o sistema de criação de documentos aprimorados 110 pode incluir versões alternativas do conteúdo em diferentes idiomas.
[0041] Em ainda outras modalidades, o sistema de criação de documentos aprimorados 110 pode selecionar automaticamente qual conteúdo no documento inicial 150 será visível e/ou incluído como conteúdo codificado. Por exemplo, um usuário 101 pode ser capaz de fornecer uma descrição de emprego, ou uma URL para um pedido de emprego específico, que o sistema de criação de documentos aprimorados 110 pode analisar para determinar qual conteúdo no documento inicial 150 é mais relevante, que seja visivelmente renderizado, com a lógica de codificação de documento 121 incluindo todo, algum ou nenhum conteúdo restante como conteúdo codificado.
[0042] Em alguns casos, o sistema de criação de documentos aprimorados 110 pode incluir automaticamente informações relacionadas como conteúdo codificado que pode ajudar ou auxiliar no processamento do documento aprimorado 151. A título de exemplo, solicita-se frequentemente aos candidatos a emprego que forneçam informações bibliográficas básicas (por exemplo, endereço de correspondência, estado de autorização de trabalho, etc.) ou que envie uma carta de apresentação junto com seu currículo. A inserção repetida dessas informações ao se candidatar a vários empregos pode ser uma tarefa trabalhosa e monótona, frequentemente dissuadindo um candidato a preencher uma inscrição de emprego. Essas informações, que podem ter sido capturadas anteriormente (por exemplo, durante um processo de registro, ou quando preenchendo uma inscrição de emprego diferente) e armazenadas como parte de um perfil de usuário no banco de dados de usuário 117, podem ser incluídas como conteúdo codificado no documento aprimorado 151, permitindo que um sistema de análise de documentos aprimorados 130 extraia automaticamente essas informações e forneça as informações ao sistema de envio de documentos 160 para agilizar o processo de inscrição para o candidato a emprego. Como outro exemplo, quando o documento aprimorado 151 pode ser um formulário de aquisição ou cumprimento de pedido usado por uma empresa, o sistema de criação de documentos aprimorados 110 pode incluir faturas relacionadas, formulários de entrega e recibos (por exemplo, contendo detalhamentos do pedido, juntamente com os custos associados e informações de envio) como conteúdo codificado.
[0043] A Figura 6 fornece uma visão de alto nível de um esquema proprietário que o sistema de criação de documentos aprimorados 110 pode empregar para codificar um documento inicial 150. Conforme ilustrado, o esquema proprietário pode fornecer uma estrutura de codificação hierárquica, onde um documento pode ser dividido em documento, seção, parágrafo e elementos de dados do documento, cada elemento tendo campos específicos. Como os sistemas de análise de documentos aprimorados 130 podem ser implementados ou implantados por diferentes entidades, pode ser necessário um mapeamento personalizado do esquema proprietário para o caso ou implementação particular. A fim de reduzir ou eliminar a quantidade de personalização necessária e permitir que os aprimoramentos de análise estejam disponíveis para um número maior de sistemas de análise de documentos aprimorados 130, algumas modalidades podem fazer uso de um padrão aberto. Em tais casos, a lógica de codificação de documento 121 pode traduzir dados codificados de acordo com um esquema proprietário usado pela plataforma de criação de documento 180 em um esquema padrão aberto. O sistema de criação de documentos aprimorados 110, por exemplo, pode traduzir dados codificados de acordo com o esquema ilustrado na Figura 6 nos esquemas HR-JSON ou HR-XML promulgados pelo HR Open Standards Consortium. No entanto, esses esquemas padronizados podem não acomodar nativamente o conjunto completo de elementos e valores que podem ser definidos em um esquema proprietário, e podem ser estendidos para acomodar estrutura, funcionalidade ou comportamento adicional.
[0044] A lógica de dessensibilização 122 pode permitir que o sistema de criação de documentos aprimorados 110 dessensibilize um documento codificado de modo a garantir que nenhuma informação confidencial do usuário (por exemplo, SSN, fotografia, informação de identificação pessoal, etc.) seja incluída no documento aprimorado 151. A lógica de dessensibilização 122, por exemplo, pode processar um documento codificado (ou seja, após o documento inicial 150 ter sido codificado e armazenado no banco de dados de documentos 116) e marcar qualquer informação confidencial do usuário a ser excluída da tradução para o esquema de padrão aberto, se tal tradução acontecer, e/ou ser excluída antes de renderizar o documento codificado.
[0045] A lógica de renderização 123 pode permitir que o sistema de criação de documentos aprimorados 110 renderize um documento codificado (ou documento dessensibilizado ou traduzido, conforme o caso) em um formato de arquivo específico (por exemplo, formato DOCX do Microsoft Word ou formato PDF do Adobe Acrobat), que em algumas modalidades, pode ser especificado por um usuário 101. A lógica de renderização 123, por exemplo, pode ser usada para gerar um arquivo intermediário a partir do conteúdo codificado, onde a aparência visual do conteúdo do documento (ou seja, o posicionamento e estilo do conteúdo do documento) pode ser fornecida por uma definição de skin associada ao documento inicial 150, que pode ser armazenado e recuperado a partir da biblioteca de skins 114a. O sistema de criação de documentos aprimorados 110, por exemplo, pode gerar um arquivo HTML compreendendo diferentes elementos HTML, com estilos CSS especificados, juntamente com uma folha de estilo CSS vinculada para controlar a posição e o estilo (isto é, a aparência visual) do conteúdo do documento. O sistema de criação de documentos aprimorados 110 pode então converter o arquivo intermediário em um formato de arquivo específico, como o formato DOCX do Microsoft Word ou o formato PDF do Adobe Acrobat. Ao fazer isso, o sistema de criação de documentos aprimorados 110 pode fazer uso de bibliotecas de conversão disponíveis publicamente, como Aspose (para conversão de HTML para DOCX) ou ABCpdf (para conversão de HTML para PDF).
[0046] Em algumas modalidades, a lógica de renderização 123 pode permitir que o sistema de criação de documentos aprimorados 110 inclua um ou mais métodos de interação (por exemplo, na forma de botões interativos, hiperlinks ou similares) através dos quais o retorno pode ser fornecido em relação ao documento aprimorado 151. A título de exemplo, quando um candidato a emprego envia uma inscrição de emprego, ele fica à espera de uma resposta da entidade contratante. Essa resposta pode nunca chegar, e o usuário 101 pode se preocupar que o currículo nunca tenha chegado a um revisor humano (por exemplo, se não foi analisado adequadamente). Ao fornecer botões interativos ou outros métodos de interação dentro do próprio currículo, um revisor humano pode agir rápida e automaticamente, por exemplo, notificando o usuário 101 que seu currículo foi revisado e/ou se ele estava sendo considerado para o emprego, entrando em contato automaticamente com o usuário 101 para agendar uma entrevista ou solicitar referências ou similar. Os métodos de interação fornecidos também podem ser capazes de fazer uso de conteúdo incorporado no documento pela lógica de incorporação 125. Por exemplo, o documento aprimorado 151 pode fornecer um mecanismo pelo qual um revisor humano pode determinar se uma versão atualizada do documento aprimorado 151 está disponível e solicitar a versão atualizada em caso afirmativo (por exemplo, invocando uma API pública e passando uma chave de criptografia ou identificador de documento exportado incorporado no documento aprimorado 151).
[0047] O sistema de criação de documentos aprimorados 110 pode adicionalmente, ou alternativamente, fornecer uma interface (por exemplo, na forma de um serviço público ou externo REST ou SOAP) através do qual o retorno pode ser fornecido em relação a um documento aprimorado 151. Por exemplo, através da interface, o sistema de envio de documentos 160 e/ou sistema de análise de documentos aprimorados 130 pode ser capaz de atualizar o sistema de criação de documentos aprimorados 110 quanto ao estado de processamento (por exemplo, recebido, processado, aprovado/rejeitado ou outro estado personalizado) do documento aprimorado 151 (por exemplo, passando um indicador de estado, uma chave de criptografia ou identificador de documento exportado e uma chave de licenciamento, se necessário, para a API). O sistema de criação de documentos aprimorados 110 também pode fornecer uma interface através da qual um usuário 101 pode receber e responder ao retorno sobre um documento aprimorado 151. Desta forma, o sistema de criação de documentos aprimorados 110 pode permitir comunicação bidirecional entre um usuário 101 e o sistema de envio de documentos 160 e/ou a entidade que o opera.
[0048] A lógica de criptografia 124 pode permitir que o sistema de criação de documentos aprimorados 110 gere uma chave de criptografia (por exemplo, usando um algoritmo de geração de chave de criptografia como PBKDF2), que pode ser usado para criptografar o documento codificado (por exemplo, usando um algoritmo de criptografia como AES) para criar uma sequência de bytes criptografada do conteúdo codificado. Em modalidades em que o documento codificado é dessensibilizado e/ou traduzido, a lógica de criptografia 124 pode criptografar o conteúdo dessensibilizado e/ou traduzido. A chave de criptografia que é gerada pode fazer uso de uma senha de criptografia, que pode ser armazenada e recuperada a partir do banco de dados de senha de criptografia 115, bem como salt ou vetores de inicialização gerados aleatoriamente. Em modalidades em que o sistema de criação de documentos aprimorados 110 atua como um servidor de licenciamento de criptografia, a chave de criptografia que é gerada pode ser atribuída a um identificador de chave de criptografia exclusivo, e armazenada no banco de dados de senha de criptografia 115 em associação com o documento inicial 150, que similarmente pode ser atribuído um identificador de documento exclusivo. O sistema de criação de documentos aprimorados 110 pode gerar uma nova chave de criptografia cada vez que o documento inicial 150 é exportado como um documento aprimorado 151 (por exemplo, à medida que o usuário atualiza ou modifica o documento inicial 150). Desta forma, o identificador de chave de criptografia também pode atuar como um identificador de versão, identificando cada versão do documento inicial 150 exportado. Em algumas modalidades, o sistema de criação de documentos aprimorados 110 pode armazenar o documento codificado (ou documento dessensibilizado ou traduzido) no momento da exportação em associação com um identificador de documento exportado no banco de dados de documentos 116. Desta forma, o sistema de criação de documentos aprimorados 110 pode manter cada versão do documento inicial 150 que foi exportado.
[0049] A lógica de incorporação 125, por sua vez, pode permitir que o sistema de criação de documentos aprimorados 110 incorpore o conteúdo codificado e opcionalmente criptografado em um documento renderizado como metadados não visíveis. A lógica de incorporação 125, por exemplo, pode preceder quaisquer salt ou vetores de inicialização que foram usados para gerar a chave para o início da sequência de bytes criptografados. Alternativamente, em modalidades em que o sistema de criação de documentos aprimorados 110 atua como um servidor de licenciamento de criptografia, a lógica de incorporação 125 pode preceder o identificador de chave de criptografia associado à chave de criptografia que foi gerada. A sequência de bytes modificada pode então ser gravada no documento convertido como metadados não visíveis (por exemplo, em “Custom Properties” de um arquivo DOCX do Microsoft Word ou Adobe Acrobat PDF). Em modalidades em que o sistema de criação de documentos aprimorados 110 armazena o documento codificado na exportação, a lógica de incorporação 125 pode adicionalmente, ou alternativamente, incorporar o identificador de documento exportado associado ao documento codificado que foi exportado. Embora o anterior descreva a incorporação de conteúdo criptografado, deve-se notar que o conteúdo codificado não precisa ser criptografado e pode ser incorporado como uma sequência de bytes não criptografada.
[0050] Alguns formatos de arquivo podem colocar limitações na forma em que os metadados não visíveis podem ser gravados no documento convertido, por exemplo, exigindo pares de valor de ID ou limitando o tamanho ou comprimento do valor (por exemplo, para sequências de menos de 255 caracteres de comprimento, etc.). A lógica de incorporação 125 pode permitir que o sistema de criação de documentos aprimorados 110 determine o formato de arquivo do documento convertido, e manipule a sequência de bytes de modo a estar de acordo com quaisquer limitações que o formato possa colocar em metadados não visíveis armazenados no mesmo.
[0051] Em algumas modalidades, a lógica de incorporação 125 pode permitir que o sistema de criação de documentos aprimorados 110 incorpore código personalizado ou macros para executar determinada funcionalidade. O sistema de criação de documentos aprimorados 110, por exemplo, pode criar uma macro que geraria uma mensagem de alerta quando o usuário 101 estivesse prestes a modificar o documento aprimorado 151, que avisaria o usuário 101 de que quaisquer alterações feitas fora da plataforma de criação de documento 180 podem resultar na análise imperfeita do documento. Em alguns casos, o sistema de criação de documentos aprimorados 110 pode impedir que o usuário 101 faça quaisquer alterações. Em outras modalidades, o sistema de criação de documentos aprimorados 110 pode incorporar uma macro dentro do documento aprimorado 151 que permitiria que as alterações feitas na aparência visual do documento fossem sincronizadas com o conteúdo incorporado nele contido. A macro, por exemplo, pode transmitir o conteúdo atualizado para o sistema de criação de documentos aprimorados 110 (por exemplo, por meio de uma API ou serviço da rede), que pode realizar o processo de codificação para gerar conteúdo codificado atualizado, que pode ser opcionalmente criptografado e incorporado de volta no documento aprimorado 151.
[0052] A lógica do servidor de licença 126 pode permitir que o sistema de criação de documentos aprimorados 110 atue como um servidor de licenciamento, permitindo que o sistema de criação de documentos aprimorados 110 controle se um sistema de análise de documentos aprimorados 130 é capaz de (ou seja, licenciado para) extrair e/ou descriptografar os metadados não visíveis incorporados em um documento aprimorado 151 de um usuário 101. Ao limitar a capacidade de extrair e/ou descriptografar o conteúdo incorporado, que pode incluir informações confidenciais do usuário (em modalidades em que a dessensibilização não é realizada) ou outros detalhes pessoais que, de outra forma, não seriam visíveis para um leitor humano, o sistema de criação de documentos aprimorados 110 é capaz de proteger a informação do usuário mesmo depois de ter sido exportada, permitindo apenas que analisadores autorizados obtenham o conteúdo. A lógica do servidor de licença 126 também pode permitir que o sistema de criação de documentos aprimorados 110 expire chaves de criptografia e identificadores de documentos exportados, que operam efetivamente para expirar o conteúdo incorporado. Desta forma, o sistema de criação de documentos aprimorados 110 é capaz de impedir a extração e o uso de informações de usuário que podem não ser mais precisas (por exemplo, se as informações de contato de um usuário foram alteradas ou se um erro no documento foi corrigido).
[0053] A lógica do servidor de licença 126 pode fornecer ao sistema de criação de documentos aprimorados 110 a capacidade de criar chaves de licença exclusivas para uma entidade de análise particular, ou um aplicativo específico da entidade de análise, que a entidade de análise pode ser obrigada a enviar junto com qualquer solicitação. A lógica do servidor de licença 126 também pode permitir que o sistema de criação de documentos aprimorados 110 limite o uso da chave de licença a sistemas específicos (por exemplo, com base em um domínio, sub-rede de endereço de IP, ou similar), limite o uso da chave de licença a uma determinada taxa ou volume de solicitações (por exemplo, volume máximo diário ou horário ou volume máximo global). A lógica do servidor de licença 126 pode permitir que o sistema de criação de documentos aprimorados 110 exclua, desative e/ou ative uma chave de licença. Ao desativar a chave, ela não pode ser mais autorizada para uso, mas ainda pode ser mantida no sistema, por exemplo, para fins de auditoria.
[0054] O sistema de criação de documentos aprimorados 110 pode fornecer um serviço voltado para o exterior (por exemplo, um serviço da rede SOAP ou REST) que um sistema de análise de documentos aprimorados 130, tendo uma chave de licença autorizada, pode invocar para solicitar uma chave de criptografia correspondente a um identificador de criptografia específico. Após a verificação bem-sucedida da chave de licença, que pode envolver a verificação para ver se a chave de licença existe, está atualmente ativa, e se nenhum limite de acesso foi excedido, o sistema de criação de documentos aprimorados 110 pode recuperar a chave de criptografia a partir do banco de dados de senha de criptografia 115 com base no identificador de criptografia solicitado e devolvê-lo ao sistema de análise de documentos aprimorados 130 que fez a solicitação. Em modalidades em que a criação de documento aprimorado 110 armazena o documento codificado na exportação, o sistema de análise de documentos aprimorados 130 pode ser capaz de invocar o serviço para solicitar o próprio conteúdo codificado (por exemplo, fornecendo o identificador de chave de criptografia ou identificador de documento exportado associado ao documento codificado que foi exportado junto com uma chave de licença válida). A lógica do servidor de licença 126 também pode permitir que o sistema de criação de documentos aprimorados 110 expire ou delete uma chave de criptografia ou conteúdo codificado com base no identificador de chave de criptografia ou identificador de documento associado, por exemplo, em resposta a uma solicitação de usuário para expirar um documento aprimorado específico 151 exportado a partir do sistema de criação de documentos aprimorados 110.
[0055] Em algumas modalidades, o sistema de criação de documentos aprimorados 110 pode permitir que sistemas de envio de documentos 160 e/ou sistemas de análise de documentos aprimorados 130 registrem um documento aprimorado 151 com o sistema de criação de documentos aprimorados 110 (por exemplo, registrando uma URL de notificação por meio de uma API voltada para o público), de modo que o sistema de criação de documentos aprimorados 110 possa notificar automaticamente os sistemas de envio de documentos 160 e/ou sistemas de análise de documentos aprimorados 130 quando o usuário 101 atualizar ou, de outra forma, alterar o documento inicial 150 e exportar o documento como um documento aprimorado atualizado 151. Em outras modalidades, os sistemas de envio de documentos 160 e/ou sistemas de análise de documentos aprimorados 130 podem ser capazes de consultar o sistema de criação de documentos aprimorados 110 (por exemplo, invocando uma API voltada para o público e passando uma chave de criptografia ou identificador de documento exportado), para ver se uma versão atualizada do documento aprimorado 151 está disponível ou para solicitar o conteúdo codificado do documento aprimorado 151 em um formato alternativo (por exemplo, em formato HTML, RTF ou TXT), que pode ser processado melhor.
[0056] O sistema de criação de documentos aprimorados 110 também pode receber notificações (ou outro retorno) a partir dos sistemas de envio de documentos 160 e/ou sistemas de análise de documentos aprimorados 130 em relação ao estado de um documento aprimorado 151. Por exemplo, os sistemas de envio de documentos 160 e/ou os sistemas de análise de documentos aprimorados 130 podem fornecer ao sistema de criação de documentos aprimorados 110 uma notificação de que um documento aprimorado 151 foi recebido e analisado com sucesso, uma notificação de que ocorreu um erro ao tentar analisar o documento aprimorado 151 ou que o documento foi corrompido de alguma maneira, ou alguma outra notificação sobre o estado do documento (por exemplo, acionando uma URL de notificação incluída dentro do conteúdo incorporado do documento aprimorado 151 ou invocando uma API voltada para o público fornecida pelo sistema de criação de documentos aprimorados 110). Os sistemas de envio de documentos 160 e/ou sistemas de análise de documentos aprimorados 130 podem fornecer informações contextuais adicionais juntamente com a notificação. Por exemplo, quando um usuário 101 envia um currículo por meio de um quadro de inscrições de emprego, a notificação pode não apenas indicar o estado do currículo (por exemplo, como recebido, analisado com sucesso ou em revisão), mas também fornecer detalhes adicionais sobre o envio (por exemplo, identificar uma empresa ou função para a qual o currículo foi enviado). O sistema de criação de documentos aprimorados 110 também pode executar uma ou mais ações em resposta ao recebimento de uma notificação. Por exemplo, um usuário 101 pode ser notificado automaticamente se ocorrer um erro impedindo que o documento aprimorado 151 seja analisado, permitindo que o usuário 101 reenvie o documento aprimorado 151 ou execute outra ação corretiva. Como outro exemplo, o sistema de criação de documentos aprimorados 110 pode modificar ou atualizar o identificador de documento do documento aprimorado 151 para ser associado aos sistemas de envio de documentos 160 e/ou sistemas de análise de documentos aprimorados 130 cuja notificação de estado foi recebida.
[0057] O sistema de análise de documentos aprimorados 130 pode incluir uma ou mais interfaces de comunicação 131 (por exemplo, uma interface de comunicação WiFi ou uma interface LAN), um ou mais processadores 132, uma memória 133 e um dispositivo de armazenamento 134. A memória 133 pode incluir lógica de extração de metadados 135, lógica de descriptografia 136, lógica de verificação 137, e lógica de decodificação 138, que os processadores 132 podem utilizar para fornecer a funcionalidade de sistema descrita abaixo.
[0058] A lógica de extração de metadados 135 pode permitir que o sistema de análise de documentos aprimorados 130 extraia metadados incorporados em um documento aprimorado 151. O sistema de análise de documentos aprimorados 130, por exemplo, pode extrair os metadados incorporados do documento aprimorado 151 para obter uma única sequência de bytes extraída. Nos casos em que o conteúdo incorporado é criptografado, o sistema de análise de documentos aprimorados 130 pode dividir a sequência de bytes extraída em um salt e vetor de inicialização, e conteúdo criptografado. Quando os metadados consistem de uma série de pares de valor de ID, o sistema de análise de documentos aprimorados 130 pode primeiro concatenar os valores em sequência (por exemplo, com base nos IDs) para formar a única sequência de bytes extraída. Alternativamente, em modalidades em que o sistema de criação de documentos aprimorados 110 atua como um servidor de licenciamento de criptografia, o sistema de análise de documentos aprimorados 130 pode dividir a sequência de bytes em um identificador de chave de criptografia e conteúdo codificado criptografado.
[0059] Nos casos em que um identificador de documento exportado foi incorporado no documento aprimorado 151, a lógica de extração de metadados 135 pode entrar em contato com o sistema de criação de documentos aprimorados 110 para solicitar o conteúdo codificado (ou seja, associado ao identificador de documento exportado) que foi inicialmente armazenado pelo sistema de criação de documentos 110 quando o documento foi exportado. O sistema de análise de documentos aprimorados 130, por exemplo, pode ser capaz de consultar o sistema de criação de documentos aprimorados 110 invocando uma API voltada para o público e passando o identificador de documento exportado juntamente com outros parâmetros de solicitação. A solicitação, por exemplo, pode indicar o formato desejado no qual o conteúdo codificado deve ser retornado e/ou incluir uma chave de licença autorizando o sistema de análise de documentos aprimorados 130. Em algumas modalidades, o sistema de análise de documentos aprimorados 130 também pode indicar o escopo do conteúdo sendo solicitado, por exemplo, indicando se o sistema de criação de documentos aprimorados 110 deve ou não retornar conteúdo aumentado, conteúdo de usuário oculto, ou conteúdo suplementar, conforme discutido acima.
[0060] O sistema de análise de documentos aprimorados 130 pode tentar extrair metadados incorporados a partir de um documento recebido automaticamente, sob a suposição de que é um documento aprimorado 151, ou pode primeiro detectar se um documento recebido é um documento aprimorado 151, por exemplo, com base em um indicador (por exemplo, uma palavra-chave ou frase, símbolo, gráfico ou similar) fornecido na parte visível do documento. Em alguns casos, o indicador enquanto aparece na parte visível do documento pode, no entanto, ser ocultado ou ofuscado a partir da identificação e inspeção por um revisor humano (por exemplo, usando um tamanho de fonte pequeno e/ou cor transparente ou de baixo contraste). O sistema de análise de documentos aprimorados 130 também pode determinar se a sequência de bytes extraída é o próprio conteúdo codificado ou um identificador de documento exportado e pode processar os metadados extraídos consequentemente. O sistema de análise de documentos aprimorados 130 também pode determinar se o conteúdo codificado é criptografado e pode processar os dados consequentemente.
[0061] A lógica de descriptografia 136 pode permitir que o sistema de análise de documentos aprimorados 130 descriptografe o conteúdo criptografado uma vez extraído ou retornado pelo sistema de criação de documentos aprimorados 110. O sistema de análise de documentos aprimorados 130, por exemplo, pode regenerar a chave de criptografia usando uma senha de criptografia obtida a partir do sistema de criação de documentos aprimorados 110 e salt e vetores de inicialização extraídos dos metadados do documento aprimorado 151. Alternativamente, em modalidades em que o sistema de criação de documentos aprimorados 110 atua como um servidor de licenciamento de criptografia, o sistema de análise de documentos aprimorados 130 pode enviar uma solicitação incluindo uma chave de licença e o identificador de criptografia extraído das propriedades de metadados de documento para o sistema de criação de documentos aprimorados 110, que pode retornar a chave de criptografia solicitada. A chave de criptografia regenerada ou retornada pode então ser usada pelo sistema de análise de documentos aprimorados 130 para descriptografar o conteúdo codificado criptografado.
[0062] A lógica de verificação 137 pode permitir que o sistema de análise de documentos aprimorados 130 determine se o conteúdo visível do documento aprimorado 151 foi modificado desde sua criação, caso em que o conteúdo codificado pode não ser mais preciso. Em tais casos, o sistema de análise de documentos aprimorados 130 pode reverter para métodos de análise tradicionais. O sistema de análise de documentos aprimorados 130, por exemplo, pode extrair todos os caracteres de texto no conteúdo visível do documento aprimorado 151, bem como todos os caracteres de texto em cada elemento no conteúdo codificado, em sequências separadas. Os caracteres de texto podem ser extraídos em sua ordem exata de aparência e podem incluir espaços em branco. O sistema de análise de documentos aprimorados 130 pode então calcular um valor hash para cada sequência (por exemplo, usando o algoritmo hash MD5) e comparar os dois valores juntos para determinar se existem diferenças.
[0063] Nos casos em que um identificador de documento exportado é incorporado no documento aprimorado 151 e o conteúdo codificado associado é solicitado a partir do sistema de criação de documentos aprimorados 110, o sistema de análise de documentos aprimorados 130 pode transmitir o valor hash para o documento aprimorado 151 para o sistema de criação de documentos aprimorados 110 como parte de sua solicitação. O sistema de criação de documentos aprimorados 110 pode calcular um valor hash do conteúdo codificado associado armazenado no banco de dados de documentos 116 como descrito acima e comparar o valor hash recebido com o valor hash calculado para determinar se o documento aprimorado 151 foi alterado desde sua exportação. Se os valores hash não corresponderem, o sistema de criação de documentos aprimorados 110 pode responder com uma mensagem de erro, e o sistema de análise de documentos aprimorados 130 pode reverter para métodos de análise tradicionais.
[0064] A lógica de decodificação 138, por sua vez, pode permitir que o sistema de análise de documentos aprimorados 130 decodifique o conteúdo extraído e opcionalmente descriptografado, e pode fornecer os dados estruturados resultantes ao sistema de envio de documentos 160 conforme necessário. Em alguns casos, o sistema de análise de documentos aprimorados 130 pode processar o conteúdo extraído para colocá-lo em uma forma esperada por um sistema de envio de documentos 160 (por exemplo, com base em um mapeamento de alguns ou todos os campos e elementos do esquema definido para outro esquema utilizado pelo sistema de envio de documentos 160).
[0065] A Figura 7 representa um fluxo lógico de alto nível que o sistema de criação de documentos aprimorados 110 pode empregar na criação de um documento inicial 150. O processo pode começar com a determinação de se o usuário 101 gostaria de criar um novo documento ou trabalhar a partir de um documento existente, por exemplo, com base em uma entrada de usuário fornecida por meio de uma plataforma de criação de documentos 180 (700). Se o usuário 101 decidir criar um novo documento, o sistema de criação de documentos aprimorados 110 pode selecionar um modelo de documento com base em um ou mais atributos de usuário em um perfil de usuário associado ao usuário 101, que pode ser recuperado a partir do banco de dados de usuário 117 (710). O sistema de criação de documentos aprimorados 110 pode criar um documento inicial 150 de acordo com o modelo selecionado, que pode ser codificado de acordo com um esquema definido e armazenado como um documento estruturado no banco de dados de documentos 116 (711).
[0066] Alternativamente, se o usuário 101 decidir trabalhar a partir de um documento existente, o usuário 101 pode carregar um documento não aprimorado através da plataforma de criação de documentos 180 (720). O sistema de criação de documentos aprimorados 110 pode analisar o documento usando software de análise de documento para extrair informações a partir do documento não aprimorado (721). O sistema de criação de documentos aprimorados 110 pode analisar as informações extraídas para determinar a presença de uma ou mais seções no documento carregado, e pode criar um documento inicial 150 com seções equivalentes (722). O documento inicial 150 pode ser codificado de acordo com um esquema definido e armazenado como um documento estruturado no banco de dados de documentos 116 em associação com um identificador de documento exclusivo. O sistema de criação de documentos aprimorados 110 também pode preencher as seções dentro do documento inicial 150 com informações extraídas usando o software de análise (723). O sistema de criação de documentos aprimorados 110 pode codificar as seções preenchidas de acordo com o esquema definido e atualizar o documento estruturado no banco de dados de documentos 116 e pode atribuir um novo identificador de documento.
[0067] O sistema de criação de documentos aprimorados 110 pode então apresentar o documento inicial 150 ao usuário 101 através da plataforma de criação de documentos 180 para o usuário 101 visualizar, exportar ou ainda modificar (730). O usuário 101, por exemplo, pode ter a capacidade de escolher uma ou mais seções do documento inicial 150 para editar e, com base em uma seleção de usuário de uma seção específica (740), o sistema de criação de documentos aprimorados 110 pode apresentar ao usuário 101 um formulário correspondente à seção para o usuário 101 editar (732). O usuário 101 pode editar o conteúdo e formatar a seção através do formulário apresentado ao usuário 101 (741). Uma vez concluído, o sistema de criação de documentos aprimorados 110 pode codificar a seção e atualizar o documento estruturado no banco de dados de documentos 116 consequentemente (732). Este processo pode continuar até que seja determinado que o usuário 101 terminou de editar o documento (730)
[0068] A Figura 8 representa um fluxo lógico de alto nível que o sistema de criação de documentos aprimorados 110 pode empregar na exportação de um documento aprimorado 151. O processo pode começar com a criação de um documento inicial 150 por meio da plataforma de criação de documento 180 fornecida pelo sistema de criação de documentos aprimorados 110, que pode ser codificado de acordo com um esquema definido e armazenado como um documento estruturado no banco de dados de documentos 116 em associação com um identificador de documento exclusivo (801). Em resposta a uma solicitação de usuário para exportar o documento inicial 150 (803), o sistema de criação de documentos aprimorados 110 pode recuperar o documento estruturado a partir do banco de dados de documentos 117 e dessensibilizar o documento removendo qualquer informação confidencial (por exemplo, SSN, fotografia, etc.) (802). O sistema de criação de documentos aprimorados 110 pode então traduzir o documento estruturado em um esquema padronizado (804). O sistema de criação de documentos aprimorados 110 pode usar este documento dessensibilizado para renderizar o documento inicial 150 em um formato de arquivo específico (por exemplo, formato DOCX do Microsoft Word ou formato PDF do Adobe Acrobat) (806), que em algumas modalidades, pode ser formatado por um usuário 101 (807). O documento inicial 150 pode ser renderizado de acordo com uma definição de skin particular, que pode ser carregada a partir da biblioteca de skins 114a (808). O sistema de criação de documentos aprimorados 110 pode então determinar se deve incorporar o documento estruturado no documento renderizado (criado em 806) ou se deve incorporar o identificador de documento associado ao documento estruturado. (809). Se o documento estruturado for incorporado, o sistema de criação de documentos aprimorados 110 pode determinar ainda se o documento estruturado deve ser criptografado (810). Em caso afirmativo, o documento estruturado pode ser criptografado em uma sequência de bytes criptografada de acordo com um algoritmo de criptografia específico (811), que em algumas modalidades, pode contar com uma senha de criptografia recuperada a partir do banco de dados de senha de criptografia 115 (812). O identificador de documento exportado, documento estruturado ou documento estruturado criptografado pode então ser incorporado como uma sequência de bytes no documento renderizado (criado em 806) formando o documento aprimorado 151 (813).
[0069] A Figura 9 fornece um fluxo lógico exemplificativo que uma modalidade do sistema de criação de documentos aprimorados 110 pode empregar na renderização de um documento estruturado. Conforme ilustrado, o processo pode começar gerando um arquivo intermediário com base no documento estruturado (901), onde o posicionamento e o estilo (por exemplo, layout, fonte, espessuras de linha, espaçamento, margens, etc.) do conteúdo do documento podem ser fornecidos por uma definição de skin associada ao documento recuperada a partir da biblioteca de skins 114a (902). O sistema de criação de documentos aprimorados 110, por exemplo, pode gerar um arquivo HTML compreendendo diferentes elementos HTML, com estilos CSS especificados, juntamente com uma folha de estilo CSS vinculada para controlar a posição e o estilo (isto é, a aparência visual) do conteúdo do documento. O sistema de criação de documentos aprimorados 110 pode então converter o arquivo intermediário em um formato de arquivo específico, tal como o formato DOCX do Microsoft Word (903) ou o formato PDF do Adobe Acrobat (904), que pode depender do formato de arquivo especificado pelo usuário 101 (905).
[0070] A Figura 10 fornece um fluxo lógico exemplificativo que uma modalidade do sistema de criação de documentos aprimorados 110 pode empregar na criptografia de um documento estruturado. Conforme ilustrado, o processo pode começar com o sistema de criação de documentos aprimorados 110 gerando uma chave de criptografia usando um algoritmo de geração de chave de criptografia tal como PBKDF2 (1001), que pode obter um ou mais de um salt, um vetor de inicialização e uma senha como parâmetros na geração da chave de criptografia. A geração da chave de criptografia, portanto, pode exigir ainda a geração de um salt aleatório de 128 bits (1002), a geração de um vetor de inicialização aleatório de 128 bits (1003) e a recuperação a partir de uma senha de criptografia a partir do banco de dados de senha de criptografia 115 (1004). O sistema de criação de documentos aprimorados 110 pode então criptografar o conteúdo codificado usando um algoritmo de criptografia tal como AES (1005) para criar uma sequência de bytes criptografada do documento estruturado.
[0071] A Figura 11 representa um fluxo lógico exemplificativo que uma modalidade do sistema de criação de documentos aprimorados 110 pode empregar para incorporar conteúdo criptografado em um documento renderizado. Conforme ilustrado, o processo pode começar com o sistema de criação de documentos aprimorados 110 precedendo o salt e o vetor de inicialização, que foram gerados aleatoriamente, para a sequência de bytes criptografada (1101). Em modalidades em que o sistema de criação de documentos aprimorados 110 atua como um servidor de licenciamento de criptografia, o processo pode adicionalmente, ou alternativamente, envolver a anexação de um identificador de chave de criptografia à sequência de bytes criptografada. O sistema de criação de documentos aprimorados 110 pode, então, determinar, com base no formato de arquivo do documento convertido, se existem quaisquer limites colocados na forma em que os metadados podem ser incorporados no formato de arquivo convertido (1102). Os arquivos DOCX do Microsoft Word e arquivos PDF do Adobe Acrobat, por exemplo, podem armazenar metadados como “propriedades personalizadas” na forma de pares de valores de ID, com as “propriedades personalizadas” nos arquivos DOCX do Microsoft Word sendo ainda mais limitadas a sequências de 255 caracteres de comprimento, ou menos. No caso de arquivos Adobe Acrobat PDF, o sistema de criação de documentos aprimorados 110 pode gravar a sequência de bytes criptografada, com o salt e o vetor de inicialização anexados, como um único par de valores de ID formando assim o documento aprimorado 151 (1104). Alternativamente, no caso de arquivos DOCX do Microsoft Word, o sistema de criação de documentos aprimorados 110 pode dividir a sequência de bytes criptografada em várias sequências (1103), que podem ser gravadas no documento convertido em sequências como uma série de pares de valores de ID, formando assim o documento aprimorado 151 (1105). Embora o anterior descreva a incorporação de conteúdo criptografado, deve-se notar que o conteúdo codificado não precisa ser criptografado e pode ser incorporado como uma sequência de bytes não criptografada ou que o identificador de documento exportado pode ser incorporado como uma sequência de bytes.
[0072] A Figura 12 descreve um fluxo lógico de alto nível que um sistema de análise de documentos pode seguir na análise de um documento aprimorado. Conforme ilustrado, o processo pode começar com o envio de um documento aprimorado 151, por exemplo, através do sistema de envio de documentos 160 (1201). O sistema de envio de documentos 160 pode passar o documento aprimorado 151 ao longo do sistema de análise de documentos aprimorados 130 para ser analisado, por exemplo, invocando um serviço público ou externo. O sistema de análise de documentos aprimorados 130 pode extrair os metadados incorporados a partir do documento aprimorado 151 para obter uma única sequência de bytes extraída (1202). Quando os metadados consistem de uma série de pares de valores de ID, o sistema de análise de documentos aprimorados 130 pode primeiro concatenar os valores em sequência (por exemplo, com base nos IDs) para formar a única sequência de bytes extraída.
[0073] O sistema de análise de documentos aprimorados 130 pode, então, determinar se a sequência de bytes extraída representa um identificador de documento exportado ou conteúdo estruturado (1203) e, no caso deste último, pode determinar ainda se o conteúdo estruturado é criptografado (1204). Se a sequência de bytes extraída representar um identificador de documento exportado, o sistema de análise de documentos aprimorados 130 pode solicitar o documento estruturado associado a partir do sistema de criação de documentos aprimorados 110 (1205). Nos casos em que os metadados extraídos são criptografados, o sistema de análise de documentos aprimorados 130 pode dividir a sequência de bytes em um salt e vetor de inicialização, e conteúdo criptografado (1206). O sistema de análise de documentos aprimorados 130 pode obter a senha de criptografia usada para gerar a chave de criptografia usada para criptografar o conteúdo (por exemplo, solicitando-a a partir do sistema de criação de documentos aprimorados 110) (1207), e pode regenerar a chave de criptografia usando a senha de criptografia e salt e os vetores de inicialização extraídos a partir dos metadados não visíveis do documento aprimorado 151 (1208). Alternativamente, em modalidades em que o sistema de criação de documentos aprimorados 110 atua como um servidor de licenciamento de criptografia, o sistema de análise de documentos aprimorados 130 pode dividir a sequência de bytes em um identificador de chave de criptografia e conteúdo criptografado. O sistema de análise de documentos aprimorados 130 pode, então, enviar uma solicitação de uma chave de criptografia para o sistema de criação de documentos aprimorados 110, a solicitação incluindo uma chave de licença para o sistema de análise de documentos aprimorados 130 e o identificador de criptografia extraído a partir dos metadados não visíveis incorporados no documento. O sistema de análise de documentos aprimorados 130 pode então usar a chave de criptografia gerada ou retornada para descriptografar o conteúdo criptografado extraído a partir dos metadados do documento aprimorado 151 para obter o documento estruturado (1209).
[0074] Uma vez que o documento estruturado é obtido, o sistema de análise de documentos aprimorados 130 pode determinar se o documento aprimorado 151 foi modificado desde que foi criado pela primeira vez (1210). Se for feita uma determinação de que o documento não foi modificado, o sistema de análise de documentos aprimorados 130 pode decodificar o documento estruturado e extrair elementos de conteúdo individuais à medida que necessário (1211). Alternativamente, se for determinado que o documento aprimorado 151 foi modificado, o sistema de análise de documentos aprimorados 130 pode empregar técnicas tradicionais de análise para analisar o conteúdo visível do documento aprimorado 151 (1212).
[0075] A Figura 13 representa um fluxo lógico exemplificativo que o sistema de análise de documentos aprimorados 130 pode empregar para determinar se um documento exportado anteriormente foi modificado. O processo pode começar com o sistema de análise de documentos aprimorados 130 extraindo todos os caracteres de texto no conteúdo visível do documento aprimorado 151 em uma única sequência. (1301). O sistema de análise de documentos aprimorados 130 também pode extrair todos os caracteres de texto (incluindo espaços em branco) em cada elemento do documento estruturado em uma única sequência, com os elementos sendo processados em sua ordem exata de aparecimento no documento estruturado (1302). O sistema de análise de documentos aprimorados 130 pode então calcular um valor hash de cada sequência usando o algoritmo hash MD5 (1303a, 1303b) e comparar os valores juntos (1304). Se os valores hash calculados forem idênticos, o documento não será modificado. Por outro lado, se os valores hash forem diferentes, o conteúdo visível do documento aprimorado 151 foi alterado de alguma forma. Em modalidades em que um identificador de documento exportado é incorporado no documento aprimorado 151, um processo similar pode ser empregue. O sistema de análise de documentos aprimorados 130, por exemplo, pode calcular o valor hash do conteúdo visível do documento aprimorado 151 (como em 1301, 1303a) e transmitir o valor hash calculado para o sistema de criação de documentos aprimorados 110 como parte de uma solicitação do documento estruturado associado ao identificador do documento exportado. O sistema de criação de documentos aprimorados 110 pode então calcular o valor hash do documento estruturado associado ao identificador de documento exportado armazenado no banco de dados de documentos 116 (como em 1302, 1303b), e pode comparar o valor hash recebido a partir do sistema de análise de documentos aprimorados 130 com o valor hash calculado para determinar se o documento foi modificado (como em 1304). Se os valores hash corresponderem, o sistema de criação de documentos aprimorados 110 pode determinar que o documento aprimorado 151 não foi modificado desde a exportação e pode retornar o documento estruturado para o sistema de análise de documentos aprimorados 130.
[0076] Embora modalidades específicas da invenção tenham sido descritas acima, será apreciado que a invenção pode ser praticada de forma diferente da descrita. A(s) modalidade(s) descrita(s) e as referências na especificação a “uma modalidade”, “uma modalidade exemplificativa”, “algumas modalidades”, etc., indicam que a(s) modalidade(s) descrita(s) pode(m) incluir uma característica particular, estrutura ou característica, mas cada modalidade pode não necessariamente incluir o recurso, estrutura ou característica específica. Além disso, tais frases não se referem necessariamente à mesma modalidade. Além disso, quando um determinado recurso, estrutura ou característica é descrito em conjunto com uma modalidade, entende-se que está dentro do conhecimento de um versado na técnica efetuar tal recurso, estrutura ou característica em conjunto com outras modalidades se ou não explicitamente descrito.
[0077] A descrição fornecida acima é destinada ser ilustrativa e não limitante. Assim, será evidente para um versado na técnica que podem ser feitas modificações à presente invenção conforme descrito sem abandonar o escopo das reivindicações apresentadas abaixo. Por exemplo, embora o anterior possa descrever a incorporação de conteúdo criptografado, deve ser apreciado que o conteúdo codificado não precisa ser criptografado e pode ser incorporado como uma sequência de bytes não criptografada. Além disso, embora a descrição acima tenha sido fornecida com referência à criação e análise de um documento de currículo aprimorado, a invenção não é assim limitada, e pode ser naturalmente estendida a outros contextos. Os sistemas aprimorados de criação e análise de documentos, por exemplo, podem ser usados para criar documentos aprimorados de declaração de impostos.
[0078] A descrição anterior das modalidades específicas revelará tão completamente a natureza geral da invenção que outros podem, aplicando o conhecimento na técnica, prontamente modificar e/ou adaptar para várias aplicações tais modalidades específicas, sem experimentação indevida, sem sair do conceito geral da presente invenção. Portanto, tais adaptações e modificações são destinadas a estar dentro do significado e intervalo de equivalentes das modalidades descritas, com base nos ensinamentos e orientações aqui apresentados. Deve ser entendido que a fraseologia ou terminologia aqui é para fins de descrição e não de limitação, de modo que a terminologia ou fraseologia da presente especificação deve ser interpretada pelo versado na técnica face aos ensinamentos e à orientação.
[0079] A amplitude e o escopo da presente invenção não devem ser limitados por nenhuma das modalidades exemplificativas descritas acima, mas devem ser definidos apenas de acordo com as reivindicações a seguir e seus equivalentes.

Claims (20)

  1. Método para processar um documento aprimorado por um sistema de análise de documentos, caracterizado pelo fato de que compreende: receber um documento aprimorado no sistema de análise de documentos, o documento aprimorado tendo metadados não visíveis incorporados; extrair conteúdo codificado a partir dos metadados incorporados no documento aprimorado; e transmitir o conteúdo codificado como um documento estruturado para uma plataforma de envio de documentos.
  2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: verificar se o documento aprimorado não foi modificado antes de extrair o conteúdo codificado.
  3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que a extração do conteúdo codificado compreende adicionalmente: acessar um ou mais segmentos de sequência de bytes nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes tendo um identificador associado; e reunir os um ou mais segmentos de sequência de bytes em uma sequência de bytes para obter conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e extrair o conteúdo codificado compreende adicionalmente: acessar um ou mais segmentos de sequência de bytes criptografados nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes criptografado tendo um identificador associado; reunir um ou mais segmentos de sequência de bytes criptografados em uma sequência de bytes criptografada; selecionar uma parte inicial da sequência de bytes criptografada como um salt de criptografia e vetor de inicialização, e truncar a parte inicial da sequência de bytes criptografada; e obter uma senha de criptografia a partir de um banco de dados de senha de criptografia; descriptografar a sequência de bytes criptografada truncada usando uma chave de descriptografia gerada usando a senha de criptografia, salt e vetor de inicialização de acordo com um algoritmo de descriptografia para obter o conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que extrair o conteúdo codificado compreende adicionalmente: acessar um ou mais segmentos de sequência de bytes criptografados nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes criptografado tendo um identificador associado; reunir um ou mais segmentos de sequência de bytes criptografados em uma sequência de bytes criptografada; selecionar uma parte inicial da sequência de bytes criptografada como um identificador de chave de criptografia, e truncar a parte inicial da sequência de bytes criptografada; transmitir uma solicitação de chave de criptografia para um servidor de licenciamento, em que a solicitação compreende uma chave de licença associada a uma entidade autorizada e o identificador de chave de criptografia; receber uma chave de descriptografia em resposta à solicitação após verificação bem-sucedida da chave de licença; e descriptografar a sequência de bytes criptografada truncada usando a chave de descriptografia para obter o conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: registrar o documento aprimorado com um sistema de criação de documentos; receber uma notificação quando o documento aprimorado for atualizado; e solicitar uma versão atualizada do documento aprimorado após receber a notificação.
  7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: transmitir uma notificação de estado para um sistema de criação de documentos após a extração bem-sucedida do conteúdo codificado.
  8. Sistema de análise de documentos, caracterizado pelo fato de que compreende: pelo menos um processador; e uma memória em comunicação com o processador, a memória tendo uma pluralidade de instruções armazenadas, em que o processador é configurado para executar as instruções para: receber um documento aprimorado no sistema de análise de documentos, o documento aprimorado tendo metadados não visíveis incorporados; extrair conteúdo codificado a partir dos metadados incorporados no documento aprimorado; e transmitir o conteúdo codificado como um documento estruturado para uma plataforma de envio de documentos.
  9. Sistema de análise de documentos, de acordo com a reivindicação 8, caracterizado pelo fato de que o processador é adicionalmente configurado para executar as instruções para: verificar se o documento aprimorado não foi modificado antes de executar as instruções para extrair o conteúdo codificado.
  10. Sistema de análise de documentos, de acordo com a reivindicação 8, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e o processador na extração do conteúdo codificado é adicionalmente configurado para executar as instruções para: acessar um ou mais segmentos de sequência de bytes nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes tendo um identificador associado; e reunir os um ou mais segmentos de sequência de bytes em uma sequência de bytes para obter conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  11. Sistema de análise de documentos, de acordo com a reivindicação 8, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que o processador na extração do conteúdo codificado é adicionalmente configurado para executar as instruções para: acessar um ou mais segmentos de sequência de bytes criptografados nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes criptografado tendo um identificador associado; reunir os um ou mais segmentos de sequência de bytes criptografados em uma sequência de bytes criptografada; selecionar uma parte inicial da sequência de bytes criptografada como um salt de criptografia e vetor de inicialização, e truncar a parte inicial da sequência de bytes criptografada; obter uma senha de criptografia a partir de um banco de dados de senha de criptografia; e descriptografar a sequência de bytes criptografada truncada usando uma chave de descriptografia gerada usando a senha de criptografia, salt e vetor de inicialização de acordo com um algoritmo de descriptografia para obter conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  12. Sistema de análise de documentos, de acordo com a reivindicação 8, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que o processador na extração do conteúdo codificado é adicionalmente configurado para executar as instruções para: acessar um ou mais segmentos de sequência de bytes criptografados nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes criptografado tendo um identificador associado; reunir os um ou mais segmentos de sequência de bytes criptografados em uma sequência de bytes criptografada; selecionar uma parte inicial da sequência de bytes criptografada como um identificador de chave de criptografia, e truncar a parte inicial da sequência de bytes criptografada; transmitir uma solicitação de chave de criptografia para um servidor de licenciamento, em que a solicitação compreende uma chave de licença associada a uma entidade autorizada e o identificador de chave de criptografia; receber uma chave de descriptografia em resposta à solicitação mediante verificação bem-sucedida da chave de licença; e descriptografar a sequência de bytes criptografada truncada usando a chave de descriptografia para obter conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  13. Sistema de análise de documentos, de acordo com a reivindicação 8, caracterizado pelo fato de que o processador é adicionalmente configurado para executar as instruções para: registrar o documento aprimorado com um sistema de criação de documentos; receber uma notificação quando o documento aprimorado for atualizado; e solicitar uma versão atualizada do documento aprimorado após receber a notificação.
  14. Sistema de análise de documentos, de acordo com a reivindicação 8, caracterizado pelo fato de que o processador é adicionalmente configurado para executar as instruções para: transmitir uma notificação de estado para um sistema de criação de documentos após a extração bem-sucedida do conteúdo codificado.
  15. Meio legível por computador não transitório, caracterizado pelo fato de que compreende uma pluralidade de instruções, as instruções sendo executáveis por um processador para: receber um documento aprimorado no sistema de análise de documentos, o documento aprimorado tendo metadados não visíveis incorporados; extrair conteúdo codificado a partir dos metadados incorporados no documento aprimorado; e transmitir o conteúdo codificado como um documento estruturado para uma plataforma de envio de documentos.
  16. Meio legível por computador não transitório, de acordo com a reivindicação 15, caracterizado pelo fato de que as instruções são adicionalmente executáveis para: verificar se o documento aprimorado não foi modificado antes de extrair o conteúdo codificado.
  17. Meio legível por computador não transitório, de acordo com a reivindicação 15, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que as instruções para extrair o conteúdo codificado são adicionalmente executáveis para: acessar um ou mais segmentos de sequência de bytes nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes tendo um identificador associado; e reunir os um ou mais segmentos de sequência de bytes em uma sequência de bytes para obter conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  18. Meio legível por computador não transitório, de acordo com a reivindicação 15, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que as instruções para extrair o conteúdo codificado são adicionalmente executáveis para: acessar um ou mais segmentos de sequência de bytes criptografados nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes criptografado tendo um identificador associado; reunir os um ou mais segmentos de sequência de bytes criptografados em uma sequência de bytes criptografada; selecionar uma parte inicial da sequência de bytes criptografada como um salt de criptografia e vetor de inicialização, e truncar a parte inicial da sequência de bytes criptografada; obter uma senha de criptografia a partir de um banco de dados de senha de criptografia; e descriptografar a sequência de bytes criptografada truncada usando uma chave de descriptografia gerada usando a senha de criptografia, salt e vetor de inicialização de acordo com um algoritmo de descriptografia para obter conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  19. Meio legível por computador não transitório, de acordo com a reivindicação 15, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que as instruções para extrair o conteúdo codificado são adicionalmente executáveis para: acessar um ou mais segmentos de sequência de bytes criptografados nos metadados incorporados do documento aprimorado, cada segmento de sequência de bytes criptografado tendo um identificador associado; reunir os um ou mais segmentos de sequência de bytes criptografados em uma sequência de bytes criptografada; selecionar uma parte inicial da sequência de bytes criptografada como um identificador de chave de criptografia, e truncar a parte inicial a partir da sequência de bytes criptografada; transmitir uma solicitação de uma chave de criptografia para um servidor de licenciamento, em que a solicitação compreende uma chave de licença associada a uma entidade autorizada e o identificador de chave de criptografia; receber uma chave de descriptografia em resposta à solicitação mediante verificação bem-sucedida da chave de licença; e descriptografar a sequência de bytes criptografada truncada usando a chave de descriptografia para obter conteúdo codificado de acordo com um esquema de documento definido, o conteúdo codificado compreendendo um ou mais elementos, tendo um ou mais campos e valores de campo correspondentes.
  20. Meio legível por computador não transitório, de acordo com a reivindicação 15, caracterizado pelo fato de que os metadados são armazenados como pares de ID e valor, e em que as instruções para extrair o conteúdo codificado são adicionalmente executáveis para: registrar o documento aprimorado com um sistema de criação de documentos; receber uma notificação quando o documento aprimorado for atualizado; e solicitar uma versão atualizada do documento aprimorado após receber a notificação.
BR122022003477-2A 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita BR122022003477A2 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063021968P 2020-05-08 2020-05-08
US63/021,968 2020-05-08
BR112022001256-0 2021-03-05
BR112022001256A BR112022001256A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita
PCT/US2021/021135 WO2021225687A1 (en) 2020-05-08 2021-03-05 Systems and methods for creating enhanced documents for perfect automated parsing

Publications (1)

Publication Number Publication Date
BR122022003477A2 true BR122022003477A2 (pt) 2022-03-29

Family

ID=75497995

Family Applications (4)

Application Number Title Priority Date Filing Date
BR112022001256A BR112022001256A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita
BR122022003476-4A BR122022003476A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita
BR122022003477-2A BR122022003477A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita
BR122022003479-9A BR122022003479A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita

Family Applications Before (2)

Application Number Title Priority Date Filing Date
BR112022001256A BR112022001256A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita
BR122022003476-4A BR122022003476A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita

Family Applications After (1)

Application Number Title Priority Date Filing Date
BR122022003479-9A BR122022003479A2 (pt) 2020-05-08 2021-03-05 Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita

Country Status (8)

Country Link
US (5) US11281783B2 (pt)
EP (4) EP3929798A1 (pt)
AU (4) AU2021267818B2 (pt)
BR (4) BR112022001256A2 (pt)
CA (4) CA3215896A1 (pt)
MX (1) MX2022002517A (pt)
TW (1) TW202201243A (pt)
WO (1) WO2021225687A1 (pt)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230067897A1 (en) * 2021-08-25 2023-03-02 Paypal, Inc. Automatic detection of proxy-based phishing sites
US20230359813A1 (en) * 2022-05-03 2023-11-09 Bold Limited Systems and methods for improved user-reviewer interaction using enhanced electronic documents linked to online documents
US11775754B1 (en) 2022-05-03 2023-10-03 Bold Limited Systems and methods for improved user-reviewer interaction using enhanced electronic documents linked to online documents
WO2023215211A1 (en) * 2022-05-03 2023-11-09 Bold Limited Systems and methods for improved user-reviewer interaction using enhanced electronic documents linked to online documents

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7228437B2 (en) 1998-08-13 2007-06-05 International Business Machines Corporation Method and system for securing local database file of local content stored on end-user system
US7110984B1 (en) 1998-08-13 2006-09-19 International Business Machines Corporation Updating usage conditions in lieu of download digital rights management protected content
US6959288B1 (en) 1998-08-13 2005-10-25 International Business Machines Corporation Digital content preparation system
US7624158B2 (en) 2003-01-14 2009-11-24 Eycast Inc. Method and apparatus for transmission and storage of digital medical data
US20050120290A1 (en) 2003-12-01 2005-06-02 Information Handling Services Inc. Page rendered electronic file processing
JP4716709B2 (ja) 2004-06-10 2011-07-06 インターナショナル・ビジネス・マシーンズ・コーポレーション 構造化文書処理装置、構造化文書処理方法、及びプログラム
US9201854B1 (en) 2006-10-25 2015-12-01 Hewlett-Packard Development Company, L.P. Methods and systems for creating, interacting with, and utilizing a superactive document
US20080163364A1 (en) 2006-12-27 2008-07-03 Andrew Rodney Ferlitsch Security method for controlled documents
US8195767B2 (en) 2008-12-22 2012-06-05 Sap Ag Method and software for reducing server requests by a browser
US8468345B2 (en) 2009-11-16 2013-06-18 Microsoft Corporation Containerless data for trustworthy computing and data services
US9537650B2 (en) 2009-12-15 2017-01-03 Microsoft Technology Licensing, Llc Verifiable trust for data through wrapper composition
WO2011127440A2 (en) 2010-04-08 2011-10-13 University Of Washington Through Its Center For Commercialization Systems and methods for file access auditing
US8452822B2 (en) 2010-06-30 2013-05-28 Verizon Patent And Licensing Inc. Universal file naming for personal media over content delivery networks
US20140317009A1 (en) 2013-04-22 2014-10-23 Pangea Connect, Inc Managing Online and Offline Interactions Between Recruiters and Job Seekers
US9213684B2 (en) 2013-09-13 2015-12-15 Box, Inc. System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
US20150302218A1 (en) 2014-04-22 2015-10-22 Pacid Technologies, Llc Method and system for file hiding
US9934213B1 (en) * 2015-04-28 2018-04-03 Intuit Inc. System and method for detecting and mapping data fields for forms in a financial management system
US10733370B2 (en) 2015-08-18 2020-08-04 Change Healthcare Holdings, Llc Method, apparatus, and computer program product for generating a preview of an electronic document
US9507762B1 (en) * 2015-11-19 2016-11-29 International Business Machines Corporation Converting portions of documents between structured and unstructured data formats to improve computing efficiency and schema flexibility
WO2017091825A1 (en) * 2015-11-29 2017-06-01 Vatbox, Ltd. System and method for automatic validation
CN105678189B (zh) * 2016-01-15 2018-10-23 上海海事大学 加密数据文件存储和检索系统及方法
US10650086B1 (en) * 2016-09-27 2020-05-12 Palantir Technologies Inc. Systems, methods, and framework for associating supporting data in word processing
WO2019071253A1 (en) 2017-10-07 2019-04-11 Arp-Ip Llc SYSTEM AND METHOD FOR RANDOMIZING HIDDEN MESSAGES IN DIGITAL FILES
US11036923B2 (en) 2017-10-10 2021-06-15 P3 Data Systems, Inc. Structured document creation and processing, dynamic data storage and reporting system
US20200334274A1 (en) * 2019-04-16 2020-10-22 Suresh Joshi Quick data structuring computing system and related methods
US20210049239A1 (en) 2019-08-16 2021-02-18 Microsoft Technology Licensing, Llc Multi-layer document structural info extraction framework
US11539709B2 (en) * 2019-12-23 2022-12-27 Citrix Systems, Inc. Restricted access to sensitive content
US11423042B2 (en) * 2020-02-07 2022-08-23 International Business Machines Corporation Extracting information from unstructured documents using natural language processing and conversion of unstructured documents into structured documents

Also Published As

Publication number Publication date
MX2022002517A (es) 2022-03-25
CA3215896A1 (en) 2021-11-11
US20230401324A1 (en) 2023-12-14
AU2021267818B2 (en) 2024-02-15
BR122022003479A2 (pt) 2022-03-29
EP3929797A1 (en) 2021-12-29
US20240012913A1 (en) 2024-01-11
EP3924863A1 (en) 2021-12-22
AU2024201936A1 (en) 2024-04-11
EP3929799A1 (en) 2021-12-29
US11281783B2 (en) 2022-03-22
CA3149615C (en) 2023-11-28
CA3215912A1 (en) 2021-11-11
TW202201243A (zh) 2022-01-01
US20230401325A1 (en) 2023-12-14
US20240086552A1 (en) 2024-03-14
BR112022001256A2 (pt) 2022-03-15
CA3215881A1 (en) 2021-11-11
AU2024201935A1 (en) 2024-04-11
BR122022003476A2 (pt) 2022-03-29
AU2021267818A1 (en) 2022-02-24
US20210350064A1 (en) 2021-11-11
CA3149615A1 (en) 2021-11-11
AU2024201934A1 (en) 2024-04-11
EP3929798A1 (en) 2021-12-29
WO2021225687A1 (en) 2021-11-11

Similar Documents

Publication Publication Date Title
BR122022003477A2 (pt) Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita
US9754120B2 (en) Document redaction with data retention
US9489354B1 (en) Masking content while preserving layout of a webpage
US11972201B2 (en) Facilitating auto-completion of electronic forms with hierarchical entity data models
US8782431B2 (en) Digital data authentication and security system
US11537727B2 (en) Systems and methods for creating enhanced documents for perfect automated parsing
US9682590B1 (en) Printed document security
NZ785673A (en) Systems and Methods for Creating Enhanced Documents for Perfect Automated Parsing
NZ785674A (en) Systems and Methods for Creating Enhanced Documents for Perfect Automated Parsing
NZ785670A (en) Systems and Methods for Creating Enhanced Documents for Perfect Automated Parsing
US20230040974A1 (en) Data obfuscation
Davies et al. Data Collection, Storage and Security
Vaswani A blockchain-based approach for securing Electronic Hospital Records
Jääskeläinen et al. Content analysis & anonymization made simple
Don et al. Digitized Engineering Notebook
Rochkind et al. Reports and Other Outputs

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: AS CLASSIFICACOES ANTERIORES ERAM: G06F 40/131 , G06F 40/174 , G06F 40/205 , H04L 9/32 , G06F 21/16 , G06F 21/00

Ipc: G06F 40/131 (2020.01), G06F 40/174 (2020.01), G06F