DE112015003826T5 - Bereitstellen von automatischen Aktionen für mobile Bildschirminhalte - Google Patents

Bereitstellen von automatischen Aktionen für mobile Bildschirminhalte Download PDF

Info

Publication number
DE112015003826T5
DE112015003826T5 DE112015003826.4T DE112015003826T DE112015003826T5 DE 112015003826 T5 DE112015003826 T5 DE 112015003826T5 DE 112015003826 T DE112015003826 T DE 112015003826T DE 112015003826 T5 DE112015003826 T5 DE 112015003826T5
Authority
DE
Germany
Prior art keywords
entity
action
contact
entities
data store
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
DE112015003826.4T
Other languages
English (en)
Inventor
David Marcin
Rajan Patel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE112015003826T5 publication Critical patent/DE112015003826T5/de
Pending legal-status Critical Current

Links

Images

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/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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/903Querying
    • 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/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)

Abstract

Implementierungen bieten eine Schnittstelle zum Einleiten die sich auf Inhalte beziehen, die der Benutzer auf einem mobilen Gerät betrachtet. Ein Verfahren beinhaltet das Durchführen einer Erkennung für Inhalte, die von einer Anzeige eines mobilen Geräts erfasst werden und eine Vielzahl von Entitäten in dem Inhalt identifizieren. Das Verfahren beinhaltet auch Ausgeben einer Abfrage für jede der Vielzahl von Entitäten, das Einstufen der Vielzahl von Entitäten basierend auf den für die jeweiligen Suchergebnisse, das Erzeugen einer Aktionskarte für zumindest einige der am höchsten eingereihten Entitäten und das Bereitstellen der Aktionskarten zur Anzeige auf dem mobilen Gerät. Alternativ oder zusätzlich kann das Verfahren das Ermitteln mindestens eines Kontakts in einem Kontaktdatenspeicher, der einer Entität entspricht, und Erzeugen einer Aktionskarte für die Entität beinhalten, wobei die Aktionskarte eine erste Aktion aufweist, die erste Informationen aus dem Kontaktdatenspeicher und eine zweite Aktion verwendet, die zweite Informationen aus dem Kontaktdatenspeicher verwendet.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung beansprucht die Priorität und ist eine Fortsetzung der vorläufigen US-Patentanmeldung Nr. 14/465,265, eingereicht am 21. August 2014 mit dem Titel „BEREITSTELLEN VON AUTOMATISCHEN AKTIONEN FÜR MOBILE BILDSCHIRMINHALTE”, die hierin durch Bezugnahme in ihrer Gesamtheit aufgenommen ist.
  • HINTERGRUND
  • Die Nutzung von mobilen Geräten wie Smartphones und Tablets hat zugenommen. Aber das Navigieren zwischen Anwendungen in einer mobilen Umgebung kann mühsam sein, da mobile Anwendungen im Allgemeinen spezifische Funktionen ausführen und nicht konventionell zusammenwirken. Darüber hinaus können sich mobile Anwendungen erheblich von den angebotenen Funktionen unterscheiden, und aufgrund der begrenzten Bildschirmgröße und der begrenzten Verwendung von externen Eingabegeräten kann die Navigation fehleranfällig und relativ zeitaufwendig sein.
  • KURZDARSTELLUNG
  • Implementierungen stellen eine Schnittstelle bereit, die es einem Benutzer eines mobilen Geräts ermöglicht, schnell und einfach verschiedene Aktionen auszuführen, die sich auf Inhalte beziehen, die der Benutzer gegenwärtig auf dem mobilen Gerät betrachtet. So kann beispielsweise das System Entitäten in einem Bildschirm identifizieren, die auf einem mobilen Gerät angezeigt werden und eine Schnittstelle zum Einleiten von Aktionen für jede Entität sowie Oberflächen-Snippets von Informationen über die Entitäten bereitstellen. Die Entitäten können Personen, Orte oder Dinge in einer Wissensbasis beinhalten, beispielsweise den Wissensgraphen, oder sie können Kontakte in einem Datenspeicher sein, der lokal für das mobile Gerät oder fern, aber mit dem Benutzer verknüpft ist. Das System kann die Entitäten in einen Rang einreihen, um diejenigen zu ermitteln, die für den Benutzer am relevantesten sind, und eine Aktionskarte mit vorgeschlagenen Aktionen für die am meisten relevanten eingereihten Entitäten erzeugen. Die in der Aktionskarte angebotenen Aktionen, und alle Informationen, die in der Aktionskarte für eine Entität angezeigt werden, können von den Suchergebnissen für die Entität abhängen.
  • Gemäß bestimmten Aspekten der Offenbarung beinhaltet ein Verfahren das Durchführen einer Erkennung auf Inhalte, die von einer Anzeige eines mobilen Geräts erfasst werden, Identifizieren einer Vielzahl von Entitäten in dem Inhalt und Ausgeben einer jeweiligen Abfrage für jede der Vielzahl von Entitäten. Das Verfahren beinhaltet auch das Einreihen einer Vielzahl von Entitäten basierend auf den für die jeweiligen Abfragen zurückgegebenen Suchergebnisse, Erzeugen einer entsprechenden Aktionskarte für zumindest einige der am höchsten eingereihten Entitäten und Bereitstellen der Aktionskarten zur Anzeige für einen Benutzer des mobilen Geräts.
  • Gemäß einem anderen Aspekt umfasst ein System mindestens einen Prozessor; ein indiziertes Dokumentkorpus, einen graphischen Datenspeicher und Speicheranweisungen, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, das System veranlassen, Operationen durchzuführen. Die Operationen können das Durchführen einer Erkennung für Inhalte beinhalten, die von einer Anzeige eines mobilen Geräts erfasst werden und eine Vielzahl von Entitäten in dem Inhalt identifizieren. Für jede der Vielzahl von Entitäten können die Operationen auch das Ausgeben einer jeweiligen Abfrage zu einer Suchmaschine für die Entität beinhalten, wobei die Suchmaschine den graphischen Datenspeicher und den indizierten Dokumentenkorpus durchsucht, um Suchergebnisse für die Entität zu erzeugen. Die Operationen können ferner das Klassifizieren der mehreren Entitäten basierend auf den Suchergebnissen und das Bereitstellen der Mehrzahl von Entitäten mit entsprechenden Rang- und Suchergebnissen zu dem mobilen Gerät beinhalten, wobei das mobile Gerät Aktionskarten für zumindest einige der am höchsten eingestuften Entitäten erzeugt, die unter Verwendung der jeweiligen Suchergebnisse erzeugt werden.
  • In einem anderen Aspekt umfasst ein System einen Kontaktdatenspeicher, mindestens einen Prozessor und Speicher, die Befehle speichern, die, wenn sie von dem mindestens einen Prozessor ausgeführt werden, das System veranlassen, Operationen durchzuführen. Die Operationen können das Durchführen einer Erkennung eines Inhalts, der auf einer Anzeige eines mobilen Geräts angezeigt wird, Identifizieren einer Einheit in dem Inhalt, und Ermitteln wenigstens eines Kontakts in dem Kontaktdatenspeicher, der der Entität entspricht, beinhalten. Die Operationen können auch das Erzeugen einer Aktionskarte für die Entität beinhalten, wobei die Aktionskarte eine erste Aktion aufweist, die erste Informationen aus dem Kontaktdatenspeicher für den Kontakt und eine zweite Aktion verwendet, die zweite Informationen aus dem Kontaktdatenspeicher für den Kontakt verwendet und Anzeige der Aktionskarte auf dem Display.
  • In einem anderen Aspekt beinhaltet ein Computerprogrammprodukt, das auf einem computerlesbaren Speichermedium verkörpert ist, Anweisungen, die, wenn sie durch mindestens einen in einem Substrat gebildeten Prozessor ausgeführt werden, ein Computergerät veranlassen, jedes der offenbarten Verfahren, Operationen oder Prozesse durchzuführen, die hierin offenbart sind.
  • Eine oder mehrere der hierin beschriebenen Implementierungen des Gegenstandes können implementiert werden, um einen oder mehrere der folgenden Vorteile zu realisieren. Als ein Beispiel können Implementierungen eine Schnittstelle mit für den Benutzer nützlichen Aktionen bereitstellen, die eingeleitet werden können, ohne durch verschiedene Anwendungen und Bildschirme in einer mobilen Umgebung navigieren zu müssen. Somit können die Aktionen als automatisch betrachtet werden. Implementationen können die Schnittstelle unabhängig von der zugrundeliegenden Anwendung bereitstellen, z. B. über beliebige Schnittstellen, wobei dies die Möglichkeit bietet, auf dieselbe Funktionalität über alle mobilen Anwendungen, die auf dem Gerät ausgeführt werden, zuzugreifen. Implementierungen bieten die vorgeschlagenen Aktionen für Entitäten, die für den Benutzer von Interesse sein könnten, basierend auf dem zugrundeliegenden Inhalt. Die Aktionen sind sinnvoll, da sie für den zugrundeliegenden Kontext des Inhalts relevant sind. Mit anderen Worten sind die vorgeschlagenen Aktionen geeignet und basieren auf dem Typ des Inhalts. Eine Überprüfungsaktion ist zum Beispiel für einen Film oder ein Restaurant geeignet, aber nicht für eine Person. Ebenso eignet sich ein Aktionsaufruf für eine Person, aber nicht für einen Film. Die Aktionen können eine tiefe Verknüpfung zu einer bestimmten mobilen Anwendung darstellen, wodurch die Benutzerzeit und die Frustration gesenkt werden, was dem Benutzer Zeit und Frustration erspart, indem er die Anzahl der Benutzereingabebewegungen reduziert und wodurch das Potenzial für typografische Fehler bei der Durchführung der Aktion verringert wird. In einigen Fällen können die auf der Aktionskarte angezeigten Informationen die Notwendigkeit für den Benutzer ausschließen, zu einer anderen Anwendung zu navigieren, um die Informationen nachzuschlagen.
  • Die Einzelheiten von einer oder mehreren Implementierungen werden in den beigefügten Zeichnungen und der nachfolgenden Beschreibung dargelegt. Weitere Merkmale ergeben sich aus der Beschreibung und den Zeichnungen sowie den Ansprüchen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm eines exemplarischen Systems in Übereinstimmung mit dem offenbarten Gegenstand.
  • 2 veranschaulicht eine exemplarische Anzeige eines mobilen Computergeräts.
  • 3 stellt eine exemplarische Benutzerschnittstelle dar, die vorgeschlagene Aktionen vorsieht, die basierend auf der Anzeige in 2 erzeugt werden.
  • 4 veranschaulicht ein Flussdiagramm eines exemplarischen Prozesses zum Bereitstellen von Aktionskarten für mindestens einige Entitäten, die in dem Inhalt eines mobilen Bildschirms identifiziert wurden, gemäß den offenbarten Implementierungen.
  • 5 veranschaulicht ein Flussdiagramm eines exemplarischen Prozesses zum Ermitteln von Aktionen für Entitäten gemäß den offenbarten Implementierungen.
  • 6 veranschaulicht eine exemplarische Benutzerschnittstelle zum Auswählen von Standardaktionen in Übereinstimmung mit offenbarten Implementierungen.
  • 7 zeigt ein Beispiel eines Computergeräts, das zum Implementieren der beschriebenen Techniken verwendet werden kann.
  • 8 zeigt ein Beispiel eines verteilten Computergeräts, das zum Implementieren der beschriebenen Techniken verwendet werden kann.
  • In den unterschiedlichen Zeichnungen werden gleiche Bezugszeichen für gleiche Elemente verwendet.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 ist ein Blockdiagramm eines mobilen Aktionsvorschlagsystems gemäß einer exemplarischen Implementierung. Das System 100 kann verwendet werden, um vorgeschlagene Aktionen für Entitäten bereitzustellen, die im Inhalt eines auf einem Mobilgerät angezeigten Bildschirms identifiziert wurden. Eine Entität kann eine Person, ein Ort, ein Gegenstand, eine Idee, ein Thema, ein Wort, eine Phrase, ein abstraktes Konzept, ein konkretes Element, ein anderes geeignetes Ding oder eine Kombination davon sein. Die Darstellung des Systems 100 in 1 ist ein Client-Server-System, wobei einige Datenverarbeitungsvorgänge an einem Server 110 stattfinden. Es können jedoch auch andere Konfigurationen und Anwendungen verwendet werden. So kann beispielsweise das System 100 bei einigen Implementierungen nur das mobile Gerät 170 beinhalten und jeder Datenverarbeitungsvorgang kann ausschließlich auf dem mobilen Gerät 170 erfolgen. Bei einigen Implementierungen kann der Großteil der Verarbeitung auf dem Mobilgerät 170 durchgeführt werden, und der Server 110 kann verwendet werden, um Informationen bereitzustellen, z. B. über die Suchmaschine 107. Bei einigen Implementierungen kann ein Benutzer des mobilen Geräts 170 anzeigen, dass Teile der Verarbeitung an dem Server 110 ausgeführt werden. So kann beispielsweise ein Benutzer den Standort eines Kontaktdatenspeichers auf einem oder mehreren entfernten Servern bereitstellen, auf die durch das mobile Gerät 170 zugegriffen werden kann, um Kontaktentitäten zu identifizieren. Somit sind die Implementierungen nicht auf die genauen Konfigurationen beschränkt, wie in 1 veranschaulicht.
  • Das mobile Aktionsvorschlagsystem 100 kann ein mobiles Gerät 170 beinhalten. Das mobile Gerät 170 kann ein beliebiges mobiles Personalcomputergerät sein, wie beispielsweise ein Smartphone oder ein anderes Handheld-Computergerät, ein Tablet, ein tragbares Computergerät usw. das in einer geschlossenen mobilen Umgebung statt einer herkömmlichen offenen webbasierten Umgebung arbeitet. Das mobile Gerät 170 kann ein Beispiel des Computergeräts 700 sein, wie in 7 dargestellt. Das mobile Gerät 170 kann einen oder mehrere Prozessoren beinhalten, die in einem Substrat ausgebildet sind, das konfiguriert ist, um eine oder mehrere maschinenausführbare Anweisungen oder Teile einer Software, Firmware oder einer Kombination davon auszuführen. Das mobile Gerät 170 kann ein Betriebssystem (nicht gezeigt) und einen oder mehrere Computerspeicher beinhalten, die konfiguriert sind, um ein oder mehrere Datenbestände entweder vorübergehend, dauerhaft, halbpermanent oder in einer Kombination davon zu speichern. Das mobile Gerät 170 kann somit mobile Anwendungen beinhalten, einschließlich der automatischen Aktionsanwendung 175, die maschinenausführbaren Befehle in Form einer Software, einer Firmware oder einer Kombination daraus darstellt. Herkömmlich arbeiten mobile Anwendungen in einer geschlossenen Umgebung, was bedeutet, dass der Benutzer separate Anwendungen einsetzt, um Aktivitäten durchzuführen, die herkömmlicherweise in einer webbasierten Browserumgebung ausgeführt werden. Anstatt zum Beispiel auf hotels.com ein Hotel zu buchen oder opentable.com eine Reservierung vorzunehmen, kann ein Benutzer des mobilen Geräts 170 eine mobile Anwendung verwenden, die von hotels.com oder opentable.com bereitgestellt wird. Während die automatische Aktionsanwendung 175 als eine mobile Anwendung dargestellt ist, die auf dem mobilen Gerät 170 läuft, versteht es sich, dass eine oder mehrere der Komponenten, die in der automatischen Aktionsanwendung 175 identifiziert werden, Teil des Betriebssystems sein können. Bei einigen Implementierungen können alle Komponenten der automatischen Aktionsanwendung 175 Teil des Betriebssystems sein. Bei einigen Implementierungen können eine oder mehrere der Komponenten der automatischen Aktionsanwendung 175 auf dem Server 110 ausgeführt werden.
  • Die automatische Aktionsanwendung 175 kann Bildschirmaufzeichnungsmaschine 201 beinhalten. Die Bildschirmerfassungsmaschine 201 kann so konfiguriert sein, dass sie den aktuellen Bildschirm erfasst (z. B. durch Kopieren oder Lesen der Inhalte des Bildspeichers des Geräts). Die Bildschirmerfassungsmaschine 201 kann den aktuellen Bildschirm in Intervallen oder nach einem Befehl durch den Benutzer 180 des mobilen Geräts 170 erfassen. So kann beispielsweise der Benutzer eine Aktion ausführen, wie zum Beispiel ein Wischen nach oben, ein Wischen nach unten, ein diagonales Wischen, ein Zwei-Finger-Wischen usw. das die Bildschirmerfassungsmaschine 201 und die automatische Aktionsanwendung 175 initiiert. Alternativ kann die Bildschirmerfassungsmaschine 201 den Bildschirm in ein beliebiges Intervall erfassen, möglicherweise ein kleines Intervall, wie beispielsweise jede halbe Sekunde oder jede Sekunde, und die Benutzeraktion kann die automatische Aktionsanwendung 175 über die Aktion unter Verwendung des zuletzt erfassten Bildschirms einleiten. Bei einigen Implementierungen kann die Bildschirmerfassungsmaschine 201 den Bildschirm erfassen, indem sie die für den Bildschirm erzeugten Zugänglichkeitsdaten kopiert. So kann beispielsweise das Betriebssystem von einigen mobilen Geräten 170 eine Textdatei erzeugen, die den aktuellen Bildschirm beschreibt, beispielsweise um Personen mit einer Sehbehinderung zu unterstützen. Bei einigen Implementierungen kann die Bildschirmerfassungsmaschine 201 diese Textdatei zusätzlich zu oder anstelle der Information aus dem Bildspeicher verwenden, um den aktuellen Bildschirm zu erfassen. Somit wird unter Bezugnahme auf eine Bildschirmaufnahme, ein erfasster Bildschirm oder ein Bildschirminhalt als der Inhalt eines Bildspeichers, der Inhalt in einer Zugänglichkeitsdatei, oder beides verstanden. Bei einigen Implementierungen kann der Bildschirm ein Bildschirm sein, der zuvor auf dem mobilen Gerät erfasst wurde. So kann beispielsweise das mobile Gerät einen Agenten beinhalten, der mit Benutzerberechtigung den aktuellen Bildschirm in Intervallen erfasst und den Inhalt des Bildschirms indiziert, sodass der Benutzer nach einem zuvor erfassten Bildschirm suchen kann. Eine der Aktionen, die ein Benutzer auf einem zuvor erfassten Bildschirm ausführen könnte, ist das Erzeugen von Aktionen für Objekte für die auf dem Bildschirm identifizierten Entitäten.
  • Die Bildschirmerfassungsmaschine 201 kann den erfassten Bildschirminhalt und Metadaten für die Entitätsextraktionsmaschine 202 bereitstellen. Die Metadaten können den Zeitstempel, den mobilen Gerätetyp, einen Standort des mobilen Geräts, eine mobile Gerätekennung, die mobile Anwendung, die ausgeführt wird, wenn der Bildschirm erfasst wurde, oder die Anwendung, die den Bildschirm erzeugt hat, und andere Geräteinformationen, wie zum Beispiel welche Anwendungen aktiv waren, Umgebungslicht, Bewegung des Geräts usw. beinhalten. Die Metadaten können bei der Inhaltsanalyse (z. B. Entitäts-Disambiguierung) helfen und entscheiden, welcher Inhalt am relevantesten ist.
  • Die Entitätsextraktionsmaschine 202 kann eine oder mehrere Erkennungsmaschinen beinhalten. Die Erkennungsmaschine kann so konfiguriert sein, dass sie verschiedene Arten der Erkennung auf dem erfassten Bildschirm unter Verwendung herkömmlicher oder später entwickelter Techniken durchführt, einschließlich der Zeichenerkennung, der Bilderkennung, der Logoerkennung usw. Somit kann die Entitätsextraktionsmaschine 202 konfiguriert sein, um Text, Landmarken, Logos, usw. aus dem erfassten Bildschirm sowie der Standort dieser Elemente auf dem Bildschirm ermitteln.
  • Unter Verwendung des Textes, der Landmarken, der Logos usw., die in dem erfassten Bildschirm erkannt werden, kann die Entitätsextraktionsmaschine 202 Entitäten identifizieren. Die Entitätsidentifizierung schließt mehrere Techniken ein, einschließlich Part-of-Speech Tagging, Abhängigkeits-Parsing, Extraktion der Nominalphrase und Koreferenz Auflösung. Das Part-of-Speech Tagging identifiziert den Teil der Sprache eines Textes zu Wortarten eines Dokuments. Das Abhängigkeits-Parsing identifiziert die Beziehungen zwischen den Teilen der Sprache. Die Extraktion von Nominalphrasen identifiziert oder teilt Nominalphrasen, wie beispielsweise die Phrasen „Barack Obama”, „Sekretärin Clinton” oder „First Lady”. Mit anderen Worten, zielt die Extraktion von Nominalphrasen darauf ab, potenzielle Erwähnungen von Entitäten zu identifizieren, einschließlich der verwendeten Worte, um sie zu beschreiben. Koreferenz-Auflösung zielt darauf ab, dass ein Pronomen oder Pronominal mit einer Nominalphrase übereinstimmt. Die Entitätextraktionsmaschine 202 kann alle herkömmlichen Techniken für das Part-of-Speech Tagging, Abhängigkeits-Parsing, Extraktion von Nominalphrasen und Koreferenz-Auflösung verwenden.
  • Die Entitätextraktionsmaschine 202 kann auch herkömmliche Namensidentifikationstechniken, wie beispielsweise einen Namenklassifizierer, verwenden, um Text, der möglicherweise ein Name ist, zu identifizieren. Ein derartiger Text kann als Entität betrachtet werden. Die Entitätextraktionsmaschine 202 kann die möglichen Namen zu einem oder mehreren Kontaktdatenspeichern senden, ob irgendwelche Einträge mit dem Namen übereinstimmen. So kann beispielsweise die Suchmaschine 210 verwendet werden, um den Kontaktdatenspeicher 250 und/oder entfernte Kontaktdaten zu durchsuchen, die der Benutzer 180 identifiziert, wie beispielsweise Kontakte 150, für Kontakte, die mit dem möglichen Namen übereinstimmen. Der Kontaktdatenspeicher kann ein Adressbuch, soziale Medienkontakte, E-Mail-Kontakte, eine Mailingliste usw. sein und kann lokal auf dem mobilen Gerät, wie beispielsweise Kontakte 250, gespeichert sein oder kann entfernt sein, beispielsweise Kontakte 150.
  • Die Entitätextraktionsmaschine 202 kann wahlweise versuchen, Entitäten im Bildschirminhalt auf Entitäten in einem Datengraphen, wie beispielsweise Datengraph 130 oder Datengraph 230 oder beides, abzugleichen. Eine einzelne Entität im Bildinhalt kann mit mehr als einer Entität im Datengraph übereinstimmen. Der Text „Jaguar” im Bildschirminhalt kann beispielsweise drei Entitäten im Datengraphen entsprechen: von denen eine ein Tier darstellt, eine ein NFL-Team und die dritte ein Auto. Bei einigen Implementierungen kann die Entitätsextraktionsmaschine 202 eine Entitäts-Disambiguierung verwenden, um eine der Entitäten im Datengraph als die in dem Bildinhalt erwähnte Entität auszuwählen, wobei herkömmliche oder später entdeckte Techniken verwendet werden. Es versteht sich, dass Entitäten mit Text oder mit Bildern und Logos verknüpft sein können. So kann beispielsweise ein Bild von Big Ben mit einer Entität verbunden werden, die Big Ben im Datengraph darstellt. Ebenso kann ein Bild von Präsident Obama mit einer Entität verbunden werden, die Barack Obama im Datengraph darstellt. Somit kann die Entitätsextraktionsmaschine 202 sowohl in Bildern als auch in Text Entitäten identifizieren.
  • Die Entitätsextraktionsmaschine 202 kann eine Abfrage für die im Bildschirminhalt identifizierten Entitäten ausgeben. Bei einigen Implementierungen kann die Entitätsextraktionsmaschine 202 die Abfrage an eine Suchmaschine, wie beispielsweise die Suchmaschine 107, ausgeben. Die Suchmaschine 107 kann ein Suchergebnis erzeugen und andere Informationen über die Abfrage bereitstellen wie nachfolgend ausführlicher erläutert wird. Bei einigen Implementierungen kann die automatische Aktionsanwendung 175 eine Suchmaschine 210 beinhalten, die einen lokal gespeicherten Datengraph 230 und/oder Kontakte 250 durchsucht. Die Suchmaschine 210 kann auch einen entfernt angeordneten Kontaktdatenspeicher, wie Kontakte 150, durchsuchen. Die Suchmaschine 210 kann Abfrageergebnisse zurückgeben, die Informationen von den Kontaktdatenspeichern und den Suchergebnissen beinhalten, ähnlich denen der Suchmaschine 107.
  • Die automatische Aktionsanwendung 175 kann auch eine Entitätsrankingmaschine 203 beinhalten. Die Entitätsrankingmaschine kann auf Grundlage der Suchergebnisse die identifizierten Entitäten basierend auf den Abfrageergebnissen, Informationen über die Abfrage und die Quelle der Suchergebnisse durchsuchen und Elemente für Aktionskarten einordnen. Die Entitäten, die in einem Kontaktdatenspeicher gefunden werden, können zum Beispiel automatisch ein hohes Ranking erhalten. Die Entitätsrankingmaschine 203 kann die am höchsten eingestuften Entitäten auswählen. Bei einigen Implementierungen kann die Entitätsrankingmaschine 203 Entitäten verwenden, die einem Benutzerprofil zugeordnet sind, wie beispielsweise Ranking-Entitäten 240, um zu bestimmen, welche Entitäten am höchsten eingestuft sind. Die Ranking-Entitäten 240 kann einen Hinweis darauf beinhalten, wie relevant eine Entität für den Benutzer ist, beispielsweise basierend auf einem vom Benutzer bereitgestellten Profil oder mit der Benutzerberechtigung, wie oft die Entität im Inhalt der Benutzerbrowser identifiziert wird.
  • Die Aktionskartenmaschine 204 kann die Aktionskarte für jede ausgewählte Entität erzeugen. Die Aktionskarte beinhaltet eine oder mehrere Aktionen, die ein Benutzer für die Entität auswählen kann. Die Aktionen basieren auf den Suchergebnissen für die Entität. So können beispielsweise in einem Kontaktdatenspeicher gefundene Entitäten Aktionen wie Anruf, Nachricht, E-Mail, Anzeigeninformationen usw. aufweisen. Die Aktionen können Standardaktionen sein, die durch das mobile Gerät 170 ermittelt werden, oder können Aktionen sein, die vom Benutzer 180 ausgewählt und beispielsweise in Kontaktaktionen 255 gespeichert werden. Somit kann ein Benutzer in der Lage sein, die vorgeschlagenen Aktionen für eine Entität, die in einem Kontaktdatenspeicher gefunden wird, anzupassen. Entitäten im Datengraph können Aktionen basierend auf den Suchergebnissen aufweisen. So können beispielsweise Aktionen aus einem Wissensbereich oder aus Links und Daten extrahiert werden, die als herkömmliche Suchergebnisse bereitgestellt werden, wie es hierin ausführlich erläutert wird. Die Aktionskartenmaschine 204 kann die Karten auch in einer Reihenfolge anordnen, basierend auf der Art der Entität und ihrem Rang, wie hierin ausführlich erläutert wird.
  • Die Entitätsextraktionsmaschine 202 kann auf dem mobilen Gerät 170 oder einem Server, wie beispielsweise dem Server 110 oder auf beiden, betrieben werden. So kann beispielsweise die Entitätsextraktionsmaschine 202 eine oder mehrere Komponenten auf dem mobilen Gerät 170 aufweisen, die nach möglichen Namen im Inhalt suchen und nach diesen Entitäten in einem Kontaktdatenspeicher suchen und kann eine oder mehrere Komponenten auf dem Server 110 aufweisen, die Entitäten in Bildern und Text erkennen und versuchen, diese Entitäten an Entitäten in einem Datengraphen anzupassen. Als ein weiteres Beispiel kann die Bildschirmerfassungsmaschine 201 den Bildschirminhalt zu einem Server 110 senden, wobei der Inhalt durch die Erkennungsmaschine analysiert wird und die Erkennungsmaschine kann identifizierte Entitäten zur Weiterverarbeitung an das mobile Gerät 170 senden. Bei einigen Implementierungen kann der Server 110 mit der Entitätsidentifizierung und -klassifizierung fortfahren und die Suchergebnisse, Rang- oder Aktionskarten zur Weiterverarbeitung an das mobile Gerät 170 senden. Selbstverständlich kann sich die Entitätsextraktionsmaschine 202 bei einigen Implementierungen ausschließlich auf dem mobilen Gerät 170 befinden.
  • Das mobile Gerät 170 kann auch Daten 177 beinhalten, die im Speicher des mobilen Geräts 170 gespeichert sind und von den mobilen Anwendungen einschließlich des Betriebssystems und der automatischen Aktionsanwendung 175 verwendet werden. Wenn sie in Daten 177 auf dem mobilen Gerät 170 gespeichert sind, kann der Datengraph 230 eine Teilmenge von Entitäten im Datengraph 130 von 1 sein, insbesondere wenn der Datengraph 130 Millionen von Entitäten und Milliarden von Beziehungen beinhaltet. So können beispielsweise die Entitäten und Beziehungen in dem Datengraphen 230 die beliebtesten Entitäten und Beziehungen aus dem Datengraphen 130 darstellen oder sie können basierend auf Benutzerpräferenzen ausgewählt werden. Wenn der Benutzer beispielsweise ein Profil aufweist, können Entitäten und Beziehungen für die Aufnahme in den Datengraphen 230 basierend auf dem Profil ausgewählt werden. Die Kontaktaktionen 255 können Aktionen darstellen, die der Benutzer für Kontakte wählt, die in einem Kontaktdatenspeicher gefunden werden, wie beispielsweise Kontakte 250 und Kontakte 150. Die Aktionen können auf den im Kontaktdatenspeicher gespeicherten Informationen basieren. So können beispielsweise die Aktionen das Anrufen der Heimtelefonnummer eines Kontakts, das Anrufen der Mobiltelefonnummer eines Kontakts, das Zuordnen der Kontaktadresse, das Senden des Kontakts einer E-Mail, das Senden des Kontakts einer Textnachricht, Anzeigen der Kontaktinformationen, Öffnen einer Seite für den Kontakt auf einer Social-Media-Website oder in einer mobilen Social-Media-Anwendung, usw. beinhalten. Durch Auswählen der Kontaktaktionen kann der Benutzer die Aktionen auf der Aktionskarte anpassen. Bei einigen Implementierungen können die Kontaktaktionen 255 an einem Standort gespeichert sein, auf die durch mehrere Computergeräte zugegriffen werden kann, sodass beispielsweise der Benutzer 180 dieselben Standardaktionen über mehrere mobile Computergeräte aufweisen kann. Der Kontaktdatenspeicher 250 kann jede Art von Datenspeicher darstellen, der verwendet wird, um Informationen für Personen oder Unternehmen zu speichern, die der Benutzer 180 kennt. So kann beispielsweise der Kontaktdatenspeicher 250 ein oder mehrere Adressbücher, Kontakte aus einer Kalender- oder Mail-Anwendung, Kontakte von einer Social-Media-Website, Kontakte von einer Mailingliste usw. sein.
  • Das mobile Aktionsvorschlagsystem 100 kann einen Server 110 beinhalten, der ein Computergerät oder ein anderes Gerät sein kann, das die Form einer Anzahl unterschiedlicher Geräte aufweisen kann, beispielsweise eines Standardservers, einer Gruppe solcher Server oder eines Rack-Serversystems. So kann beispielsweise der Server 110 über mehrere Computergeräte verteilt implementiert werden. Zusätzlich kann der Server 110 in einem Personalcomputer, beispielsweise einem Laptop-Computer, implementiert sein. Der Server 110 kann ein Beispiel des Computergeräts 700 sein, wie in 7 dargestellt, oder ein Computergerät 800, wie in 8 dargestellt. Der Server 110 kann einen oder mehrere Prozessoren beinhalten, die in einem Substrat ausgebildet sind, das konfiguriert ist, um eine oder mehrere maschinenausführbare Anweisungen oder Teile einer Software, Firmware oder einer Kombination davon auszuführen. Der Server 110 kann auch einen oder mehrere Computerspeicher beinhalten. Die Speicher, zum Beispiel ein Hauptspeicher, können so konfiguriert sein, dass sie ein oder mehrere Datenbestände entweder vorübergehend, dauerhaft, halbfest oder in einer Kombination davon speichern. Die Speicher können jede Art von Speichergerät beinhalten, das Informationen in einem Format speichert, das durch den einen oder den mehreren Prozessoren gelesen und/oder ausgeführt werden kann. Die Speicher können einen flüchtigen Speicher, einen nichtflüchtigen Speicher oder eine Kombination davon beinhalten und Speichermodule, die, wenn sie von dem einen oder den mehreren Prozessoren ausgeführt werden, bestimmte Operationen ausführen. Bei einigen Implementierungen können die Module in einem externen Speichergerät gespeichert und in den Speicher des Servers 110 geladen werden.
  • Das mobile Aktionsvorschlagsystem 100 kann einen Datengraphen 130 beinhalten. Der Datengraph 130 kann ein großer Grafik-basierter Datenspeicher sein, der Daten und Regeln speichert, die Kenntnisse über die Daten in einer Form beschreiben, die eine deduktive Argumentation vorsieht. So können beispielsweise in einem Datengraphen Informationen über Entitäten in Form von Beziehungen zu anderen Entitäten und Eigenschaften oder Attributen über eine Entität gespeichert werden. Eine Entität kann als nicht beschränkendes Beispiel eine Person, ein Ort, ein Gegenstand, eine Idee, ein Thema, ein Wort, eine Phrase, ein abstraktes Konzept, ein konkretes Element, ein anderes geeignetes Ding oder eine beliebige Kombination davon beinhalten. Entitäten können durch markierte Kanten, die Beziehungen darstellen, miteinander in Beziehung gesetzt werden. Die markierten Kanten können gerichtet oder ungerichtet sein. Die Entität, die die National Football League darstellt, kann zum Beispiel durch ein „Team” zu einer Jaguar-Entität in Beziehung gesetzt werden. Ein Datengraph mit einer Anzahl von Entitäten und sogar einer begrenzten Anzahl von Beziehungen kann Milliarden von Verbindungen aufweisen. Bei einigen Implementierungen kann der Datengraph 130 in einem externen Speichergerät gespeichert sein, auf das vom Server 110 und/oder dem mobilen Gerät 170 zugegriffen werden kann. Bei einigen Implementierungen kann der Datengraph 130 über mehrere Speichergeräte und/oder mehrere Computergeräte, beispielsweise mehrere Server, verteilt sein. Die Entitäten, Attribute und Beziehungen in dem Datengraphen 130 können z. B. über einen Index durchsucht werden. Der Index kann beispielsweise Text beinhalten, auf den eine Entität verwiesen wurde. Somit kann die Bezugnahme auf den Datengraphen 130 so verstanden werden, dass er einen Index beinhaltet, der das Finden einer Entität unter Verwendung eines Textäquivalents erleichtert.
  • Das mobile Aktionsvorschlagsystem 100 kann eine Dokumentensammlung 120 beinhalten. Dokumentensammlung 120 kann einen Index zum Suchen nach Begriffen oder Phrasen innerhalb eines Korpus von Dokumenten beinhalten. Bei einigen Implementierungen kann der Dokumenten-Korpus im Internet verfügbar sein. Dokumente können jede Art von Datei beinhalten, die Inhalte wie Audio-Dateien, Videodateien, Textdokumente, Quellcode, Nachrichtenartikel, Blogs, Webseiten, PDF-Dokumente, Tabellenkalkulationen usw. speichert. Bei einigen Implementierungen kann die Dokumentensammlung 120 eindimensionale Buchungslisten speichern, die Phrasen, Begriffe oder Dokumenteigenschaften als Buchungslistenwerte und für jeden Buchungslistenwert Identifikatoren für Dokumente beinhalten, die sich auf den Ausdruck, Begriff oder die Eigenschaft beziehen. Während ein Index für gecrawlte Dokumente 120 unter Verwendung von Buchungslisten beschrieben worden ist, kann der Index ein anderes bekanntes oder später entwickeltes Format aufweisen.
  • Das System 100 kann auch Suchaufzeichnungen 125 beinhalten. Die Suchaufzeichnungen 125 können Suchprotokolle, aggregierte Daten, die aus Abfragen gesammelt wurden, oder andere Daten bezüglich Datum/Uhrzeit und Suchbegriffe von zuvor verarbeiteten Abfragen beinhalten. Bei einigen Implementierungen können die Suchaufzeichnungen 125 durch die Suchmaschine 107 im normalen Prozess zum Generieren von Suchergebnissen erzeugt werden. Der Datengraph 130, die Dokumentensammlung 120 und die Suchaufzeichnungen 125 werden auf greifbaren computerlesbaren Speichergeräten, beispielsweise einer Festplatte, einem Flash, einem Cache-Speicher oder einer Kombination von diesen gespeichert, die so konfiguriert sind, dass sie Daten in einer semi-permanenten oder nichtflüchtigen Form speichern. Bei einigen Implementierungen können der Datengraph 130, die Dokumentensammlung 120 und die Suchaufzeichnungen 125 in einer Kombination von verschiedenen Speichern gespeichert und/oder über mehrere Computergeräte verteit werden.
  • Bei einigen Implementierungen kann das System 100 eine Indizierungsmaschine 105 beinhalten, die einen oder mehrere Prozessoren beinhaltet, die so konfiguriert sind, dass sie eine oder mehrere maschinenausführbare Anweisungen oder Teile von Software, Firmware oder einer Kombination davon auszuführen, um den Datengraphen 130 und/oder die Dokumentensammlung 120 usw. zu erzeugen und aufrechtzuerhalten. Die Indizierungsmaschine kann Inhalte von zum Beispiel einem oder mehreren Servern erhalten und den Inhalt verwenden, um den Datengraphen 130 und/oder die Dokumentensammlung 120 zu erhalten. Bei einigen Implementierungen können die Server Web-Server, Server in einem privaten Netzwerk oder andere Dokumentquellen sein, die durch die Indizierungsmaschine zugänglich sind. Die Indizierungsmaschine kann eine oder mehrere separate Computergeräte, sein, so dass der Datengraph 130 durch einen ersten Satz von Computergeräten beibehalten wird und die Dokumentensammlung 120 durch einen zweiten Satz von Computergeräten erhalten bleibt, usw.
  • Der Server 110 kann eine Suchmaschine 107 beinhalten. Die Suchmaschine 107 kann eine oder mehrere Computergeräte beinhalten, die den Datengraphen 130 und/oder die Dokumentensammlung 120 verwenden, um Suchergebnisse für Abfragen zu ermitteln, zum Beispiel unter Verwendung konventioneller oder anderer Informationsabruftechniken. Die Suchmaschine 107 kann einen oder mehrere Server beinhalten, die Abfragen von einem Anforderer, wie zum Beispiel dem mobilen Gerät 170, empfangen und dem Anforderer Suchergebnisse zur bereitstellen. So kann beispielsweise die Suchmaschine 107 eine Abfrage von der automatischen Aktionsanwendung 175 oder eine Komponente der automatischen Aktionsanwendung 175, beispielsweise die Entitätsextraktionsmaschine 202, empfangen. Die Abfrage kann die Textreferenz für eine Entität, Text, der die Entität beschreibt, eine Entitätskennung usw. beinhalten. Die Abfrage kann auch Metadaten, wie beispielsweise einen Standort des mobilen Geräts, das der Suchmaschine 107 helfen kann, Abfrageergebnisse zu erzeugen, beinhalten. Die Suchergebnisse können Informationen aus Dokumenten beinhalten, die auf die Abfrage reagieren, Informationen (z. B. Fakten) aus Beziehungen und Entitäten in dem Datengraph 130 und/oder Informationsmerkmale über die Abfrage (z. B. Beliebtheit, Häufigkeit, häufigstes Suchergebnis usw.) aus Suchaufzeichnungen. Wie vorstehend erläutert, kann der Datengraph 130 Elemente durch Kanten verbinden, die Beziehungen darstellen und Attribute oder Merkmale einer Entität beinhalten.
  • Wenn die Suchmaschine 107 den Datengraphen 130 abfragt, können die Suchergebnisse eine Wissensbibliothek beinhalten. Eine Wissensbibliothek beinhaltet die am häufigsten angeforderten Informationen über eine bestimmte Entität basierend auf dem Entitätstyp und den Beziehungen in dem Datengraphen. Die Wissensbibliothek kann eine kurze Beschreibung der Entität und Attribute und Beziehungen der Entität beinhalten. So kann beispielsweise eine Wissensbibliothek für Entitäten die Standorte darstellen, eine Telefonnummer und Adresse und möglicherweise eine Bewertung, Bilder, eine Website, einen Link zu einer Enzyklopädie oder Wiki-Seite, die die Entität beschreibt, usw. beinhalten. Eine Wissensbibliothek für Entitäten, die Personen darstellt, kann biographische Informationen, Filme, in denen sie gearbeitet haben, Bilder usw. beinhalten. Das Suchergebnis kann auch Informationen aus einer Dokumentensammlung beinhalten, beispielsweise in Form eines Links zu einer Webseite und eines Snippets, das die Webseite oder ihren Inhalt beschreibt. Somit können die durch die Suchmaschine 107 erzeugten Suchergebnisse, Ergebnisse aus einer Suche des Datengraphen 130 und/oder einer Suche der Dokumentensammlung 120 als Reaktion auf die Abfrage beinhalten. Die Suchmaschine 107 kann auch Metadaten über die Abfrage, beispielsweise ihre Popularität, an die Aktionsanwendung 175 bereitstellen.
  • Das mobile Aktionsvorschlagsystem 100 kann Datenspeicher beinhalten, die einem Benutzerkonto oder Profil zugeordnet sind. Die Datenspeicher sind in 1 dargestellt, als die sich auf dem Server 110 befinden, aber ein oder mehrere der Datenspeicher können sich auf dem mobilen Gerät 170 oder an einem anderen vom Benutzer festgelegten Standort befinden. Die Datenspeicher können die eingestuften Entitäten 140 und Kontakte 150 beinhalten. Die Datenspeicher können auf einem nichtflüchtigen Speicher gespeichert sein. Die eingestuften Entitäten 140 können einen Hinweis darauf beinhalten, wie relevant eine Entität für den Benutzer ist.
  • Das mobile Gerät 170 kann mit dem Server 110 und mit anderen mobilen Geräten über das Netzwerk 160 kommunizieren. Das Netzwerk 160 kann beispielsweise das Internet sein, oder das Netzwerk 160 kann ein drahtgebundenes oder drahtloses lokales Netzwerk (LAN), ein Weitverkehrsnetz (Wide Area Network, WAN) usw. sein, das unter Verwendung von beispielsweise Gateway-Geräten, Brücken, Switches und/oder dergleichen implementiert ist. Das Netzwerk 160 kann auch ein Mobilfunk-Kommunikationsnetzwerk darstellen. Über das Netzwerk 160 kann der Server 110 mit dem mobilen Gerät 170 kommunizieren und Daten übertragen und das mobile Gerät 170 kann mit dem Server 110 kommunizieren.
  • Das mobile Aktionsvorschlagsystem 100 stellt eine exemplarische Konfiguration dar und Implementierungen können andere Konfigurationen beinhalten. So können beispielsweise einige Implementierungen eine oder mehrere der Komponenten der Bilderfassungsmaschine 201, Entitätextraktionsmaschine 202, Entität-Rankingmaschine 203, Aktionskartenmaschine 204 und die Suchmaschine 210 in einem einzigen Modul oder einer einzigen Maschine und eine oder mehrere der Komponenten der automatischen Aktionsanwendung 175 können von einem Server, wie beispielsweise dem Server 110, ausgeführt werden. Als ein weiteres Beispiel können ein oder mehrere der Datenspeicher, wie beispielsweise der Datengraph 130, die Kontakte 150, die eingestuften Entitäten 140, die Kontakte 250, die Kontaktaktionen 255, der Datengraph 230 und die eingestuften Entitäten 240 zu einem einzigen Datenspeicher kombiniert oder über mehrere Computergeräte verteilt werden oder können auf dem Server gespeichert werden. Obwohl nur ein Server 110 dargestellt ist, versteht es sich, dass das mobile Aktionsvorschlagsystem 100 mehrere Server beinhalten kann und dass Komponenten, die als Teil des Servers 110 dargestellt sind, über verschiedene Server verteilt werden können. So können sich beispielsweise der Kontaktdatenspeicher 150 und der Datenspeicher der eingestuften Entitäten 140 auf einem anderen Server befinden als die Dokumentensammlung 120 und der Datengraph 130. Als weiteres Beispiel kann das Datengraph 130 und/oder die Dokumentensammlung 120 über mehrere Server verteilt werden.
  • Soweit das mobile Aktionsvorschlagssystem 100 anwenderspezifische Daten sammelt und speichert oder persönliche Informationen nutzen kann, haben Benutzer die Möglichkeit, zu steuern, ob Programme oder Merkmale die Benutzerinformation sammeln (z. B. Informationen über ein soziales Netzwerk eines Benutzers, soziale Aktionen oder Aktivitäten, Benutzereingaben, den Beruf, die Präferenzen eines Benutzers oder den aktuellen Standort eines Benutzers), oder ob und/oder wie Inhalte empfangen werden können, die für den Benutzer relevanter sein könnten. Zusätzlich können bestimmte Daten auf eine oder mehrere Arten behandelt werden bevor sie gespeichert oder verwendet werden, sodass personenbezogene Informationen entfernt werden. So kann beispielsweise die Identität eines Benutzers so behandelt werden, dass keine persönlichen Informationen für den Benutzer bestimmt werden können, oder ein geografischer Standort eines Benutzers kann verallgemeinert werden, wo die Standortinformation empfangen wird (beispielsweise auf eine Stadt, eine Postleitzahl oder eine Landesebene), sodass ein bestimmter Standort eines Benutzers nicht bestimmt werden kann. Somit kann der Benutzer die Kontrolle darüber haben, wie Informationen über den Benutzer gesammelt und von einem mobilen Aktionsvorschlagsystem verwendet werden.
  • Um personalisierte Unterstützung in einer mobilen Anwendungsumgebung bereitzustellen, können offenbarte Implementierungen mit Zustimmung der Benutzer Zustände identifizieren, die auf dem Bildschirm eines mobilen Geräts angezeigt werden. Das System kann Suchergebnisse verwenden, um die Entitäten einzustufen und vorgeschlagene Aktionen und andere Informationen über Aktionskarten für die am höchsten eingestuften Entitäten bereitzustellen. Die vorgeschlagenen Aktionen können auf den Suchergebnissen basieren.
  • 2 veranschaulicht eine exemplarische Anzeige 200 eines mobilen Computergeräts. Im Beispiel von 2 wird die Anzeige durch eine mobile Anwendung erzeugt, die es einem Benutzer ermöglicht, Textnachrichten an einen oder mehrere andere Benutzer zu senden und zu empfangen. Somit sind die Implementierungen nicht auf die mobile Anwendung beschränkt, wie in 2 veranschaulicht. Jeder Inhalt einer jeden mobilen Anwendung kann als Grundlage für automatische Aktionsvorschläge dienen.
  • 3 veranschaulicht eine exemplarische Benutzerschnittstelle 300, die vorgeschlagenen Aktionen vorsieht, die für Entitäten erzeugt sind, die basierend auf der Anzeige 200 in 2 identifiziert wurden. Im Beispiel von 3 veranschaulicht die Anzeige 300 drei Aktionskarten, eine für jede der drei Entitäten, die aus dem Inhalt der Anzeige 200 identifiziert wurden. Die erste Aktionskarte ist für die Entität Peter Smith, wie durch das Etikett 340 dargestellt. Peter Smith ist ein Kontakt in einem Kontaktdatenspeicher, der dem Benutzer des mobilen Geräts zugeordnet ist. Aktionskarten für in einem Kontaktdatenspeicher gefundene Entitäten können in Bezug auf Aktionskarten für andere Entitäten aufgelistet werden. Die Aktionskarte für die Peter Smith Entität der Anzeige 300 beinhaltet vier vorgeschlagene Aktionen, die durch vier Symbole dargestellt werden. Die erste Aktion ist eine Anrufaktion 310, die durch das Telefonsymbol dargestellt wird. Wenn der Benutzer des mobilen Geräts die Anrufaktion 310 auswählt, kann das mobile Gerät einen Telefonanruf von einer Telefonanwendung zu der Telefonnummer einleiten, die mit Peter Smith im Kontaktdatenspeicher verknüpft ist. Auf ähnliche Weise kann die Nachrichtenaktion 345 eine Nachrichtenübermittlungsanwendung an die im Kontaktdatenspeicher für Peter Smith aufgelistete Nummer oder Adresse einleiten, ähnlich wie die Anwendung, die in der Anzeige 200 veranschaulicht ist. Die E-Mail-Aktion 350 kann eine E-Mail-Anwendung starten, indem sie eine neue Nachricht öffnet, die an die E-Mail-Adresse für Peter Smith im Kontaktdatenspeicher adressiert ist. Die Auswahl der Informationsaktion 355 kann eine Anwendung öffnen, die den Inhalt des Eintrags im Kontaktdatenspeicher für Peter Smith anzeigt. Je nach den im Kontaktdatenspeicher verfügbaren Informationen können weitere Aktionen möglich sein. So können beispielsweise andere Aktionen eine Social Media-Seite für Peter Smith öffnen, eine Karte zur Adresse für Peter Smith öffnen, einen Videoanruf an Peter Smith einleiten usw. Somit sind die Implementierungen nicht auf die in der Anzeige 300 dargestellten Aktionen begrenzt. Darüber hinaus kann ein Benutzer die vorgeschlagenen Aktionen anpassen, indem er die möglichen Aktionen für in einem Kontaktdatenspeicher identifizierte Entitäten auswählt oder einstuft. Obwohl in der Benutzerschnittstelle 300 nicht dargestellt, kann die Aktionskarte auch andere Informationen beinhalten, wie beispielsweise einen Kurznamen für den Kontakt, ein Bild des Kontakts usw.
  • Die zweite Aktionskarte, die in der Benutzerschnittstelle 300 von 3 veranschaulicht ist, ist für das Restaurant Mr. Calzone, wie durch das Label 305 veranschaulicht. Das Label 305 kann auf einer Textbeschreibung der Entität in einem graphischen Datenspeicher, wie beispielsweise dem Datengraph 130, basieren oder es kann der Text oder das Bild vom Bildschirm, z. B. die Anzeige 200 sein. Die Aktionskarte beinhaltet vier Standardaktionen für das Restaurant. Die erste Aktion ist eine Anrufaktion, die durch das Telefonsymbol dargestellt wird. Die zweite ist eine Kartenaktion 315. Die Kartenaktion 315 kann eine Karten-Mobilanwendung an die Adresse für das Restaurant öffnen. Die Telefonnummer und die Adresse des Restaurants können beispielsweise von Suchergebnissen bezogen werden, die für eine mit dem Unternehmen zusammenhängende Abfrage zurückgegeben werden. Die dritte Aktion ist eine Reservierungsaktion 320. Wenn der Benutzer beispielsweise die Reservierungsaktion 320 auswählt, kann das System eine mobile Anwendung öffnen, die dem Benutzer erlaubt, eine Reservierung im Restaurant vorzunehmen. Das System kann die mobile Anwendung mit dem bereits ausgewählten Restaurant öffnen, sodass der Benutzer nicht nach dem Restaurant suchen muss. Insofern kann die vorgeschlagene Aktion eine tiefe Verbindung sein. Wenn der Benutzer keine mobile Anwendung für eine Reservierung hat, kann das System eine Browser-Anwendung auf einer Website öffnen, die es dem Benutzer ermöglicht die Reservierung vorzunehmen. Die vierte Aktion ist eine Informationsaktion 325. Die Informationsaktion 325 kann eine Wiki- oder Enzyklopädieseite öffnen, die sich auf das Restaurant bezieht oder kann ein Wissensfenster für das Restaurant öffnen oder anzeigen. Natürlich können andere Handlungen basierend auf den Suchergebnissen dargestellt werden, wie hierin näher erläutert werden. Die Aktionskarte kann auch andere Informationen oder Aktionen beinhalten. So kann beispielsweise die Aktionskarte einen Link 330 zur offiziellen Website für das Restaurant und/oder eine kurze Beschreibung 335 des Restaurants beinhalten, die von den Suchergebnissen erhalten werden kann.
  • Die dritte Aktionskarte in 3 ist für den Film Gravity. Diese Aktionskarte beinhaltet auch vier vorgeschlagene Aktionen. Die erste ist eine Spielfilmaktion 360. Diese kann beispielsweise ein Link zum Filmtrailer sein. Der Link kann eine Browser-Anwendung für den Film-Trailer zu öffnen oder kann eine Film-bezogene mobile Anwendung zum Film-Trailer zu öffnen. Die zweite Aktion ist eine Ticketkaufaktion 365. Die Auswahl der Ticketkaufaktion 365 kann eine mobile Anwendung oder Webseite öffnen, die dem Benutzer ermöglicht, Tickets für den Film in einem lokalen Theater zu erwerben. Die dritte Aktion ist eine Bewertungsaktion 370. Die Auswahl der Bewertungsaktion 370 kann eine mobile Anwendung mit Bewertungen für den Film oder einen Browser zu einer Website, die Bewertungen des Films bereitstellt öffnen. Die vierte Aktion ist eine Informationsaktion, die ähnlich der Informationsaktion 325 funktioniert, die vorstehend für das Restaurant erklärt ist. Die Aktionskarte kann auch zusätzliche Informationen beinhalten, wie beispielsweise ein Snippet, das den Film beschreibt, und einen Link zu der offiziellen Website für den Film usw.
  • Die Benutzerschnittstelle 300 kann navigierbar sein. Obwohl nur drei Aktionskarten dargestellt sind, kann ein Benutzer beispielsweise die Benutzerschnittstelle 300 scrollen, um zusätzliche Aktionskarten für zusätzliche Entitäten zu offenbaren. Aktionskarten für die am höchsten eingestuften Entitäten können auf dem Startbildschirm angezeigt werden, und Aktionskarten für andere hoch eingestufte Entitäten über Navigation zugänglich sein, zum Beispiel durch Blättern oder Auswählen auf einem ”nächsten” Link oder Symbol. Bei einigen Implementierungen kann die Benutzerschnittstelle 300 einen Mechanismus zum Auswählen der in den Aktionskarten dargestellten Entitäten bereitstellen. So kann beispielsweise die Benutzerschnittstelle 300 eine Filtersteuerung 375 beinhalten, die, wenn sie ausgewählt ist, eine Benutzerschnittstelle öffnet, die es dem Benutzer ermöglicht, Entitätstypen auszuwählen. Die Steuerung 375 kann ein Link, eine Schaltfläche, ein Kontrollkästchen, oder jede andere Art von Steuerung sein. Wenn der Benutzer beispielsweise die Steuerung 375 auswählt, kann das System dem Benutzer ermöglichen zu wählen, um Aktionskarten für Kontakte und Orte, aber nicht Filme oder Restaurants usw. anzuzeigen. Die in dem Filter auswählbaren Entitätstypen können auf den Entitätstypen basieren, die Aktionskarten in der zugrundeliegenden Schnittstelle 300 aufweisen. Wenn ein Benutzer der Benutzerschnittstelle 300 beispielsweise einen Restaurantentitätstyp unter Verwendung des Filters auswählt, kann die Benutzerschnittstelle die zweite Aktionskarte anzeigen, jedoch nicht die erste und die dritte Aktionskarte, wie im Beispiel in 3 dargestellt. Wenn andere Aktionskarten für andere Restaurants vorhanden sind, kann das System diese Aktionskarten stattdessen anzeigen. Somit kann der Benutzer die Benutzerschnittstelle 300 interaktiv anpassen.
  • Wie dargestellt, stellt die Benutzerschnittstelle 300 dem Benutzer des mobilen Geräts einen Link zum Abrufen von Informationen über Entitäten und zum Durchführen zusätzlicher Aktionen für die Entitäten bereit. Wenn der Benutzer zum Beispiel beabsichtigt Peter anzurufen, um das Mittagessen zu organisieren, anstatt die Nachrichtenanwendung zu beenden, navigieren Sie zu einer Telefonanwendung, finden Sie die Telefonnummer von Peter und starten Sie den Anruf 310 mit einem Wisch (z. B. nach oben wischen, nach unten wischen, diagonal wischen usw.), der Benutzer kann wählen, um den Anruf zu starten. Damit bietet die Benutzerschnittstelle 300 dem Benutzer schnellere und effizientere Verfahren zum Durchführen einer Aktion.
  • 4 veranschaulicht ein Flussdiagramm eines exemplarischen Prozesses 400 zum Bereitstellen von Aktionskarten für mindestens einige Entitäten, die in dem Inhalt eines mobilen Bildschirms identifiziert wurden, gemäß den offenbarten Implementierungen. Der Prozess 400 kann durch ein mobiles Vorschlagsystem, wie beispielsweise das System 100 aus 1. Der Prozess 400 kann verwendet werden, um Entitäten im Inhalt einer Anzeige eines mobilen Geräts zu identifizieren, die Entitäten einzustufen, um die für den Benutzer am relevantesten zu bestimmen und vorgeschlagene Aktionen und grundlegende Informationen für zumindest einige der Entitäten bereitzustellen. Der Prozess 400 kann dadurch beginnen, dass er einen Inhalt eines Bildschirms auf dem mobilen Gerät empfängt und eine Erkennung für den Inhalt (405) durchführt. Das aufgenommene Bild kann unter Verwendung herkömmlicher Techniken erhalten werden, zum Beispiel durch Kopieren oder Lesen des Bildspeichers des mobilen Geräts, und/oder durch Kopieren oder Lesen von, für den aktuellen Bildschirm, erzeugten Zugänglichkeitsdaten. Das System kann ein Erkennen des Inhalts durchführen. Erkannte Textzeichen oder Zahlen, Landmarken, Logos usw. sein, die unter Verwendung verschiedener Erkennungstechniken angeordnet sind, einschließlich Zeichenerkennung, Bilderkennung, Logoerkennung usw. Somit können erkannte Elemente Wörter sowie Orte, Landmarken, Logos usw. einschließen.
  • Das System kann Entitäten im erkannten Inhalt finden (410). So kann beispielsweise das System ein Part-of-speech Tagging, ein Abhängigkeits-Parsing, eine Nominalphrase-Extraktion und eine Koreferenzauflösung unter Verwendung einer beliebigen konventionellen Technik zum Finden möglicher Entitäten durchführen. Bei einigen Implementierungen kann das System einen Datengraphen abfragen, um zu ermitteln, ob die Entität tatsächlich einer oder mehreren Entitäten in dem Graphen entspricht. Das System kann ebenfalls auch Namen-Klassifikatoren oder benannte Entitätserkennungsalgorithmen verwenden, um Entitäten zu identifizieren. Natürlich kann das System auch Entitäten aus der Bilderkennung oder der Logoerkennung identifizieren. Bei einigen Implementierungen kann das System nur Entitäten beinhalten, die sich auf eine Person (z. B. den Namen einer möglichen Person) beziehen können, oder die einer Entität im Datengraph zur weiteren Verarbeitung entsprechen. Mit anderen Worten, kann das System bei einer derartigen Implementierung Entitäten verwerfen, die nicht einer Entität im Datengraph entsprechen und wahrscheinlich kein Name sind.
  • Wenn das System die Entitäten im Bildinhalt identifiziert hat, kann das System für jede Entität eine Abfrage zu einer Suchmaschine (415) ausgeben. Für eine Entität, die eine Person darstellen kann, kann das System direkt suchen oder eine Abfrage an einen oder mehrere Kontaktdatenspeicher senden, die dem Benutzer zugeordnet sind. Die Abfrage kann die Entität als Vorname, Nachname, Spitzname oder eine Kombination aus diesen im Kontaktdatenspeicher suchen. So kann beispielsweise das System eine API verwenden, um auf den Kontaktdatenspeicher zuzugreifen. Das System kann die Entität auch als Suchanfrage an eine Suchmaschine senden. Die Abfrage kann Kontextinformationen beinhalten, wie beispielsweise den Standort des mobilen Geräts, das der Suchmaschine helfen kann, relevantere Ergebnisse zu liefern. Die Suchmaschine kann die Abfrage und die Kontextinformationen mit mehreren Datenquellen abgleichen. Die Suchmaschine kann zum Beispiel Ergebnisse aus einem graphischen Datenspeicher, wie beispielsweise dem Datengraph 130, zurückgeben. Bei einigen Implementierungen kann das Suchergebnis aus dem Datengraphen eine Wissensbibliothek oder Informationen sein, die verwendet werden, um eine Wissensbibliothek zu erzeugen. Die Wissensbibliothek kann häufig angeforderte oder angesehene Informationen für die Entität aus dem Datengraphen beinhalten. Die Suchmaschine kann auch eine Dokumentensammlung, wie beispielsweise Dokumente, die über das Internet verfügbar sind, durchsuchen. Eine derartige Sammlung kann Links zurückgeben, wobei jeder Link eine Verknüpfung zu einer bestimmten Website, einem bestimmten Dokument usw. und ein Snippet oder eine kurze Beschreibung der relevanten Inhalte auf der Website oder eines Dokuments ist.
  • Das System kann die Abfrageergebnisse für die Entität (420) empfangen. Wie vorstehend angegeben, können die Abfrageergebnisse Informationen sein, die von einem Kontaktdatenspeicher, einer Wissensbibliothek oder von Informationen zurückgegeben werden, die verwendet werden, um eine Wissensbibliothek zu erzeugen, und herkömmliche Suchergebnisse, die eine Verknüpfung und einen Textausschnitt des Dokuments beinhalten. Wenn es andere Entitäten gibt, die nicht abgefragt wurden (425, Ja), kann das System die Schritte 415 und 420 für diese Entitäten wiederholen. Wenn die Entitäten abgefragt worden sind und entsprechende Suchergebnisse (425, Nein) aufweisen, kann das System die Entitäten (430) einstufen. Das Ranking kann von mehreren Faktoren abhängen, einschließlich der Ergebnisquelle, den Abfrageergebnissen und anderen Abfrageinformationen. So können beispielsweise Entitäten, die in einem Kontaktdatenspeicher gefunden werden, als höchst relevant für den Benutzer des mobilen Geräts betrachtet werden und ein hohes Ranking erhalten. Diese Entitäten können auch als Kontakte bezeichnet werden. Das System kann somit Aktionskarten für Kontakte mit einem wichtigen Stellenwert in Bezug auf Aktionskarten für kontaktlose Entitäten anzeigen. Bei einigen Implementierungen kann das System, wenn mehrere Kontakte in den Kontaktdatenspeichern gefunden werden, eine Frequenz der Interaktion für jeden Kontakt ermitteln und die Kontakte auf der Grundlage der Frequenz einstufen, wobei Kontakte mit höherfrequenten Interaktionen einem höheren Rang zugeordnet werden. Die Häufigkeit der Interaktionen kann auf Chats, Anrufe, E-Mails, SMS-Nachrichten, Video-Chats, usw. basieren. Diese Informationen können auf einem mobilen Gerät verfügbar sein und können mit Benutzerberechtigung durch ein Benutzerkonto erweitert werden. Bei einigen Implementierungen kann das System, wenn die Entität ein erster Name ist und zwei Kontakte den ersten Namen teilen, den Kontakt mit mehr Interaktionen über dem einen mit weniger Interaktionen auswählen. Bei einigen Implementierungen kann das System, wenn die Anzahl der Interaktionen nahe ist, beide Kontakte auswählen, sodass die zwei Entitäten für Aktionskarten ausgewählt werden können. Bei einigen Implementierungen kann das System, wenn die Frequenz der Interaktionen den Schwellenwert nicht erfüllt, dem Kontakt keinen hohen Rang geben. In diesem Szenario kann das System Aktionskarten für untergeordnete Kontakte nach den Aktionskarten für hochrangige kontaktlose Entitäten anzeigen.
  • Für Entitäten, die keine Suchergebnisse aus einem Kontaktdatenspeicher aufweisen, kann das System die Abfrageergebnisse und Informationen über die Abfrage verwenden, um die Entitäten einzustufen. So können beispielsweise Suchergebnisse, die eine Wissensbibliothek beinhalten, zu einer Erhöhung der Rangfolge führen. Als ein weiteres Beispiel zeigen die Abfrageinformationen, dass die Abfrage verbreitet ist (z. B. ein häufiges Abfrageobjekt) und kann dadurch den Rang der entsprechenden Entität steigern. Der Rang kann auch darauf basieren, Wo und wie die Entität auf dem erfassten Bildschirm erschienen ist. So kann beispielsweise eine Entität, die in großer Schriftart erscheint (wenn sie mit dem Rest des Bildschirms verglichen wird) eine Erhöhung im Rang erhalten oder eine Entität in einem Titel oder in Großbuchstaben eine Erhöhung im Rang erhalten. Der Rang einer Entität, basierend auf dem Bildschirmort, kann mobil anwendungsspezifisch sein. So können zum Beispiel in den meisten mobilen Anwendungen Entitäten, die am oberen Rand des Bildschirms erscheinen, eine Erhöhung im Rang erhalten, aber Entitäten in einer Chat-Anwendung, die am unteren Rand des Bildschirms erscheinen, in denen neuere Nachrichten auftreten, können sich im Rang erhöhen. Darüber hinaus können Entitäten, die eine viel größere Menge an einzelnen relevanten Dokumenten aufweisen, eine Rangerhöhung erhalten.
  • Das System kann einige der Entitäten auswählen, die Gegenstand von Aktionskarten (435) sein sollen. Bei einigen Implementierungen kann eine vorbestimmte Anzahl der am höchsten eingestuften Entitäten ausgewählt werden, beispielsweise drei oder vier. Bei einigen Implementierungen werden alle Entitäten ausgewählt, wenn ihr Rang einen Schwellenwert erfüllt. Dies kann dazu führen, dass mehr Aktionskarten erzeugt werden als zu dem Zeitpunkt auf den Bildschirm des mobilen Geräts passen, sodass die Benutzerschnittstelle navigierbar ist, um die zusätzlichen, untergeordneten Aktionskarten zu sehen. Das System kann für jede ausgewählte Entität (440) eine Aktionskarte erzeugen. Die für die Aktionskarte ausgewählten Aktionen und beliebige Text-Snippets können auf den Suchergebnissen basieren, wie mit Bezug auf 5 ausführlicher erläutert ist. Das System kann die Aktionskarten auf dem Bildschirm des mobilen Geräts (445) anzeigen, wie es im Beispiel von 3 dargestellt ist. Das System kann die Aktionskarten entsprechend ihrem Rang anzeigen, sodass Aktionskarten für höherrangige Entitäten in Bezug auf Aktionskarten für untergeordnete in einer wichtigen Position erscheinen. Bei einigen Implementierungen können alle Aktionskarten für Kontakte in Bezug auf Aktionskarten für kontaktlose Entitäten in einer wichtigen Position erscheinen. Der Prozess 400 endet dann.
  • Das Anzeigen der vom Prozess 400 erzeugten Benutzerschnittstelle kann die zugrundeliegende mobile Anwendung nicht beenden. Mit anderen Worten kann die Anzeige der vorgeschlagenen Aktionsbenutzerschnittstelle vorübergehend sein, wobei die zugrundeliegende Anwendung noch läuft. Wenn also der Benutzer keine Aktion auswählt, sondern die vorgeschlagene Aktionsbenutzerschnittstelle schließt, kann der Benutzer zu dem Bildschirm zurückgeführt werden, der vor dem Erzeugen der vorgeschlagenen Aktionsbenutzerschnittstelle über den Prozess 400 angezeigt wurde. Das Auswählen einer vorgeschlagenen Aktion von der Benutzerschnittstelle kann jedoch bewirken, dass das mobile Gerät zu der Anwendung wechselt, die der Aktion zugeordnet ist, sodass die geschaltete Anwendung zur momentan laufenden Anwendung wird.
  • 5 veranschaulicht ein Flussdiagramm eines exemplarischen Prozesses 500 zum Ermitteln von Aktionen für Entitäten, gemäß den offenbarten Implementierungen. Der Prozess 500 kann durch ein mobiles Vorschlagsystem, wie beispielsweise das System 100 aus 1, als Teil von Schritt 440 aus 4 durchgeführt werden. Der Prozess 500 kann Aktionen verwendet werden, um Aktionen für eine Entität aus den Suchergebnissen auszuwählen und die Aktionskarte unter Verwendung der Aktionen zu erzeugen. Der Prozess 500 kann durch bestimmen, ob die Entität ein Kontakt ist oder nicht (505), beginnen. Ein Kontakt ist eine Entität mit Suchergebnissen aus einem Kontaktdatenspeicher für den Benutzer. Wenn die Entität ein Kontakt (505, Ja) ist, kann das System die aus dem Kontaktdatenspeicher extrahierten Informationen verwenden, um Aktionen (510) zu erzeugen. Bei einigen Implementierungen kann der Benutzer ausgewählte Aktionen zu Kontakten haben, z. B. im Kontaktaktionsdatenspeicher 255 aus 1, und das System kann Informationen aus dem Kontaktdatenspeicher extrahieren, um die ausgewählten Aktionen einzuleiten. Hat der Benutzer beispielsweise einen Anruf als vorgeschlagene Aktion ausgewählt, kann das System eine Telefonnummer für den Kontakt extrahieren. Bei anderen Implementierungen kann das System standardmäßig vorgeschlagene Aktionen aufweisen. Bei einigen Implementierungen kann das System eine Hierarchie von vorgeschlagenen Aktionen aufweisen, und wenn dem Kontakt keine ausreichenden Informationen für eine Aktion vorliegen, kann an seiner Stelle eine nächste Aktion ausgewählt werden. Wenn zum Beispiel dem Kontakt eine E-Mail-Adresse fehlt, kann das System eine Social Media-Seite für den Kontakt auswählen, anstatt eine E-Mail-Nachricht als vorgeschlagene Aktion zu erstellen. Jeder vorgeschlagenen Aktion kann ein Symbol zugeordnet sein, und das System kann unter Verwendung der extrahierten Informationen und Kontaktaktionen von Schritt 510 eine Aktionskarte (540) erzeugen. Die Aktionskarte kann ein Symbol für jede vorgeschlagene Aktion beinhalten, wobei das Symbol auswählbar und konfiguriert ist, um die entsprechende Aktion auszulösen, wenn sie ausgewählt ist. Darüber hinaus kann die Aktionskarte ein Label für die Entität und andere Informationen anzeigen. So kann beispielsweise die Aktionskarte für einen Kontakt, ein kleines Foto des Kontakts, einen Spitznamen für den Kontakt usw. beinhalten. Nachdem der Prozess 500 eine Aktionskarte für den Kontakt erzeugt hat endet der Prozess.
  • Wenn die Entität kein Kontakt ist (505, Nein), kann das System Aktionen von einer Wissensbibliothek (515) extrahieren, falls in den Suchergebnissen eine vorhanden ist. Die Arten der vorgeschlagenen erzeugten Aktionen können von den Informationen abhängen, die in der Wissensbibliothek dargestellt sind. Wenn das System beispielsweise eine Telefonnummer findet, kann das System eine Aktion erzeugen, um einen Anruf an die Telefonnummer einzuleiten. Wenn das System eine Adresse findet, kann das System eine Aktion zum Öffnen einer Kartenanwendung an die Adresse erzeugen. Wenn das System einen Link zu einer Wiki-Seite findet, kann das System eine Aktion erzeugen, die die Seite öffnet. Wenn das System eine Überprüfung findet, kann das System eine Aktion erzeugen, die dem Benutzer ermöglicht, Bewertungen für die Entität zu schreiben oder zu lesen. Zusätzlich zum Erzeugen von Aktionen kann das System die Wissensbibliothek verwenden, um andere Informationen zum Anzeigen auf der Aktionskarte zu extrahieren. So kann beispielsweise das System eine kurze Beschreibung der Entität, eine Webseite für die Entität, ein Label für die Entität usw. aus den Informationen der Wissensbibliothek extrahieren. Diese können in der Aktionskarte beinhaltet sein. Bei einigen Implementierungen kann das System einen Maschinenlernalgorithmus verwenden, um vorherzusagen, welche Informationen aus der Wissensbibliothek dem Benutzer am hilfreichsten sind.
  • Das System kann auch Links aus den Suchergebnissen (520) extrahieren. Die Ergebnisse können die am höchsten eingestuften Ergebnisse aus der Suchmaschine darstellen, z. B. jene, die üblicherweise auf der ersten Seite angezeigt werden. Bei einigen Implementierungen können Links, die in Deep-Links umgewandelt werden können (z. B. die eine entsprechende mobile Anwendung aufweisen), automatisch aus den Ergebnissen ausgewählt werden. Von den verbleibenden Links in den Suchergebnissen kann das System einen, zwei oder alle Links auswählen. Bei einigen Implementierungen kann das System verbleibende Links auswählen, die einen Rang über einem Schwellenwert aufweisen. Bei einigen Implementierungen können die Links basierend auf einem Maschinenlernalgorithmus ausgewählt werden, basierend auf den nützlichsten vorgeschlagenen Links der letzten Benutzerauswahl. Die Links können von der Wissensbibliothek oder von den herkömmlichen Suchergebnissen sein. Bei einigen Implementierungen kann der Link eine entsprechende installierte mobile Anwendung aufweisen. So kann beispielsweise ein Link mit der Domain yelp.com einer von YELP entwickelten mobilen Anwendung oder einer anderen mobilen Anwendung entsprechen, die ähnliche Aktionen durchführt. Wenn der Link eine entsprechende installierte mobile Anwendung aufweist (525, Ja), kann das System einen Deep-Link für die vorgeschlagene Aktion (535) erzeugen. Der Deep-Link kann nicht nur die mobile Anwendung öffnen, sondern die Anwendung mit einem für die Entität relevanten Zustand. Wenn das System beispielsweise die mobile Anwendung YELP öffnet, kann es diese für das Restaurant oder den Film öffnen, für die das System die Aktionskarte erzeugt. Die Art und Weise einen Deep-Link zu erzeugen, ist betriebssystemspezifisch und allgemein bekannt. So kann das System beispielsweise in einem IOS-Betriebssystem eine benutzerdefinierte URL über ein NSURL-Objekt erzeugen, während das System in einem ANDROID-Betriebssystem ein Intent-Message-Objekt verwenden kann. Selbstverständlich sind die Implementierungen nicht auf ein bestimmtes Betriebssystem beschränkt. Wenn der Link keine entsprechende installierte mobile Anwendung (525, Nein) aufweist, kann das System eine Aktion erzeugen, die eine Browser-Anwendung auf das durch den Link (530) dargestellte Dokument öffnet. Wenn das System die vorgeschlagenen Aktionen und beliebige zusätzliche Informationen (z. B. Text-Snippets) identifiziert hat, kann das System die Aktionskarte (540) erzeugen. Wie vorstehend erläutert, kann dies die Bereitstellung eines Labels, eines Links zu einer offiziellen Website und auswählbare Symbole beinhalten, die jeder vorgeschlagenen Aktion zugeordnet sind. Der Prozess 500 endet dann für diese Entität.
  • Bei einigen Implementierungen kann das mobile Gerät eine Rückmeldung bezüglich häufig ausgewählter vorgeschlagener Aktionen an einen Server bereitstellen. Der Server kann die Rückmeldung als Eingabe für einen Maschinenlernalgorithmus verwenden, beispielsweise als Trainingsdaten. Der Maschinenlernalgorithmus kann so konfiguriert werden, dass er die wichtigsten zukünftigen Aktionen basierend auf vergangenen Aktionen vorhersagt und könnte verwendet werden, um vorgeschlagene Aktionen zu ermitteln, wie vorstehend erläutert. Die Rückmeldung kann auf eine oder mehrere Arten behandelt werden bevor sie auf dem Server gespeichert oder verwendet werden, sodass personenbezogene Informationen entfernt werden. So können beispielsweise die Daten so behandelt werden, dass keine persönlichen Informationen für den Benutzer ermittelt werden können, oder ein geografischer Standort eines Benutzers kann verallgemeinert werden, wo die Standortinformation erhalten wird (wie beispielsweise zu einer Stadt, einer Postleitzahl oder einer Landesebene). Bei einigen Implementierungen kann der Server das mobile Gerät periodisch mit Koeffizienten versehen und das mobile Gerät kann die Koeffizienten verwenden, um einen Algorithmus auszuführen, um die Wahrscheinlichkeit einer für einen Benutzer relevanten Aktion vorherzusagen, sodass das mobile Gerät eine Vorhersage ohne Kommunikation mit dem Server für jede Vorhersage durchführen kann. Das mobile Gerät kann den Server periodisch mit historischen Daten aktualisieren, die der Server verwenden kann, um aktualisierte Koeffizienten zu berechnen. Der Server kann die aktualisierten Koeffizienten dem mobilen Gerät bereitstellen. Bei einigen Implementierungen kann das Benutzergerät einen eigenen Maschinenlernalgorithmus betreiben um Vorhersagekoeffizienten zu ermitteln, was die Notwendigkeit der Kommunikation mit jedem anderen Computer überflüssig macht.
  • 6 zeigt eine exemplarische Benutzerschnittstelle 600 zum Auswählen von Standardaktionen. In der exemplarischen Schnittstelle 600 sind die vorgeschlagenen Aktionen für Kontakte in einem Kontaktdatenspeicher identifiziert. Selbstverständlich kann das System eine äquivalente Benutzerschnittstelle zum Auswählen von Standardaktionen für andere Entitätstypen, wie Filme, Restaurants, Plätze usw. bereitstellen. Im Beispiel von 6 stellt die Benutzerschnittstelle 600 eine Schnittstelle bereit, die es einem Benutzer ermöglicht, festzulegen, welche vorgeschlagenen Aktionen in einer Aktionskarte für einen Kontakt angezeigt werden sollen. Die Benutzerschnittstelle kann dem Benutzer einen Mechanismus oder eine Steuerung zur Auswahl der bevorzugten Aktionen und wahlweise zum Einstufen der Aktionen bereitstellen. Die Benutzerschnittstelle 600 stellt beispielsweise einen Listeneintrag für jede mögliche Aktion bereit. Jede Aktion kann ein Symbol wie das Symbol 605 beinhalten, das die Aktion auf der Aktionskarte darstellt. Darüber hinaus kann die Benutzerschnittstelle 600 eine Steuerung, wie beispielsweise ein Dropdown 650, bereitstellen. Die Steuerung kann dem Benutzer ermöglichen, die vorgeschlagene Aktion als Standardaktion auszuwählen. Bei einigen Implementierungen, wie beispielsweise in 6 dargestellt, kann die Steuerung dem Benutzer auch ermöglichen, die Standardaktion einzustufen und das System kann den Rang verwenden, um die Aktionskarte zu erzeugen, sodass die am höchsten eingestuften Standardaktion zuerst erscheint. Bei einigen Implementierungen kann das System die Ranglisten verwenden, um die vorgeschlagenen Aktionen zu ermitteln. Wenn der Kontaktdatenspeicher zum Beispiel keine E-Mail-Adresse für den Kontakt aufweist, kann das System diese Standardaktion überspringen und die nächste eingestufte Standardaktion verwenden. Somit kann die Benutzerschnittstelle 600 dem Benutzer ermöglichen zu ermitteln, welche Aktionen auf der Aktionskarte erscheinen sollen und in welcher Reihenfolge sie erscheinen sollen.
  • 7 zeigt ein Beispiel eines generischen Computergeräts 700, das als System 100 und/oder Client 170 betrieben werden kann, aus 1, der mit den hierin beschriebenen Techniken verwendet werden kann. Das Computergerät 700 soll verschiedene exemplarische Formen von Computergeräten darstellen, wie beispielsweise Laptops, Desktops, Workstations, persönliche digitale Assistenten, Mobiltelefone, Smartphones, Tablets, Server und andere Computergeräte, einschließlich tragbarer Geräte. Die hierin dargestellten Komponenten, ihre Verbindungen und Beziehungen und ihre Funktionen sollen nur Beispiele darstellen und sind nicht dazu bestimmt, die Implementierungen der in diesem Dokument beschriebenen und/oder beanspruchten Erfindungen zu beschränken.
  • Das Computergerät 700 beinhaltet einen Prozessor 702, einen Speicher 704, ein Speichergerät 706 und Expansionsports 710, die über eine Schnittstelle 708 verbunden sind. Bei einigen Implementierungen kann das Computergerät 700 einen Transceiver 746, eine Kommunikationsschnittstelle 744 und ein GPS (Global Positioning System) Empfangsmodul 748 beinhalten, das unter anderem über die Schnittstelle 708 verbunden ist. Das Gerät 700 kann drahtlos über die Verbindungsschnittstelle 744 kommunizieren, die gegebenenfalls eine digitale Signalverarbeitungsschaltung beinhalten kann. Jede der Komponenten 702, 704, 706, 708, 710, 740, 744, 746 und 748 kann auf einem gemeinsamen Motherboard oder auf andere Weise entsprechend montiert werden.
  • Der Prozessor 702 kann Anweisungen zur Ausführung innerhalb des Computergeräts 700 verarbeiten, einschließlich Anweisungen, die in dem Speicher 704 oder auf dem Speichergerät 706 gespeichert sind, um graphische Informationen für eine GUI auf einem externen Eingabe/Ausgabegerät, wie beispielsweise der Anzeige 716, anzuzeigen. Die Anzeige 716 kann ein Monitor oder ein flaches Touchscreen-Display sein. Bei einigen Implementierungen können, je nach Bedarf, mehrere Prozessoren und/oder mehrere Busse zusammen mit mehreren Speichern und Speicherarten verwendet werden. Außerdem können mehrere Computergeräte 700 verbunden sein, wobei jedes Gerät Teile der notwendigen Operationen bereitstellt (z. B. als Serverbank, eine Gruppe von Blade-Servern oder ein Mehrprozessorsystem).
  • Der Speicher 704 zeichnet Informationen innerhalb des Computergeräts 700 auf. In einer Implementierung ist der Speicher 704 eine flüchtige Speichereinheit oder Einheiten. In einer Implementierung ist der Speicher 704 eine flüchtige Speichereinheit oder Einheiten. Der Speicher 704 kann auch eine andere Form eines computerlesbaren Mediums sein, wie beispielsweise ein magnetisches oder optisches Laufwerk. Bei einigen Implementierungen kann der Speicher 704 einen Erweiterungsspeicher beinhalten, der durch eine Erweiterungsschnittstelle bereitgestellt wird.
  • Das Speichergerät 706 ist dazu geeignet, Massenspeicherung für das Computergerät 700 bereitzustellen. In einer Implementierung kann das Speichergerät 706 ein computerlesbares Medium, wie beispielsweise ein Diskettenlaufwerk, ein Festplattenlaufwerk, ein optisches Laufwerk oder ein Bandgerät, ein Flash-Speicher oder andere ähnliche Speichermedien ein Array sein, einschließlich Vorrichtungen in einem Speichernetzwerk oder anderen Konfigurationen, beinhalten. Ein Computerprogrammprodukt kann fühlbar in einem derartigen computerlesbaren Medium verkörpert sein. Das Computerprogrammprodukt kann auch Anweisungen beinhalten, die, wenn sie ausgeführt werden, ein oder mehrere Verfahren, wie vorstehend beschrieben, ausführen. Das computer- oder maschinenlesbare Medium ist ein Speichergerät, wie beispielsweise der Speicher 704, das Speichergerät 706 oder der Speicher auf dem Prozessor 702.
  • Die Schnittstelle 708 kann eine Hochgeschwindigkeitssteuerung sein, die bandbreitenintensive Operationen für das Computergerät 700 oder eine Niedergeschwindigkeitssteuerung verwaltet, der niedrigere bandbreitenintensive Operationen verwaltet, oder eine Kombination derartiger Steuerungen. Eine externe Schnittstelle 740 kann vorgesehen sein, um eine Nahbereichskommunikation des Geräts 700 mit anderen Geräten zu ermöglichen. Bei einigen Implementierungen kann die Steuerung 708 mit dem Speichergerät 706 und dem Erweiterungsport 714 gekoppelt sein. Der Erweiterungsport, der verschiedene Kommunikationsschnittstellen (z. B. USB, Bluetooth, Ethernet, drahtloses Ethernet) beinhalten kann, kann z. B. über einen Netzwerkadapter mit einem oder mehreren Eingabe/Ausgabegeräten wie einer Tastatur, einem Zeigegerät, einem Scanner oder einer Netzwerkvorrichtung gekoppelt sein.
  • Das Computergerät 700 kann in einer Reihe verschiedener Formen implementiert werden, wie in der Figur dargestellt. So kann es beispielsweise als ein Standardserver 730 oder mehrfach in einer Gruppe derartiger Server implementiert sein. Es kann auch als Teil einer Rack-Serversystems implementiert sein. Darüber hinaus kann es in einem Computergerät, wie beispielsweise einem Laptop-Computer 732, einem Personalcomputer 734 oder einem Tablet/Smartphone/Handheld/tragbarem Gerät 736 implementiert sein. Ein Gesamtsystem kann aus mehreren Computergeräten 700 bestehen, die miteinander kommunizieren. Andere Konfigurationen sind möglich.
  • 8 zeigt ein Beispiel eines generischen Computergeräts 800, was das System 100 aus 1 sein kann, welches mit den hier beschriebenen Techniken verwendet werden kann. Das Computergerät 800 soll verschiedene exemplarische Formen von großformatigen Datenverarbeitungsgeräten darstellen, wie beispielsweise Server, Bladeserver, Datencenter, Großrechner und andere Großrecheneinrichtungen. Das Computergerät 800 kann ein verteiltes System mit mehreren Prozessoren sein, die möglicherweise netzwerkbasierte Speicherknoten beinhalten, die durch ein oder mehrere Kommunikationsnetzwerke miteinander verbunden sind. Die hierin dargestellten Komponenten, ihre Verbindungen und Beziehungen und ihre Funktionen sollen nur Beispiele darstellen und sind nicht dazu bestimmt, die Implementierungen der in diesem Dokument beschriebenen und/oder beanspruchten Erfindungen zu beschränken.
  • Das verteilte Computersystem 800 kann eine beliebige Anzahl von Computergeräten 880 beinhalten. Die Computergeräte 880 können einen Server oder Rack-Server, Großrechner usw. beinhalten, die über ein lokales oder ein Weitverkehrsnetz, dedizierte optische Verbindungen, Modems, Brücken, Router, Switches, verdrahtete oder drahtlose Netzwerke usw. kommunizieren.
  • Bei einigen Implementierungen kann jedes Computergerät mehrere Racks beinhalten. Das Computergerät 880a beinhaltet beispielsweise mehrere Racks 858a858n. Jedes Rack kann einen oder mehrere Prozessoren, wie beispielsweise die Prozessoren 852a852n und 862a862n beinhalten. Die Prozessoren können Datenprozessoren, netzgebundene Speichergeräte und andere computergesteuerte Geräte beinhalten. Bei einigen Implementierungen kann ein Prozessor als ein Master-Prozessor arbeiten und die Planungs- und Datenverteilungsaufgaben steuern. Die Prozessoren können durch einen oder mehrere Rackschalter 858 miteinander verbunden sein, und ein oder mehrere Racks können über den Schalter 878 verbunden sein. Der Schalter 878 kann die Kommunikation zwischen mehreren verbundenen Computergeräten 800 handhaben.
  • Jedes Rack kann Speicher beinhalten, wie beispielsweise Speicher 854 und Speicher 864 und Speicher, wie beispielsweise 856 und 866. Die Speicher 856 und 866 können einen Massenspeicher bereitstellen und flüchtige oder nichtflüchtige Speicher, wie beispielsweise netzwerkbasierte Festplatten, Disketten, Festplatten, optische Laufwerke Bänder, Flash-Speicher oder andere ähnliche Festkörper-Speichergeräte oder eine Anordnung von Geräten, einschließlich Geräte in einem Speichernetzwerk oder anderen Konfigurationen beinhalten. Der Speicher 856 oder 866 kann zwischen mehreren Prozessoren, mehreren Racks oder mehreren Computergeräten gemeinsam genutzt werden und kann ein computerlesbares Medium beinhalten, das Anweisungen speichert, die von einem oder mehreren der Prozessoren ausführbar sind. Der Speicher 854 und 864 kann z. B. eine flüchtige Speichereinheit oder Einheiten, eine nichtflüchtige Speichereinheit oder Einheiten und/oder andere Formen von computerlesbaren Medien, wie beispielsweise magnetische oder optische Disketten, einen Flash-Speicher, einen Cache, einen Direktzugriffsspeicher (RAM), einen Nur-Lese-Speicher (ROM) und Kombinationen davon beinhalten. Speicher, wie beispielsweise Speicher 854 können auch von den Prozessoren 852a852n gemeinsam genutzt werden. Datenstrukturen, wie beispielsweise ein Index, können zum Beispiel über den Speicher 856 und den Speicher 854 gespeichert werden. Das Computergerät 800 kann andere Komponenten beinhalten, die nicht gezeigt sind, wie beispielsweise Steuerungen, Busse, Eingabe/Ausgabegeräte, Kommunikationsmodule usw.
  • Ein Gesamtsystem, wie beispielsweise das System 100, kann aus mehreren Computergeräten 800 bestehen, die miteinander kommunizieren. So kann beispielsweise das Gerät 880a mit den Geräten 880b, 880c und 880d kommunizieren und diese sind kollektiv als System 100 bekannt. Als ein anderes Beispiel kann das System 100 von 1 ein oder mehrere Computergeräte 800 beinhalten. Einige der Computergeräte können geographisch nahe beieinanderliegen, und andere können geographisch entfernt angeordnet sein. Das Layout des Systems 800 ist nur ein Beispiel und das System kann andere Layouts oder Konfigurationen annehmen.
  • Gemäß bestimmten Aspekten der Offenbarung beinhaltet ein Verfahren das Durchführen einer Erkennung auf Inhalte, die von einer Anzeige eines mobilen Geräts erfasst werden, Identifizieren einer Vielzahl von Entitäten in dem Inhalt und Ausgeben einer jeweiligen Abfrage für jede der Vielzahl von Entitäten. Das Verfahren beinhaltet auch das Einreihen einer Vielzahl von Entitäten basierend auf den für die jeweiligen Abfragen zurückgegebenen Suchergebnisse, Erzeugen einer entsprechenden Aktionskarte für zumindest einige der am höchsten eingereihten Entitäten und Bereitstellen der Aktionskarten zur Anzeige für einen Benutzer des mobilen Geräts.
  • Diese und andere Aspekte können eines oder mehrere der folgenden Merkmale beinhalten. So kann beispielsweise das Ausgeben einer Abfrage für eine erste Entität der Vielzahl von Entitäten das Ermitteln, unter Verwendung eines Namensklassifikators beinhalten, dass die erste Entität ein Name sein kann, Abfragen eines Kontaktdatenspeichers, der dem Benutzer des mobilen Geräts unter Verwendung der ersten Entität zugeordnet ist, und Zurückgeben von Informationen aus dem Kontaktdatenspeicher als Suchergebnisse für die Abfrage, wenn die erste Entität einem Kontakt in dem Kontaktdatenspeicher entspricht. Bei einer derartigen Implementierung kann das Ausgeben der Abfrage für die erste Entität auch das Ausgeben der Abfrage für die erste Entität zu einer Suchmaschine beinhalten, wenn die erste Entität einem Kontakt in dem Kontaktdatenspeicher nicht entspricht. Als ein weiteres Beispiel beinhalten die Suchresultate für eine Abfrage Informationen bezüglich der Beliebtheit der Abfrage und eine Entität, die einer beliebten Abfrage entspricht, kann eine Rangerhöhung empfangen. Als ein weiteres Beispiel kann eine Entität der Vielzahl von Entitäten mit Suchergebnissen, die Ergebnisse von einem grafischen Datenspeicher beinhalten, eine Rangerhöhung empfangen. Als weiteres Beispiel kann das Erzeugen der Aktionskarte für eine erste Entität das Identifizieren eines Links in den Suchergebnissen und das Bestimmen, dass eine Domain dem Link einer mobilen Anwendung entspricht, die auf dem mobilen Gerät installiert ist, beinhalten, worin die Aktionskarte eine Aktion beinhaltet, die die mobile Anwendung öffnet. Als ein weiteres Beispiel kann eine erste Entität der Vielzahl von Entitäten einem Kontakt in einem Kontaktdatenspeicher entsprechen und das Erzeugen der Aktionskarte für die erste Entität kann das Bestimmen von Standardaktionen beinhalten, die vom Benutzer für Kontaktentitäten ausgewählt werden, und das Erzeugen der Aktionskarte unter Verwendung von Informationen aus dem Kontaktdatenspeicher für den Kontakt, der den Standardaktionen entspricht.
  • Gemäß bestimmten Aspekten der Offenbarung umfasst ein System mindestens einen Prozessor; ein indiziertes Dokumentkorpus, einen graphischen Datenspeicher und Speicheranweisungen, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, das System veranlassen, Operationen durchzuführen. Die Operationen können das Durchführen einer Erkennung für Inhalte beinhalten, die von einer Anzeige eines mobilen Geräts erfasst werden und eine Vielzahl von Entitäten in dem Inhalt identifizieren. Für jede der Vielzahl von Entitäten können die Operationen auch das Ausgeben einer jeweiligen Abfrage zu einer Suchmaschine für die Entität beinhalten, wobei die Suchmaschine den graphischen Datenspeicher und den indizierten Dokumentenkorpus durchsucht, um Suchergebnisse für die Entität zu erzeugen. Die Operationen können ferner das Klassifizieren der mehreren Entitäten basierend auf den Suchergebnissen und das Bereitstellen der Mehrzahl von Entitäten mit entsprechenden Rang- und Suchergebnissen zu dem mobilen Gerät beinhalten, wobei das mobile Gerät Aktionskarten für zumindest einige der am höchsten eingestuften Entitäten erzeugt, die unter Verwendung der jeweiligen Suchergebnisse erzeugt werden.
  • Diese und andere Aspekte können eines oder mehrere der folgenden Merkmale beinhalten. Eine erste Entität kann beispielsweise der Vielzahl von Entitäten, die eine entsprechende Entität in dem graphischen Datenspeicher aufweist, eine Rangerhöhung empfangen. Als ein weiteres Beispiel kann das Einstufen der Vielzahl von Entitäten das Bestimmen einer Abfragehäufigkeit, die sich auf eine erste Entität bezieht beinhalten; und den Rang der ersten Entität erhöhen, wenn die Frequenz einen Schwellenwert erfüllt oder größer ist als eine Abfragehäufigkeit, die sich auf eine zweite Einheit bezieht.
  • Gemäß bestimmten Aspekten umfasst ein System einen Kontaktdatenspeicher, mindestens einen Prozessor und Speicher, die Anweisungen speichern, die, wenn sie von dem mindestens einen Prozessor ausgeführt werden, das System veranlassen, Operationen durchzuführen. Die Operationen können das Durchführen einer Erkennung eines Inhalts, der auf einer Anzeige eines mobilen Geräts angezeigt wird, Identifizieren einer Einheit in dem Inhalt, und Ermitteln wenigstens eines Kontakts in dem Kontaktdatenspeicher, der der Entität entspricht, beinhalten. Die Operationen können auch das Erzeugen einer Aktionskarte für die Entität beinhalten, wobei die Aktionskarte eine erste Aktion aufweist, die erste Informationen aus dem Kontaktdatenspeicher für den Kontakt und eine zweite Aktion verwendet, die zweite Informationen aus dem Kontaktdatenspeicher für den Kontakt verwendet und Anzeige der Aktionskarte auf dem Display.
  • Diese und andere Aspekte können eines oder mehrere der folgenden Merkmale beinhalten. Die Entität ist beispielsweise eine erste Entität, und die Aktionskarte ist eine erste Aktionskarte, und der Speicher speichert weiter Anweisungen, die bei Ausführung durch den mindestens einen Prozessor das mobile Gerät dazu veranlassen, eine zweite Entität im Inhalt zu identifizieren, eine zweite Entität im Inhalt zu identifizieren, für die zweite Entität, eine Abfrage an eine Suchmaschine, ausgibt, die Abfrage, die die zweite Entität beinhaltet, von der Suchmaschine Ergebnisse für die Abfrage empfängt, die auf der Grundlage der Ergebnisse, die der zweiten Entität zugeordnet sind, zu identifizieren, eine zweite Aktionskarte mit den identifizierten Aktionen zu erzeugen und die zweite Aktionskarte mit der ersten Aktionskarte auf dem Display anzuzeigen. Bei einigen dieser Implementierungen kann die erste Aktionskarte in einer Position auf der Grundlage der ersten Entität, die dem Kontakt entspricht, angezeigt werden. Alternativ oder zusätzlich können derartige Implementierungen auch einen graphischen Datenspeicher beinhalten, worin die Ergebnisse für die Abfrage Informationen aus dem graphischen Datenspeicher für die zweite Entität beinhalten.
  • Als ein weiteres Beispiel kann die erste Aktion eine erste mobile Anwendung einleiten und die zweite Aktion kann eine zweite mobile Anwendung einleiten. Darüber hinaus kann der Speicher Speicherbefehle speichern, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das mobile Gerät eine Auswahl der ersten Aktion empfängt und die erste mobile Anwendung unter Verwendung der ersten Information startet. Als ein weiteres Beispiel kann das Durchführen einer Erkennung des Inhalts, der auf dem Display angezeigt wird, das Erkennen von Zugänglichkeitsdaten beinhalten, die für den auf dem Display angezeigten Inhalt erzeugt werden. Als weiteres Beispiel kann das Identifizieren der Entität die Verwendung eines Namensklassifikators beinhalten, um einen Satz von Wörtern zu ermitteln, der einen Namen darstellen kann. Als ein weiteres Beispiel kann die Entität eine erste Entität sein, die Aktionskarte kann eine erste Aktionskarte sein und der Kontakt kann ein erster Kontakt sein und der Speicher speichert ferner Anweisungen, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, das mobile Gerät veranlassen, einen zweiten Kontakt im Kontaktdatenspeicher zu ermitteln, der einer im Inhalt identifizierten zweiten Entität entspricht, eine zweite Aktionskarte für den zweiten Kontakt erzeugt, eine Häufigkeit von Interaktionen für den ersten Kontakt ermittelt, die höher sind als eine Häufigkeit von Interaktionen für den zweiten Kontakt, und Anzeigen der ersten Aktionskarte in einer wichtigen Position in Bezug auf die zweite Aktionskarte.
  • Als ein weiteres Beispiel kann der Kontakt ein erster Kontakt sein, und der Speicher speichert weiter Anweisungen, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, das mobile Gerät dazu veranlassen können, einen zweiten Kontakt in dem Kontaktdatenspeicher zu ermitteln, der der Entität entspricht, Ermitteln einer Häufigkeit von Interaktionen für den ersten Kontakt, der höher ist als eine Häufigkeit von Interaktionen für den zweiten Kontakt; und auswählen des ersten Kontakts entsprechend der Entität. Als ein weiteres Beispiel kann der Kontaktdatenspeicher ein Kontaktdatenspeicher für einen Benutzer des mobilen Geräts sein, der entfernt von dem mobilen Gerät gespeichert ist.
  • Verschiedene Implementierungen können die Implementierung in einem oder mehreren Computerprogrammen beinhalten, die auf einem programmierbaren System ausführbar und/oder interpretierbar sind, das mindestens einen programmierbaren Prozessor beinhaltet, der speziell oder allgemein verwendbar ist, um Daten und Anweisungen von einem Speichersystem zu empfangen und Daten an ein Speichersystem zu übertragen mit mindestens einem Eingabegerät und mindestens einem Ausgabegerät.
  • Diese Computerprogramme (auch bekannt als Programme, Software, Softwareanwendungen oder Code) beinhalten Maschinenanweisungen für einen programmierbaren Prozessor und können in einer höheren prozeduralen und/oder objektorientierten Programmiersprache und/oder in Assembler-/Maschinensprache implementiert werden. Wie hierin verwendet, beziehen sich die Begriffe „maschinenlesbares Medium” „computerlesbares Medium” auf ein nichtflüchtiges Computerprogrammprodukt, ein Apparat und/oder Gerät (z. B. Magnetplatten, optische Platten, Speicher (einschließlich Lesezugriffsspeicher) programmierbare Logikgeräte (Programmable Logic Devices-PLDs)) die verwendet werden, um Maschinenbefehle und/oder Daten an einen programmierbaren Prozessor zu liefern.
  • Die hierin beschriebenen Systeme und Techniken können in einem Computersystem implementiert sein, das eine Back-End-Komponente beinhaltet (z. B. als Datenserver), oder das eine Middleware-Komponente beinhaltet (z. B. einen Anwendungsserver), oder das eine Front-End-Komponente beinhaltet (z. B. ein Client-Computer mit einer grafischen Benutzeroberfläche oder einem Webbrowser, über welche ein Benutzer mit einer Implementierung der hier beschriebenen Systeme und Techniken interagieren kann) oder Kombination derartiger Back-End-, Middleware- und Front-End-Komponenten. Die Komponenten des Systems können durch jede Form oder ein Medium digitaler Datenkommunikation (z. B. ein Kommunikationsnetzwerk) miteinander verbunden sein. Beispiele für Kommunikationsnetze beinhalten ein lokales Netzwerk (LAN), ein Weitverkehrsnetz (WAN) und das Internet.
  • Das Computersystem kann Clients und Server beinhalten. Client und Server sind generell voneinander entfernt und interagieren in der Regel über ein Kommunikationsnetzwerk. Die Beziehung von Client und Server ergibt sich durch Computerprogramme, die auf den jeweiligen Computern ausgeführt werden und eine Client-Server-Beziehung zueinander haben.
  • Eine Anzahl an Implementierungen wurde beschrieben. Dennoch können unterschiedliche Modifikationen vorgenommen werden, ohne von dem Gedanken und Umfang der Offenbarung abzuweichen. Außerdem erfordern die in den beigefügten Figuren dargestellten Logikströme nicht unbedingt die gezeigte spezielle Reihenfolge oder fortlaufende Reihenfolge, um die erwünschten Ergebnisse zu erzielen. Darüber hinaus können andere Schritte aus den beschriebenen Strömen bereitgestellt werden oder Schritte aus den beschriebenen Strömen entfernt werden, und andere Komponenten können zu den beschriebenen Systemen hinzugefügt oder von diesen entfernt werden. Dementsprechend liegen andere Implementierungen innerhalb des Umfangs der folgenden Ansprüche.

