BRPI0610742A2 - redes de informação personalizáveis - Google Patents

redes de informação personalizáveis Download PDF

Info

Publication number
BRPI0610742A2
BRPI0610742A2 BRPI0610742-7A BRPI0610742A BRPI0610742A2 BR PI0610742 A2 BRPI0610742 A2 BR PI0610742A2 BR PI0610742 A BRPI0610742 A BR PI0610742A BR PI0610742 A2 BRPI0610742 A2 BR PI0610742A2
Authority
BR
Brazil
Prior art keywords
collection
information
fact
search
computer readable
Prior art date
Application number
BRPI0610742-7A
Other languages
English (en)
Inventor
Suri Raman
Matthew F Hillman
Ashwani Sirohi
Original Assignee
Microsoft Corp
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
Priority claimed from US11/334,008 external-priority patent/US20060265396A1/en
Priority claimed from US11/333,980 external-priority patent/US20060265377A1/en
Priority claimed from US11/333,985 external-priority patent/US20060265395A1/en
Priority claimed from US11/333,978 external-priority patent/US20060265394A1/en
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0610742A2 publication Critical patent/BRPI0610742A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

REDES DE INFORMAçãO PERSONALIZáVEIS. Uma facilidade para criar coleções de quadro de avisos compartilháveis é descrita. Em várias modalidades, a facilidade recebe uma indicação de uma consulta definindo um termo para pesquisa, utiliza um provedor de pesquisa para executar uma pesquisa pelos -itens de informação que correspondem com critérios, recebe do provedor de pesquisa uma indicação de um resultado correspondendo com a consulta, cria uma coleção de quadro de avisos compartilhável, recebe através de uma ação única uma indicação para adicionar o resultado na qoleção do .quadro de avisos compartilhável e compartilha a coleção do quadro de avisos compartilhável com um receptor.

Description