Claims (18)

  1. Verfahren, umfassend: das Durchführen einer Erkennung für Inhalte, die von einer Anzeige eines mobilen Geräts erfasst werden; das Identifizieren einer Vielzahl von Entitäten im Inhalt; das Ausgeben einer entsprechenden Abfrage für jede der Vielzahl von Entitäten; das Einstufen der Vielzahl von Entitäten basierend auf den für die jeweiligen Abfragen zurückgegebenen Suchergebnissen; das Erzeugen einer entsprechenden Aktionskarte für zumindest einige der am höchsten eingestuften Entitäten; und das Bereitstellen der Aktionskarten zur Anzeige für einen Benutzer des mobilen Geräts.
  2. Verfahren nach Anspruch 1, worin das Ausgeben einer Abfrage für eine erste Entität der Vielzahl von Entitäten beinhaltet: das Ermitteln unter Verwendung eines Namensklassifikators, dass die erste Entität ein Name sein kann; das Abfragen eines Kontaktdatenspeichers, der dem Benutzer des mobilen Geräts zugeordnet ist, unter Verwendung der ersten Entität; und das Ausgeben von Informationen aus dem Kontaktdatenspeicher als Suchergebnis für die Abfrage, wenn die erste Entität einem Kontakt im Kontaktdatenspeicher entspricht.
  3. Verfahren nach Anspruch 2, worin das Ausgeben einer Abfrage für eine erste Entität ferner beinhaltet: das Ausgeben der Abfrage für die erste Entität zu einer Suchmaschine, wenn die erste Entität einem Kontakt in dem Kontaktdatenspeicher nicht entspricht.
  4. Verfahren nach irgendeinem der Ansprüche 1 bis 3, worin die Suchergebnisse für eine Abfrage Informationen bezüglich der Beliebtheit der Abfrage beinhalten und eine Entität, die einer beliebten Abfrage entspricht, eine Rangerhöhung empfängt.
  5. Verfahren nach irgendeinem der Ansprüche 1 bis 4, worin eine Entität der Vielzahl von Entitäten mit Suchergebnissen, die Ergebnisse aus einem grafischen Datenspeicher beinhaltet, eine Rangerhöhung empfängt.
  6. Verfahren nach irgendeinem der Ansprüche 1 bis 5, worin das Erzeugen der Aktionskarte für eine erste Entität beinhaltet: das Identifizieren eines Links in den Suchergebnissen; und das Ermitteln, dass eine Domain für den Link einer auf dem mobilen Gerät installierten mobilen Anwendung entspricht, worin die Aktionskarte eine Aktion beinhaltet, die die mobile Anwendung öffnet.
  7. Verfahren nach irgendeinem der Ansprüche 1 bis 6, worin eine erste Entität der Vielzahl von Entitäten einem Kontakt in einem Kontaktdatenspeicher entspricht und die Aktionskarte für die erste Entität erzeugt: das Ermitteln von Standardaktionen, die vom Benutzer für Kontaktentitäten ausgewählt werden; und das Erzeugen der Aktionskarte unter Verwendung von Informationen aus dem Kontaktdatenspeicher für den Kontakt, der den Standardaktionen entspricht.
  8. System, umfassend: mindestens einen Prozessor; ein indiziertes Dokumentkorpus; einen graphischen Datenspeicher; und Speicheranweisungen, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden bewirken, dass das System Operationen ausführt, die Folgendes umfassen: das Durchführen einer Erkennung für Inhalte, die von einer Anzeige eines mobilen Geräts erfasst werden, das Identifizieren einer Vielzahl von Entitäten im Inhalt, das Ausgeben einer jeweiligen Abfrage zu einer Suchmaschine für die Entität für jede der Vielzahl von Entitäten, wobei die Suchmaschine den graphischen Datenspeicher und den indizierten Dokumentenkorpus durchsucht, um Suchergebnisse für die Entität zu erzeugen, das Einstufen der Vielzahl von Entitäten basierend auf ihren jeweiligen Suchergebnissen, und das Bereitstellen der Vielzahl von Entitäten mit einem entsprechenden Rang und entsprechenden Suchergebnissen an das mobile Gerät, wobei das mobile Gerät Aktionskarten für zumindest einige der am höchsten eingestuften Entitäten erzeugt, wobei die Aktionskarten unter Verwendung der jeweiligen Suchergebnisse für die am höchsten eingestuften Entitäten erzeugt werden.
  9. System nach Anspruch 8, worin eine erste Entität der Vielzahl von Entitäten, die eine entsprechende Entität in dem graphischen Datenspeicher aufweisen, eine Rangerhöhung empfangen.
  10. System nach Anspruch 8 oder 9, worin das Einstufen der Vielzahl von Entitäten Folgendes beinhaltet: das Ermitteln einer Abfragehäufigkeit die sich auf eine erste Entität bezieht; und das Erhöhen des Ranges der ersten Entität, wenn die Frequenz einen Schwellenwert erfüllt oder größer ist als eine Abfragehäufigkeit, die sich auf eine zweite Entität bezieht.
  11. System, umfassend: einen Kontaktdatenspeicher; mindestens einen Prozessor; und Speicheranweisungen, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden bewirken, dass das System: eine Erkennung für Inhalte durchführt, die auf einem Display eines mobilen Geräts angezeigt werden; eine Vielzahl von Entitäten im Inhalt identifiziert; mindestens einen Kontakt im Kontaktdatenspeicher, der der Entität entspricht ermittelt; eine Aktionskarte für die Entität erzeugt, wobei die Aktionskarte eine erste Aktion aufweist, die erste Informationen aus dem Kontaktdatenspeicher für den Kontakt und eine zweite Aktion verwendet, die zweite Informationen aus dem Kontaktdatenspeicher für den Kontakt verwendet; und die Aktionskarte auf dem Display anzeigt.
  12. System nach Anspruch 11, worin die Entität eine erste Entität und die Aktionskarte eine erste Aktionskarte ist und der Speicher Anweisungen speichert, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das mobile Gerät: eine zweite Entität im Inhalt identifiziert; für die zweite Entität eine Abfrage an eine Suchmaschine ausgibt, wobei die Abfrage die zweite Entität beinhaltet; Ergebnisse für die Abfrage von der Suchmaschine empfängt; Aktionen identifiziert, die der zweiten Entität basierend auf den Ergebnissen zugeordnet sind; eine zweite Aktionskarte mit den identifizierten Aktionen erzeugt; und die zweite Aktionskarte mit der ersten Aktionskarte auf dem Display anzeigt.
  13. System nach Anspruch 12, worin die erste Aktionskarte in einer Position auf der Grundlage der ersten Entität, die dem Kontakt entspricht, angezeigt wird.
  14. System nach Anspruch 12 oder 13, ferner umfassend: einen graphischen Datenspeicher, worin die Ergebnisse für die Abfrage Informationen aus dem graphischen Datenspeicher für die zweite Entität beinhalten.
  15. System nach irgendeinem der Ansprüche 11 bis 14, worin die erste Aktion eine erste mobile Anwendung einleitet und die zweite Aktion eine zweite mobile Anwendung einleitet.
  16. System nach Anspruch 15, worin der Speicher ferner Anweisungen speichert, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das mobile Gerät: eine Auswahl der ersten Aktion empfängt; und die erste mobile Anwendung mit den ersten Informationen startet.
  17. System nach Anspruch 11 bis 16, worin die Entität eine erste Entität und die Aktionskarte eine erste Aktionskarte ist und der Kontakt ein erster Kontakt ist und der Speicher ferner Anweisungen speichert, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das mobile Gerät: einen zweiten Kontakt im Kontaktdatenspeicher, der einer zweiten Entität entspricht, die in dem Inhalt identifiziert ist, ermittelt; eine zweite Aktionskarte für den zweiten Kontakt erzeugt; eine Häufigkeit von Interaktionen für den ersten Kontakt, die höher ist als eine Häufigkeit von Interaktionen für den zweiten Kontakt ermittelt; und die erste Aktionskarte in einer wichtigen Position in Bezug auf die zweite Aktionskarte anzeigt.
  18. System nach irgendeinem der Ansprüche 11 bis 17, worin der Kontakt ein erster Kontakt ist und der Speicher ferner Anweisungen speichert, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das mobile Gerät: einen zweiten Kontakt im Kontaktdatenspeicher, der der Entität entspricht ermittelt; eine Häufigkeit von Interaktionen für den ersten Kontakt, die höher ist als eine Häufigkeit von Interaktionen für den zweiten Kontakt ermittelt; und den ersten Kontakt entsprechend der Entität auswählt.
DE112015003826.4T 2014-08-21 2015-08-21 Bereitstellen von automatischen Aktionen für mobile Bildschirminhalte Pending DE112015003826T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/465,265 US9965559B2 (en) 2014-08-21 2014-08-21 Providing automatic actions for mobile onscreen content
US14/465,265 2014-08-21
PCT/US2015/046268 WO2016029099A1 (en) 2014-08-21 2015-08-21 Providing automatic actions for mobile onscreen content

Publications (1)

Publication Number Publication Date
DE112015003826T5 true DE112015003826T5 (de) 2017-06-01

Family

ID=54012327

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112015003826.4T Pending DE112015003826T5 (de) 2014-08-21 2015-08-21 Bereitstellen von automatischen Aktionen für mobile Bildschirminhalte

Country Status (5)

Country Link
US (2) US9965559B2 (de)
CN (1) CN106663109B (de)
DE (1) DE112015003826T5 (de)
GB (1) GB2543198B (de)
WO (1) WO2016029099A1 (de)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2587745A1 (de) * 2011-10-26 2013-05-01 Swisscom AG Verfahren und System zum Erhalt von Kontaktinformationen für eine Person oder eine Entität
US9824079B1 (en) 2014-07-11 2017-11-21 Google Llc Providing actions for mobile onscreen content
US10142697B2 (en) * 2014-08-28 2018-11-27 Microsoft Technology Licensing, Llc Enhanced interactive television experiences
US10853470B2 (en) * 2014-12-29 2020-12-01 Samsung Electronics Co., Ltd. Configuration of applications to desired application states
US9703541B2 (en) 2015-04-28 2017-07-11 Google Inc. Entity action suggestion on a mobile device
US9940637B2 (en) 2015-06-05 2018-04-10 Apple Inc. User interface for loyalty accounts and private label accounts
US10078803B2 (en) 2015-06-15 2018-09-18 Google Llc Screen-analysis based device security
US10803391B2 (en) * 2015-07-29 2020-10-13 Google Llc Modeling personal entities on a mobile device using embeddings
US10970646B2 (en) 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10178527B2 (en) 2015-10-22 2019-01-08 Google Llc Personalized entity repository
US10055390B2 (en) 2015-11-18 2018-08-21 Google Llc Simulated hyperlinks on a mobile device based on user intent and a centered selection of text
KR20180070659A (ko) 2015-12-21 2018-06-26 구글 엘엘씨 메시징 애플리케이션들을 위한 자동적인 제안들 및 다른 콘텐츠
US10530723B2 (en) 2015-12-21 2020-01-07 Google Llc Automatic suggestions for message exchange threads
US20170185653A1 (en) * 2015-12-29 2017-06-29 Quixey, Inc. Predicting Knowledge Types In A Search Query Using Word Co-Occurrence And Semi/Unstructured Free Text
US20170193087A1 (en) * 2015-12-31 2017-07-06 Quixey, Inc. Real-Time Markup of User Text with Deep Links
US10769731B2 (en) * 2016-01-26 2020-09-08 Facebook, Inc. Adding paid links to media captions in a social networking system
US10185474B2 (en) * 2016-02-29 2019-01-22 Verizon Patent And Licensing Inc. Generating content that includes screen information and an indication of a user interaction
US9870623B2 (en) * 2016-05-14 2018-01-16 Google Llc Segmenting content displayed on a computing device into regions based on pixels of a screenshot image that captures the content
US10291565B2 (en) 2016-05-17 2019-05-14 Google Llc Incorporating selectable application links into conversations with personal assistant modules
GB2550448A (en) * 2016-05-17 2017-11-22 Google Inc Augmenting message exchange threads
US11227017B2 (en) * 2016-05-17 2022-01-18 Google Llc Providing suggestions for interaction with an automated assistant in a multi-user message exchange thread
US10263933B2 (en) 2016-05-17 2019-04-16 Google Llc Incorporating selectable application links into message exchange threads
US10409876B2 (en) * 2016-05-26 2019-09-10 Microsoft Technology Licensing, Llc. Intelligent capture, storage, and retrieval of information for task completion
WO2017209564A1 (ko) * 2016-06-02 2017-12-07 주식회사 플런티코리아 앱 리스트 제공 방법 및 그 장치
US20170357910A1 (en) * 2016-06-10 2017-12-14 Apple Inc. System for iteratively training an artificial intelligence using cloud-based metrics
US11580608B2 (en) 2016-06-12 2023-02-14 Apple Inc. Managing contact information for communication applications
US10180965B2 (en) 2016-07-07 2019-01-15 Google Llc User attribute resolution of unresolved terms of action queries
CN109952572B (zh) 2016-09-20 2023-11-24 谷歌有限责任公司 基于消息贴纸的建议响应
US10511450B2 (en) 2016-09-20 2019-12-17 Google Llc Bot permissions
US10535005B1 (en) 2016-10-26 2020-01-14 Google Llc Providing contextual actions for mobile onscreen content
US10262010B2 (en) * 2016-11-02 2019-04-16 International Business Machines Corporation Screen capture data amalgamation
CN109997111A (zh) * 2016-11-15 2019-07-09 微软技术许可有限责任公司 跨应用的内容处理
US11237696B2 (en) 2016-12-19 2022-02-01 Google Llc Smart assist for repeated actions
CN106649778B (zh) * 2016-12-27 2020-03-03 北京百度网讯科技有限公司 基于深度问答的交互方法和装置
US11630688B2 (en) * 2017-02-02 2023-04-18 Samsung Electronics Co., Ltd. Method and apparatus for managing content across applications
CN110462659A (zh) * 2017-03-06 2019-11-15 谷歌有限责任公司 共享体验
WO2018212822A1 (en) * 2017-05-16 2018-11-22 Google Inc. Suggested actions for images
US10348658B2 (en) 2017-06-15 2019-07-09 Google Llc Suggested items for use with embedded applications in chat conversations
US10404636B2 (en) 2017-06-15 2019-09-03 Google Llc Embedded programs and interfaces for chat conversations
CN107526490A (zh) * 2017-07-19 2017-12-29 联想(北京)有限公司 一种信息展示方法及电子设备
US11436521B2 (en) * 2017-08-01 2022-09-06 Meta Platforms, Inc. Systems and methods for providing contextual recommendations for pages based on user intent
JP2019057093A (ja) * 2017-09-20 2019-04-11 富士ゼロックス株式会社 情報処理装置及びプログラム
US11113604B2 (en) * 2017-11-06 2021-09-07 Google Llc Training and/or utilizing an interaction prediction model to determine when to interact, and/or prompt for interaction, with an application on the basis of an electronic communication
US10891526B2 (en) 2017-12-22 2021-01-12 Google Llc Functional image archiving
US11194967B2 (en) * 2018-03-15 2021-12-07 International Business Machines Corporation Unsupervised on-the-fly named entity resolution in dynamic corpora
CN112334892A (zh) 2018-06-03 2021-02-05 谷歌有限责任公司 选择性生成用于指导人机对话的继续的扩展响应
EP3871092A1 (de) 2018-12-07 2021-09-01 Google LLC System und verfahren zur auswahl und bereitstellung von verfügbaren aktionen von einer oder mehreren rechneranwendungen zu einem benutzer
CN109635127B (zh) * 2019-02-20 2022-06-21 云南电网有限责任公司信息中心 一种基于大数据技术的电力设备画像知识图谱构建方法
US20220291789A1 (en) * 2019-07-11 2022-09-15 Google Llc System and Method for Providing an Artificial Intelligence Control Surface for a User of a Computing Device
DE102019118965A1 (de) * 2019-07-12 2021-01-14 Workaround Gmbh Nebengerät für ein Sensor- und/oder Informationssystem sowie Sensor- und/oder Informationssystem
CN114936000B (zh) * 2019-12-26 2024-02-13 上海擎感智能科技有限公司 基于图片构架的车机交互方法、系统、介质及设备
US11054973B1 (en) 2020-06-01 2021-07-06 Apple Inc. User interfaces for managing media
US11790172B2 (en) 2020-09-18 2023-10-17 Microsoft Technology Licensing, Llc Systems and methods for identifying entities and constraints in natural language input
CN112328876B (zh) * 2020-11-03 2023-08-11 平安科技(深圳)有限公司 基于知识图谱的电子卡片生成推送方法、装置
WO2023277342A1 (en) * 2021-06-29 2023-01-05 Samsung Electronics Co., Ltd. Method and system for modifying search query for a user
US11989193B2 (en) 2021-06-29 2024-05-21 Samsung Electronics Co., Ltd. Method and system for modifying search query for a user
US11709691B2 (en) * 2021-09-01 2023-07-25 Sap Se Software user assistance through image processing
US20230297594A1 (en) * 2022-03-18 2023-09-21 Zoho Corporation Private Limited Entity interaction trends
CN115048904B (zh) * 2022-08-11 2022-11-29 北京金堤科技有限公司 一种实体展示方法、装置、存储介质及电子设备