"REDES DE INFORMAÇÃO PERSONALIZÁVEIS"REFERÊNCIAS CRUZADAS COM PEDIDOS RELACIONADOS
Esse pedido reivindica o beneficio do Pedido dePatente Provisório U.S. 60/683.282, depositado em 19 de maiode 2005 e Pedido de Patente Provisório U.S. 60/711.580, de-positado em 25 de agosto de 2005, que são ambos incorporadosaqui nas suas integridades por referência. Esse pedido está-relacionado com os pedidos de patente de utilidade U.S. se-guintes que são depositados simultaneamente com esse e in-corporados aqui nas suas integridades por referência:
<table>table see original document page 2</column></row><table>
ANTECEDENTES
Usuários de dispositivos de computação podem uti-lizar seus dispositivos de computação para comunicar infor-mação para outros usuários de muitas maneiras. Duas maneirasde comunicação de informação que são geralmente encontradasem muitas organizações de negócios podem ser classificadascomo modelos de "troca de mensagens" ou "hospedados".No modelo de troca de mensagens, os usuários uti-lizam uma infra-estrutura de troca de mensagens para enviarinformação para outros usuários. Infra-estruturas de trocade mensagens incluem correio eletrônico ("e-mail"), troca demensagens instantânea e assim por diante. Embora os usuáriosgeralmente achem o modelo de troca de mensagens fácil de u-sar, esse modelo tem várias deficiências, algumas das "quais-são identificadas aqui. Uma deficiência é que os usuáriosgeralmente enviam uma "captura instantânea" da informaçãopara outros usuários. Como um resultado, usuários diferentespodem receber versões diferentes da informação. Como um e-xemplo, se um usuário envia informação através de um anexode e-mail a um grupo de usuários e um outro usuário no grupomodifica a informação e envia a informação modificada para ogrupo, outros usuários do grupo podem receber duas versõesda informação. Quando múltiplos usuários modificam a infor-mação e enviam a informação modificada para o grupo, usuá-rios podem ficar confusos quanto a quais modificações são asmais recentes. Essa deficiência pode ser mais exacerbadaquando os e-mails contêm documentos anexos, que leva a pro-blemas de detecção de versão. Uma segunda deficiência com omodelo de troca de mensagens é que o acesso não pode ser ge-ralmente controlado. Em particular, é muito dificil para umcriador da informação controlar quais usuários têm acesso àinformação. Como um exemplo, embora um criador da informaçãopossa selecionar um conjunto autorizado de receptores, ocriador não pode controlar o que os receptores podem fazercom a informação. Assim, um receptor pode enviar a informa-ção para um usuário desautorizado. 0 e-mail também tem ou-tras deficiências, tal como essas listadas aqui: sem regrascomplexas de programação, pode ser dificil organizar a caixade entrada de e-mail, uma cópia de uma mensagem de e-mailpode ser geralmente preenchida somente em uma pasta, o com-partilhamento de uma discussão encadeada de e-mail com umapessoa que se envolve em um"projeto no fim pode ser dificil,a adição de um novo usuário em uma discussão encadeada tendomúltiplas bifurcações geralmente não apresenta um quadro a-brangente do encadeamento para o novo usuário e mensagens dee-mail podem ter anexos embutidos e o provimento de comentá-rios contextuais em linha relacionado com os anexos é pro-blemático.
No modelo hospedado, os usuários colocam a infor-mação em uma localização comumente referenciada. Como um e-xemplo, o modelo hospedado inclui servidores de arquivo,servidores de rede, quadros de avisos eletrônicos, soluçõesde gerenciamento de conteúdo, espaços de trabalho e assimpor diante. Um outro exemplo do modelo hospedado é um "por-tal", que as organizações de negócios algumas vezes constró-em para publicar informação. Um portal é geralmente um sitiode rede construído em um conjunto comum de serviços de apli-cativos que possibilita que as organizações de negócio pu-bliquem informação para os usuários. Os usuários geralmentevêem a informação contida nos portais utilizando um navega-dor da Internet ou outro aplicativo que é capaz de mostrar ainformação contida no portal. Vantagens do modelo hospedadosão que os usuários verão a última informação hospedada e ainformação é geralmente organizada. Entretanto, existem vá-rias deficiências no modelo hospedado, algumas das quais sãoidentificadas aqui. Uma deficiência é que o modelo hospedadogeralmente exige alguma administração centralizada para atu-alizar a informação ou para organizar a informação. Uma se-gunda deficiência é que os usuários não podem controlar fa-cilmente quais outros usuárÍõs""têm""a"ce"s"so à Informação por-que os administradores geralmente controlam os privilégiosde acesso para localizações de documento de portal ao invésdos usuários. Uma deficiência especifica dos portais é queeles são geralmente complicados e trabalhosos para criar emanter. Portais também têm outras deficiências, tais comoessas listadas aqui: os portais geralmente se tornam "ultra-passados" a menos que a informacao seja recarregada e atua-lizada; geralmente, a maior parte da informação é criada u-sando ferramentas de autoria (tal como MICROSOFT WORD), a-provada através de um processo de aprovação (por exemplo, e-mail) e a seguir transferida para o portal; mesmo sem o flu-xo de trabalho da aprovação, as ações separadas de autoria ea seguir transferência freqüentemente tornam a informação noportal ultrapassada; os portais freqüentemente exigem a or-ganização direta e decisões sistemáticas para definir umaestrutura e não são fáceis de alterar depois que a estruturafoi criada; a descoberta de informação através de portais éatravés de pesquisas "federadas" ou outras, que simplesmenteprovêem resultados de pesquisa que um usuário tem que nave-gar um a um e os portais exigem que os usuários identifiquemuma localização (por exemplo, URL de intranet ou Internet).Uma tentativa para resolver as deficiências e ti-rar vantagem dos benefícios de ambos os modelos é o uso domodelo hospedado em combinação com o modelo de troca de men-sagens, onde um e-mail é enviado para usuários contendo umaindicação da informação hospedada, tal como um ponteiro ouuma ligação para uma localização onde a informação está ar-mazenada. Embora essa abordagem possibilite que os usuáriosvejam a última versão da informação organizada, ela tambémtem múltiplas deficiências, algumas das quais são identifi-cadas aqui. Uma deficiência é que o controle de acesso é de-sordenado. Embora um usuário possa especificar quais outrosusuários receberão um e-mail contendo as ligações, o usuárionão pode especificar facilmente os atributos de controle deacesso tal como se os receptores das ligações podem ver ainformação ou se os receptores podem enviar as ligações paraoutros usuários. Uma segunda deficiência é que os usuáriosnão podem pesquisar facilmente informação na sua caixa deentrada porque somente ligações aparecem no seu e-mail.
BREVE DESCRIÇÃO DOS DESENHOS
As Figuras 1-3 são diagramas de tela ilustrandopáginas de resultados na tela providos pela facilidade emvárias modalidades.
A Figura 4 é um diagrama de fluxo ilustrando umarotina de collect_information_items que é utilizada pela fa-cilidade em várias modalidades para coletar itens de infor-mação.
A Figura 5 é um diagrama de fluxo ilustrando umarotina de handle_URL que é utilizada pela facilidade em vá-rias modalidades para manipular a localização constante derecursos identificando coleções de quadro de avisos.
A Figura 6 é um diagrama de fluxo ilustrando umarotina de create_pinboard_collection que é utilizada pelafacilidade em várias modalidades para criar uma coleção dequadro de avisos.
A Figura 7 é um diagrama em tabela ilustrando umatabela de posição de resultado criada pela facilidade quandoexecutando um plano de consulta em várias modalidades.
A Figura 8 é um diagrama de blocos ilustrando umambiente adequado no qual a facilidade pode operar em váriasmodalidades.
A Figura 9 é um diagrama de blocos ilustrando as-pectos de um servidor da Figura 8 em mais detalhes em váriasmodalidades.
A Figura 10 é um diagrama de tela ilustrando umapágina de resultados em tela provida pela facilidade em vá-rias modalidades.
A Figura 11 é um diagrama de tela ilustrando umainterface do usuário para indicar permissões utilizadas pelafacilidade em várias modalidades.
As Figuras 12A-12E são diagramas de bloco ilus-trando relações entre coleções de quadro de avisos e itensde informação para determinar as permissões em várias moda-lidades.
As Figuras 13A-13C são diagramas de fluxo ilus-trando rotinas que são utilizadas pela facilidade em váriasmodalidades para modificar as permissões de controle de a-cesso.
A Figura 14 é um diagrama de fluxo ilustrando umarotina de monitor_changes que é utilizada pela facilidade emvárias modalidades para monitorar as mudanças nos itens deinformação.
A Figura 15 é um diagrama de fluxo ilustrando umarotina de duplicação que é utilizada pela facilidade em vá-rias modalidades para duplicar as mudanças.
A Figura 16 é um diagrama de blocos ilustrandocomponentes para e aspectos do uso da facilidade de múlti-plos provedores de pesquisa.
A Figura 17 é um diagrama de blocos ilustrando vá-rios componentes utilizados pela facilidade.
DESCRIÇÃO DETALHADA
Uma facilidade de software para redes de informa-ção personalizáveis ("a facilidade") é descrita. Uma rede deinformação personalizável ("PIN") compreende uma ou mais co-leções. Uma coleção compreende referências (por exemplo, li-gações para documentos) ou itens de informação que são agre-gados de várias localizações em rede para possibilitar queum usuário localize e recupere os itens de informação semconhecer necessariamente onde os itens de informação estãoarmazenados. Um item de informação é uma fonte da informa-ção, tais como um documento, página da rede, mensagem de e-mail, linha ou campo em um banco de dados, etc, que podeser unicamente identificada, tal como pelo uso de uma loca-lização constante de recursos (URL). Os itens de informaçãopodem ser armazenados na forma digital em qualquer lugar queseja acessível pela facilidade, tal como em um servidor, emum sistema de e-mail, em uma pasta de arquivos, em um bancode dados, em um repositório associado com um dispositivo decomputação de cliente ou servidor e assim por diante. A URLidentificando um item de informação pode identificar umaporção ou localização dentro de um documento ou página darede. Em várias modalidades, a facilidade "prove as últimasversões dos itens de informação para usuários em uma maneiraorganizada. Usando a facilidade, um usuário (um "criador")pode agregar informação de meios de armazenamento diferen-tes, identificar outros usuários ("receptores") para distri-buição da informação agregada e compartilhar a informaçãoagregada com os receptores. Os meios de armazenamento podemincluir, por exemplo, qualquer dispositivo em rede incluindodispositivos de computação de servidor ou cliente, tais comoarmazenamentos de e-mail, sistemas de arquivo, Internet,troca de mensagem instantânea, banco de dados, etc. O cria-dor pode controlar o acesso à informação e às ações que osreceptores podem tomar sobre a informação. A informação podeser organizada ou reorganizada pelo criador, receptor ou umoutro usuário. Um criador pode compartilhar a informação commúltiplos receptores, especificar uma lista de receptorespara os quais a informação deve ser distribuída e ajustar osatributos de controle de acesso (por exemplo, permissões ouprivilégios) associados com a informação compartilhada ou osreceptores. Se o criador proveu permissões suficientes paraos receptores, os receptores podem ver, anexar, modificar ouadotar outras ações relacionadas com a informação agregada.A facilidade, assim, cria uma rede personalizável de infor-mação.
A facilidade possibilita que um usuário especifi-que critérios de pesquisa para identificar um conjunto po-tencial de itens de informação e construir uma coleção deitens de informação que o usuário deseja compartilhar. A co-leção pode incluir itens de inf o_rm'açã"o—"adicionais que nãoforam identificados pela pesquisa. Com a recepção de uma in-dicação dos critérios de pesquisa do usuário, a facilidadeutiliza provedores de pesquisa para localizar itens de in-formação que correspondem com os critérios de pesquisa demúltiplas fontes de dados. A facilidade executa uma "meta-pesquisa" através de múltiplos "provedores de pesquisa". Umameta-pesquisa é uma pesquisa que pode ser executada atravésde vários repositórios e fontes de informação, depois do quea informação encontrada pode ser provida junto em um formatocomum. Um provedor de pesquisa é um serviço que executa umapesquisa usando um ou mais repositórios de informação. Comoum exemplo, a facilidade poderia usar GOOGLE SEARCH,MICROSOFT SEARCH ou qualquer provedor de tecnologia de pes-quisa ou combinação desses. Como um exemplo adicional, umusuário pode configurar a facilidade para usar a pesquisa daInternet do GOOGLE e a pesquisa de área de trabalho daMICROSOFT. Como um outro exemplo, a facilidade pode usarprovedores de pesquisa que localizam a informação em váriasfontes de dados, tal como novas alimentações da Internet (ououtras), diários da rede ("blogs"), bancos de dados, siste-mas de arquivo de computador, sistemas de gerenciamento dedocumento e assim por diante. Os itens de informação podemficar localizados nos dispositivos de computação ou armaze-namento conectados na Internet, intranet ou qualquer locali-zação que os provedores de pesquisa possam acessar, tais co-mo servidores de e-mail, dispositivos de computação de cli-ente, etc. A facilidade pode também utilizar provedores depesquisa que pesquisam " vários ~~t~±po"s~ de dados . Os provedoresde pesquisa podem prover resultados em.uma visão "unificada"tal que a facilidade ou outros aplicativos não precisam fun-cionar com múltiplos formatos de resultados. Os provedoresde pesquisa podem ficar localizados em qualquer lugar em as-sociação com um dispositivo de computação, tal como em arma-zenamento como um arquivo executável, em uma mensagem de e-mail como um anexo ou na Internet. A facilidade pode locali-zar e utilizar os provedores de pesquisa automaticamente ousob direcionamento do usuário. Em algumas modalidades, pro-vedores de pesquisa são identificados por uma URL. Como umexemplo, a facilidade pode utilizar o provedor de pesquisaidentificado pela URL para recuperar a informação com baseem uma consulta provida com a URL.
Depois que a facilidade localiza os itens de in-formação relevantes, a facilidade processa os itens de in-formação localizados usando um mecanismo de processamento. Omecanismo de processamento cria "extratos" dos itens de in-formação localizados. Um extrato é uma porção de um item deinformação. Como exemplos, um extrato pode incluir um titulodo item de informação, descrição e propriedades especificasdo esquema tais como emissor do e-mail, hora da recepção,números de telefone de contatos e assim por diante. Os ex-tratos são armazenados usando um esquema que é apropriadopara vários tipos de itens de informação. Como um exemplo, omecanismo de processamento pode criar um extrato em um es-quema de documento para a informação contida em um documentodo MICROSOFT WORD, mas pode criar um extrato em um esquemade banco de dados "para ~a informação contida em um banco dedados. A facilidade pode utilizar esquemas similares paravários tipos de documentos. 0 extrato pode ser definido comreferência a um formato de definição de documento padrão,tal como Rich Site Summary ou Really Simple Syndication (ge-ralmente citado como "RSS") ou alternativas geralmente reco-nhecidas ao RSS, tal como ATOM ou Outline Processor MarkupLanguage. Em várias modalidades, o esquema é especificado emuma linguagem de marcação extensível ("XML"). Como um exem-plo, a facilidade pode utilizar RSS para definir extratos dedocumento e um esquema de XML diferente para definir extra-tos do banco de dados. Um extrato prove atributos a partirdos itens de informação que são identificados como sendo re-levantes. Como um exemplo, um esquema de extrato para um i-tem de informação de e-mail pode indicar que o nome do emis-sor, nome do receptor e atributos do assunto são relevantes.
Como um outro exemplo, um esquema de extrato de contato podeindicar que nome, número de telefone e atributos de e-mailsão relevantes. Quando a facilidade utiliza extratos paraexibir a informação dos itens de informação, a facilidadepode exibir a informação relevante. Assim, extratos possibi-litam que a facilidade gere interfaces do usuário ricas combase em tipos únicos de item de informação.
Sempre que a facilidade exibe informação relacio-nada com um item de informação em uma página de resultadosem tela, ela pode utilizar a informação do item de informa-ção. Quando o usuário carrega um item de informação, tal co-mo pela seleção de uma ligação, a facilidade carrega o itemde informação da localização original ou de um armazenamentode cache. A facilidade combina os itens de informação paracriar uma coleção de quadro de avisos. Uma coleção de quadrode avisos compreende itens de informação e pode ser acessadaatravés de uma URL. Quando a coleção de quadro de avisos éacessada através da URL, a facilidade transforma as coleçõesdo quadro de avisos usando uma descrição de visualização emuma página de resultados em tela. Uma descrição de visuali-zação prove instruções sobre como transformar coleções dequadro de avisos em páginas de resultados em tela que podemser legiveis por uma pessoa. Como exemplos, a descrição davisualização pode ser especificada usando uma linguagem defolha de estilo extensível ("XSL"), páginas de roteiro ati-vas ("ASP"), etc. As páginas de resultados em tela provêemdados de identificação sobre cada item da informação juntocom alguns dados relevantes para o item da informação. Comoum exemplo, páginas de resultados em tela podem prover liga-ções, titulos de documentos, as primeiras poucas linhas dotexto contido no documento, a data que o documento foi cria-do e assim por diante. As páginas de resultados em tela po-dem também prover anotações relacionadas com o documento quesão adicionadas pelos criadores ou receptores. Uma anotaçãoé informação que um usuário associa com um item de informa-ção. Exemplos de anotações incluem texto, formatação e mul-timídia, tal como comentários textuais, realce e comentáriosde voz (ou video). As anotações podem ser curtas (por exem-pio, palavras ou frases) ou longas (por exemplo, sentenças,parágrafos ou todos os documentos ou identificadores de ou-tros itens de informação). Quando a facilidade compartilhaou de outra maneira utiliza a informação contida nas páginasde resultados em tela, a facilidade pode utilizar ou manipu-lar as coleções de quadro de avisos subjacente, que podemser armazenadas em um RSS ou outro formato.
Com a criação de uma página de resultados em tela,o criador pode então identificar um subconjunto dos itens deinformação indicados pelos provedores de pesquisa em respos-ta à consulta. Como um exemplo, se a facilidade identificavários itens de informação, o criador pode identificar umsubconjunto dos itens de informação que são verdadeiramenterelevantes e remover (ou de outra forma identificar) os i-tens de informação restantes que podem ser irrelevantes. 0criador pode também reorganizar as páginas de resultados emtela e dessa maneira fazer com que a facilidade reorganize acoleção do quadro de avisos subjacente, tal como para reor-denar a informação exibida de modo que um item de informaçãoimportante aparece antes de um item de informação menos im-portante. 0 criador pode executar múltiplas pesquisas e con-tinuar a adicionar itens de informação na coleção do quadrode avisos.
0 criador pode então identificar receptores com osquais o criador deseja compartilhar as páginas de resultadosem tela criadas. 0 criador pode identificar receptores emuma maneira similar à seleção de receptores para e-mail. Co-mo um exemplo, o criador pode identificar receptores ou gru-pos de receptores a partir de um caderno de endereços, digi-tar uma porção do nome de um receptor ou identificador e so-licitar que a facilidade "resolva" o nome do receptor ou i-dentificador, por exemplo, completando a identificação doreceptor e assim por diante.
Criadores podem também adicionar ou modificar vá-rios atributos da coleção do quadro de avisos. Como um exem-plo, os criadores podem adicionar anotações, tal como mensa-gens, relacionadas com itens de informação individuais ou acoleção do quadro de avisos como um todo. Como um outro e-xemplo, os criadores podem indicar itens de informação deinteresse particular, tal como evidenciando um item de in-formação ou classificando o item de informação em alguma es-cala, tal como pelo uso de uma metáfora de "polegar para ci-ma". Como outros exemplos, os criadores podem "bloquear" umaversão particular do item de informação sendo compartilhadade modo que as mudanças futuras não são compartilhadas; oscriadores podem indicar vários métodos de acesso em um item,por exemplo, não podem compartilhar mais com outros usuá-rios, podem compartilhar mais livremente, podem modificar oitem de informação original, etc.
Depois que o criador compartilha a coleção do qua-dro de avisos com os receptores, tal como pela seleção de umbotão "compartilhar" na interface do usuário das páginas deresultados em tela, os receptores podem ver os itens de in-formação identificados na coleção do quadro de avisos de a-cordo com os privilégios de acesso dos receptores. Um privi-légio de acesso especifica quais ações um receptor pode exe-cutar em relação a um item de informação ou uma coleção doquadro de avisos, tal como visualizar, editar, deletar, com-partilhar e assim por diante. A facilidade"_provê os recepto-res com um privilégio de acesso apropriado, como é descritoem mais detalhes abaixo.
Os receptores podem responder a uma coleção dequadro de avisos recebida e compartilhar suas respostas como criador ou outros receptores. Os receptores podem adicio-nar ou modificar vários atributos da coleção do quadro deavisos recebida antes de compartilhar suas respostas. Comoum exemplo, os receptores podem adicionar anotações. Quandoum criador prove privilégios de acesso suficientes, os re-ceptores podem compartilhar a coleção do quadro de avisosrecebida. Os receptores podem também executar pesquisas e.adicionar itens de informação encontrados na coleção do qua-dro de avisos. O criador pode aceitar ou rejeitar as adi-ções, exclusões ou modificações feitas pelos receptores, au-tomática ou manualmente.
Quando um criador ou receptor modifica uma coleçãodo quadro de avisos, os usuários podem ver a última versãomodificada. Isso é possível porque uma página de resultadosem tela é gerada no momento em que um observador (por exem-plo, um receptor) carrega a página de resultados em tela pa-ra visualização. Referências e outras informações contidasnas coleções do quadro de avisos podem ser modificadas peloscriadores e receptores (quando os receptores têm privilégiosde acesso suficientes) . Quando um usuário carrega uma páginade resultados em tela, a facilidade prove a versão mais atu-alizada da página de resultados em tela. Os usuários assimnão precisam saber se eles estão compartilhando ou vendo aversão mais atualizada de um documento.
Um usuário pode "bloquear" uma coleção de quadrode avisos ou um ou mais itens de informação. Quando um item(por exemplo, item de coleção do quadro de avisos ou infor-mação) é bloqueado, os usuários que vêem o item bloqueadonão vêem quaisquer atualizações feitas depois do bloqueio.Para realizar isso, a facilidade usa uma versão armazenadados itens de informação. Quando um usuário bloqueia um item,o usuário é capaz de continuar atualizando o item. Então,quando o usuário desbloqueia o item, as atualizações do usu-ário ficam visíveis para todos os outros usuários. A facili-dade pode criar uma trilha de audição de bloqueios e atuali-zações.
Criadores ou receptores podem refinar a pesquisaadicionando, de maneira iterativa, os termos de pesquisa. Acoleção de quadro de avisos resultante contém itens de in-formação em um lugar representando informação de múltiplasfontes de dados ou tipos de dados.
Embora a facilidade seja descrita aqui com refe-rência às coleções de quadro de avisos e itens de informa-ção, a facilidade prove uma plataforma que é facilmente a-daptável a vários outros ambientes e aplicações, alguns dosquais são descritos aqui.
Os aspectos da facilidade serão agora descritos emmais detalhes.
Criação e Uso de Redes de Informação Personalizá-veis
Em várias modalidades, uma interface de usuárioprovida pela facilidade contém uma caixa de texto e um botãode "pesquisa". Um usuário pode prover uma consulta na caixade texto, tal como digitando uma seqüência e selecionar umbotão de pesquisa que faz com que a facilidade comece a pes-quisar os itens de informação (por exemplo, documentos) quecorrespondam com a consulta.
Em várias modalidades, a facilidade pode usar, demaneira sincrona ou assincrona, múltiplos provedores de pes-quisa simultânea ou concorrentemente para localizar itens deinformação. Como um exemplo, a facilidade pode pesquisar u-sando a pesquisa da Internet do GOOGLE, pesquisa de área detrabalho da MICROSOFT, uma facilidade de pesquisa de portal,uma facilidade de pesquisa de área de trabalho do WINDOWS,uma facilidade de pesquisa de rede, uma facilidade de pes-quisa de banco de dados, uma facilidade de pesquisa federa-da, qualquer facilidade de pesquisa da Internet e assim pordiante. Em várias modalidades, a facilidade tem um mecanismode extensibilidade que possibilita que os usuários adicionemprovedores de pesquisa de terceiros. Pela habilitação da a-dição de provedores de pesquisa, a facilidade é capaz depesquisar os itens de informação armazenados em qualquerforma e em qualquer localização. Cada um dos provedores depesquisa invocados retorna os resultados da pesquisa para afacilidade.
0 criador pode especificar qual dos vários prove-dores de pesquisa usar, tal como pela ativação de alguns outodos os provedores de pesquisa. Quando a facilidade pesqui-sa, a facilidade pode não invocar os provedores de pesquisainativos. Um criador pode ativar um provedor de pesquisa pa-ra uma coleção de quadros de avisos e desativar esse prove-dor de pesquisa para uma outra coleção de quadro de avisos.
A seguir, a facilidade pode somente usar os provedores depesquisa ativos para cada uma das coleções de quadro de avi-sos. 0 criador pode também associar uma lista predefinida deprovedores de pesquisa (por exemplo, "atribuindo" os prove-dores de pesquisa com uma coleção do quadro de avisos) . 0criador pode também descobrir e habilitar outros provedoresde pesquisa a partir de uma coleção de quadro de avisos paraqualquer nova consulta nessa coleção de quadro de avisos.
Opcionalmente, o conjunto de provedores de pesquisa usadopode ser armazenado atribuindo-os para uma coleção de quadrode avisos. Provedores de pesquisa podem também ser desativa-dos para uma consulta particular.
A facilidade inicialmente organiza os resultadosda pesquisa em uma página de resultados em tela de acordocom o leiaute predefinido. 0 leiaute indica atributos de a-presentação, tais como fontes, cores, localizações, pano defundo, etc. Um usuário pode modificar o leiaute predefinido.
Em várias modalidades, o leiaute predefinido é especificadoem XML.Com referência agora às Figuras, a Figura 1 é umdiagrama de tela ilustrando uma página de resultados em telaprovida pela facilidade em várias modalidades. A facilidadeprove a página de resultados em tela 100 que um criador podeusar para criar uma coleção de quadro de avisos. A página deresultados em tela inclui uma área 102 para uma imagem, talcomo um logotipo e uma área 104 para indicar um titulo deuma coleção de quadro de avisos resultante. A página de re-sultados em tela inclui uma região de texto 106 dentro daqual o criador pode inserir uma consulta de pesquisa. O cri-ador pode então selecionar um botão de pesquisa 108 para co-meçar a pesquisa. Alternativamente, o criador pode selecio-nar um botão de apagar 110 para apagar toda a informação a-dicionada pelos provedores de pesquisa na página de resulta-dos em tela.
O diagrama de tela ilustrado ilustra que o criadorinseriu "conversa de vendedor" como a consulta na região detexto 106. Com o clique no botão de pesquisa 108, a facili-dade localiza itens de informação que correspondem com aconsulta de "conversa de vendedor" e preenche as várias re-giões de resultados da página de pesquisa com os resultadosda pesquisa. A página de resultados em tela ilustrada mostrauma região de resultados de coleções do quadro de avisos112, uma região de resultados de quadros de avisos relacio-nada 113, uma região de resultados de e-mail 114, uma regiãode resultados de compromisso 116 e uma região de resultadosde documento 118.
A região de resultados de coleções de quadro deavisos 112 lista coleções de quadro de avisos que correspon-dem com a consulta. Na ilustração, nenhuma coleção de quadrode avisos corresponde com a consulta e assim nenhuma coleçãode quadro de avisos é listada. As coleções de quadro de avi-sos podem corresponder com a consulta quando a consulta dapágina de resultados em tela prove itens de informação quesão atribuídos para outras coleções de quadro de avisos. A-lém do mais, a facilidade pode listar outras coleções dequadro de avisos para as quais um item de informação indica-do em uma das regiões de resultados pode ser atribuído. Issopossibilita que um usuário rapidamente determine o conteúdoe a relevância para um item de informação.
A região de resultados de quadros de avisos rela-cionada 113 lista coleções de quadro de avisos que são rela-cionadas com a coleção de quadro de avisos exibida. Doisquadros de avisos podem ser relacionados porque, por exem-plo, um foi criado em resposta a um outro, ambos fazem refe-rência aos mesmos itens de informação, eles são indicadospor um usuário para serem relacionados ou uma das coleçõesde quadro de avisos é atribuída para a outra.
A região de resultados de e-mail 114 lista mensa-gens de e-mail que correspondem com a consulta. Uma mensagemde e-mail pode corresponder com a consulta quando a mensagemde e-mail contém texto ou outros atributos que correspondemcom a consulta. A região dos resultados de e-mail pode exi-bir vários atributos relacionados com mensagens de e-mailque correspondem com a consulta, tais como emissor, assuntoe data ou hora que foi enviado.A região de resultados de compromissos 116 listacompromissos que correspondem com a consulta. A região deresultados dos documentos 118 lista documentos que corres-pondem com a consulta. Em várias modalidades, a facilidadepode exibir outras regiões de resultados ao invés de, ou a-lém de, as regiões de resultados ilustradas.
Cada item de informação listado nas regiões de re-sultados é acompanhado por um indicador de seleção, tal comouma caixa de verificação 120. O criador pode selecionar umsubconjunto dos itens de informação listado nas regiões deresultados para adicionar na coleção do quadro de avisos,tal como pela seleção da caixa de verificação associada comcada item de informação que o criador deseja reter na cole-ção de quadro de avisos. Essa ação pode ser citada como "a-tribuição". Assim, a facilidade possibilita que um usuárioadicione um resultado de pesquisa em um documento usando umaação única, tal como pela seleção de uma caixa de verifica-ção. As caixas de verificação podem não aparecer quando ousuário não está em um modo de autoria.
Cada item de informação listado nas regiões de re-sultados pode também ser acompanhado por uma região de tex-to, tal como uma região de texto 122. O criador pode adicio-nar uma anotação relacionada com um item de informação naregião de texto. Como um exemplo, o criador adicionou a ano-tação "bom exemplo" na região de texto associada com um e-mail relacionado com um negócio fechado na ilustração.
Em várias modalidades, a facilidade utiliza os ex-tratos (por exemplo, dados contidos no esquema de extratos)para preencher as regiões de resultados. Como um exemplo, afacilidade pode utilizar extratos de e-mail para preencher aregião de resultados de e-mail.
A página de resultados em tela ou outros elementosde interface do usuário de um aplicativo adicionalmente po-dem prover uma opção para o criador adicionar itens de in-formação adicionais que não foram encontrados com a consul-ta. Como um exemplo, a página de pesquisa pode prover um bo-tão adicionar 124. Pela seleção do botão adicionar, o cria-dor pode especificar itens de informação adicionais em umamaneira similar à adição de anexos em uma mensagem de e-mail. A facilidade também prove uma interface de programaaplicativo (API) para atribuir itens de informação identifi-cados por um aplicativo para uma coleção de quadro de avi-sos. Usando essa API, outros aplicativos (por exemplo,MICROSOFT WORD) podem implementar as interfaces do usuáriopara atribuir diretamente seus documentos nativos para umacoleção de quadro de avisos. Como um exemplo, uma barra deferramentas no MICROSOFT WORD poderia ter um botão "atribu-ir" e uma lista suspensa que lista as coleções de quadro deavisos para as quais o usuário modificou a permissão que odocumento pode ser atribuído. A seleção desse botão atribui-ria o documento do MICROSOFT WORD ativo para o quadro de a-visos selecionado. Como um exemplo adicional, um usuário po-de selecionar um item de informação e atribuir esse item deinformação para uma outra coleção de quadro de avisos.
Em várias modalidades, a facilidade prove um modode autoria para as coleções de quadro de avisos. Quando umapágina de resultados em tela está no modo de edição, os usu-ários podem ser capazes de adicionar anotações, atribuir i-tens de pesquisa e assim por diante. Quando a facilidade saido modo de edição, tal como quando o criador compartilha acoleção de quadro de avisos, o usuário pode não ser mais ca-paz de anotar ou atribuir itens de informação. Em várias mo-dalidades, algumas funções de edição podem ficar disponíveisdepois de sair do modo de autoria.
Em várias modalidades, a facilidade possibilitaque um receptor pesquise dentro dos itens de informação as-sociados com uma coleção de quadro de avisos além de usaroutros provedores de pesquisa. Como um exemplo, suponha queum receptor recebe uma coleção de quadro de avisos com aconsulta de "conversa de vendedor". O receptor pode entãopesquisar por "Jane" dentro dos itens de informação nessacoleção de quadro de avisos para localizar itens de informa-ção associados com "Jane". Os itens de informação encontra-dos como um resultado dessa pesquisa adicional podem ser a-grupados juntos, enquanto que outros itens de informação a-parecendo na coleção de quadro de avisos podem ser agrupadosseparadamente.
A Figura 2 é um diagrama de tela ilustrando umapágina de resultados em tela provida pela facilidade em vá-rias modalidades. Essa página de resultados em tela ilustra-da 200 é similar à página de resultados em tela 100 ilustra-da na Figura 1, exceto que ela adicionalmente tem um botãode procura de endereço 202, uma região de texto de endereço204, um botão de compartilhar 206 e um botão de salvar 208.O botão de procura de endereço 202 pode ser sele-cionado pelo criador para selecionar uma lista de receptorespara a coleção de quadro de avisos criada. Como um exemplo,a facilidade pode usar o MICROSOFT ACTIVE DIRECTORY, umalista de endereço global correspondendo com um servidor dee-mail, uma lista de contatos pessoais ou qualquer diretóriode receptores. Em várias modalidades, a facilidade pode pro-ver uma interface do usuário para selecionar receptores queinclui uma capacidade de indicar privilégios de acesso rela-cionados com os receptores. Privilégios de acesso são des-critos em mais detalhes abaixo.
A facilidade pode exibir uma lista de receptoresselecionados na região de texto de endereço 204. A facilida-de pode também receber uma lista de receptores do usuáriousando a região de texto de endereço. Na ilustração, BrianBean é selecionado como um receptor.
O criador pode selecionar o botão compartilhar 206para compartilhar a coleção de quadro de avisos criada comos receptores indicados. O criador pode selecionar o botãosalvar 208 para salvar a coleção de quadro de avisos ao in-vés de compartilhá-la com os receptores.
Em várias, modalidades, a facilidade pode adicionaros elementos de interface do usuário descritos acima em re-lação à Figura 2 quando o criador tiver selecionado algunsitens de informação, tal como pela seleção das caixas de ve-rificação 120. Em outras modalidades, a facilidade pode pro-ver esses elementos de interface do usuário quando exibindoa página de pesquisa 100. Em ainda outras modalidades, a fa-cilidade pode prover esses elementos de interface do usuárioquando solicitado pelo criador, tal como em resposta a umaação que aparece em um menu.
A Figura 3 é um diagrama de tela ilustrando umapágina de resultados em tela provida pela facilidade em vá-rias modalidades. Esse diagrama de tela ilustra uma páginade resultados em tela 300 que foi compartilhada pelo seucriador e recebida pelos receptores selecionados pelo cria-dor (por exemplo, Brian Bean). A página de resultados em te-la ilustrada é similar à página de resultados em tela 200ilustrada na Figura 2, exceto que ela carece de alguns dosresultados que aparece na página de resultados em tela 200 eadicionalmente indica um resultado de coleção de quadro deavisos 302, indicadores de atribuição 304 e indicadores decoleções de quadro de avisos secundários 306. A página deresultados em tela ilustrada não está no modo de autoria,como é indicado pela ausência de aspectos de autoria, talcomo as caixas de verificação. Em várias modalidades, outrosaspectos podem ser adicionados ou removidos. Como um exem-pio, em várias modalidades o botão "para o botão "com-partilhar ..." e o botão "salvar ..." podem ser removidos.
A página de resultados em tela ilustrada não exibeitens de informação que não foram atribuídos pelo criadorpela seleção das caixas de verificação. Como um exemplo, ume-mail de Jim Jones não foi selecionado pelo criador e assimnão aparece na página de .resultados em tela. Similarmente, ocompromisso "almoço com John" e o documento "objetivos" nãoaparecem na página de resultados em tela.A região dos resultados das coleções de quadro deavisos ilustrada 112 contém o resultado da coleção de quadrode avisos 302. Em várias modalidades, resultados de coleçõesde quadro de avisos adicionais são listados quando a facili-dade determina que os itens de informação listados em umacoleção de quadro de avisos previamente armazenada ou rece-bida também seriam ^apropriados para ~a consulta~da coleção""dequadro de avisos associada com a. página de resultados em te-la exibida. Adicionalmente, como previamente declarado acimaem relação à Figura 1, a página de resultados em tela pode-ria listar coleções de quadro de aviso se elas se referem àconsulta, e essas coleções de quadro de aviso também apare-ceriam nos resultados de coleções de quadro de aviso se se-lecionado pelo criador. Assim, a facilidade possibilita quecoleções de quadro de avisos sejam combinadas ou "aninha-das".
Os indicadores de atribuição 304 provêem uma indi-cação para receptores dos itens de informação selecionadospelo criador (por exemplo, "atribuídos") quando criando acoleção do quadro de avisos. Pelo fato de que a coleção doquadro de avisos é criada dinamicamente, itens de informaçãoadicionais podem aparecer na página de resultados em tela,mas esses não teriam um indicador de atribuição associado.
Assim, um receptor ou criador é imediatamente capaz de dis-tinguir itens de informação atribuídos de outros itens deinformação adicionados dinamicamente pela facilidade, dessamaneira possibilitando que os usuários determinem rapidamen-te quais itens de informação poderiam ser mais relevantes ouquais itens de informação são "novos". Em várias modalida-des, a facilidade agrupa itens de informação atribuídos jun-tos e outros itens de informação em um outro grupo. Assim,uma única coleção de quadro de avisos pode ser usada paracombinar um conjunto filtrado de itens de informação com i-tens de informação adicionais que correspondem com a consul-ta da coleção do quadro de avisos. Além do mais, múltiplosprovedores de pesquisa (incluindo a própria coleção de qua-dro de avisos original) podem prover informação relacionadacom uma pesquisa de item. Essa informação pode ser condensa-da em um único item de informação para exibição na coleçãode quadro de avisos sem qualquer informação duplicada. Porexemplo, um provedor de pesquisa pode prover um titulo edescrição para um item, enquanto que um outro provedor depesquisa pode suprir a anotação de um usuário especifico. 0item de informação exibido indicaria o titulo, descrição eanotação. Assim, a facilidade prove um recurso no qual umitem de informação compreende informação de múltiplas fon-tes. A facilidade pode criar uma "sobreposição" consultandoos itens de informação, preservando atributos únicos e remo-vendo atributos duplicados.
0 indicador de coleção de quadro de avisos secun-dário 306 indica os itens de informação que estão associadoscom coleções de quadro de avisos listadas na região de re-sultados de coleções de quadro de aviso. Quando o usuárioseleciona o resultado das coleções de quadro de aviso, a fa-cilidade alterna os indicadores de coleção de quadro de avi-sos correspondentes. Em algumas modalidades, quando o usuá-rio seleciona o resultado das coleções de quadro de avisos,a facilidade faz com que os itens de informação associadoscom o resultado das coleções de quadro de avisos selecionadosejam exibidos na região de resultados. Como um exemplo, umresultado de coleções de quadro de aviso "acordos" aparecena região de resultados de coleções de quadro de aviso mos-trada na modalidade ilustrada. 0 símbolo" à esquerda do Té-"sultado das coleções de quadro de aviso acordos (um simbolode menos envolvido por um circulo nessa modalidade) indicaque os itens de informação associados com o resultado dascoleções de quadro de aviso são indicados com um indicadorde coleção de quadro de avisos secundário. Como um exemplo,o e-mail de Jane Adams é associado com um indicador de cole-ção de quadro de avisos secundário. Quando o usuário sele-ciona esse resultado de coleções de quadro de aviso, um sim-bolo diferente pode aparecer à esquerda do resultado das co-leções de quadro de avisos. Como um exemplo, na modalidadeilustrada, um simbolo de mais pode aparecer. Quando o resul-tado das coleções de quadro de avisos é alternado, a facili-dade pode remover os indicadores de coleção de quadro de a-visos secundário. Como um exemplo, a facilidade pode removero indicador da coleção de quadro de avisos secundário asso-ciado com o e-mail de Jane Adams. Em várias modalidades, aregião de texto 106 e o botão de pesquisa 108 aparecem den-tro do quadro do documento (por exemplo, no mesmo pano dejanela como o resultado de pesquisa).
Em várias modalidades, a coleção de quadro de avi-sos pode adicionalmente exibir outros itens de informação.Como um exemplo, a coleção de quadro de avisos pode exibiritens que foram adicionados pelo criador ou por um outro re-ceptor. 0 usuário pode ser capaz de temporariamente removertais itens da tela, tal como "fechando" uma região. Um usuá-rio pode fechar uma região, por exemplo, selecionando um bo-tão minimizar ou ocultar (não mostrado).
Assim, resultados de pesquisa são exibidos "nocontexto", significando que o usuário não precisa abrir umoutro aplicativo ou janela para adicionar entradas de pes-quisa em um documento, tal como uma coleção de quadro de a-visos.
Quando um criador compartilha uma coleção de qua-dro de avisos com um receptor, o receptor pode receber umanotificação da coleção de quadro de avisos. Como um exemplo,o receptor pode receber uma indicação da coleção de quadrode avisos compartilhada através de e-mail. 0 e-mail podeconter uma ligação ou uma URL correspondendo com a coleçãode quadro de avisos. Quando o receptor seleciona a ligação,a facilidade exibe a página de resultados em tela comparti-lhada correspondendo com a coleção de quadro de avisos, talcomo em um navegador da Internet. A página de resultados emtela exibida inclui todos os itens de informação que foramatribuídos pelo criador. A página de resultados em tela exi-bida pode também prover uma indicação de todos os receptorescom os quais o criador compartilhou a coleção de quadro deavisos.
As páginas de resultados em tela são preenchidasdinamicamente quando elas são exibidas pelo uso de uma cole-ção de quadro de avisos associada. Assim, mesmo depois queum criador cria uma coleção de quadro de avisos, as atuali-zações do criador (ou receptor) na coleção de quadro de avi-sos ficam sempre disponíveis para os receptores. Como um re-sultado, um criador pode adicionar, remover ou modificar i-tens de informação associados com uma coleção de quadro deavisos que foi compartilhada com receptores.
Um receptor pode ser capaz de compartilhar uma co-leção de quadro de avisos recebida com outros receptores. Seum receptor é capaz de compartilhar a página de resultadosem tela com outros é controlado pelo criador, como é descri-to em mais detalhes abaixo. Quando o receptor compartilha acoleção de quadro de aviso com outros, a facilidade não du-plica a página de resultados em tela ou seus conteúdos paraos outros usuários, ao contrário dos sistemas de e-mail con-vencionais. No lugar disso, uma página de resultados em telaé recriada dinamicamente quando um receptor a jusante abre apágina de resultados em tela.
Quando o receptor seleciona uma ligação associadacom um item de informação que aparece em uma página de re-sultados em tela, um aplicativo de software associado com oitem de informação selecionado é invocado. 0 aplicativo desoftware então carrega e exibe o item de informação corres-pondente. Como um exemplo, quando uma planilha é ligada emuma coleção de quadro de avisos, um aplicativo de planilhaabre a planilha ligada.
Controle de Acesso
Se um receptor tem acesso a um item de informaçãoque aparece em uma coleção de quadro de avisos depende deuma série de fatores. Primeiro, o acesso a uma coleção dequadro de avisos pode ser controlado pelo criador da coleçãode quadro de avisos. Como previamente declarado, o criadorde uma coleção de quadro de avisos pode especificar privilé-gios associados com a coleção de quadro de avisos. Como umexemplo, o criador pôde indicar que receptores da coleção de -quadro de avisos podem compartilhar a coleção de quadro deavisos com outros receptores. Alternativamente, o criadorpode indicar que os receptores não podem compartilhar a co-leção de quadro de aviso com outros. Quando o criador de umacoleção de quadro de avisos permite que receptores comparti-lhem a coleção de quadro de avisos, os receptores que rece-bem a coleção de quadro de avisos de outros receptores (Mre-ceptores a jusante") podem somente ser capazes de ver os i-tens de informação aos quais eles têm acesso.
Segundo, um receptor pode somente ser capaz de veros itens de informação aos quais o receptor tem acesso atra-vés de um sistema de arquivos, um banco de dados ou outrafonte de dados associada com a facilidade. Como um exemplo,se uma coleção de quadro de avisos contém ligações para doisitens de informação e o receptor somente tem acesso para umdos itens de informação porque um administrador da rede ex-plicitamente não proveu o acesso para o outro item de infor-mação, o receptor pode ser capaz de ver somente o item deinformação para o qual o receptor tem acesso. Em geral, en-tretanto, a facilidade gerencia as permissões de controle deacesso.Terceiro, os criadores podem também especificarprivilégios associados com itens de informação que aparecemem uma coleção de quadro de avisos. Como um exemplo, um cri-ador pode indicar que alguns itens de informação que apare-cem em uma coleção de quadro de aviso não devem ser compar-tilhados com outros receptores. A seguir, quando um receptortenta compartilhar a coleção de quadro de avisos com outrosreceptores, a facilidade não compartilharia os itens de in-formação assim indicados.
As coleções de quadro de aviso que são listadas emuma coleção de quadro de avisos (por exemplo, através da a-tribuição) podem herdar ou propagar esses vários privilégiosquando a coleção de quadro de avisos é compartilhada. Assim,o criador tem controle fino sobre o acesso.
Em várias modalidades, a facilidade prove os re-ceptores com a capacidade de responder a uma coleção de qua-dro de avisos recebida por (1) compartilhar uma resposta como criador ("resposta particular") ou (2) compartilhar umaresposta com todos os receptores com os quais o criador com-partilhou a coleção de quadro de avisos, incluindo o criador("resposta pública"). Quando o receptor envia uma respostapública, a resposta recebe os seus privilégios da coleção dequadro de avisos para a qual o receptor responde. Como umresultado, quando o criador adiciona receptores na coleçãode quadro de avisos original, os receptores adicionados ob-têm acesso não somente à coleção de quadro de avisos origi-nal, mas também a todas as respostas públicas. Essa herançapode ser limitada por indicações do criador que uma coleçãode quadro de avisos não é para ser compartilhada pelos re-ceptores.
Essas respostas públicas e particulares são por sipróprias coleções de quadro de aviso. Elas são distintas porum atributo fazendo com que elas "herdem" privilégios de a-cesso da coleção de quadro de avisos para a qual elas estãorespondendo. TJm usuário pode ver todas as respostas para umacoleção de quadro de avisos visualizando resultados de qua-dros de avisos relacionados, tal como exibidos na região113. Um usuário pode ver os itens de informação contidos emuma coleção de quadro de avisos de uma resposta de mensagemjunto com a coleção original de quadro de aviso usando o re-curso de "sobreposição" descrito acima.
Um criador ou receptor pode relacionar as coleçõesde quadro de aviso explicitamente as relacionando ou respon-dendo para a coleção de quadro de avisos original. Por ex-plicitamente relacionar as coleções de quadro de aviso, afacilidade possibilita o encadeamento da conversação, que édescrito em mais detalhes abaixo. Quando uma página de re-sultados em tela é recuperada, a facilidade pode exibir umalista de coleções de quadro de aviso relacionadas ou respos-tas. A facilidade pode também processar as coleções de qua-dro de aviso relacionadas ou respostas, por exemplo, sobre-pondo a informação não duplicada.
O criador ou receptores com permissões de controlede acesso suficientes podem modificar uma coleção de quadrode aviso compartilhada, tal como para adicionar um receptorem um encadeamento. Quando o receptor adicionado vê o enca-deamento, o receptor adicionado é capaz de ver todos os i-tens de informação relevantes e anotações. Assim, por exem-plo, o receptor adicionado pode ser atualizado em um encade-amento de maneira rápida e fácil. 0 receptor adicionado re-ceberá acesso a todos os documentos relevantes sem qualquerintervenção adicional por um administrador. Como um exemplo,um novo membro de um grupo de projeto pode ser rapidamentemunido com acesso a todos os documentos e discussões de umprojeto em uma maneira segura e direta. A pessoa que compar-tilha as coleções de quadro de avisos com o receptor recen-temente adicionado não teria que pesquisar os documentos doprojeto, solicitar que um administrador mudasse as permis-sões de controle de acesso e assim por diante. Por meramentecompartilhar a coleção de quadro de avisos através de umaação única (por exemplo, a seleção de um botão comparti-lhar) , o usuário do compartilhamento pode atualizar um re-ceptor recentemente adicionado.
A facilidade pode funcionar com permissões de con-trole de acesso relacionadas com objetos armazenados em umsistema de arquivo, banco de dados ou em outro lugar. Comoum exemplo, quando um item de informação é recuperado de umbanco de dados, a facilidade recupera as permissões de con-trole de acesso do banco de dados. Quando esse item de in-formação é compartilhado, a facilidade pode atualizar aspermissões de controle de acesso no banco de dados. Assim, afacilidade prove controle das permissões de controle de a-cesso do banco de dados ao nivel de linha em várias modali-dades.Encadeamento da Conversação
A facilidade possibilita um modelo superior de en-cadeamento de conversação do que os sistemas convencionais.
0 encadeamento da conversação é uma maneira de associar umitem de informação com outros itens de informação. Em siste-mas convencionais, tal como em um ambiente de e-mail ou qua-dro de avisos eletrônico, uma mensagem geralmente pertence asomente uma conversação (por exemplo, encadeamento). Além domais, um encadeamento inteiro de conversação não pode serenviado para um usuário porque, por exemplo, múltiplas pes-soas podem responder a uma resposta particular e essas múl-tiplas respostas não apareceriam todas juntas em uma únicamensagem. Como um resultado, os usuários podem precisar a-brir cada resposta uma de cada vez para ver toda a conversação.
A facilidade possibilita que cada coleção de qua-dro de avisos opcionalmente contenha múltiplos encadeamentosde conversação. Cada tal encadeamento de conversação possi-bilita que uma coleção de quadro de avisos intercale múlti-pias fontes de informação em maneiras significativas. Comoum exemplo, uma coleção de quadro de avisos pode conter múl-tiplos itens de informação onde cada item é de uma fonte deinformação diferente. Cada item de informação pode ter ano-tações relacionadas com esse item de informação. Em algumasmodalidades, um usuário pode prover anotações diferentes pa-ra um item de informação dependendo de em qual coleção dequadro de avisos o item da informação aparece. Quando a co-leção de quadro de avisos é compartilhada com um receptor, oreceptor recebe indicações de todos os itens de informação eanotações com base nas permissões do receptor. A facilidadeprove indicações como notificações (por exemplo, através deum produto semelhante a mensageiro, e-mail, etc.) ou comoitens em uma coleção de quadro de avisos que o receptor vê.Assim, os receptores podem ser capazes de ver todos os enca-deamentos de conversação associados com a coleção de quadrode avisos compartilhada. A facilidade usa vários recursos,tal como sua sobreposição e cálculo e aplicação de permis-soes de controle de acesso, para possibilitar o encadeamentocomplexo da conversação.
Os itens de informação e anotações, recuperados deuma coleção de quadro de avisos e uma ou mais coleções dequadro de aviso sobrepostas ou relacionadas, formam uma con-versação encadeada. Além do mais, pelo fato de que o acessoé controlado pela facilidade, um receptor pode somente verporções da conversação às quais o receptor tem acesso. Pelofato de que a facilidade consulta todas as linhas tendo oidentificador único, a facilidade pode remover as entradasde atributo duplicadas e "sobrepor" as entradas únicas.
Em um outro aspecto do encadeamento da conversa-ção, os itens de informação e as anotações feitas nele sãoseletivamente compartilhados com os receptores. Como um e-xemplo, suponha que o usuário W cria uma coleção de quadrode avisos, anota alguns itens de informação e subseqüente-mente compartilha a coleção de quadro de avisos criada comos usuários X e Y. A seguir, suponha que o usuário X adicio-na uma anotação adicional na coleção de quadro de avisos ecompartilha a coleção de quadro de avisos atualizada com ousuário W em uma resposta particular. Suponha também que ousuário Y adiciona uma terceira anotação no item de informa-ção e compartilha essa resposta com os usuários X e W. Quan-do o usuário W compartilha a coleção de quadro de avisos comum quarto usuário, o quarto usuário pode ver a coleção dequadro de avisos original do usuário W e a resposta públicade Y, mas não a resposta particular de X. Isso ocorre porquea facilidade cumpre as permissões de controle de acesso in-dicadas pelos usuários e, quando exibindo as coleções doquadro de avisos, intercala os dados e remove dados duplica-dos usando o recurso de "sobreposição" descrito acima.
Um item de informação e suas anotações podem apa-recer em múltiplos encadeamentos. Além do mais, as anotaçõesrelacionadas com um item de informação podem ser especificasdo encadeamento. Como um exemplo, um usuário que tem permis-sões de controle de acesso insuficientes para ver um encade-amento particular seria incapaz de ver as anotações desseencadeamento.
Coleta dos Itens de Informação
A facilidade possibilita que os itens de informa-ção sejam coletados em uma coleção de quadro de avisos emvárias maneiras. Um usuário pode manualmente adicionar itensde informação nas coleções de quadro de avisos. Como exem-pios, o usuário pode atribuir um item de informação a umacoleção, tal como depois de executar uma pesquisa, enquantovendo ou editando um item de informação dentro de um aplica-tivo, enquanto vendo uma coleção dos itens de informação eassim por diante. 0 seguinte prove alguns exemplos específi-cos: um usuário pode adicionar um documento que o usuárioestá vendo ou modificando em um aplicativo de produtividadede escritório em uma coleção de quadro de avisos, por exem-plo, selecionando um comando do menu ou um botão da barra deferramentas e a seguir selecionando uma coleção de quadro deavisos"existente ou indicando uma nova coleção de quadro deavisos; um usuário pode adicionar um arquivo ou pasta em umacoleção de quadro de avisos quando navegando em uma hierar-quia de pasta de arquivo, tal como quando usando uma ferra-menta do MICROSOFT WINDOWS EXPLORER; um usuário pode indicarque toda a midia em uma "lista de execução", todos os arqui-vos em uma pasta ou todas as mensagens em um e-mail ou con-versação de quadro de avisos eletrônico são itens de infor-mação para colocar em uma coleção de quadro de avisos. Emalgumas modalidades, um usuário pode adicionar uma ou maisligações de resultado de pesquisa dos resultados de pesquisaprovidos por um provedor de pesquisa que não é uma parte dafacilidade, tal como GOOGLE SEARCH ou MICROSOFT SEARCH. Comoum exemplo, o usuário pode adicionar essas ligações copiandoe colando as ligações arrastando e soltando as ligações eassim por diante. 0 usuário pode também adicionar qualqueroutra URL, tal como um endereço de sitio de rede em uma ma-neira similar. 0 usuário pode então anotar qualquer uma des-sas ligações adicionadas de qualquer lugar fora da facilidade.
A facilidade pode adicionar automaticamente os i-tens de informação nas coleções de quadro de aviso. Como umexemplo, a facilidade prove uma API para adicionar programa-ticamente alimentações de RSS de um sitio de RSS ou um grupode sitios de RSS. Em várias modalidades, a API da facilidadepossibilita que um aplicativo especifique sitios de RSS, a-limentações de RSS ou um ou mais atributos de um sitio deRSS, alimentação de RSS ou item de RSS, por exemplo, parafiltrar quais desses devem ser adicionados em uma coleção -dequadro de avisos. Como um exemplo adicional, a facilidadeprove uma API para converter virtualmente qualquer grupo dositens de informação (por exemplo, um encadeamento de e-mailsatisfazendo vários critérios) em uma coleção de quadro deavisos e itens de informação associados.
A Figura 4 é um diagrama de fluxo ilustrando umarotina de collect_information_items que é utilizada pela fa-cilidade em várias modalidades para coletar itens de infor-mação. A rotina começa no bloco 402 onde ela recebe uma in-dicação da consulta como um parâmetro. Como um exemplo, arotina pode receber uma indicação de texto que um criadorinseriu como uma consulta em uma região de texto de consulta.
No bloco 404, .a. rotina identifica provedores depesquisa com os quais a facilidade é configurada para ope-rar. Como um exemplo, a rotina pode determinar a lista deprovedores de pesquisa a partir de um registro. Como descri-to acima, a facilidade opera com vários provedores de pes-quisa, tais como mecanismos de pesquisa da Internet, meca-nismos de pesquisa de área de trabalho, etc. Os provedorespodem adicionalmente incluir, por exemplo, uma página depesquisa primária associada com a facilidade, provedores depesquisa indicados pela página de pesquisa primária e quais-quer provedores de pesquisa adicionais especificados na con-sulta, tal como coleções adicionais de quadro de avisos.
Entre os blocos 406 e 418, a rotina solicita aosprovedores de pesquisa identificados para pesquisar usando aconsulta recebida e armazenar os resultados em um banco dedados. No bloco 406, a rotina seleciona um provedor de pes-quisa.
No bloco 408, a rotina solicita que o provedor depesquisa selecionado pesquise usando a consulta recebida.Provedores de pesquisa podem prover interfaces de programaaplicativo diferentes que os aplicativos do software podemusar para solicitar que os provedores de pesquisa executemuma pesquisa. Assim, a facilidade funciona com várias inter-faces de programa aplicativo. Em várias modalidades, a faci-lidade pode prover uma camada de extração entre uma interfa-ce do programa aplicativo da facilidade e uma interface doprograma aplicativo de um provedor de pesquisa. Quando issoé feito, um desenvolvedor de software pode facilmente gravarum programa utilitário ou módulo de software para facilitaras comunicações entre a facilidade e um provedor de pesquisa.
Provedores de pesquisa podem ser classificados deacordo com os tipos de resultados que eles geram. Como umexemplo, provedores de pesquisa podem prover resultados fi-xos, filtrados ou calculados. Um provedor de pesquisa queprove resultados fixos geralmente retorna sempre o mesmoconjunto de itens de informação associados com uma consulta.Um provedor de pesquisa que prove resultados filtrados ge-ralmente prove um conjunto de itens de informação de um con-junto maior de itens de informação que são filtrados de a-cordo com vários critérios. Um provedor de pesquisa que pro-ve resultados calculados geralmente prove resultados com ba-se em um cálculo, tal como com base em itens de informaçãoprovidos por outros provedores de pesquisa.
Provedores de pesquisa podem utilizar vários pro-tocolos ou linguagens para recuperar os itens de informação.Como exemplos, provedores de pesquisa podem utilizar o pro-tocolo de transferência de hipertexto, linguagem de consultaestruturada, protocolo de acesso de objetos simples, etc.Provedores de pesquisa podem utilizar esses ou outros proto-colos para prover resultados de pesquisa. Em muitos casos,os provedores de pesquisa podem prover os resultados em XML.
No bloco 410, a rotina remove os itens de informa-ção duplicados. Em várias modalidades, a rotina determina seum item de informação é uma duplicata verificando seu conte-údo ou identificador, tal como uma URL. A facilidade poderemover ou intercalar itens duplicados recebidos de múlti-plos provedores de pesquisa. Provedores de pesquisa podemprover uma. URL para identificar itens de informação locali-zados pelos provedores de pesquisa. Quando múltiplos prove-dores provêem informação relacionada com uma URL, a facili-dade determina se os provedores de pesquisa proveram a in-formação duplicada. Quando esse é o caso, a facilidade remo-ve a informação duplicada. Alternativamente, quando os múl-tiplos provedores de pesquisa provêem informação diferenterelacionada com uma URL, a facilidade combina a informaçãodiferente para prover um resultado de "sobreposição" compre-endendo a informação diferente. Como um exemplo, quando umprovedor de pesquisa prove atributos de titulo e de descri-ção e um outro provedor de pesquisa prove atributos de ano-tação e titulo, o recurso de sobreposição prove atributos detitulo, descrição e anotação. Em várias modalidades, a faci-lidade pode remover a informação duplicata ou intercalar ainformação diferente depois que todos os provedores de pes-quisa provêem os resultados. Em um tal caso, a lógica dobloco 410 pode ser executada fora do laço dos blocos 406-418.
No bloco 412, a rotina recupera dados dos itens deinformação retornados pelo provedor de pesquisa e transformaos dados recuperados em um formato interno que a facilidadeusa para "normalizar" os dados recuperados. Como um exemplo,a rotina pode recuperar informação suficiente para formar umextrato relacionado com os itens de informação. Em váriasmodalidades, a facilidade usa RSS como a forma interna paraarmazenar os dados relacionados com itens de informação.
No bloco 414, a rotina armazena a informaçãotransformada em um banco de dados. Em várias modalidades, obanco de dados é classificado de acordo com uma URL associa-da com os itens de informação. Pela classificação das entra-das do banco de dados pela URL, os itens de informação demúltiplos provedores podem ser agrupados juntos ou elimina-dos, como requerido.No bloco 416, a rotina calcula uma prioridade paraos itens de informação recuperados e armazena as prioridadesno banco de dados. Como um exemplo, a rotina pode calcularuma prioridade com base no número de vezes que os termos naconsulta foram encontrados no item de informação. A facili-dade pode usar qualquer uma das várias maneiras de cálculode prioridades ou relevância que são conhecidas na técnica.Em várias modalidades, a facilidade calcula dinamicamente asprioridades. Como um exemplo, a facilidade pode calcularprioridades depois que ela combina os itens de informaçãoretornados por todos os provedores de pesquisa.
No bloco 418, a rotina seleciona um outro prove-dor. Quando não existem mais provedores com os quais a faci-lidade é configurada para operar, a rotina continua no bloco420, onde a rotina retorna. De outra forma, a rotina conti-nua no bloco 406.
Em várias modalidades, a facilidade possibilitaque um usuário selecione um subconjunto de um conjunto deprovedores de pesquisa. Como um exemplo, um criador ou re-ceptor pode identificar quais provedores de pesquisa usarpara pesquisar os itens de informação. A facilidade podetambém "descobrir" provedores de pesquisa adicionais. Comoum exemplo, o resultado de uma pesquisa pode produzir um do-cumento que contém instruções para registrar e usar um outroprovedor de pesquisa. A facilidade pode instalar e ativardinamicamente esses provedores de pesquisa. Alternativamen-te, o usuário pode indicar quais provedores de pesquisa ins-talar e utilizar. Um provedor de pesquisa pode também indi-car outros provedores de pesquisa para utilizar durante apesquisa.
Em várias modalidades, a facilidade pode automati-camente selecionar alguns provedores de pesquisa com base naconsulta de pesquisa. Como um exemplo, quando a consulta depesquisa inclui "filme", a facilidade pode automaticamenteselecionar um provedor de pesquisa que é provido por uma or-ganização de aluguel de filme em linha.
Em várias modalidades, um provedor de pesquisa po-de ser compartilhado com outros usuários, justamente comosão os itens de informação. Quando um receptor recebe umprovedor de pesquisa, a facilidade pode registrar ou ativaro provedor de pesquisa para uso do receptor.
A Figura 5 é um diagrama de fluxo ilustrando umarotina de handle_URL que é utilizada pela facilidade em vá-rias modalidades para manipular a localização constante derecursos identificando coleções de quadro de avisos. A roti-na começa no bloco 502 onde ela recebe uma indicação de umaURL como um parâmetro.
No bloco 504, a rotina determina se a URL relacio-na-se com uma coleção de quadro de avisos ou algum outro do-cumento. Se a URL se relaciona com uma coleção de quadro deavisos, a rotina continua no bloco 506. De outra forma, arotina continua no bloco 512. Em várias modalidades, a faci-lidade invoca a rotina de handle_URL depois de determinarque a URL relaciona-se com uma coleção de quadro de avisos.
Em um tal caso, a rotina continua no bloco 506 depois de co-meçar no bloco 502.No bloco 506, a rotina invoca uma subrotina decreate_pinboard_collection e prove a indicação recebida daURL para a subrotina. A subrotina de crea-te pinboard collection é descrita abaixo em mais detalhes emrelação à Figura 6. Em várias modalidades, a rotina podeprover uma porção da URL quando invocando a subrotina. Comoum exemplo, a rotina pode prover a porção do parâmetro daURL. Em várias modalidades, a porção do parâmetro da URL é aporção da seqüência da URL seguinte a um ponto de interrogação.
No bloco 508, a rotina opcionalmente transforma acoleção de quadro de avisos criada retornada pela subrotinainvocada no bloco 506. Como um exemplo, a rotina pode trans-formar a coleção de quadro de avisos recebida em uma lingua-gem de marcação de hipertexto ("HTML"). Em várias modalida-des, a subrotina de create_pinboard_collection retorna cole-ções de quadro de avisos em XML. Em tais casos, pode ser be-néfico transformar a XML recebida em HTML para prover a co-leção de quadro de avisos em uma forma legível pelas pessoaspara um usuário, tal como usando um navegador da Internet.Em várias modalidades, XSL ou ASP é usada para transformar aXML em HTML. Em várias modalidades, a rotina pode transfor-mar a coleção de quadro de avisos criada em alguma outraforma de documento.
No bloco 510, a rotina retorna a coleção de quadrode avisos. A coleção de quadro de avisos retornada pode es-tar em XML, HTML ou alguma outra forma.
No bloco 512, a rotina executa a manipulação nor-mal da URL. Como um exemplo, a rotina pode fazer com que umservidor de rede retorne um documento. No bloco 514, a roti-na retorna.
A Figura 6 é um diagrama de fluxo ilustrando umarotina de create_pinboard_collection que é utilizada pelafacilidade em várias modalidades para criar uma coleção dequadro de avisos. A rotina começa no bloco 602 onde ela re-cebe uma indicação de uma URL como um parâmetro. Em váriasmodalidades, a rotina pode receber uma porção da URL, talcomo uma porção de parâmetro da URL.
No bloco 604, a rotina cria e executa um plano deconsulta com base nos parâmetros recebidos da URL e na cole-ção de quadro de avisos indicados pela URL. Um plano de con-sulta é um conjunto de operações que adiciona resultados devárias fontes de informação em um conjunto de resultados pa-ra formar uma consulta. Em várias modalidades, o plano deconsulta é executado por um servidor do banco de dados e osresultados das fontes de informação são adicionados em umatabela do banco de dados. Em várias modalidades, cada linhada tabela representa um elemento de XML de um formato de ar-quivo da coleção de quadro de avisos, que é também descritoabaixo. A facilidade cria um plano de consulta identificandotodos os provedores de pesquisa para a coleção de quadro deavisos e construindo comandos que fazem com que os provedo-res de pesquisa identificados gerem resultados. Um exemplode um conjunto de resultados armazenado em uma tabela é des-crito em mais detalhes abaixo em relação à Figura 7.
Em várias modalidades, um documento (por exemplo,um arquivo) descrevendo uma coleção de quadro de avisos con-tém informação sobre uma localização para um objeto, tal co-mo código executável, que a facilidade pode utilizar paraobter resultados de pesquisa de um provedor de pesquisa epara converter os resultados providos em uma forma utilizadapela facilidade. Como um exemplo, a coleção de quadro de a-visos pode conter uma localização e nome de uma bibliotecade ligação dinâmica que prove essas funções.
Em várias modalidades, a facilidade usa um sistemade banco de dados relacionai, tais como MICROSOFT SQL SERVERou um software do banco de dados ORACLE para armazenar re-sultados" da pesquisa.
Em várias modalidades, as coleções de quadro deavisos contêm indicações de outras coleções de quadro de a-visos ou provedores de pesquisa como itens de informação a-tribuidos. Quando esse é o caso, a facilidade pode pesquisarou recuperar adicionalmente itens de informação referencia-dos por essas outras coleções de quadro de avisos e itens deinformação atribuídos. Quando uma coleção de quadro de avi-sos faz referência a um provedor de pesquisa, a facilidadetransfere a informação relevante de uma indicação do prove-dor de pesquisa. Como um exemplo, um provedor de pesquisapode ser indicado por uma ligação. A facilidade utiliza essainformação transferida quando consultando o provedor de pes-quisa para converter os seus resultados em uma forma que afacilidade utiliza internamente.
Em várias modalidades, um item de informação oucoleção de quadro de avisos pode ser indicado como "ativo"dentro de uma coleção de quadro de avisos. Como um exemplo,quando uma pesquisa localiza um provedor de pesquisa poten-cial, um usuário pode ser capaz de ativar o provedor de pes-quisa encontrado. Quando esse é o caso, a facilidade podeutilizar provedores de pesquisa ativos para executar pesqui-sa adicional relacionada com a coleção de quadro de avisos.
No bloco 606, o conjunto de resultados é classifi-cado. Como um exemplo, quando o conjunto de resultados é ar-mazenado em uma tabela de banco de dados, as linhas do bancode dados podem ser classificadas de acordo com valores emuma das colunas da tabela.
Em várias modalidades, a facilidade usa uma tabelado banco de dados tendo uma forma que é descrita em mais de-talhes abaixo em relação à Figura 7. Em tais modalidades, afacilidade pode classificar a tabela do banco de dados comosegue. A tabela do banco de dados é classificada, primeiro,por uma coluna de seção. Cada seção é então classificada deacordo com onde, em uma página de resultados em tela, os da-dos contidos nas linhas devem ser exibidos. As linhas em ca-da seção são então classificadas por prioridade de modo queos itens de informação tendo uma prioridade maior aparecemantes dos itens de informação tendo uma prioridade menor. Aslinhas em cada seção são a seguir classificadas por URL, demodo que os itens de informação de uma URL particular sãoagrupados juntos. Em várias modalidades, as linhas podem sertambém classificadas, tal como pelo tipo de linha, valor ecolunas intValue. Essas colunas são descritas em mais deta-lhes abaixo em relação à Figura 7.No bloco 608, a rotina cria um documento de XML apartir das linhas do conjunto de resultados. Em várias moda-lidades, a facilidade insere valores predefinidos para li-nhas ausentes que podem ser necessárias. Como um exemplo,RSS pode utilizar vários elementos de XML quando definindoalimentações e entradas. Entretanto, esses elementos podemnão ser providos pelos provedores de pesquisa. Em um tal ca-so, a rotina pode adicionar valores predefinidos para esseselementos. Em várias modalidades, a facilidade pode eliminarlinhas duplicadas. Como um exemplo, múltiplos provedores depesquisa podem prover elementos de XML similares ou idênti-cos para um dado item de informação. Quando o esquema permi-te, a facilidade pode não remover alguns valores duplicados.
Em várias modalidades, a facilidade pode adicionar nós ouelementos de XML. Como um exemplo, a facilidade pode adicio-nar nós de XML para completar um esquema de quadro de avi-sos. Em várias modalidades, a facilidade executa a rotina decollect_information_items descrita acima em relação à. Figura4 quando executando a lógica do bloco 608.
No bloco 610, a rotina retorna o documento de XML.
Em várias modalidades, o formato do arquivo da co-leção de quadro de avisos é baseado em RSS. Como um exemplo,o formato do arquivo da coleção de quadro de avisos pode serbaseado na versão 2.0 de RSS, que é descrita no sitio da In-ternet blogs.law.Harvard.edu/tech/RSS. RSS define uma ali-mentação e uma entrada. Uma alimentação identifica uma fontepara os itens de informação. Uma entrada descreve aspectosdos itens de informação, tal como extratos.Em várias modalidades, a facilidade estende RSS.Como um exemplo, a facilidade pode adicionar texto e elemen-tos de provedor de pesquisa nas alimentações RSS. O elementode texto pode ser usado para identificar consultas. Como umexemplo, uma consulta usada para gerar uma coleção de quadrode avisos pode ser armazenada no elemento de texto. O ele-mento do provedor de pesquisa pode ser usado pela facilidadepara localizar provedores de pesquisa relacionados com umacoleção de quadro de avisos.
Como um exemplo adicional, a facilidade pode tam-bém adicionar vários elementos às entradas de RSS, incluindoelementos de tipo, extrato, modificado, memória, acesso e defonte. O elemento de tipo pode ser usado para indicar um ti-po de item de informação, tal como uma página da rede ouplanilha. O elemento de extrato pode ser usado para armaze-nar um extrato relacionado com um item de informação. O ele-mento modificado pode ser usado para armazenar uma últimadata ou hora de modificação da coleção de quadro de avisos.
O elemento memória pode ser usado para armazenar anotaçõesou outras informações relacionadas com uma coleção de quadrode avisos ou um item de informação. 0 elemento de acesso po-de ser usado para armazenar indicações de como as permissõesde controle de acesso ("ACPs" ou simplesmente "permissões")são propagadas ou herdadas em relação ao item de informação.
O elemento de fonte pode ser usado para armazenar qual pro-vedor de pesquisa proveu um item de informação.
A Figura 7 é um diagrama de tabela ilustrando umatabela de conjunto de resultados criada pela facilidadequando executando um plano de consulta em várias modalida-des. A tabela de conjunto de resultados 700 tem uma colunade ID de consulta 702, uma coluna de seção 704, uma colunade URL 706, uma coluna de tipo de linha 708, uma coluna devalor 710 e uma coluna de valor de número inteiro 712. A ta-bela contém uma coleção "fragmentada" de itens de informaçãode uma coleção de quadro de avisos. ~"
A coluna de ID de consulta 702 identifica unica-mente cada consulta usada para gerar o resultado correspon-dendo com a linha da tabela. Pelo fato de que a facilidadepode manipular múltiplas consultas simultâneas, a facilidadepode usar esse identificador único para determinar a corres-pondência entre consultas e linhas na tabela de conjunto deresultados. Assim, quando consultando a tabela de resulta-dos, a facilidade pode filtrar pelo ID da consulta.
A coluna de seção 704 identifica a seção corres-pondendo com cada linha. Como um exemplo, a coluna de seçãoidentifica se uma linha se refere a uma alimentação para umaentrada. Como previamente descrito, porções dos arquivos de-finindo coleções de quadro de avisos se referem a entradasde alimentação.
A coluna de URL 706 identifica a URL da qual o i-tem de informação relacionado com a linha foi recuperado.
A coluna do tipo de linha 708 identifica o tipo deelemento de RSS que está armazenado na linha. Como exemplos,o tipo de linha para linhas pode ser o titulo, data de pu-blicação, descrição, etc.
A coluna de valor 710 armazena os dados de XML re-ais para o elemento associado com a linha.
A coluna de valor de número inteiro 712 armazenauma representação de número inteiro para cada linha. A faci-lidade pode usar essa coluna para classificar linhas. Comoum exemplo, essa coluna pode armazenar informação de rele-vância ou graduação. Quando a facilidade classifica os re-sultados, ela pode usar essa coluna para agrupar itens deinformação de relevância ou graduação similar juntas.
A Figura 8 é um diagrama de blocos ilustrando umambiente adequado no qual a facilidade pode operar em váriasmodalidades. O ambiente tem um ou mais dispositivos de com-putação de servidor 802 que podem ser conectados através deuma rede 804 em um ou mais dispositivos de computação decliente 806.
Os dispositivos de computação de servidor podemser servidores de rede, servidores de e-mail, servidores debanco de dados, servidores de arquivos, fontes de itens deinformação, etc. Em várias modalidades, um servidor podeprover múltiplos serviços ou aplicativos simultaneamente.
A rede pode ser a Internet, uma intranet ou qual-quer combinação de redes de comunicações de dados, incluindoredes sem fio ou ligadas por fiação.
Os dispositivos de computação de cliente podem serutilizados por usuários, tais como criadores ou receptores,para criar, ver ou manipular coleções de quadro de avisos.
Em várias modalidades, a facilidade pode utilizarvários servidores e cada usuário pode ser associado com umdos servidores. Entretanto, os usuários não precisam estarcientes de com qual servidor eles estão associados. A faci-lidade garante que os usuários tenham acesso a toda informa-ção à qual eles foram munidos com acesso. A facilidade podeduplicar a informação, tal como quando um item de informaçãoque é atribuído para uma coleção de quadro de avisos estáindisponível a partir do dominio do servidor com o qual ousuário está associado. 0 recurso de duplicação é descritoem mais detalhes abaixo. Quando um usuário solicita que afacilidade execute uma pesquisa, o servidor associado podeexecutar a pesquisa mesmo se o usuário proveu a solicitaçãoda pesquisa para um outro servidor da facilidade. Quaisquercoleções de quadro de avisos e itens de informação que sãoarmazenados pela facilidade são também geralmente armazena-dos em um dispositivo de armazenamento que é associado com oservidor associado.
A Figura 9 é um diagrama de blocos ilustrando as-pectos de um servidor da Figura 8 em mais detalhes em váriasmodalidades. O servidor 900 pode ser conectado em um bancode dados 902. Em várias modalidades, o banco de dados podeser armazenado no servidor 900. Em outras modalidades, obanco de dados pode ficar armazenado em um outro servidorque é conectado no servidor 900.
O servidor 900 adicionalmente compreende várioscomponentes de software, tais como um servidor da Internet904, um serviço de coleção de quadro de avisos 906 e um oumais provedores de pesquisa 908.
O servidor da Internet é um serviço convencionalque responde às solicitações contendo URLs avaliando a URL,executando alguma lógica e retornando informação relacionadacom a URL. Como um exemplo, quando a URL se refere a um do-cumento, o servidor da Internet responde carregando o docu-mento e enviando o conteúdo do documento para o solicitante.
Quando a URL se refere a uma coleção de quadro de avisos, oservidor da Internet responde fazendo com que o serviço decoleção de quadro de avisos 906 crie a coleção de quadro deavisos e retornando os conteúdos da coleção de quadro de a-visos criada para o solicitante.
O serviço de coleção de quadro de avisos 906, coma recepção de uma indicação para criar uma coleção de quadrode avisos, pode utilizar um ou mais provedores de pesquisa908 para pesquisar itens de informação. O serviço de coleçãode quadro de avisos agrega esses itens de informação comouma parte de um plano de consulta, como descrito acima, emum resultado de pesquisa. 0 serviço de coleção de quadro deavisos pode então criar a coleção de quadro de avisos a par-tir do resultado de pesquisa. Em várias modalidades, o ser-viço de coleção de quadro de avisos pode transformar o re-sultado da pesquisa criado em uma forma que o dispositivo decomputação do cliente solicitante é capaz de exibir para umusuário. Como um exemplo, o serviço de coleção de quadro deavisos pode transformar o resultado de pesquisa criado emHTML a partir da XML.
A Figura 10 é um diagrama de tela ilustrando umapágina de resultados em tela provida pela facilidade em vá-rias modalidades. O diagrama de tela ilustrado é similar aodiagrama de tela da Figura 2, exceto que ele adicionalmentetem um botão de permissões 1002 e múltiplos botões de per-missões de item de informação 1004.
0 botão de permissões 1002, quando selecionado,faz com que a facilidade exiba uma interface do usuário depermissões, que é descrita em mais detalhes abaixo em rela-ção à Figura 11. Quando o usuário recusa a interface do usu-ário das permissões, tal como selecionando-um botão ok ouaplicar, a facilidade aplica as permissões indicadas nessainterface do usuário para a coleção de quadro de avisos paraa qual o botão de permissões 1002 foi selecionado. Assim, umcriador ou receptor pode ser capaz de ajustar ou restauraras permissões relacionadas com uma coleção de quadro de avi-sos . Como um exemplo, o criador pode ser capaz de indicarque os receptores não têm as permissões para compartilharmais uma coleção de quadro de avisos que o criador envia pa-ra os receptores.
Os botões de permissões de item de informação 1004são associados com cada item de informação exibido em umacoleção de quadro de avisos. Quando a página de resultadosem tela exibe coleções de quadro de avisos adicionais, talcomo na região dos resultados de coleções de quadro de avi-sos 112, a facilidade pode também prover botões de permis-sões de item de informação adicionais 1004 que são associa-dos com as coleções de quadro de avisos exibidas adicionais.
Quando um usuário seleciona um dos botões de permissões deitem de informação 1004, a facilidade exibe uma interface dousuário de permissões, que é descrita em mais detalhes abai-xo em relação à Figura 11. Em várias modalidades, a interfa-ce do usuário que a facilidade prove para ajustar as permis-sões para coleções de quadro de avisos (por exemplo, inter-faces do usuário invocadas pelo botão de permissões 1002)pode ser diferente da interface do usuário invocada para a-justar permissões do item de informação. Quando o usuáriorecusa a interface do usuário de permissões, tal como pelaseleção de um botão ok ou aplicar, a facilidade aplica per-missões indicadas nessa interface do usuário para o item deinformação ou coleção de quadro de avisos adicional corres-pondendo com o botão de permissões do item de informação1004 que foi selecionado pelo usuário. Assim, um criador oureceptor pode ser capaz de ajustar ou restaurar permissõesrelacionadas com itens de informação ou coleções de quadrode aviso adicionais indicadas em uma coleção de quadro deavisos. Como um exemplo, o criador pode ser capaz de indicarque receptores particulares não têm as permissões para veralguns dos itens de informação que foram atribuídos pelocriador para uma coleção de quadro de avisos.
A Figura 11 é um diagrama de tela ilustrando umainterface do usuário para indicar permissões utilizadas pelafacilidade em várias modalidades. A interface do usuário1100 pode prover uma lista de receptores, tal como em umacaixa de lista 1102. No exemplo ilustrado, Brian Bean é in-dicado como um receptor. A interface do usuário pode tambémprover uma lista de permissões, tal como permissões1104,1106 e 1108.
Um usuário, tal como um criador ou um receptor,pode especificar permissões relacionadas com uma coleção dequadro de avisos ou item de informação selecionando um oumais receptores da lista de receptores e a seguir indicandopermissões que a facilidade deve prover para os receptoresselecionados. A interface de usuário ilustrada indica umapermissão de visualização 1104, uma permissão de comparti-lhamento 1106 e uma permissão total 1108, embora outras per-missões sejam possíveis e consideradas.
Quando um usuário indica uma ou mais das permis-sões, a facilidade aplica as permissões no item para o quala interface do usuário foi invocada. Como exemplos, a faci-lidade pode aplicar as permissões indicadas nos itens de in-formação ou coleções de quadro de avisos dependendo de se ousuário selecionou o botão de permissões 1002 ou um dos bo-tões de permissões do item de informação 1004.
Quando um receptor tem a permissão de visualiza-ção, a facilidade habilita o receptor a ver o item associa-do. A facilidade pode não habilitar um receptor a ver um i-tem de informação ou coleção de quadro de avisos quando oreceptor não tem a permissão de visualização.
Quando um receptor tem a permissão de compartilha-mento, a facilidade habilita o receptor a compartilhar o i-tem associado com outros receptores. Como um exemplo, um re-ceptor que tem a permissão de compartilhamento pode compar-tilhar uma coleção de quadro de avisos recebida com outrosreceptores. Quando um receptor compartilha uma coleção dequadro de avisos recebida tendo alguns itens de informaçãopara os quais o receptor tem permissões de compartilhamentoe outros itens de informação para os quais o receptor nãotem permissões de compartilhamento, receptores a jusante po-dem receber somente os itens de informação para os quais oreceptor de compartilhamento tem a permissão de compartilhamento.
Quando um receptor tem permissão total para um i-tem, a facilidade habilita o receptor a ver o item, compar-tilhar o item ou modificar o item. A facilidade pode tambémhabilitar um tal receptor a adicionar itens adicionais.
Itens de informação e coleções de quadro de avisospodem ter várias relações de acordo com quais a facilidadedetermina com permissões de controle de acesso ("ACPs"). Es-sas relações podem ser, por exemplo, "nenhuma", "propagar","herdar" e "ambas". A facilidade pode também definir outrasrelações. Quando uma coleção de quadro de avisos ou item deinformação não tem relação, a facilidade não precisa calcu-lar uma ACP para essa coleção de quadro de avisos ou item deinformação com base em outras coleções de quadro de aviso ouitens de informação, mas pode, contudo, exibir a coleção dequadro de avisos, por exemplo, como uma coleção de quadro deavisos relacionada. Quando uma coleção de quadro de avisosou o item de informação tem uma relação de propagação, a fa-cilidade calcula ACPs para essa coleção de quadro de avisosou item de informação com base nas ACPs determinadas ou in-dicadas para coleções de quadro de avisos para as quais essacoleção de quadro de avisos ou item de informação é atribuí-do. Quando uma coleção de quadro de avisos ou item de infor-mação tem uma relação de herança, a facilidade calcula ACPspara coleções de quadro de avisos para as quais essa coleçãode quadro de avisos ou item de informação é atribuido. Emvárias modalidades, a facilidade especifica uma relação au-tomaticamente quando um item de informação ou coleção dequadro de avisos é atribuída. Como um exemplo, a facilidadepode selecionar uma relação de propagação por pré-definição.
Em várias modalidades, a facilidade pode prover uma relaçãopredefinida, mas um usuário pode modificar a relação. A in-terface do usuário para modificar a relação pode ser associ-ada com a interface do usuário na Figura 11. Como um exem-pio, a interface do usuário da Figura 11 pode ser estendidapara habilitar o usuário a selecionar a relação, tal comopela seleção de uma relação a partir de uma lista de rela-ções. Em várias modalidades, a interface do usuário para se-lecionar uma relação pode ser através de um menu suspensoque aparece em uma página de resultados em tela ou coleçãode quadro de avisos, tal como a página de resultados em telailustrada na Figura 10.
Essas relações serão agora mais explicadas com re-ferência às Figuras 12A-12E, que são diagramas de blocos i-lustrando relações entre coleções de quadro de avisos e i-tens de informação para determinar permissões em várias mo-dalidades. Essas Figuras ilustram gráficos direcionados ten-do quadrados representando coleções de quadro de avisos ecírculos representando itens de informação. As bordas queconectam as coleções de quadro de avisos e os itens de in-formação indicam que uma coleção de quadro de avisos ou itemde informação é atribuido para a coleção de quadros de avi-sos com a qual ele compartilha uma borda. As setas indicam adireção na qual as ACPs fluem. Como um exemplo, de acordocom a Figura 12A, as ACPs se propagam das coleções de quadrode avisos para os itens de informação. Um item de informaçãoou coleção de quadro de aviso que aparece abaixo de uma co-leção de quadro de avisos com a qual ela compartilha umaborda é atribuída para a coleção de quadro de avisos acimadela. Os nós ilustrados podem" também ter outras relações quenão são ilustradas.
De acordo com a Figura 12A, existem duas coleçõesde quadro de avisos: a coleção de quadro de avisos A 1202 ea coleção de quadro de avisos B 1204. A coleção de quadro deavisos A tem atribuído para ela os itens de informação 11206, 2 1208 e 3 1230. A coleção de quadro de avisos B tematribuído para ela o item de informação 5 1214. O item deinformação 4 1212 não é indicado como sendo atribuído paraqualquer coleção de quadro de avisos.
Suponha que os usuários X, Y e Z têm permissõestotais na coleção de quadro de avisos A, mas nenhum dessesusuários tem quaisquer permissões no item de informação 4.
Se os usuários X, Y ou Z de alguma forma localizam o item deinformação 4, eles seriam incapazes de ver esse item de in-formação, por exemplo, porque o sistema de arquivos do sis-tema operacional indica que esses usuários não têm as ACPsnecessárias. Suponha também que o usuário W tem privilégiostotais na coleção de quadro de avisos A e privilégios deleitura no item de informação 4. O usuário W pode assim a-tribuir o item de informação 4 para A, como indicado na Fi-gura 12B.Quando um usuário modifica uma coleção de quadrode avisos, tal como pela atribuição de um novo item, a faci-lidade pode recalcular as ACPs para todos os itens de infor-mação e coleções de quadro de avisos atribuídos para a cole-ção de quadro de avisos. As rotinas para calcular ou estabe-lecer ACPs são descritas em mais detalhes abaixo em relaçãoàs Figuras 13A-C.
0 item de informação 4 tem uma relação de "propa-gação", como indicado por uma borda direcionada da coleçãode quadro de avisos para o item de informação 4. Como um re-sultado, depois que o item de informação 4 é atribuído paraa coleção de quadro de avisos A, as ACPs do item de informa-ção 4 são calculadas para ser a união das ACPs para a cole-ção de quadro de avisos A e quaisquer ACPs explicitamenteindicadas para o item de informação 4. Nesse exemplo, os u-suários X, Y e Z que previamente não tinham permissões noitem de informação 4, teriam permissões completas no item deinformação 4 depois que esse item é atribuído para a coleçãode quadro de avisos A. Isso é porque esses usuários tinhampermissões totais na coleção de quadro de avisos A, que temuma relação de propagação com o item de informação 4.
Suponha que o usuário Z tenha permissões de com-partilhamento nas coleções de quadro de avisos A e B e itemde informação 5 e o usuário W não tenha permissões no itemde informação 5, mas tenha permissões completas na coleçãode quadro de avisos A. Adicionalmente, suponha que o usuárioZ atribui o item de informação 5 para a coleção de quadro deavisos A como indicado na Figura 12C. A facilidade então re-calcula as ACPs para o item de informação 5 como uma uniãodas permissões das coleções de quadro de avisos. Depois dorecalculo, o usuário W teria permissões completas no item deinformação 5 porque as ACPs das coleções de quadro de avisosA e B são propagadas para o item de informação 5 e assim aspermissões do usuário W na coleção de quadro de avisos A sepropagam para o item de~informação 5.
A Figura 12D ilustra uma relação de herança. Deacordo com a Figura 12D, a coleção de quadro de avisos Aherda ACPs da coleção de quadro de avisos C 1228, como indi-cado pela borda 1230, que tem uma seta indicando a relaçãode herança. Assim, mesmo embora a coleção de quadro de avi-sos C seja atribuída para a coleção de quadro de avisos A, éa coleção de quadro de avisos A que herda as ACPs da coleçãode quadro de avisos C. Com a ocorrência de vários eventos, afacilidade recalcula as ACPs da coleção de quadro de avisos
A com base nas ACPs da coleção de quadro de avisos C. Combase na relação de propagação com os itens de informação 1-5, essas ACPs podem também fluir para esses itens de infor-mação. Como um exemplo, se o usuário V tem permissões de vi-sualização na coleção do quadro de avisos C, esse usuáriotambém receberá permissões de visualização dos itens de in-formação 1-5.
A Figura 12E ilustra uma relação entre as coleçõesde quadro de avisos A e C que flui em ambas as direções (porexemplo, a relação é tanto de herança quanto de propagação).Nesse caso, as ACPs fluem da coleção de quadro de avisos Cpara a coleção de quadro de avisos A e da coleção de quadrode avisos A para a coleção de quadro de avisos C. Quando umarelação flui em ambas as direções entre dois nós, a facili-dade sincroniza as ACPs de ambos os nós. A facilidade podedetectar e impedir laços infinitos quando isso ocorre.
Em várias modalidades, a facilidade recalcula asACPs quando vários eventos ocorrem. Esses eventos incluem,por exemplo, quando um item de informação é atribuído parauma coleção de quadro de avisos ou não é mais atribuído parauma coleção de quadro de avisos, quando as ACPs são modifi-cadas para um item de informação (por exemplo, manualmenteou como um resultado de serem atribuídas para uma outra co-leção de quadro de avisos) , ou de tempos em tempos (por e-xemplo, periódica ou aleatoriamente).
Como descrito acima, a facilidade pode funcionarcom relações entre coleções de quadro de avisos e itens deinformação que podem ser representados como um gráfico dire-cionado. Isso está em contraste com a maior parte dos esque-mas de controle de acesso que são convencionalmente repre-sentados por árvores. Porque a herança da ACP é representadacomo um gráfico direcionado, relações complexas podem serdefinidas para herança e propagação das ACPs. Cada nó dográfico direcionado representando um item de informação oucoleção de quadro de avisos e cada borda direcionada indicauma relação definindo como as ACPs fluem. As ACPs calculadaspara qualquer dado nó são a união das ACPs explicitamenteestabelecidas para esse nó e as ACPs de cada outro nó doqual uma borda direcionada é indicada. Tomando o gráfico di-recionado da Figura 12E como um exemplo, suponha que as ACPspara o item de informação 5, coleção de quadro de avisos A ecoleção de quadro de avisos B são respectivamente K, L e M.
As ACPs calculadas para o item de informação 5 seriam (K u-nião com L união com M) . Como é conhecido na técnica, umaoperação de união em múltiplos conjuntos de fonte produz umconjunto de resultados que é a menor combinação de todos oselementos nos dois conjuntos.
A facilidade pode usar uma variedade de técnicaspara garantir que o recalculo das ACPs não seja um laço sem-fim, tal como quando um gráfico definindo relações tem umciclo. Como um exemplo, a facilidade pode parar o recalculodas ligações quando ACPs já aplicadas em uma coleção de qua-dro de avisos ou item de informação correspondem com ACPscalculadas pela facilidade para a coleção de quadro de avi-sos ou item de informação.
Em várias modalidades, a facilidade interage comum sistema operacional para recuperar ou estabelecer ACPs.
Como um exemplo, quando calculando permissões em uma relaçãode herança de um item de informação para uma coleção de qua-dro de avisos, a facilidade pode consultar o sistema opera-cional para determinar quais ACPs estão explicitamente esta-belecidas no item de informação. Como um outro exemplo, como cálculo das ACPs para um item de informação, a facilidadepode solicitar que o sistema operacional estabeleça as ACPspara o item de informação. Em várias modalidades, a facili-dade coloca em cache as ACPs em ura banco de dados, tal comopara melhorar o desempenho ou ampliar as ACPs.
Em algumas modalidades, as ACPs são gerenciadaspela facilidade além de, ou no lugar de, outros mecanismosde controle de acesso utilizados por outros objetos utiliza-dos pela facilidade (por exemplo, objetos que armazenam ositens de informação) , tal como o sistema de arquivos, bancode dados e assim por diante. Em algumas modalidades, a faci-lidade propaga ACPs através de uma consulta ao invés de, oualém" de, com um item de informação". "Como "um-exemplo, a ACPpode propagar para qualquer item de informação (por exemplo,em uma coleção de quadro de avisos) contendo um termo depesquisa especificado. Em tais modalidades, as coleções dequadro de avisos podem ser armazenadas ou calculadas dinami-camente.
As Figuras 13A-13C são diagramas de fluxo ilus-trando rotinas que são utilizadas pela facilidade em váriasmodalidades para modificar as ACPs. Essas rotinas podem serutilizadas pela facilidade em vários momentos, tal comoquando a facilidade detecta que uma coleção de quadro de a-visos foi alterada. A facilidade pode executar porções des-sas rotinas em um contexto de usuário e outras porções em umcontexto de sistema. Quando a lógica da rotina é executadaem um contexto de_ usuário, somente ações que o-sistema ope-racional habilita o usuário a executar podem ser realmenteexecutadas. Em contraste, quando a lógica da rotina é execu-tada em um contexto de sistema, todas as ações que o sistemaoperacional é capaz de executar podem ser realmente executadas.
A Figura 13A é um diagrama de fluxo ilustrando umarotina de modify_access_control que é utilizada pela facili-dade em várias modalidades para modificar o controle de a-cesso (por exemplo, permissões ou privilégios). A rotina co-meça no bloco 1302 onde ela recebe uma indicação de um itemcomo um parâmetro. 0 item indicado pode ser, por exemplo,uma coleção de quadro de avisos ou um item de informação.
No bloco 1304, a rotina determina um conjunto deitens relacionados. Itens relacionados são outras coleçõesde quadro de avisos ou itens de informação que propagam ACPspara o item indicado ou dos quais o item indicado herda asACPs.
A facilidade pode opcionalmente cache essas rela-ções em um banco de dados, como é indicado no bloco 1306.Como um exemplo, a facilidade pode criar uma ou mais tabelasde banco de dados tendo linhas indicando cada item de infor-mação ou visualização de coleção de quadro de avisos e a re-ação com outros itens de informação e coleções de quadro deavisos que a facilidade adicionou na tabela. Cada item deinformação ou coleção de quadro de avisos pode ser unicamen-te identificado na tabela. Cada linha de uma tabela podeconter um identificador único para um item, uma localizaçãodo item e ACPs para o item. Uma outra tabela, pode ter linhascontendo identificadores únicos de itens, relação de contro-le de acesso (por exemplo, herdar, propagar, ambos ou ne-nhum) e um identificador único do item com o qual o item as-sociado com a linha está relacionado.
No bloco 1308, a rotina pode invocar uma subrotinade compute_access_control_permissions para calcular as ACPspara o item indicado. Essa rotina é também descrita imedia-tamente abaixo em relação à Figura 13B.
No bloco 1310, a rotina determina se as ACPs cal-culadas são diferentes das ACPs realmente indicadas para oitem, tal como pela consulta de um sistema operacional noqual o item está localizado. Se as ACPs calculadas são dife-rentes das ACPs reais, a rotina continua no bloco 1312. Deoutra forma, a rotina continua no bloco 1314.
No bloco 1312, a rotina estabelece as ACPs reaispara o item para as ACPs calculadas. Como um exemplo, a ro-tina pode invocar uma interface de programa aplicativo de umsistema operacional no qual o item está localizado para es-tabelecer as ACPs do item. Alternativamente, ou além disso,a rotina pode mudar as ACPs do item em um banco de dados ououtro aplicativo armazenando ACPs dos itens. Como um exera-
15 pio, a facilidade pode invocar uma interface do programa a-plicativo provida por um servidor de e-mail para estabeleceras ACPs do item de e-mail.
No bloco 1314, a rotina determina um conjunto deitens que pode também precisar de suas ACPs restauradasquando as ACPs para o item indicado muda. Como um exemplo,itens de informação e coleções de quadro de avisos atribuí-dos para uma coleção de quadro de avisos podem precisar desuas ACPs restauradas. Como um outro exemplo, outros itensque têm uma relação de herança com o item indicado podemprecisar de suas ACPs restauradas.
Entre o laço dos blocos 1316 e 1320, a rotina res-taura as ACPs para cada item do conjunto determinado de i-tens. No bloco 1316, a rotina seleciona um item do conjunto.No bloco 1318, a rotina estabelece as ACPs para oitem invocando uma subrotina de set_permissions, que é des-crita abaixo em relação à Figura 13C. A rotina pode proveruma indicação do item selecionado como um parâmetro para arotina de set_permissions.
No bloco 1320, a rotina seleciona um outro item doconjunto. Se todos os itens do conjunto já foram processadospelo laço, a rotina continua no bloco 1322, onde ela retor-na. De outra forma, a rotina continua no bloco 1318.
A Figura 13B é um diagrama de fluxo ilustrando umarotina de compute_access_control_permissions que é utilizadapela facilidade em várias modalidades para calcular ACPs. Arotina começa no bloco 1340 onde ela recebe uma indicação deum item como um parâmetro. O item pode ser, por exemplo, umitem de informação ou uma coleção de quadro de avisos.
No bloco 1342, a rotina determina um conjunto deACPs explicitamente definidas para o item indicado. Como umexemplo, a rotina pode determinar as. ACPs explicitas consul-tando um sistema operacional no qual o item está localizadoou procurando as ACPs explicitas em um banco de dados. A ro-tina estabelece uma_variáyel (ilustrada. como "P")_. para ..con- _ter as ACPs.
No bloco 134 4, a rotina determina um conjunto deitens que propagam ACPs para o item indicado ou do qual oitem indicado herda as ACPs. Como um exemplo, a rotina podedeterminar essa informação consultando o banco de dados des-crito acima em relação ao bloco 1306.
Entre o laço dos blocos 1346 e 1350, a rotina cal-cuia as ACPs para o item indicado executando uma operação deunião nas ACPs de todos os itens no conjunto determinado deitens. A rotina seleciona um item do conjunto no bloco 1346.
No bloco 1348, a rotina executa uma operação deunião entre as ACPs contidas na variável estabelecida nobloco 1342 (por exemplo, "P") e as ACPs do item selecionado.0 resultado da união é armazenado na variável e reutilizadodurante uma iteração subseqüente do laço.
No bloco 1350, a rotina seleciona um outro item dalista. Quando todos os itens foram processados, a rotinacontinua no bloco 1352, onde ela retorna as ACPs calculadas,que estão agora armazenadas na variável. De outra maneira, arotina continua no bloco 1348.
A Figura 13C é um diagrama de fluxo ilustrando umarotina de set_permissions que é utilizada pela facilidade emvárias modalidades para estabelecer ACPs. A rotina começa nobloco 1360 onde ela recebe uma indicação de um item como umparâmetro. O item pode ser, por exemplo, um item de informa-ção ou uma coleção de quadro de avisos.
No bloco 1362, a rotina invoca a subrotina de com-pute access control permissions descritaacima em relação àFigura 13B para calcular as ACPs para o item indicado.
No bloco 1364, a rotina determina se as ACPs cal-culadas são diferentes das ACPs realmente indicadas para oitem, tal como consultando um sistema operacional no qual oitem está localizado. Se as ACPs calculadas são diferentesdas ACPs reais, a rotina continua no bloco 1366. De outramaneira, a rotina continua no bloco 1378.No bloco 1366, a rotina estabelece as ACPs reaispara o item para as ACPs calculadas. Como um exemplo, a ro-tina pode invocar uma interface de programa aplicativo de umsistema operacional no qual o item está localizado para es-tabelecer as ACPs do item. Alternativamente ou além disso, arotina pode mudar as ACPs do item em um banco de dados arma-zenando ACPs de itens.
No bloco 1368, a rotina determina se o item é umacoleção de quadro de avisos. A rotina faz essa determinaçãoporque os itens associados com uma coleção de quadro de avi-sos pode precisar de suas ACPs restauradas. Se o item é umacoleção de quadro de avisos, a rotina continua no bloco1370. De outra maneira, a rotina continua no bloco 1378.
No bloco 1370, a rotina determina um conjunto deitens associados com a coleção de quadro de avisos que podeprecisar de permissões restauradas. Como um exemplo, a roti-na pode determinar essa informação consultando o banco dedados descrito acima em relação ao bloco 1306.
Entre o laço dos blocos 1372 e 1376, a rotina es-tabelece ACPs para itens no conjunto determinado. A rotinaseleciona um item do conjunto no bloco 1372. - -
No bloco 1374, a rotina recursivamente chama a ro-tina de set_permissions para estabelecer ACPs para o itemselecionado, que a rotina prove como uma indicação.
No bloco 1376, a rotina seleciona um outro item.Quando todos os itens foram processados, a rotina continuano bloco 1378. De outra forma, a rotina continua no bloco1374 .No bloco 1378, a rotina retorna.
Em várias modalidades, a facilidade habilita umusuário a especificar itens de informação dos quais uma co-leção de quadro de avisos é para herdar permissões que nãosão atribuídas para a coleção de quadro de avisos.
Em várias modalidades, a facilidade habilita umusuário, tal como um administrador, criador, receptor ou ou-tro usuário a especificar uma "máscara" que deve ser aplica-da quando modificando as permissões. Quando a facilidade a-plica uma máscara, ela pode não aplicar todas as permissões.Exemplos de máscaras são normais e sob encomenda. Quando amáscara é normal, a facilidade pode calcular as permissõescomo descrito acima. Um usuário pode especificar uma máscaranormal máxima. Como um exemplo, um usuário pode especificaruma máscara máxima de "compartilhamento". Quando esse é ocaso, a facilidade pode aplicar permissões de visualização ecompartilhamento, mas não permissões totais porque permis-sões totais excedem as permissões de compartilhamento. Quan-do a máscara é sob encomenda, a facilidade pode aplicar umamáscara sob encomenda que é especificada por um usuário.
Em várias modalidades, a...fac.ilidad.e_ modifica __aspermissões do sistema operacional indicadas para um arquivo,tal como um arquivo contendo um item de informação. Como umexemplo, a facilidade pode modificar as permissões do siste-ma operacional para um arquivo quando uma coleção de quadrode avisos contendo um item de informação correspondendo como arquivo é compartilhada com um receptor que não tem privi-légios de leitura para o arquivo.Em várias modalidades, a facilidade pode mudar aspermissões "dentro da faixa" ou as permissões podem mudar"fora da faixa", tal como por um outro aplicativo ou manual-mente por um usuário. Como um exemplo de uma mudança "dentroda faixa", as permissões para uma coleção de quadro de avi-sos, item de informação ou arquivo podem mudar quando umacoleção de quadro de avisos é compartilhada com os recepto-res. Como um exemplo de uma mudança "fora da faixa", um usu-ário pode mudar as permissões para um item de informação u-sando um componente ou comando do sistema operacional. Quan-do qualquer um ocorre, a facilidade pode recalcular as per-missões para as coleções de quadro de avisos ou itens de in-formação .
Em várias modalidades, a facilidade pode acompa-nhar os itens para os quais ela já tem ACPs recalculadas. Aseguir, quando um laço ou uma recursão faz com que a facili-dade novamente visite um item, a facilidade não precisa no-vamente recalcular ACPs para o item visitado novamente.
A Figura 14 é um diagrama de fluxo ilustrando umarotina de monitor_changes que é utilizada pela facilidade emvárias modalidades para -monitorar- as mudanças nos itens deinformação. Em várias modalidades, a facilidade utiliza arotina de monitor_changes para detectar mudanças em itens deinformação, tal como mudanças de conteúdo ou mudanças depermissões. A rotina começa no bloco 1402.
No bloco 1404, a rotina determina se quaisquer i-tens de informação mudaram desde a última invocação da roti-na. A rotina pode acompanhar as mudanças de conteúdo, mudan-ças de permissões ou outras mudanças. Se tal é o caso, a ro-tina continua no bloco 1406. De outra maneira, a rotina con-tinua no bloco 1408 onde ela retorna.
No bloco 1406, a rotina registra as mudanças nositens de informação. Como um exemplo, a rotina pode regis-trar as mudanças em um banco de dados de mudanças. Em váriasmodalidades, a rotina pode registrar uma indicação que umitem de informação mudou, mas não a mudança real.
No bloco 1408, a rotina retorna.
Em várias modalidades, a rotina de monitor_changesé executada por um dispositivo de computação fonte. Um dis-positivo de computação fonte é um dispositivo que propagamudanças para outros dispositivos de computação. Como um e-xemplo, um dispositivo de computação fonte duplica as mudan-ças para outros dispositivos de computação.
Em várias modalidades, processos adicionais podemser empreendidos com base nas mudanças no conteúdo ou per-missões dos itens de informação. Como um exemplo, um aplica-tivo de fluxo de trabalho poderia ser desenvolvido para cri-ar uma tarefa indicando que o usuário X deve rever o docu-mento ._quandg_ permissões em um item de informação mudam parahabilitar o usuário X a ver o item de informação. Assim, afacilidade descreve uma arquitetura genérica para construiraplicativos com base nas mudanças de monitoramento, tal comomudanças de permissão.
Em várias modalidades, os atributos dos itens deinformação podem se propagar em uma maneira similar às ACPs.Como um exemplo, um atributo de informação de bloqueio deversão pode propagar (ou herdar), de modo que quando um usu-ário "bloqueia" uma coleção de quadro de avisos, o bloqueiopoderia se aplicar a todos os itens de informação contidosna coleção de quadro de avisos bloqueada e quaisquer outrascoleções de quadro de avisos que ela contém. Quando um blo-queio é aplicado em uma coleção de quadro de avisos, a faci-lidade pode substituir URLs (ou outras ligações) identifi-cando itens de informação, de modo que a seleção da URL car-regaria, por exemplo, uma versão do item de informação cor-respondendo com a versão que estava disponível quando a co-leção de quadro de avisos foi bloqueada. Em um tal caso, afacilidade pode criar uma "versão bloqueada" e prover a URL.Esse bloqueio pode ocorrer recursivamente para todos os i-tens de informação nas coleções de quadro de aviso contidaspela coleção de quadro de avisos bloqueada.
A Figura 15 é um diagrama de fluxo ilustrando umarotina de duplicação que é usada pela facilidade em váriasmodalidades para duplicar mudanças. A facilidade pode execu-tar a rotina de tempos em tempos para duplicar mudanças deum dispositivo de computação fonte para outros dispositivosde computação, tais como servidores ou clientes. A rotinacomeça no bloco 1502.
Entre os blocos 1504 e 1510, a rotina duplica ositens de informação. No bloco 1504, a rotina seleciona umitem de informação que foi alterado. Como um exemplo, a ro-tina pode selecionar o item de informação do registro que écriado pela rotina de monitor_changes da Figura 14.
No bloco 1506, a rotina determina se é possivelduplicar somente atualizações do item de informação altera-do. Como um exemplo, alguns documentos podem armazenar revi-sões ou atualizações feitas nos documentos. Quando esse é ocaso, pode ser eficiente duplicar somente as atualizações aoinvés de todo o documento. Se é possivel duplicar somenteatualizações, a rotina continua no bloco 1508. De outra ma-neira, a rotina continua no bloco 1514.
No bloco 1508, a rotina duplica atualizações. Comoum exemplo, a rotina pode prover a atualização para um outrodispositivo de computação.
No bloco 1510, a rotina seleciona um outro item deinformação. Se todos os itens de informação foram processa-dos, a rotina continua no bloco 1512 onde ela retorna. Deoutra forma, a rotina continua no bloco 1506.
No bloco 1514, a rotina duplica o item de informa-ção. Como um exemplo, a rotina pode prover o item de infor-mação para um outro dispositivo de computação.
Em várias modalidades, o dispositivo de computaçãopara o qual os itens de informação ou atualizações são du-plicados pode agrupar as atualizações. Como um exemplo, odispositivo de computação .pode. receber uma ._s.éri.e de a.tuali-_zações ou itens de informação antes de atualizar a sua cópialocal. Em várias modalidades, o dispositivo de computaçãoque recebe as atualizações ou os itens de informação podeenviar as atualizações ou itens de informação para outrosdispositivos de computação. Como um exemplo, com a detecçãoque um item de informação é compartilhado com um usuárioparticular, o dispositivo de computação pode enviar o itemde informação para um servidor correspondendo com esse usuário.
Dispositivos de computação podem compartilhar atu-alizações como updategrams de XML. Os updategrams provêemindicações de atualizações nas mensagens de XML.
A facilidade pode executar a duplicação, por exem-plo, enviando os updategrams, usando vários protocolos. Comoum exemplo, a facilidade pode usar o protocolo HTTP com umavariação de um protocolo de autoria e versão distribuído("DAV") para habilitar a duplicação. A facilidade detecta seo usuário está "dentro" ou "fora" de uma barreira de prote-ção verificando a conexão de rede do dispositivo de computa-ção. Com base em se o dispositivo de computação está dentroou fora da barreira de proteção, o dispositivo de computaçãodetermina quais URLs usar. Como um exemplo, quando o dispo-sitivo de computação está dentro da barreira de proteção, aURL pode fazer referência aos nomes do servidor local, talcomo http://internalserver/share. Quando o dispositivo decomputação está fora da barreira de proteção, a URL pode fa-zer referência a um domínio da Internet, tal comohttp: //www. comp.any.name. c.om/share.
A Figura 16 é um diagrama de blocos ilustrandocomponentes para e aspectos do uso da facilidade de múlti-plos provedores de pesquisa. Em várias modalidades, a faci-1idade utiliza um registro de ações de mudança do sistemaoperacional 1602. Como um exemplo, uma modalidade do sistemaconfigurado para usar o sistema operacional MICROSOFTWINDOWS pode usar um "registro de ações de mudança NT". Umregistro de ações de mudança do sistema operacional registramudanças em arquivos e outros objetos do sistema operacio-nal. Pela utilização do registro de ações de mudança, a fa-cilidade é capaz de detectar mudanças em arquivos, coleçõesde quadro de avisos, itens de informação, etc.
A facilidade então propaga as indicações das mu-danças para vários Índices. Como exemplos, a facilidade podepropagar mudanças para documentos em um índice de texto1604, mudanças em esquemas usados pela facilidade para umíndice de metadados 1606, mudanças de localizações de docu-mentos para um índice de coleções de quadro de avisos 1608(por exemplo, para fixar ligações quando os documentos sãomovidos), mudanças em ACPs para um índice de controle de a-cesso 1610 e mudanças relacionadas com as localizações dosarquivos para um índice de resolução de URL 1612. Em váriasmodalidades, um mecanismo de duplicação (não mostrado) podeduplicar mudanças do registro de ações de mudança para umdispositivo de computação em uma rede 1614, tal como um ser-vidor, de modo que a informação pode ser mantida atualizadaatravés das redes.
Como e quando a informação dos índices é necessá-ria, ou em vários outros momentos, a facilidade intercala ainformação contida ou indicada pelos índices para criar re-sultados 1616. Pela combinação dessa informação com a infor-mação provida pelos provedores de pesquisa, a facilidadecria resultados de pesquisa. Como um exemplo, a facilidadepode intercalar a informação contida ou indicada pelos índi-ces com a informação provida por um provedor de pesquisa deRSS 1618, provedor de pesquisa da rede 1620 ou um ou maisprovedores de pesquisa de terceiros 1622. A facilidade podeutilizar vários protocolos de comunicações para se comunicarcom RSS, rede ou outros provedores de pesquisa.
A facilidade pode armazenar os resultados da pes-quisa em um formato normalizado, tal como em um formato in-terno ou RSS.
Em várias modalidades, a facilidade transforma osresultados da pesquisa aplicando uma transformação 1624. Atransformação pode criar qualquer um de um número de tiposde documentos, tal como um documento HTML 1626.
A Figura 17 é um diagrama de blocos ilustrando vá-rios componentes utilizados pela facilidade. Em várias moda-lidades, esses componentes podem ser usados sozinhos ou con-juntamente para fazer uso de alguns recursos da facilidade.A facilidade pode também utilizar componentes adicionais quenão são ilustrados nem descritos aqui.
Para habilitar os aplicativos usando a facilidadea carregar ou manipular uma ampla variedade de informações,um componente de acesso de dados unificado 1702 funciona comos dados armazenados em fontes de dados diferentes e tendotipos de dados diferentes. O componente unificado de acessodos dados é extensível em uma tal maneira que ele pode fun-cionar com fontes e tipos de dados adicionais.
Um componente de agregação de consulta 1704 combi-na resultados de consulta de fontes diferentes para criar umresultado unificado. 0 componente de agregação de consultafunciona com múltiplos protocolos de consulta e respostassincronas ou assincronas e pode prover extratos em um forma-to interno com base nos resultados.
Um componente do Índice relacionai 1706 constróiÍndices relacionais com base nos itens de informação. Os ín-dices habilitam aplicativos ou usuários a executar consultascompletas de texto nos dados indexados, dessa maneira habi-litando o uso de ligações de chegada e ligações relaciona-das. Uma ligação de chegada é uma ligação identificando umacoleção de quadro de avisos para a qual um item é atribuído.
Um mecanismo de controle de acesso 1708 cria umgráfico de fluxo de controle de acesso com base em um bancode dados (por exemplo, um banco de dados que armazena ACPspara coleções de quadro de avisos e itens de informação) eacompanha e atualiza as ACPs com base no gráfico de fluxo decontrole de acesso criado. Esse componente habilita a faci-lidade a prover um modelo de usuário colaborador rico esta-belecendo ou restaurando permissões sobre coleções de quadrode avisos e itens de informação, de modo que usuários apro-priados podem ver, modificar e compartilhar informação.
Uma estrutura de visualização e autoria 1710 gerainterfaces de usuário a partir dos resultados de pesquisa ehabilita a edição. Como um exemplo, a estrutura de visuali-zação e autoria pode criar uma interface do usuário trans-formando os extratos combinados usando XSL. A interface dousuário pode ter regiões de texto para receber anotações.
Um componente de duplicação 1712 habilita a faci-lidade a prover capacidades totais fora de conexão e em co-nexão. Ele habilita a duplicação entre servidores e entreclientes e servidores. Como um exemplo, ele pode duplicarcoleções de quadro de avisos e itens de informação entre osservidores de modo que os usuários de dominios diferentespodem acessar a informação. O componente de duplicação podeduplicar coleções de quadro de avisos e itens de informaçãoentre servidores e clientes para habilitar um usuário a vertotalmente a informação quando o cliente está desconectadodo servidor. Como um exemplo, um usuário pode indicar paratornar várias coleções de quadro de aviso disponíveis forade conexão. Quando isso é feito, os itens de informação a-tribuidos e as coleções de quadro de avisos (e os itens deinformação atribuídos para essas coleções de quadro de avi-sos) podem também ficar disponíveis fora de conexão. Os re-sultados das pesquisas do banco de dados, e-mails ou outrositens de informação podem também ficar disponíveis fora deconexão em uma maneira estática. Quando fazendo a duplica-ção, o componente de duplicação garante que ACPs sejam apro-priadamente cumpridas. Quando o cliente é reconectado noservidor, o componente de duplicação pode sincronizar as a-tualizações fora de conexão com o servidor, tal como anota-ções feitas enquanto fora de conexão.
Como pode ser facilmente verificado, a facilidadecombina capacidade de endereçamento do e-mail com facilidadede navegação dos navegadores da Internet e simplicidade depesquisa para habilitar a troca de informação. A facilidadehabilita os usuários a criarem redes de informação pessoaisque podem ser atualizadas e pesquisadas e que compreendemcoleções de quadro de avisos contendo ligações para itens deinformação. Essas coleções de quadro de avisos e itens deinformação podem ser anotados e compartilhados em uma manei-ra segura.
Em várias modalidades, a facilidade habilita apesquisa através de vários tipos de dados (por exemplo, e-mail, bancos de dados, sistemas de arquivo, etc.) e fontesde dados (Internet, intranet, dispositivos de computaçãopessoal, etc.) usando vários termos, incluindo habilitandomúltiplas pesquisas para localizar um item de informação es-pecifico.
A facilidade também habilita itens de informação ecoleções de quadro de avisos (por exemplo, qualquer documen-to) a ser facilmente localizados sem fazer referência a umalocalização particular. Um usuário pode prover alguma infor-mação relacionada com a informação sendo pesquisada, taiscomo uma URL, nome, descrição, conteúdo, etc. e a facilidaderapidamente localiza e recupera a informação, contanto que ousuário tenha permissões suficientes para ver a informação.A facilidade também habilita o usuário a compartilhar a in-formação com outros quando o usuário tem permissões sufici-entes- para fazer isso.
Em várias modalidades, a facilidade prove a capa-cidade de determinar ligações para trás e para frente em co-leções de quadro de avisos. Como um exemplo, a facilidadepode determinar para quais coleções de quadro de aviso umitem de informação particular é atribuído. A facilidade écapaz de determinar essas relações com base em um banco dedados que a facilidade utiliza para acompanhar as coleçõesde quadro de avisos e os itens de informação.
Em várias modalidades, um agente de segundo planonotifica criadores ou receptores das coleções de quadro deavisos que os itens de informação que correspondem com asconsultas usadas para criar as coleções de quadro de avisosforam modificados ou adicionados. Os criadores ou receptorespodem então opcionalmente modificar a coleção de quadro deavisos para incluir o item de informação modificado ou adi-cionado. Nessas modalidades, o agente de segundo plano podeexecutar consultas armazenadas intermitentemente. Alternati-vamente, o agente de segundo plano pode receber eventos re-lacionados com mudanças em itens de informação. 0 agente desegundo plano pode então notificar criadores, receptores ouambos, tal como pelo envio de uma mensagem de e-mail.
Em várias modalidades, a facilidade invoca váriasações quando ela detecta que um item de informação ou ACPsrelacionadas com um item de informação ou coleção de quadrode aviso mudam. Como um exemplo, com a detecção que uma co-leção de quadro de avisos é compartilhada com um usuáriopertencente a um grupo particular de usuários, a facilidadeinvoca um aplicativo de Iluxo de trabalho que exige que umusuário gerente aprove o compartilhamento. A facilidade écapaz de detectar mudanças no conteúdo e ACPs usando váriosmétodos. Como exemplos, a facilidade pode se inscrever comum sistema operacional para receber notificações de mudançaou pode se associar a um diário de mudança do sistema opera-cional. Quando ela detecta mudanças, a facilidade invoca oscomponentes do fluxo de trabalho que estão inscritos com afacilidade.
Em várias modalidades, a facilidade constrói um oumais Índices dos itens de informação, coleções de quadro deavisos e permissões. Os índices habilitam a facilidade a en-contrar itens de informação tendo um conjunto especificadode permissões. Como um exemplo, os índices habilitam a faci-lidade a encontrar todos os itens de informação que foramcompartilhados com um dado usuário.
Em várias modalidades, a facilidade habilita a in-tegração da pesquisa com uma tela de autoria de documentos.Nessas modalidades, um usuário de um aplicativo de autoriapode executar uma pesquisa usando provedores de pesquisa fo-ra do contexto do aplicativo e embutir de maneira rápida efácil os resultados da pesquisa dentro de um documento sendocriado com o aplicativo. Assim, por exemplo, um usuário deum documento de processamento de texto ou planilha pode exe-cutar uma pesquisa usando uma ação única e adicionar os re-sultados da pesquisa no documento ou planilha que o usuárioestá criando.
Em várias modalidades, a facilidade pode ser es-endida usando a duplicação. Como um exemplo, a facilidadepode duplicar coleções de quadro de avisos e seus dados bá-sicos para múltiplos servidores, tal como servidores locali-zados em múltiplos domínios na Internet. Quando as coleçõesde quadro de avisos e seus dados básicos são duplicados, osusuários de um domínio não precisam acessar servidores de umoutro domínio para compartilhar ou receber as coleções dequadro de avisos.Em várias modalidades, a facilidade descobre pro-vedores de pesquisa automaticamente quando pesquisando usan-do critérios de pesquisa providos por um criador ou receptore, opcionalmente, instala o provedor de pesquisa automatica-mente. A informação localizada usando os critérios de pes-quisa identifica de onde e como instalar o provedor de pes-quisa.
Em várias modalidades, a facilidade funciona comuma variedade de tipos de documentos que podem ser conside-rados como "contêineres". Um contêiner é um documento quecontém outros documentos ou referências para outros documen-tos. Exemplos de contêineres incluem, por exemplo, listas deexecução de midia, arquivos de instalação contendo outrosarquivos e instruções para instalar os outros arquivos em umsistema de computação e assim por diante. Pelo fato de queos contêineres são similares às coleções de quadro de avi-sos, a facilidade trabalha com qualquer tipo de contêiner.
Um usuário pode controlar o acesso aos arquivos no contêinermanipulando as permissões no contêiner. Como um exemplo,quando um usuário indica que um receptor deve ter acesso devisualização a um contêiner, a facilidade também_provê aces-so de visualização para todos os arquivos contidos ou indi-cados pelo contêiner. Além do mais, quando um contêiner con-tém outros contêineres, a facilidade pode aplicar recursiva-mente as permissões nos arquivos indicados pelos contêinerescontidos. Além do mais, pelo fato de que a facilidade habi-lita terceiros a estender a facilidade provendo lógica indi-cada por um item de informação que está contido por um con-têiner, a facilidade pode reconhecer automaticamente forma-tos de arquivo adicionais dos arquivos contidos pelos con-têineres. Em várias modalidades, a facilidade pode habilitarum usuário a indicar itens de informação específicos dosquais uma coleção de quadro de avisos (por exemplo, um con-têiner) é para herdar as permissões.
Em várias modalidades, a facilidade habilita umusuário a criar um "portal pessoal" com base nos itens deinformação e coleções de quadro de avisos disponíveis para ousuário. Como um exemplo, o usuário pode indicar que uma co-leção de quadro de avisos está disponível para uso remoto.Quando uma coleção de quadro de avisos está habilitada parauso remoto, o usuário pode acessar o portal pessoal a partirde um dispositivo de computação remoto em uma maneira simi-lar ao uso de MICROSOFT OUTLOOK WEB ACCESS para remotamenteacessar o e-mail armazenado em um MICROSOFT EXCHANGE SERVER.
Em várias modalidades, a facilidade prove um mode-lo genérico para gerar Índices relacionais com base nos do-cumentos. Os índices relacionais, em conjunto com os índicesde texto completos construídos pelos provedores de pesquisa,habilitam a facilidade a gerar e manter dados que são extra-ídos de esquemas variados que representam informação simi-lar. Como um exemplo, a facilidade constrói um índice de li-gação usando informação derivada de qualquer tipo de docu-mento que é uma coleção de ligações, tais como painéis, lis-tas de execução, arquivos html, arquivos de desenvolvimentoe assim por diante. A facilidade pode utilizar o índice daligação para criar as ligações de chegada e ligações rela-cionadas descritas acima, tal como pela determinação de re-lações dos documentos. Esse modelo genérico pode ser tambémusado para gerar outros Índices sob encomenda, tais como ta-belas de informação de contato ou tabelas de configuração deaplicativo. As tabelas de informação de contato podem serusadas, por exemplo, para preencher um servidor de protocolode acesso de diretório leve ou criar uma lista de contatoscom base nos documentos compartilhados. As tabelas de confi-guração de aplicativo podem ser usadas, por exemplo, paracriar um repositório de configuração do aplicativo que umrecurso do sistema operacional pode usar para adicionar ouremover programas de software.
Em várias modalidades, a facilidade combina a ca-pacidade de endereçamento do e-mail, facilidade de navegaçãode um navegador da Internet e simplicidade de pesquisa paracriar coleções de informação que podem ser compartilhadas,atualizadas e utilizadas para colaboração. A colaboração po-de ser iniciada e controlada definindo permissões de contro-le de acesso relacionadas com itens de informação.
Como é evidente a partir da descrição provida aci-ma, .a facilidade habilita, um criador a construir uma coleçãode quadro de avisos (por exemplo, um portal) com pesquisacomo uma metáfora de navegação primária. Ao contrário dossistemas hospedados convencionais, a facilidade habilita oportal a existir sem ponto de entrada. Isto é, um receptornão precisa da localização do portal ou até mesmo precisaestar ciente que um portal particular existe para ser capazde vê-lo. A facilidade cria e gerencia portais organicamen-te, já que os itens de informação e as coleções de quadro deavisos contidos pelo portal podem ser adicionados, removidosou modificados facilmente. Novamente ao contrário dos siste-mas hospedados convencionais, um administrador não é neces-sário para indicar quais usuários devem ter acesso e quaisusuários não devem.
A facilidade também habilita um conceito conhecidocomo uma "caixa de compartilhamento". Uma caixa de comparti-lhamento contém uma ou mais coleções de quadro de avisos ehabilita o seu usuário a controlar quais dados de uma cole-ção de quadro de avisos são exibidos, organizados ou influ-enciados. Um usuário pode indicar que algumas coleções dequadro de avisos devem exibir itens de informação enquantooutras coleções de quadro de avisos devem somente ser lista-das em uma condição "fechada". O usuário então seria capazde expandir uma coleção de quadro de avisos fechada para e-xibir os seus conteúdos. Um usuário pode organizar uma caixade compartilhamento indicando áreas que contêm coleções dequadro de avisos ou itens de informação tendo atributos es-pecifiçados. Como um exemplo, uma caixa de compartilhamentopode ter um área que exibe todas as coleções de quadro deavisos compartilhadas durante um quadro de tempo especifica-do, uma outra área que exibe coleções de quadro de avisoscompartilhadas com um usuário particular e assim por diante.
Em algumas modalidades, a facilidade pode usar um projeto deinterface de usuário "AJAX" com caixas de compartilhamento.AJAX define uma arquitetura para definir as interfaces dousuário fazendo uso de um mecanismo AJAX que se comunica comum servidor e dinamicamente atualiza uma interface do usuá-rio. 0 usuário pode adotar várias ações nas coleções de qua-dro de avisos exibidas em uma caixa de compartilhamento. Co-mo exemplos, o usuário pode responder para uma coleção dequadro de avisos compartilhada, compartilhar uma coleção dequadro de avisos recebida ou criada com outros usuários, re-mover uma coleção de quadro de avisos, indicar permissõespara as coleções de quadro de avisos e assim por diante.
Alguém versado na técnica pode prontamente verifi-car que a facilidade descrita acima pode ser estendida emvárias maneiras. Como um exemplo, a facilidade pode criar umindice em vários tipos de informações contidas nos itens deinformação, tal como informação do contato e prover uma APIou interface do usuário para acessar os dados através de umaplicativo ou serviço (por exemplo, um aplicativo de conta-tos compartilhado ou um servidor de protocolo de acesso dediretório leve). Em algumas modalidades, a facilidade é a-daptável para . prover uma interface do usuário para um talaplicativo.
Em várias modalidades, a facilidade utiliza umsistema de arquivos para armazenar itens de informação e ou-tros objetos. Nessas modalidades, um sistema operacional bá-sico notifica a facilidade quando esses itens de informaçãoou objetos mudam (por exemplo, quando eles são modificados,criados, deletados e assim por diante). A facilidade cria egerencia um índice associado com os itens de informação eobjetos e, quando ela recebe essas notificações do sistemaoperacional, modifica o índice de acordo. Outros aplicativose serviços podem utilizar o indice e os itens ou objetos deinformação básicos. Como um exemplo, um programa de clientesde troca de mensagens (por exemplo, MICROSOFT OUTLOOK) podeser capaz de utilizar arquivos localizados no sistema de ar-quivo para compor ou rever e-mail. Pelo armazenamento dasmensagens de e-mail (ou itens de informação e objetos, emgeral), nos arquivos, a facilidade habilita o uso fora deconexão.
Em várias modalidades, a facilidade cria um localúnico para consulta para toda a informação que é "comparti-lhada" com um usuário. Isso habilita o programa de facilida-de a construir novos Índices nos mesmos dados compartilhadose expor interfaces de aplicativo para recuperar os dados emmaneiras significativas.
A facilidade pode também ser facilmente estendidapara criar outros "servidores" específicos do aplicativo pa-ra empresas. Como um exemplo, a facilidade pode criar umservidor de repositório de software, provedor de diretório eassim por diante. Um servidor de repositório de software ar-mazenaria vários aplicativos de software, atualizações dele,etc. Quando o_usuário_utiliza um componente de sistema ope-racional para adicionar ou instalar um programa, a facilida-de poderia facilmente determinar se o usuário tem ACPs sufi-cientes para instalar o programa ou atualizar e a seguirprover o programa ou atualização para o componente do siste-ma operacional para instalação. Um administrador (ou outrousuário com privilégios suficientes) pode compartilhar o a-plicativo com o usuário que necessita do aplicativo ou atua-lização. O provedor de diretório pode armazenar, por exem-plo, a informação relacionada com impressoras. Um adminis-trador ou usuário pode compartilhar uma impressora com umusuário que precisa de acesso a uma impressora. Quando o u-suário usa um componente do sistema operacional para adicio-nar uma impressora, a facilidade pode prover uma indicaçãoda impressora compartilhada.
Como um exemplo especifico, a facilidade pode serutilizada durante desenvolvimentos "escalonados" de softwareempresarial ou de negócios. Suponha que um contêiner conte-nha indicações dos arquivos que devem ser instalados nosdispositivos de computação dos usuários. Esse contêiner podeser compartilhado com classes de usuários (por exemplo, ado-tantes antigos, adotantes recentes, etc.) para escalonar odesenvolvimento do software para essas classes de usuário.
Uma rede de informação personalizavel pode ser al-ternativamente citada como uma rede de informação pessoal ourede de informação personalizada.
Embora várias modalidades sejam descritas em ter-mos do ambiente descrito acima, aqueles versados na técnica-verificarão que a facilidade pode ser implementada em umavariedade de outros ambientes incluindo um sistema de compu-tador monolítico único, bem como várias outras combinaçõesde sistema de computador ou dispositivos similares conecta-dos em várias maneiras.
Alguém versado na técnica verificará que a lógicaque os diagramas de fluxo ilustram e as descrições relacio-nadas que o relatório descritivo descreve podem ser altera-das em uma variedade de maneiras. Por exemplo, a ordem dosblocos pode ser reorganizada, lógica pode ser executada emparalelo, alguma lógica pode ser omitida ou outra lógica po-de ser adicionada, etc.
Embora algumas Figuras e suas descrições ilustremtabelas cujos conteúdos e organização são projetados paratorná-los mais abrangente por um leitor humano, aqueles ver-sados na técnica verificarão que as.estruturas de dados re-ais usadas pela facilidade para armazenar informação podemdiferir das tabelas mostradas, por exemplo, em que elas po-dem ser organizadas em uma maneira diferente, podem contermais ou menos informação do que mostrado, podem ser compri-midas e/ou criptografadas, etc.
Embora interfaces de usuário sejam ilustradas comalguns elementos de interface do usuário, aqueles versadosna técnica verificarão que os elementos de interface do usu-ário podem ser reorganizados, elementos de interface do usu-ário adicionais podem ser adicionados ou elementos de inter-face do usuário podem ser eliminados. Aqueles versados natécnica também verificarão que vários elementos de interfacedo uSuário podem, ser substituídos por um outro sem afetarmaterialmente a funcionalidade da facilidade.
Aqueles versados na técnica verificarão que a fa-cilidade acima descrita pode ser adaptada de maneira diretaou estendida em várias maneiras. Por exemplo, a facilidadepode utilizar vários provedores de indexação ou pesquisa.
Esses provedores de indexação ou pesquisa podem operar em umcomputador de mesa do usuário ou em um dispositivo de compu-tação remoto, tal como um servidor. A facilidade pode operarcom vários tipos de informação, tais como documentos, diá-rios de rede ("blogs"), páginas de rede, dados de váriasfontes, imagens, multimídia e assim por diante. Embora adescrição precedente faça referência a modalidades particu-lares, o escopo da invenção é definido somente pelas reivin-dicações que seguem e os elementos recitados nela.

Claims (183)

1. Método executado por um dispositivo de computa-ção para criar uma coleção de quadro de avisos compartilhá-vel, CARACTERIZADO pelo fato de que compreende:receber uma indicação de uma consulta, a consultadefinindo um termo para pesquisa;utilizar um provedor de pesquisa para executar umapesquisa por um item de informação correspondendo com crité-rios, os critérios para a pesquisa com base na consulta,receber do provedor de pesquisa uma indicação deum resultado correspondendo com a consulta, o resultado ge-rado pelo provedor de pesquisa enquanto executando a pesqui-sa e identificando o item da informação,criar uma coleção de quadro de avisos compartilhá-vel, a coleção de quadro de avisos compartilhável para con-ter uma indicação de um item de informação,receber através de uma ação única uma indicaçãopara adicionar o resultado na coleção de quadro de avisoscompartilhável ecompartilhar a coleção de quadro de avisos compar-tilhável com um receptor, o compartilhamento incluindo envi-ar uma indicação da coleção do quadro de avisos compartilhá-vel criado para o receptor.
2. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que inclui utilizar múltiplosprovedores de pesquisa para executar uma pesquisa por itensde informação com base na consulta.
3. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que inclui transformar o resulta-do em uma forma interna.
4. Método, de acordo com a reivindicação 3,CARACTERIZADO pelo fato de que a forma interna é RSS.
5. Método, de acordo com a reivindicação 3,CARACTERIZADO pelo fato de que a transformação inclui criarum extrato do resultado.
6. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o compartilhamento inclui in-dicar o receptor.
7. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o compartilhamento inclui in-dicar um privilégio de acesso.
8. Método, de acordo com a reivindicação 7,CARACTERIZADO pelo fato de que o privilégio de acesso se re-fere à coleção de quadro de avisos compartilhável.
9. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que inclui receber múltiplos re-sultados e adicionar pelo menos um subconjunto dos múltiplosresultados recebidos na coleção de quadro de avisos compar-tilhável criada.
10. Método, de acordo com a reivindicação 9,CARACTERIZADO pelo fato de que múltiplos extratos são criados.
11. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que inclui adicionar uma anotaçãoassociada com um item de informação.
12. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o compartilhamento faz comque permissões de controle de acesso sejam estabelecidas so-bre itens de informação da coleção do quadro de avisos.
13. Método executado por um dispositivo de compu-tação para possibilitar a colaboração, CARACTERIZADO pelofato de que compreende:criar uma coleção tendo uma indicação de um itemde informação,receber uma indicação de um usuário com o qual acoleção e o item de informação devem ser compartilhados ecompartilhar a coleção e o item de informação como usuário onde o compartilhamento inclui garantir que o usu-ário tenha permissões de controle de acesso suficientes.
14. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que o compartilhamento inclui du-plicar o item de informação para um servidor associado com ousuário.
15. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que o compartilhamento inclui es-tabelecer uma permissão de controle de acesso no item de in-formação .
16. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que a permissão do controle deacesso é indicada pela permissão de controle de acesso nacoleção.
17. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que também compreende adicionarum resultado de uma pesquisa na coleção.
18. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que a adição é executada atravésde uma ação única.
19. Método, de acordo com a reivindicação 18,CARACTERIZADO pelo fato de que a ação única é a atribuição.
20. Método, de acordo com a reivindicação 18,CARACTERIZADO pelo fato de que a ação única é selecionar umcomando de menu.
21. Método, de acordo com a reivindicação 18,CARACTERIZADO pelo fato de que a ação única é selecionar umbotão da barra de ferramentas.
22. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que a coleção compartilhada podeser recuperada sem indicar uma localização para a coleção.
23. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que a garantia inclui determinarse o usuário pode acessar o item de informação.
24. Método, de. acordo com a reivindicação 23,CARACTERIZADO pelo fato de que quando o usuário não pode a-cessar o item da informação porque o item da informação estáinacessível através do dispositivo de computação do usuário,a garantia inclui duplicar o item de informação para um ser-vidor associado com o usuário.
25. Método, de acordo com a reivindicação 23,CARACTERIZADO pelo fato de que também compreende propagar osprivilégios de controle de acesso da coleção para o item deinformação quando o usuário não pode acessar o item de in-formação porque o usuário tem privilégios insuficientes decontrole de acesso.
26. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que um dispositivo de computaçãode cliente do usuário transforma a coleção e seus itens deinformação em forma legivel pelos humanos.
27. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que a coleção é criada com a exe-cução de uma pesquisa.
28. Método, de acordo com a reivindicação 27,CARACTERIZADO pelo fato de que a pesquisa inclui pesquisarum armazenamento de um dispositivo de computação de cliente.
29. Método, de acordo com a reivindicação 27,CARACTERIZADO pelo fato de que a pesquisa inclui pesquisardispositivos de computação conectados em uma rede.
30. Método, de acordo com a reivindicação 29,CARACTERIZADO pelo fato de que a rede é a Internet.
31. Método, de acordo com a reivindicação 29,CARACTERIZADO pelo fato de que a rede é uma Intranet.
32. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que também compreende duplicar oitem .de informação para um dispositivo de computação de cliente.
33. Método, de acordo com a reivindicação 32,CARACTERIZADO pelo fato de que o item de informação ficadisponível para o usuário quando o dispositivo de computaçãode cliente é desconectado de uma rede.
34. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que também compreende prover oitem de informação para o usuário através de um dispositivode computação remoto.
35. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que a coleção pode ser atualizadadepois que ela é compartilhada.
36. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que o usuário é um primeiro usuá-rio e um segundo usuário pode ser indicado depois de compar-tilhar a coleção com o primeiro usuário, por meio do que am-bos o primeiro e o segundo usuários acessam a coleção e oitem de informação.
37. Meio legivel por computador tendo instruçõesexecutáveis por computador para executar um método de com-partilhamento de informação, o método sendo CARACTERIZADOpelo fato de que compreende:receber uma coleção compreendendo um item de in-formação,receber uma indicação feita através de uma açãoúnica para compartilhar a coleção ecompartilhar a coleção, onde o compartilhamentoinclui—prover acesso para a coleção e seu_item de informaçãomanipulando uma permissão de controle de acesso relacionadacom a coleção e seu item de informação.
38. Meio legivel por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que o comparti-lhamento inclui selecionar um receptor com o qual comparti-lhar a coleção.
39. Meio legivel por computador, de acordo com areivindicação 38, CARACTERIZADO pelo fato de que também com-preende indicar uma permissão de controle de acesso para oreceptor.
40. Meio legível por computador, de acordo com areivindicação 39, CARACTERIZADO pelo fato de que o receptorpode compartilhar a coleção quando a permissão de controlede acesso permite o compartilhamento.
41. Meio legivel por computador, de acordo com areivindicação 40, CARACTERIZADO pelo fato de que o receptorpode responder provendo uma anotação para um criador quecriou a coleção.
42. Meio legivel por computador, de acordo com areivindicação 40, CARACTERIZADO pelo fato de que um criadorque criou a coleção compartilha a coleção com múltiplos usu-ários e o receptor pode responder provendo para o criador eos múltiplos usuários a anotação relacionada com a coleçãoou um item de informação da coleção.
43. Meio legivel por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que a coleçãopode ser manipulada por um receptor da coleção compartilhada.
44. Meio legivel por computador, de acordo com areivindicação 43, CARACTERIZADO pelo fato de que a manipula-ção é para adicionar um item de informação.
45. Meio legivel por computador, de acordo com areivindicação 43, CARACTERIZADO pelo fato de que a manipula-ção é para remover um item de informação.
46. Meio legivel por computador, de acordo com areivindicação 43, CARACTERIZADO pelo fato de que a manipula-ção é para adicionar um receptor.
47. Meio legível por computador, de acordo com areivindicação 43, CARACTERIZADO pelo fato de que um criadorque compartilhou a coleção pode aceitar ou rejeitar a manipulação.
48. Meio legível por computador, de acordo com areivindicação 47, CARACTERIZADO pelo fato de que a aceitaçãoou rejeição é automática.
49. Meio legível por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que a coleção éuma primeira coleção e a primeira coleção contém uma indica-ção de uma segunda coleção que foi atribuída para a primeiracoleção.
50. Meio legível por computador, de acordo com areivindicação 49, CARACTERIZADO pelo fato de que os privilé-gios de controle de acesso da primeira coleção são aplicadosna segunda coleção.
51. Meio legível por computador, de acordo com areivindicação 50, CARACTERIZADO pelo fato de que os privilé-gios de controle de acesso da primeira coleção são aplicadosnos itens de informação atribuídos para a segunda coleção.
52. Meio legível por computador, de acordo com areivindicação 50, CARACTERIZADO pelo fato de que a relaçãode controle de acesso é propagar.
53. Meio legível por computador, de acordo com areivindicação 4 9, CARACTERIZADO pelo fato de que a relaçãode controle de acesso é herdar, e os privilégios de controlede acesso da segunda coleção são aplicados na primeira coleção.
54. Meio legivel por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que a coleção érecebida depois de completar uma pesquisa e onde a pesquisaé executada por um provedor de pesquisa.
55. Meio legivel por computador, de acordo com areivindicação 54, CARACTERIZADO pelo fato de que a pesquisaé executada por um provedor de pesquisa dinamicamente adi-cionado.
56. Meio legivel por computador, de acordo com areivindicação 54, CARACTERIZADO pelo fato de que um subcon-junto dos múltiplos provedores de pesquisa pode ser selecio-nado para executar a pesquisa.
57. Meio legivel por computador, de acordo com areivindicação 54, CARACTERIZADO pelo fato de que um provedorde pesquisa pode indicar provedores de pesquisa adicionaispara utilizar para a pesquisa.
58. Meio legivel por computador, de acordo com areivindicação 54, CARACTERIZADO pelo fato de que um provedorde pesquisa pode ser automaticamente selecionado para a pes-quisa com base em uma consulta usada para a pesquisa.
59. Meio legivel por computador, de acordo com areivindicação 54, CARACTERIZADO pelo fato de que um provedorde pesquisa pode ser compartilhado com um usuário.
60. Meio legivel por computador, de acordo com areivindicação 54, CARACTERIZADO pelo fato de que os resulta-dos dos múltiplos provedores de pesquisa são providos em umavista unificada.
61. Meio legivel por computador, de acordo com areivindicação 60, CARACTERIZADO pelo fato de que a vista u-nificada inclui tipos diferentes de itens de informação e umcomponente correspondendo com cada tipo de item de informa-ção é utilizado para gerar uma vista para o item de informação.
62. Meio legivel por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que a coleção érecebida depois de completar uma pesquisa com base em umaconsulta com um conjunto de termos de consulta e a recepçãoinclui receber indicações de um subconjunto dos termos daconsulta.
63. Meio legivel por computador, de acordo com areivindicação 62, CARACTERIZADO pelo fato de que os itens deinformação localizados pela pesquisa são providos somente seeles correspondem com o subconjunto indicado de termos daconsulta.
64. Meio legivel por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que inclui veruma coleção atualizada, a coleção atualizada incluindo a co-leção compartilhada e respostas relacionadas com um dos múl-tiplos itens de informação.
65. Meio legivel por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que a coleçãocompartilhada é adicionada em uma caixa de compartilhamento.
66. Meio legivel por computador, de acordo com areivindicação 65, CARACTERIZADO pelo fato de que os múlti-pios itens de informação são exibidos.
67. Meio legivel por computador, de acordo com areivindicação 65, CARACTERIZADO pelo fato de que a caixa decompartilhamento organiza a informação que ela exibe com ba-se nos atributos associados com a coleção.
68. Meio legivel por computador, de acordo com areivindicação 37, CARACTERIZADO pelo fato de que também com-preende colocar a coleção em uma caixa de compartilhamento ereceber uma indicação de uma ação a adotar na coleção.
69. Meio legivel por computador tendo instruçõesexecutáveis por computador para executar um método de com-partilhamento de informação, o método sendo CARACTERIZADOpelo fato de que compreende:receber uma coleção compreendendo um item de in-formação,receber uma indicação para compartilhar a coleçãocom um outro usuário ecompartilhar a coleção, onde o compartilhamentoinclui prover acesso para a coleção e seu item de informação.
70. Meio legivel por computador, de acordo com areivindicação 69, CARACTERIZADO pelo fato de que também com-preende receber uma anotação relacionada com o item de in-formação.
71. Meio legivel por computador, de acordo com areivindicação 70, CARACTERIZADO pelo fato de que o comparti-lhamento inclui receber uma consulta de pesquisa do outrousuário também onde a consulta de pesquisa contém um termode pesquisa associado cora a anotação.
72. Método executado por um dispositivo de compu-tação para computar permissões a aplicar em um documento,CARACTERIZADO pelo fato de que compreende:receber uma indicação de uma coleção e um documen-to a ser adicionado na coleção onde a coleção compreende in-dicações de documentos e outras coleções ecomputar permissões a aplicar no documento combi-nando permissões explicitamente definidas para o documentocom permissões relacionadas com a coleção.
73. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que a relação entre a coleção e odocumento indica para propagar as permissões.
74. Método, de acordo com a reivindicação 73,CARACTERIZADO pelo fato de que as permissões são propagadascom base em uma consulta.
75. Método, de acordo com a reivindicação 74,CARACTERIZADO pelo fato de que a coleção é computada dinami-camente com base nas permissões propagadas.
76. Método, de acordo com a reivindicação 74,CARACTERIZADO pelo fato de que a consulta define um documen-to contendo um termo de pesquisa.
77. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que as permissões relacionadascom a coleção são baseadas em permissões relacionadas comitens com os quais a coleção tem uma relação de herança, ositens compreendendo coleções e documentos.
78. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que o documento não tem permis-sões explícitas antes que ele seja atribuído para a coleçãodo documento, a atribuição indicando uma relação entre o do-cumento e a coleção de documento.
79. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que um documento contido pela co-leção é uma outra coleção.
80. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que a coleção é uma coleção dequadro de avisos e os documentos contidos pela coleção sãoitens de informação.
81. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que também compreende determinarse a coleção é uma coleção de nível superior, onde uma cole-ção é de nível superior quando ela não é contida por uma outra coleção.
82. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que inclui computar permissõespara uma coleção quando um aspecto da coleção muda.
83. Método, de acordo com a reivindicação 82,CARACTERIZADO pelo fato de que o aspecto é uma adição de umitem atribuído para a coleção.
84. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que também compreende monitorarmudanças na coleção e, quando as permissões relacionadas coma coleção mudam, computar permissões a aplicar em documentosassociados com a coleção.
85. Método, de acordo com a reivindicação 84,CARACTERIZADO pelo fato de que inclui duplicar mudanças parapermissões relacionadas com a coleção quando as permissõesrelacionadas com a coleção mudam.
86. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que as permissões podem fluir dacoleção para o documento ou do documento para a coleção.
87. Método, de acordo com a reivindicação 8 6,CARACTERIZADO pelo fato de que também compreende criar umgráfico de fluxo de permissão.
88. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que também compreende comparti-lhar a coleção com um usuário.
89. Método, de acordo com a reivindicação 88,CARACTERIZADO pelo fato de que as permissões são aplicadasna coleção compartilhada em relação ao usuário.
90. Método, de acordo com a reivindicação 89,CARACTERIZADO pelo fato de que as permissões aplicadas nacoleção compartilhada em relação ao usuário são diferentesdas permissões disponíveis para um usuário que compartilhoua coleção.
91. Método, de acordo com a reivindicação 72,CARACTERIZADO pelo fato de que também compreende receber umaindicação de um usuário com o qual compartilhar a coleção eaplicar as permissões computadas no documento.
92. Meio legível por computador tendo instruçõesexecutáveis por computador para executar um método de apli-cação de permissões de controle de acesso, o método sendoCARACTERIZADO pelo fato de que compreende:receber uma indicação de um item para o qual modi-ficar as permissões de controle de acesso,determinar um conjunto de itens relacionados com oitem indicado,caching um conjunto de relações entre o item indi-cado e o conjunto determinado de itens,computar as permissões de controle de acesso parao item indicado eaplicar as permissões de controle de acesso compu-tadas no item indicado quando as permissões de controle deacesso computadas são diferentes das permissões de controlede acesso realmente aplicadas no item indicado.
93. Meio legivel por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que o item in-dicado é uma coleção de quadro de avisos.
94. Meio legivel por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que o item in-dicado é um item de informação.
95. Meio legivel por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que as relaçõessão colocadas em cache em um banco de dados.
96. Meio legivel por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que a computa-ção compreende:recuperar permissões de controle de acesso expli-citamente definidas para o item indicado,determinar um conjunto de itens que propagam per-missões de controle de acesso para o item indicado,determinar um conjunto de itens do qual o item in-dicado herda permissões de controle de acesso eexecutar uma operação lógica "ou" entre as permis-sões de controle de acesso explicitamente definidas para oitem indicado, as permissões de controle de acesso de cadaum do conjunto de itens que propagam as permissões de con-trole de acesso para o item indicado e as permissões de con-trole de acesso de cada um do conjunto de itens do qual oitem indicado herda as permissões de controle de acesso.
97. Método, de acordo com a reivindicação 96,CARACTERIZADO pelo fato de que também compreende computarnovamente as permissões de controle de acesso para um doconjunto determinado de itens para o qual o item indicadopropaga as permissões de controle de acesso.
98. Meio legível por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que a computa-ção inclui recuperar um conjunto de permissões de controlede acesso de um banco de dados.
99. Meio legível por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que o item in-dicado é uma coleção de quadro de avisos e um item do con-junto determinado de itens é um item de informação.
100. Meio legivel por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que o item in-dicado é uma lista de execução contendo as indicações de ar-quivos de multimídia.
101. Meio legivel por computador, de acordo com areivindicação 92, CARACTERIZADO pelo fato de que o item in-dicado é um arquivo de instalação e um item do conjunto de-terminado de itens é um arquivo que é para ser instalado.
102. Sistema para propagar permissões,CARACTERIZADO pelo fato de que compreende:um banco de dados que armazena uma associação en-tre permissões, usuários e objetos,um componente de permissões que detecta que aspermissões relacionadas com um objeto mudaram, computa per-missões para outros objetos associados com o objeto cujaspermissões mudaram e restaura as permissões relacionadas comos outros objetos com base nas permissões computadas eum componente de duplicação que duplica os objetospara servidores associados com usuários com os quais os ob-jetos são compartilhados.
103. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que o objeto cujas permissões mu-daram é um item de informação que é atribuído para uma cole-ção do quadro de avisos e os outros objetos cujas permissõessão restauradas são itens de informação que são atribuídospara a coleção do quadro de avisos.
104. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que os objetos são arquivos em umsistema de arquivos.
105. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que os objetos são mensagens decorreio eletrônico.
106. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que os objetos são armazenados emura banco de dados.
107. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que as limitações de controle deacesso podem ser colocadas nos objetos.
108. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que o banco de dados é associadocom um banco de dados que armazena informação relacionadacom uma coleção de quadro de avisos e itens de informação.
109. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que um componente de duplicaçãoseleciona objetos para duplicação quando uma permissão rela-cionada com o objeto muda.
110. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que o componente de permissõestambém detecta que um objeto foi desprendido de um objeto decontêiner e computa novamente as permissões para o objeto.
111. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que dois objetos têm uma relaçãoentre si e as mudanças de permissões em um objeto são auto-maticamente aplicadas no outro objeto.
112. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que ambos os objetos herdam per-missões um do outro.
113. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que quando o componente de per-missões muda as permissões para um objeto, um componente defluxo de trabalho adota uma ação relacionada com o fluxo detrabalho.
114. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo fato de que o componente de duplicaçãoduplica os objetos para um servidor que está conectado atra-vés de uma barreira de proteção em um servidor que armazenaos objetos.
115. Sistema, de acordo com a reivindicação 102,CARACTERIZADO pelo - fato de que quando um objeto é duplicadopara um servidor, permissões relacionadas com esse objetosão também duplicadas para o servidor.
116. Meio legivel por computador tendo instruçõesexecutáveis por computador para a execução de um método depropagação de atributos, o método sendo CARACTERIZADO pelofato de que compreende:receber uma indicação de uma coleção de quadro deavisos para a qual modificar um atributo,determinar um conjunto de itens de informação ecoleções de quadro de aviso relacionadas com a coleção dequadro de avisos indicada,caching um conjunto de relações entre a coleção doquadro de avisos indicada e o conjunto determinado de itensde informação e coleções de quadro de avisos,aplicar o atributo nos itens de informação no con-junto eexecutar recursivamente o método para cada coleçãode quadro de avisos no conjunto.
117. Meio legivel por computador de acordo com areivindicação 116, CARACTERIZADO pelo fato de que o atributoé um atributo de bloqueio de versão.
118. Método executado por um dispositivo de compu-tação para possibilitar a colaboração entre usuários,CARACTERIZADO pelo fato de que compreende:receber de um primeiro usuário uma indicação de umitem de informação a ser compartilhado com um segundo usuá-rio, o item de informação associado com uma coleção de qua-dro de avisos,receber do primeiro usuário uma indicação do se-gundo usuário,determinar um dispositivo de computação de servi-dor associado com o segundo usuário equando o dispositivo de computação de servidor queestá associado com o segundo usuário não está também associ-ado com o primeiro usuário, duplicar o item de informaçãoindicado para o dispositivo de computação de servidor deter-minado.
119. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que a indicação da informação éprovida usando uma ação única.
120. Método, de acordo com a reivindicação 119,CARACTERIZADO pelo fato de que a ação única é atribuir o i-tem de informação para a coleção do quadro de avisos.
121. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que a indicação do segundo usuá-rio é provida usando uma ação única.
122. Método, de acordo com a reivindicação 121,CARACTERIZADO pelo fato de que a ação única está indicandopara compartilhar uma coleção de quadro de avisos no qual oitem de informação é atribuído.
123. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que o item de informação é asso-ciado com um portal hospedado quando ele é compartilhado.
124. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que inclui pesquisar itens de in-formação correspondendo com um termo de pesquisa provido pe-lo primeiro usuário.
125. Método, de acordo com a reivindicação 124,CARACTERIZADO pelo fato de que a pesquisa inclui utilizarmúltiplos provedores de pesquisa.
126. Método, de acordo com a reivindicação 125,CARACTERIZADO pelo fato de que os provedores de pesquisa in-cluem pelo menos um provedor de pesquisa do dispositivo decomputação de cliente.
127. Método, de acordo com a reivindicação 126,CARACTERIZADO pelo fato de que um usuário pode criar um por-tal pessoal utilizando o provedor de pesquisa do dispositivode computação de cliente para localizar itens de informação.
128. Método, de acordo com a reivindicação 126,CARACTERIZADO pelo. .fato de que um usuário pode localizar i-tens de informação armazenados em um dispositivo de computa-ção de cliente mesmo quando utilizando um outro dispositivode computação de cliente.
129. Método, de acordo com a reivindicação 128,CARACTERIZADO pelo fato de que o outro dispositivo de compu-tação de cliente se conecta no dispositivo de computação decliente no qual os itens de informação são armazenados atra-vés de uma barreira de proteção.
130. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que inclui duplicar o item de in-formação indicado para um dispositivo de computação de cli-ente.
131. Método, de acordo com a reivindicação 130,CARACTERIZADO pelo fato de que um usuário pode interagir como item de informação indicado fora de conexão.
132. Método, de acordo com a reivindicação 131,CARACTERIZADO pelo fato de que a interação é similar à ma-neira na qual o usuário pode interagir com o item de infor-mação que está armazenado em um dispositivo de computação deservidor.
133. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que o item de informação é asso-ciado com um encadeamento de conversação.
134. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que quando uma anotação associadacom o item de informação é atualizada por um usuário depoisque o item de informação foi compartilhado com o segundo u-suário, a duplicação inclui duplicar a anotação.
135. Método, de acordo com a reivindicação 118,CARACTERIZADO pelo fato de que o item de informação compar-tilhado é associado com uma coleção do quadro de avisos quecompreende outros itens de informação e anotações associadascom o item de informação compartilhado e os outros itens deinformação juntos definem um encadeamento de conversação.
136. Método, de acordo com a reivindicação 135,CARACTERIZADO pelo fato de que o item de informação compar-tilhado aparece em múltiplas coleções de quadro de avisos.
137. Método, de acordo com a reivindicação 136,CARACTERIZADO pelo fato de que quando o item de informação écompartilhado com um terceiro usuário e o terceiro usuáriopode interagir com o item de informação.
138. Método, de acordo com - a reivindicação 137,CARACTERIZADO pelo fato de que múltiplos itens de informaçãosão compartilhados e o terceiro usuário pode interagir comtodos os itens de informação.
139. Método, de acordo com a reivindicação 138,CARACTERIZADO pelo fato de que os múltiplos itens de infor-mação formam um encadeamento de conversação e o terceiro u-suário pode adotar uma ação sobre todo o encadeamento deconversação.
140. Meio legível por computador tendo instruçõesexecutáveis por computador para executar um método de unifi-cação dos dados de múltiplas fontes de dados, o método sendoCARACTERIZADO pelo fato de que compreende:recuperar um item de informação de uma fonte dedados,coletar dados do item de informação,transformar os dados em uma forma interna earmazenar os dados transformados em um banco dedados.
141. Meio legivel por computador de acordo com areivindicação 14 0, CARACTERIZADO pelo fato de que tambémcompreende especificar permissões de controle de acesso parao item de informação.
142. Meio legivel por computador de acordo com areivindicação 14 0, CARACTERIZADO pelo fato de que tambémcompreende pesquisar itens de informação armazenados na fon-te de dados.
143. Meio legivel por computador de acordo com areivindicação 140, CARACTERIZADO pelo fato de que os dadosincluem atributos do item de informação.
144. Meio legivel por computador de acordo com areivindicação 143, CARACTERIZADO pelo fato de que o item deinformação é uma mensagem de correio eletrônico e os atribu-tos incluem informação de cabeçalho contida na mensagem decorreio eletrônico.
145. Meio legivel por computador de acordo com areivindicação 140, CARACTERIZADO pelo fato de que o item deinformação é um documento e os atributos incluem um titulodo documento.
146. Meio legivel por computador de acordo com areivindicação 14 0, CARACTERIZADO pelo fato de que tambémcompreende construir um indice relacionai nos dados trans-formados.
147. Meio legível por computador de acordo com areivindicação 14 6, CARACTERIZADO pelo fato de que o índicerelacionai pode ser usado com um índice de texto completoconstruído pela fonte de dados para criar uma ligação de re-torno onde a ligação de retorno refere-se a um item de in-formação para uma coleção do quadro de avisos.
148. Meio legível por computador de acordo com areivindicação 147, CARACTERIZADO pelo fato de que o indicerelacionai pode ser usado com um indice de texto completoconstruído pela fonte de dados para criar uma ligação paraum item de informação relacionado.
149. Sistema para a criação de uma rede de infor-mação pessoal, CARACTERIZADO pelo fato de que compreende:um componente de pesquisa que encontra itens deinformação em resposta a uma solicitação de um usuário parapesquisar itens de informação correspondendo com um termo depesquisa,um componente de coleção que recebe de um usuárioas indicações dos itens de informação encontrados para adi-cionar em uma coleção e adiciona os itens de informação in-dicados em uma coleção eum componente de permissões que calcula as permis-sões de controle de acesso para aplicar em um item de infor-mação quando o item de informação é adicionado na coleção.
150. Método executado por um dispositivo de compu-tação para criar uma coleção de quadro de avisos comparti-lhável, CARACTERIZADO pelo fato de que compreende:receber de um usuário uma seleção de um ou maisprovedores de pesquisa, cada um dos provedores de pesquisapara pesquisar uma fonte de informação,utilizar o selecionado um ou mais provedores depesquisa para executar uma pesquisa por itens de informaçãocorrespondendo com critérios especificados pelo usuário ereceber uma indicação dos itens de informação lo-calizados pelo selecionado um ou mais provedores de pesqui-sa, cada item de informação localizado indicando um resultado.
151. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que inclui utilizar múltiplosprovedores de pesquisa para executar simultaneamente umapesquisa por itens de informação com base na consulta.
152. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que inclui transformar o resulta-do em uma forma interna.
153. Método, de acordo com a reivindicação 152,CARACTERIZADO pelo fato de que a forma interna é RSS.
154. Método, de acordo com a reivindicação 152,CARACTERIZADO pelo fato de que a transformação inclui criarum extrato do resultado.
155. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que a recepção inclui receber umaindicação de uma única ação executada por um usuário.
156. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que a utilização inclui recuperarinformação do selecionado um ou mais provedores de pesquisarelacionada com como utilizar o provedor de pesquisa.
157. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que a informação inclui uma in-terface do programa aplicativo.
158. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que um dos provedores de pesquisaé um provedor de pesquisa de terceiros que é indicado em umacoleção de quadro de avisos compartilhável.
159. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que também compreende criar a co-leção do quadro de avisos compreendendo pelo menos os itensde informação indicados.
160. Método, de acordo com a reivindicação 159,CARACTERIZADO pelo fato de que a coleção do quadro de avisosindica ligações entre a coleção do quadro de avisos e os i-tens de informação indicados.
161. Método, de acordo com a reivindicação 160,CARACTERIZADO pelo fato de que também compreende armazenaruma ligação associando os itens de informação indicados coma coleção do quadro de avisos.
162. Método, de acordo com a reivindicação 161,CARACTERIZADO pelo fato de que também compreende recuperaroutras coleções de quadro de avisos com as quais os itens deinformação indicados são associados.
163. Método, de acordo com a reivindicação 150,CARACTERIZADO pelo fato de que também compreende adicionardinamicamente um provedor de pesquisa que pode ser selecio-nado pelo usuário.
164. Método, de acordo. com a reivindicação 150,CARACTERIZADO pelo fato de que também compreende filtrar ositens de informação.
165. Meio legivel por computador tendo instruçõesexecutáveis por computador para executar um método de cria-ção de uma coleção de quadro de avisos compartilhável, o mé-todo sendo CARACTERIZADO pelo fato de que compreende: ,utilizar múltiplos provedores de pesquisa para e-xecutar uma pesquisa por itens de informação que correspon-dem com critérios especificados por um usuário,intercalar resultados providos pelos provedores depesquisa em uma forma interna eprover uma indicação dos resultados intercaladospara um usuário.
166. Meio legível por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que incluitransformar os resultados intercalados antes de prover a in-dicação dos resultados intercalados para um usuário.
167. Meio legível por computador, de acordo com areivindicação 166, CARACTERIZADO pelo fato de que a trans-formação inclui criar um documento HTML.
168. Meio legível por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que inclui re-ceber uma indicação para atribuir alguns dos resultados in-tercalados .
169. Meio legível por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que a formainterna é RSS.
170. Meio legível por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que inclui u-tilizar uma descrição de provedor que é indicada por um pro-vedor de pesquisa.
171. Meio legível por computador, de acordo com areivindicação 170, CARACTERIZADO pelo fato de que a descri-ção do provedor é uma interface do programa aplicativo.
172. Meio legível por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que o resulta-do intercalado contém uma ligação de retorno onde a ligaçãode retorno é uma indicação de uma coleção de quadro de avi-sos previamente armazenada que também contém um dos resultados.
173. Meio legível por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que a interca-lação inclui sobrepor um resultado onde a sobreposição in-clui combinar resultados de múltiplos provedores de pesquisae remover atributos duplicados para prover um resultado in-dividual que tem atributos únicos de alguns dos múltiplosprovedores de pesquisa.
174. Meio legivel por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que um resul-tado indica um provedor de pesquisa.
175. Meio legivel por computador, de acordo com areivindicação 174, CARACTERIZADO pelo fato de que tambémcompreende registrar dinamicamente o provedor de pesquisa eutilizar o provedor de pesquisa para executar a pesquisa.
176. Meio legivel por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que pelo menosdois provedores de pesquisa provêem tipos diferentes de re-sultados, cada tipo de resultado visível usando um componen-te de visualização diferente.
177. Meio legivel por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que os resul-tados intercalados são sobrepostos com resultados de uma se-gunda pesquisa.
178. Meio legivel por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que tambémcompreende transformar os resultados da forma interna em umaforma que é provida para o usuário.
179. Meio legivel por computador, de acordo com areivindicação 165, CARACTERIZADO pelo fato de que uma loca-lização é especificada para um item de informação e onde alocalização identifica um ponto dentro do item de informação.
180. Meio legivel por computador, de acordo com areivindicação 179, CARACTERIZADO pelo fato de que a locali-zação é especificada usando um identificador âncora marcador.
181. Meio legivel por computador, de acordo com areivindicação 179, CARACTERIZADO pelo fato de que o item deinformação é atribuído para uma coleção de quadro de avisos.
182. Meio legivel por computador, de acordo com areivindicação 181, CARACTERIZADO pelo fato de que a coleçãode quadro de avisos tem uma anotação associada com o item deinformação atribuído.
183. Meio legivel por computador, de acordo com areivindicação 181, CARACTERIZADO pelo fato de que uma outracoleção do quadro de avisos tem uma anotação relacionada como item de informação atribuído.
BRPI0610742-7A 2005-05-19 2006-05-04 redes de informação personalizáveis BRPI0610742A2 (pt)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US68328205P 2005-05-19 2005-05-19
US60/683,282 2005-05-19
US71158005P 2005-08-25 2005-08-25
US60/711,580 2005-08-25
US11/334,008 US20060265396A1 (en) 2005-05-19 2006-01-17 Personalizable information networks
US11/333,980 US20060265377A1 (en) 2005-05-19 2006-01-17 Personalizable information networks
US11/333,985 US20060265395A1 (en) 2005-05-19 2006-01-17 Personalizable information networks
US11/334,008 2006-01-17
US11/333,978 US20060265394A1 (en) 2005-05-19 2006-01-17 Personalizable information networks
US11/333,978 2006-01-17
US11/333,985 2006-01-17
US11/333,980 2006-01-17
PCT/US2006/016781 WO2006124268A2 (en) 2005-05-19 2006-05-04 Personalizable information networks

Publications (1)

Publication Number Publication Date
BRPI0610742A2 true BRPI0610742A2 (pt) 2010-07-20

Family

ID=37431777

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0610742-7A BRPI0610742A2 (pt) 2005-05-19 2006-05-04 redes de informação personalizáveis

Country Status (5)

Country Link
EP (1) EP1891551A2 (pt)
JP (1) JP2008541296A (pt)
KR (1) KR20080009107A (pt)
BR (1) BRPI0610742A2 (pt)
WO (1) WO2006124268A2 (pt)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101487205B1 (ko) 2007-07-13 2015-01-30 삼성전자 주식회사 미디어 서버 내의 컨텐츠를 제공하는 장치, 시스템 및 그방법
KR101553848B1 (ko) * 2014-02-17 2015-09-17 네이버 주식회사 검색 결과를 제공하는 방법 및 상기 방법을 수행하는 시스템
US10073881B2 (en) 2015-07-21 2018-09-11 Autodesk, Inc. Platform for authoring, storing, and searching workflows

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06250946A (ja) * 1993-02-22 1994-09-09 Matsushita Electric Ind Co Ltd 分散型電子掲示板装置
JP3943824B2 (ja) * 2000-10-31 2007-07-11 株式会社東芝 情報管理方法および情報管理装置
US20020103867A1 (en) * 2001-01-29 2002-08-01 Theo Schilter Method and system for matching and exchanging unsorted messages via a communications network
US7757162B2 (en) * 2003-03-31 2010-07-13 Ricoh Co. Ltd. Document collection manipulation

Also Published As

Publication number Publication date
KR20080009107A (ko) 2008-01-24
WO2006124268A2 (en) 2006-11-23
EP1891551A2 (en) 2008-02-27
WO2006124268A3 (en) 2009-04-16
JP2008541296A (ja) 2008-11-20

Similar Documents

Publication Publication Date Title
US20060265396A1 (en) Personalizable information networks
US20060265377A1 (en) Personalizable information networks
CN112654973B (zh) 跨平台集成云内容项的技术
US20060265394A1 (en) Personalizable information networks
US11074396B2 (en) Animating edits to documents
US11113463B2 (en) Note browser
US7865873B1 (en) Browser-based system and method for defining and manipulating expressions
US7930629B2 (en) Consolidating local and remote taxonomies
US6562076B2 (en) Extending application behavior through active properties attached to a document in a document management system
US20170357731A1 (en) Taxonomy driven commerce site
US20100262624A1 (en) Discovery of inaccessible computer resources
US20050108293A1 (en) Method and apparatus for matter-centric document management
US20040267746A1 (en) User interface for controlling access to computer objects
US20030237051A1 (en) Clustering related files in a document management system
US20060265395A1 (en) Personalizable information networks
US20060184571A1 (en) Hierarchical management of object schema and behavior
JP2013509625A (ja) ポータルのためのユーザ定義のプロファイル・タグ、ルール、および推奨
US20210350303A1 (en) Task list for tasks created at a third-party source
US10152538B2 (en) Suggested search based on a content item
KR101821832B1 (ko) 정보 관리
BRPI0610742A2 (pt) redes de informação personalizáveis
US7475091B2 (en) System and method for viewing a virtual content repository
Banks et al. The ePerson snippet manager: a semantic web application
Zekri et al. Temporal schema versioning in τOWL: a systematic approach for the management of time-varying knowledge
US20160103848A1 (en) Collaborative and personalized storage and search in hierarchical abstract data organization systems

Legal Events

Date Code Title Description
B08F Application fees: dismissal - article 86 of industrial property law

Free format text: REFERENTE AS 5A E 6A ANUIDADES.

B08K Lapse as no evidence of payment of the annual fee has been furnished to inpi (acc. art. 87)

Free format text: NAO APRESENTADA A GUIA DE CUMPRIMENTO DE EXIGENCIA. REFERENTE AS 5A E 6A ANUIDADES.