Family Cites Families (157)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100348915B1 (ko) * 1994-05-12 2002-12-26 마이크로소프트 코포레이션 텔레비젼프로그램선택방법및그시스템
US5946647A (en) 1996-02-01 1999-08-31 Apple Computer, Inc. System and method for performing an action on a structure in computer-generated data
US6662226B1 (en) 2000-01-27 2003-12-09 Inbit, Inc. Method and system for activating and capturing screen displays associated with predetermined user interface events
US8224776B1 (en) 2000-07-26 2012-07-17 Kdl Scan Designs Llc Method and system for hosting entity-specific photo-sharing websites for entity-specific digital cameras
CA2370766C (en) 2000-10-18 2003-09-09 Chipworks Design analysis workstation for analyzing integrated circuits
EP1497751A4 (de) 2002-04-05 2009-10-21 At & T Corp Verfahren und system zum erkennen und extrahieren benannter entitäten aus spontanen übermittlungen
US7421153B1 (en) 2002-04-05 2008-09-02 Bank Of America Corporation Image and data processing system
US7054917B1 (en) 2002-08-07 2006-05-30 Propel Software Corporation Method for accelerating delivery of content in a computer network
US7376696B2 (en) 2002-08-27 2008-05-20 Intel Corporation User interface to facilitate exchanging files among processor-based devices
US20050083413A1 (en) 2003-10-20 2005-04-21 Logicalis Method, system, apparatus, and machine-readable medium for use in connection with a server that uses images or audio for initiating remote function calls
EP1709625A1 (de) * 2004-01-20 2006-10-11 Koninklijke Philips Electronics N.V. Verfahren und system zur bestimmung des themas eines gesprächs und zum erhalten und präsentieren von relevantem inhalt
US7707039B2 (en) 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US7536382B2 (en) 2004-03-31 2009-05-19 Google Inc. Query rewriting with entity detection
WO2005114379A2 (en) * 2004-05-14 2005-12-01 Perfect Market Technologies, Inc. Personalized search engine
US8078607B2 (en) 2006-03-30 2011-12-13 Google Inc. Generating website profiles based on queries from webistes and user activities on the search results
US7639387B2 (en) 2005-08-23 2009-12-29 Ricoh Co., Ltd. Authoring tools using a mixed media environment
US8745483B2 (en) 2004-10-07 2014-06-03 International Business Machines Corporation Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet
US8812551B2 (en) 2004-11-18 2014-08-19 International Business Machines Corporation Client-side manipulation of tables
US7702611B2 (en) 2005-01-07 2010-04-20 Xerox Corporation Method for automatically performing conceptual highlighting in electronic text
CN101601032A (zh) * 2005-01-18 2009-12-09 雅虎公司 结合万维网搜索技术和万维网内容的被赞助搜索条目的匹配和排名
CN101132840B (zh) 2005-02-28 2010-05-12 株式会社熊猫围棋网络 围棋的对弈系统
US7702128B2 (en) 2005-03-03 2010-04-20 Cssn Inc. Card Scanning Solutions System and method for scanning a business card from within a contacts address book and directly inserting into the address book database
US7809722B2 (en) 2005-05-09 2010-10-05 Like.Com System and method for enabling search and retrieval from image files based on recognized information
US20070008321A1 (en) 2005-07-11 2007-01-11 Eastman Kodak Company Identifying collection images with special events
US7548915B2 (en) 2005-09-14 2009-06-16 Jorey Ramer Contextual mobile content placement on a mobile communication facility
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US7933897B2 (en) * 2005-10-12 2011-04-26 Google Inc. Entity display priority in a distributed geographic information system
US7822759B2 (en) 2005-12-13 2010-10-26 Microsoft Corporation Query-driven sharing and syndication
US8533199B2 (en) 2005-12-14 2013-09-10 Unifi Scientific Advances, Inc Intelligent bookmarks and information management system based on the same
US20070168379A1 (en) 2006-01-17 2007-07-19 Patel Sushma B Method and apparatus for cataloging screen shots of a program
US7509347B2 (en) * 2006-06-05 2009-03-24 Palm, Inc. Techniques to associate media information with related information
CN101075236A (zh) 2006-06-12 2007-11-21 腾讯科技(深圳)有限公司 一种加快浏览器网页显示的装置和方法
US8347237B2 (en) 2006-06-27 2013-01-01 Palo Alto Research Center Incorporated Method, apparatus, and program product for efficiently detecting relationships in a comprehension state of a collection of information
US7917514B2 (en) 2006-06-28 2011-03-29 Microsoft Corporation Visual and multi-dimensional search
US8489987B2 (en) 2006-07-31 2013-07-16 Ricoh Co., Ltd. Monitoring and analyzing creation and usage of visual content using image and hotspot interaction
US9176984B2 (en) 2006-07-31 2015-11-03 Ricoh Co., Ltd Mixed media reality retrieval of differentially-weighted links
US8090222B1 (en) 2006-11-15 2012-01-03 Google Inc. Selection of an image or images most representative of a set of images
CN101201827B (zh) 2006-12-14 2013-02-20 阿里巴巴集团控股有限公司 一种网页显示的方法和系统
US8671341B1 (en) 2007-01-05 2014-03-11 Linguastat, Inc. Systems and methods for identifying claims associated with electronic text
KR101370895B1 (ko) 2007-01-19 2014-03-10 엘지전자 주식회사 콘텐츠 표시 방법 및 이를 이용한 단말기
US8869191B2 (en) 2007-01-23 2014-10-21 Cox Communications, Inc. Providing a media guide including parental information
US8214367B2 (en) 2007-02-27 2012-07-03 The Trustees Of Columbia University In The City Of New York Systems, methods, means, and media for recording, searching, and outputting display information
US20080275701A1 (en) * 2007-04-25 2008-11-06 Xiaotao Wu System and method for retrieving data based on topics of conversation
WO2008137160A1 (en) 2007-05-07 2008-11-13 Biap, Inc. Providing personalized resources on-demand over a broadband network to consumer device applications
US7840502B2 (en) 2007-06-13 2010-11-23 Microsoft Corporation Classification of images as advertisement images or non-advertisement images of web pages
US8688089B2 (en) 2007-06-26 2014-04-01 Gosub 60, Inc. Methods and systems for providing in-game hot spots
WO2009001138A1 (en) 2007-06-28 2008-12-31 Taptu Ltd Search result ranking
US7921069B2 (en) 2007-06-28 2011-04-05 Yahoo! Inc. Granular data for behavioral targeting using predictive models
US20090228777A1 (en) 2007-08-17 2009-09-10 Accupatent, Inc. System and Method for Search
WO2009026193A2 (en) 2007-08-17 2009-02-26 Accupatent, Inc. System and method for search
US8594996B2 (en) 2007-10-17 2013-11-26 Evri Inc. NLP-based entity recognition and disambiguation
AU2008312423B2 (en) 2007-10-17 2013-12-19 Vcvc Iii Llc NLP-based content recommender
WO2009054619A2 (en) 2007-10-22 2009-04-30 Moon Key Lee Augmented reality computer device
US9159034B2 (en) 2007-11-02 2015-10-13 Ebay Inc. Geographically localized recommendations in a computing advice facility
US20110246471A1 (en) 2010-04-06 2011-10-06 Selim Shlomo Rakib Retrieving video annotation metadata using a p2p network
US8255386B1 (en) 2008-01-30 2012-08-28 Google Inc. Selection of documents to place in search index
JP5336748B2 (ja) * 2008-03-06 2013-11-06 インターナショナル・ビジネス・マシーンズ・コーポレーション コンテンツ中のアクセシビリティに関する問題箇所を他人へ効果的に伝達するためのコンピュータ、方法、プログラム
US8131066B2 (en) 2008-04-04 2012-03-06 Microsoft Corporation Image classification
US7970808B2 (en) 2008-05-05 2011-06-28 Microsoft Corporation Leveraging cross-document context to label entity
US8630972B2 (en) 2008-06-21 2014-01-14 Microsoft Corporation Providing context for web articles
US20100010987A1 (en) 2008-07-01 2010-01-14 Barry Smyth Searching system having a server which automatically generates search data sets for shared searching
KR101509245B1 (ko) * 2008-07-31 2015-04-08 삼성전자주식회사 휴대용 단말기에서 패턴 인식을 이용한 사용자 인터페이스장치 및 방법
CN101667185B (zh) 2008-09-05 2012-10-17 深圳富泰宏精密工业有限公司 行动装置及其图片快速显示方法
CN101763357B (zh) 2008-11-13 2016-09-14 北京搜狗科技发展有限公司 一种用于浏览器加载互联网资源的方法及系统
CN102257502B (zh) 2008-12-18 2015-11-25 皇家飞利浦电子股份有限公司 软件错误和性能缺陷报告系统
DE202010018601U1 (de) 2009-02-18 2018-04-30 Google LLC (n.d.Ges.d. Staates Delaware) Automatisches Erfassen von Informationen, wie etwa Erfassen von Informationen unter Verwendung einer dokumentenerkennenden Vorrichtung
US8229883B2 (en) 2009-03-30 2012-07-24 Sap Ag Graph based re-composition of document fragments for name entity recognition under exploitation of enterprise databases
WO2010114543A1 (en) 2009-04-01 2010-10-07 Hewlett-Packard Development Company, L.P. Screen capture
US8370762B2 (en) 2009-04-10 2013-02-05 Cellco Partnership Mobile functional icon use in operational area in touch panel devices
US8533223B2 (en) 2009-05-12 2013-09-10 Comcast Interactive Media, LLC. Disambiguation and tagging of entities
US20100306249A1 (en) 2009-05-27 2010-12-02 James Hill Social network systems and methods
US20100313141A1 (en) 2009-06-03 2010-12-09 Tianli Yu System and Method for Learning User Genres and Styles and for Matching Products to User Preferences
CN101587495A (zh) 2009-07-08 2009-11-25 伍帝州 通过浏览器下载部署应用并提供应用入口的方法及系统
US8571319B2 (en) 2009-07-28 2013-10-29 International Business Machines Corporation Enhanced screen capture for form manipulation
US9135277B2 (en) 2009-08-07 2015-09-15 Google Inc. Architecture for responding to a visual query
US20120191840A1 (en) 2009-09-25 2012-07-26 Vladislav Gordon Managing Application State Information By Means Of A Uniform Resource Identifier (URI)
KR101651128B1 (ko) 2009-10-05 2016-08-25 엘지전자 주식회사 이동 단말기 이것의 애플리케이션 실행 제어 방법
US8131786B1 (en) 2009-11-23 2012-03-06 Google Inc. Training scoring models optimized for highly-ranked results
US8977639B2 (en) 2009-12-02 2015-03-10 Google Inc. Actionable search results for visual queries
US20110128288A1 (en) 2009-12-02 2011-06-02 David Petrou Region of Interest Selector for Visual Queries
US9405772B2 (en) 2009-12-02 2016-08-02 Google Inc. Actionable search results for street view visual queries
US9852156B2 (en) 2009-12-03 2017-12-26 Google Inc. Hybrid use of location sensor data and visual query to return local listings for visual query
US20110145692A1 (en) 2009-12-16 2011-06-16 Peter Noyes Method for Tracking Annotations with Associated Actions
US20110191676A1 (en) 2010-01-29 2011-08-04 Microsoft Corporation Cross-Browser Interactivity Recording, Playback, and Editing
EP2531969A4 (de) 2010-02-01 2013-12-04 Jumptap Inc Integriertes werbungssystem
US20110225152A1 (en) * 2010-03-15 2011-09-15 Microsoft Corporation Constructing a search-result caption
US8799061B1 (en) 2010-04-26 2014-08-05 Google Inc. Classifying users for ad targeting
US8494439B2 (en) 2010-05-04 2013-07-23 Robert Bosch Gmbh Application state and activity transfer between devices
KR101657545B1 (ko) 2010-05-11 2016-09-19 엘지전자 주식회사 휴대 단말기 및 그 동작 방법
CN101867636B (zh) * 2010-06-02 2015-02-04 华为终端有限公司 用户指令执行方法及终端设备
US9158846B2 (en) 2010-06-10 2015-10-13 Microsoft Technology Licensing, Llc Entity detection and extraction for entity cards
US8468110B1 (en) 2010-07-22 2013-06-18 Intuit Inc. Real-time user behavior prediction
US20120083294A1 (en) 2010-09-30 2012-04-05 Apple Inc. Integrated image detection and contextual commands
US20120092286A1 (en) 2010-10-19 2012-04-19 Microsoft Corporation Synthetic Gesture Trace Generator
US9189549B2 (en) 2010-11-08 2015-11-17 Microsoft Technology Licensing, Llc Presenting actions and providers associated with entities
WO2012075315A1 (en) 2010-12-01 2012-06-07 Google Inc. Identifying matching canonical documents in response to a visual query
KR101757870B1 (ko) 2010-12-16 2017-07-26 엘지전자 주식회사 이동 단말기 및 그 제어방법
US8880555B2 (en) * 2010-12-17 2014-11-04 Facebook, Inc. Ranking of address book contacts based on social proximity
KR101741551B1 (ko) 2010-12-20 2017-06-15 엘지전자 주식회사 이동 단말기 및 이것의 애플리케이션 제어 방법
WO2012101585A1 (en) 2011-01-28 2012-08-02 Strangeloop Networks, Inc. Prioritized image rendering based on position within a web page
US8341156B1 (en) 2011-04-04 2012-12-25 Google Inc. System and method for identifying erroneous business listings
EP2700025A4 (de) 2011-04-19 2014-10-22 Nokia Corp Verfahren und vorrichtung für flexible diversifikation von empfehlungsergebnissen
JP2012252742A (ja) 2011-06-02 2012-12-20 Elpida Memory Inc 半導体装置
WO2013021385A2 (en) 2011-08-11 2013-02-14 Eyesight Mobile Technologies Ltd. Gesture based interface system and method
US8204966B1 (en) 2011-09-26 2012-06-19 Google Inc. Map tile data pre-fetching based on user activity analysis
US8280414B1 (en) 2011-09-26 2012-10-02 Google Inc. Map tile data pre-fetching based on mobile device generated event analysis
US20150212695A1 (en) 2011-10-05 2015-07-30 Google Inc. Suggested action feedback
WO2013052866A2 (en) 2011-10-05 2013-04-11 Google Inc. Semantic selection and purpose facilitation
US20130097507A1 (en) 2011-10-18 2013-04-18 Utc Fire And Security Corporation Filmstrip interface for searching video
EP2587745A1 (de) 2011-10-26 2013-05-01 Swisscom AG Verfahren und System zum Erhalt von Kontaktinformationen für eine Person oder eine Entität
US9355186B2 (en) 2011-11-01 2016-05-31 Google Inc. Launching applications from webpages
US9176965B2 (en) * 2011-11-02 2015-11-03 Lenovo (Singapore) Pte. Ltd. Associating search terms with a downloaded file
US20130117252A1 (en) 2011-11-09 2013-05-09 Google Inc. Large-scale real-time fetch service
US9665643B2 (en) * 2011-12-30 2017-05-30 Microsoft Technology Licensing, Llc Knowledge-based entity detection and disambiguation
EP2810216B1 (de) 2012-01-31 2017-11-15 Given Imaging Ltd. System und verfahren zur anzeige von motilitätsereignissen in einem in-vivo-bildstrom
US9171068B2 (en) 2012-03-07 2015-10-27 Ut-Battelle, Llc Recommending personally interested contents by text mining, filtering, and interfaces
US20130263098A1 (en) 2012-03-29 2013-10-03 Pawel Piotr Duda Method and system for testing of mobile web sites
US9836545B2 (en) 2012-04-27 2017-12-05 Yahoo Holdings, Inc. Systems and methods for personalized generalized content recommendations
WO2013173940A1 (en) 2012-05-22 2013-11-28 Beijing Baina Info - Tech,Co., Ltd A method and system for providing application data
US9582146B2 (en) * 2012-05-29 2017-02-28 Nokia Technologies Oy Causing display of search results
US9075974B2 (en) 2012-07-25 2015-07-07 Google Inc. Securing information using entity detection
KR102068604B1 (ko) * 2012-08-28 2020-01-22 삼성전자 주식회사 휴대단말기의 문자 인식장치 및 방법
US10091552B2 (en) 2012-09-19 2018-10-02 Rovi Guides, Inc. Methods and systems for selecting optimized viewing portions
US9165406B1 (en) 2012-09-21 2015-10-20 A9.Com, Inc. Providing overlays based on text in a live camera view
US9274839B2 (en) 2012-09-27 2016-03-01 Intel Corporation Techniques for dynamic physical memory partitioning
US9407824B2 (en) 2012-11-01 2016-08-02 Google Inc. Multi-directional content capture on mobile devices
EP2728481A1 (de) 2012-11-04 2014-05-07 Rightware Oy Bewertung der Seitenlastleistung eines Webbrowsers
US20140146200A1 (en) 2012-11-28 2014-05-29 Research In Motion Limited Entries to an electronic calendar
US9245373B2 (en) 2012-12-04 2016-01-26 Nintendo Co., Ltd. Caching in map systems for displaying panoramic images
US20140164371A1 (en) 2012-12-10 2014-06-12 Rawllin International Inc. Extraction of media portions in association with correlated input
US20150178786A1 (en) 2012-12-25 2015-06-25 Catharina A.J. Claessens Pictollage: Image-Based Contextual Advertising Through Programmatically Composed Collages
US20140188956A1 (en) 2012-12-28 2014-07-03 Microsoft Corporation Personalized real-time recommendation system
US20140188889A1 (en) 2012-12-31 2014-07-03 Motorola Mobility Llc Predictive Selection and Parallel Execution of Applications and Services
US10445786B2 (en) 2013-01-23 2019-10-15 Facebook, Inc. Sponsored interfaces in a social networking system
US20150169701A1 (en) 2013-01-25 2015-06-18 Google Inc. Providing customized content in knowledge panels
JP6105094B2 (ja) 2013-03-01 2017-03-29 クイクシー インコーポレイテッド アプリケーションへの状態リンクを含む検索結果の生成
US20140279013A1 (en) 2013-03-13 2014-09-18 Ebay Inc. Online and offline ecommerce connections
US9247309B2 (en) 2013-03-14 2016-01-26 Google Inc. Methods, systems, and media for presenting mobile content corresponding to media content
WO2014146265A1 (en) 2013-03-20 2014-09-25 Nokia Corporation Method and apparatus for personalized resource recommendations
US20140294257A1 (en) * 2013-03-28 2014-10-02 Kevin Alan Tussy Methods and Systems for Obtaining Information Based on Facial Identification
CA2908095A1 (en) 2013-04-23 2014-10-30 Quixey, Inc. Entity bidding
US9276883B2 (en) 2013-04-28 2016-03-01 Tencent Technology (Shenzhen) Company Limited Information collection, storage, and sharing platform
US9786075B2 (en) 2013-06-07 2017-10-10 Microsoft Technology Licensing, Llc Image extraction and image-based rendering for manifolds of terrestrial and aerial visualizations
US9721107B2 (en) 2013-06-08 2017-08-01 Apple Inc. Using biometric verification to grant access to redacted content
US9245026B1 (en) * 2013-06-26 2016-01-26 Amazon Technologies, Inc. Increasing the relevancy of search results across categories
KR102136602B1 (ko) 2013-07-10 2020-07-22 삼성전자 주식회사 휴대단말기의 컨텐츠 처리 장치 및 방법
US9329692B2 (en) * 2013-09-27 2016-05-03 Microsoft Technology Licensing, Llc Actionable content displayed on a touch screen
US9436918B2 (en) 2013-10-07 2016-09-06 Microsoft Technology Licensing, Llc Smart selection of text spans
US9354778B2 (en) 2013-12-06 2016-05-31 Digimarc Corporation Smartphone-based methods and systems
US9679078B2 (en) 2014-05-21 2017-06-13 Facebook, Inc. Search client context on online social networks
US9824079B1 (en) 2014-07-11 2017-11-21 Google Llc Providing actions for mobile onscreen content
US8954836B1 (en) 2014-08-19 2015-02-10 Adlast, Inc. Systems and methods for directing access to products and services
US9424668B1 (en) 2014-08-28 2016-08-23 Google Inc. Session-based character recognition for document reconstruction
US9703541B2 (en) 2015-04-28 2017-07-11 Google Inc. Entity action suggestion on a mobile device
US10970646B2 (en) 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10178527B2 (en) 2015-10-22 2019-01-08 Google Llc Personalized entity repository
US10055390B2 (en) 2015-11-18 2018-08-21 Google Llc Simulated hyperlinks on a mobile device based on user intent and a centered selection of text

Also Published As

Publication number Publication date
CN106663109B (zh) 2020-07-07
US20180246978A1 (en) 2018-08-30
US9965559B2 (en) 2018-05-08
GB2543198B (en) 2021-02-10
WO2016029099A1 (en) 2016-02-25
GB2543198A (en) 2017-04-12
GB201621775D0 (en) 2017-02-01
US20160055246A1 (en) 2016-02-25
CN106663109A (zh) 2017-05-10

Similar Documents

Publication Publication Date Title
DE112015003826T5 (de) Bereitstellen von automatischen Aktionen für mobile Bildschirminhalte
DE112016003112T5 (de) Modellieren persönlicher Entitäten
US10484315B2 (en) Method, system and apparatus for adding network comment information
DE112016005286T5 (de) Simulierte Hyperlinks auf einer Mobilvorrichtung
DE112015004827T5 (de) Verbesserte Ziehen-und-Ablegen-Operation in einer Mobilvorrichtung
DE112015004481T5 (de) Rahmen für zustandskennung mobiler anwendungen
DE102017121699A1 (de) Dynamische Erzeugung von angepassten Einführungslernprogrammen für eine Anwendung
DE112016004579T5 (de) Mobile Anwenderschnittstelle
DE202017105672U1 (de) Intelligente Antworten mittels eines geräteinternen Modells
DE112019005489T5 (de) Bestimmung visueller attribute zur inhaltsauswahl
DE112016004859T5 (de) Personalisiertes Entitäten-Repository
DE112016001453T5 (de) Navigieren von Ereignisinformation
DE102016125783A1 (de) Bereitstellen von Vorschlägen für die Interaktion mit einem automatisierten Assistenten in einem Multi-User-Nachrichtenaustausch-Thread
DE202011110872U1 (de) Geokodierte Kommentare in einem Messaging-Dienst
DE202016008173U1 (de) Einbindung von auswählbaren Anwendungsverknüpfungen in Nachrichtenaustausch-Threads
DE202016006006U1 (de) Systeme zur Disambiguierung von Standortentitäten in Zusammenhang mit dem aktuellen geografischen Standort eines mobilen Geräts
DE102016125804A1 (de) Das Einbeziehen auswählbarer Anwendungslinks in Konversationen mit persönlichen Assistenz-Modulen
US20140379719A1 (en) System and method for tagging and searching documents
DE112016000962T5 (de) System und verfahren zur strukturierung von bewertungen mit automatisch erzeugten tags
DE102016101373A1 (de) Anzeigesteuerverfahren, anzeigesteuervorrichtung und elektronisches gerät
DE202014010949U1 (de) Vorrichtung zur Unterbreitung von Vorschlägen anhand von Favoriten in der Nähe
DE102016003850A1 (de) Empfehlen von Formularfragmenten
DE202014010894U1 (de) System zur Disambiguierung der Objektauswahl
DE102014012597A1 (de) Suchverfahren für verwandte Bilder und Benutzerschnittstelle zur Steuerung des Verfahrens
DE202014010890U1 (de) System für die selektive Anzeige von Inhalten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: KILBURN & STRODE LLP, GB

Representative=s name: KILBURN & STRODE LLP, NL

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016000000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0016000000

Ipc: G06Q0010100000

R082 Change of representative

Representative=s name: KILBURN & STRODE LLP, GB

Representative=s name: KILBURN & STRODE LLP, NL

R082 Change of representative

Representative=s name: KILBURN & STRODE LLP, GB

Representative=s name: KILBURN & STRODE LLP, NL

R082 Change of representative

Representative=s name: KILBURN & STRODE LLP, NL