[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE602004008151T2 - Verfahren und Einrichtung zur Abhängigkeitsauflösung von Client angefragten Ladevorgang - Google Patents

Verfahren und Einrichtung zur Abhängigkeitsauflösung von Client angefragten Ladevorgang Download PDF

Info

Publication number
DE602004008151T2
DE602004008151T2 DE602004008151T DE602004008151T DE602004008151T2 DE 602004008151 T2 DE602004008151 T2 DE 602004008151T2 DE 602004008151 T DE602004008151 T DE 602004008151T DE 602004008151 T DE602004008151 T DE 602004008151T DE 602004008151 T2 DE602004008151 T2 DE 602004008151T2
Authority
DE
Germany
Prior art keywords
digital content
entity
additional
dependency
dependencies
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.)
Expired - Fee Related
Application number
DE602004008151T
Other languages
English (en)
Other versions
DE602004008151D1 (de
Inventor
Pavel S San Jose Veselov
David L Palo Alto Bowen
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of DE602004008151D1 publication Critical patent/DE602004008151D1/de
Application granted granted Critical
Publication of DE602004008151T2 publication Critical patent/DE602004008151T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein das Herunterladen von Digitalinhalt und insbesondere das Unterstützen von Abhängigkeiten, die mit dem Herunterladen des zusätzlichen Inhalts assoziiert sind.
  • 2. BESCHREIBUNG DER VERWANDTEN TECHNIK
  • Seit dem Erscheinen des Internets und der Popularität mobiler Computereinrichtungen ist eine Fülle von Digitalinhalt zum Herunterladen verfügbar. Gegenwärtig kann ein Benutzer benachrichtigt werden, dass ein bestimmtes Plug-in erforderlich ist, um einen bestimmten MIME-Typ abzuspielen. Beispielsweise kann ein Browser ein Fenster erzeugen, das anzeigt, dass ein bestimmtes Plug-in, z. B. ein Viewer wie REAL ONE, für die Darstellung des digitalen Videoinhalts erforderlich ist. Der Mechanismus, mit dem der Browser einen MIME-Typ auf ein Plug-in abbildet, wird durch den Browser-Verkäufer bestimmt und nicht durch den Inhaltsentwickler.
  • Gegenwärtig in Gebrauch befindlichen generischen Download-Protokollen zum Beschaffen von Anwendungen und Inhalt für ein Benutzersystem fehlt die Fähigkeit, alle Abhängigkeiten zu bestimmen, die erforderlich sind, um den herunterzuladenden erwünschten Digitalinhalt auszuführen. Wenn der zum Herunterladen verfügbare Inhalt anspruchsvoller wird, verlangen die Erfordernisse zum Ausführen des Inhalts typischerweise mehr als die Installation eines Plug-ins. Beispielsweise kann zusätzlich zu einem Viewer-Plug-in eine geteilte Bibliothek oder eine andere passende Entität oder ein Code erforderlich sein, die für die Ausführung des Digitalinhalts gebraucht werden. Außerdem können die zusätzlichen Entitäten mit anderen Entitäten verknüpft sein, die auch heruntergeladen werden müssen. Das heißt, eine Kette von Entitäten kann für die Ausführung des gewünschten Inhalts erforderlich sein. Die gegenwärtig verfügbaren Download-Protokolle sind nicht dazu fähig, jede der Entitäten in der Kette zu identifizieren, und sind als solche unfähig, jede Entität der Kette automatisch herunterzuladen.
  • In Anbetracht des Vorhergehenden ist es wünschenswert, ein Schema zu implementieren, um einem Download-Protokoll zu ermöglichen, mehrfache Abhängigkeiten für herunterzuladenden Digitalinhalt zu identifizieren, und außerdem dem Benutzer eine Option zum Herunterladen der vollständigen Menge (transitiven Hülle) der Abhängigkeiten als eine Einzeltransaktion anzubieten.
  • US 2002/0129129 (Bloch et al.) beschreibt ein System zum Einsatz von Anwendungen über ein verteiltes Netz in webfähigen Einrichtungen. Ein Anwendungs-Assembler lädt herunter und installiert auf jede webfähige Einrichtung. Der Anwendungs-Assembler lädt einen oder mehrere Textdateien vom Server herunter, ruft Programmlogik von jedem der heruntergeladenen Textdateien ab und assembliert die abgerufene Programmlogik in eine funktionierende Anwendung. In einigen Fällen wird ein Plug-in, das auf jede webfähige Einrichtung heruntergeladen und installiert wird, durch Webseiten auf dem Server zum Starten des Anwendungs-Assemblers aktiviert.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Allgemein gesprochen stellt die vorliegende Erfindung ein Schema zum Aufnehmen mehrfacher Abhängigkeiten bereit, die mit dem Herunterladen von Digitalinhalt assoziiert sind. Die vorliegende Erfindung kann auf zahlreiche Weisen implementiert werden, einschließlich als ein Prozess, eine Vorrichtung, ein System, eine Einrichtung oder ein Verfahren. Mehrere Ausführungsarten der vorliegenden Erfindung werden unten beschrieben.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Herunterladen von Digitalinhalt bereitgestellt, umfassend: Identifizieren von den Digitalinhalt beschreibenden Daten; Identifizieren einer Abhängigkeit, die Ausführung des Digitalinhalts aus den Daten betreffend, die den Digitalinhalt beschreiben; Bestimmen, ob eine Entität lokal verfügbar ist, die mit der die Ausführung des Digitalinhalts betreffenden Abhängigkeit assoziiert ist; Bestimmen, ob eine zusätzliche Abhängigkeit erforderlich ist, die die Ausführung des Digitalinhalts betrifft; falls die Entität nicht lokal verfügbar ist und eine zusätzliche Abhängigkeit erforderlich ist, enthält das Verfahren das Ermitteln sowohl der Entität von einer durch die den Digitalinhalt beschreibenden Daten bereitgestellten Adresse als auch einer Entität, die mit der einen zusätzlichen Abhängigkeit assoziiert ist; und das Bestimmen, ob ein Empfänger des Digitalinhalts für die Entität und die Entität, die mit der einen zusätzlichen Abhängigkeit assoziiert ist, eine annehmbare Kapazität hat.
  • Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein computerlesbares Medium mit Programmbefehlen zum Herunterladen von Digitalinhalt bereitgestellt, umfassend: Programmbefehle zum Identifizieren von den Digitalinhalt beschreibenden Daten; Programmbefehle zum Identifizieren einer Abhängigkeit, die Ausführung des Digitalinhalts aus den Daten betreffend, die den Digitalinhalt beschreiben; Programmbefehle zum Bestimmen, ob eine herunterladbare Entität lokal verfügbar ist, die mit der die Ausführung des Digitalinhalts betreffenden Abhängigkeit assoziiert ist; Programmbefehle zum Bestimmen, ob eine zusätzliche, die Ausführung des Digitalinhalts betreffende Abhängigkeit erforderlich ist; Programmbefehle zum Ermitteln sowohl der herunterladbaren Entität von einer durch die den Digitalinhalt beschreibenden Daten bereitgestellten Adresse als auch einer herunterladbaren Entität, die mit der einen zusätzlichen Abhängigkeit assoziiert ist, falls die herunterladbare Entität nicht lokal verfügbar ist und eine zusätzliche Abhängigkeit erforderlich ist; und Programmbefehle zum Bestimmen, ob ein Empfänger des Digitalinhalts eine annehmbare Kapazität für die herunterladbare Entität und für die herunterladbare Entität hat, die mit der einen zusätzlichen Abhängigkeit assoziiert ist.
  • Gemäß einem weiteren erfindungsgemäßen Aspekt wird ein System bereitgestellt, umfassend: einen Server, konfiguriert zum Bereitstellen von Digitalinhalt; einen Client, konfiguriert zum Empfangen des Digitalinhalts vom Server; der Client ist zum Identifizieren eines Deskriptors konfiguriert, der eine Liste von Abhängigkeiten zum Ausführen des Digitalinhalts vor Empfang des Digitalinhalts enthält; der Client ist außerdem zum Extrahieren zusätzlicher Abhängigkeiten vom Deskriptor konfiguriert, wobei der Deskriptor Adressen für ein Paket enthält, einer jeden der Abhängigkeiten und der zusätzlichen Abhängigkeiten entsprechend, sodass der Client jedes Paket von den entsprechenden Adressen erhalten kann, worin der Client Logik enthält zum Bestimmen, ob der Client eine annehmbare Kapazität für alle Pakete hat.
  • Andere Aspekte und Vorteile der Erfindung werden aus der folgenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen deutlich werden, wobei die Grundlehren der Erfindung durch Beispiele veranschaulicht werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die beigefügten Zeichnungen, die einen Teil dieser Beschreibung bilden und in sie eingegliedert sind, veranschaulichen exemplarische Ausführungsarten der Erfindung und dienen in Verbindung mit der Beschreibung dazu, die Grundlehren der Erfindung zu erklären.
  • 1 ist ein vereinfachtes schematisches Diagramm eines Datenpakets gemäß einer erfindungsgemäßen Ausführungsart.
  • 2 ist eine alternative Ausführungsart des in 1 beschriebenen Pakets.
  • 3 ist ein vereinfachtes schematisches Diagramm von zusammenhängenden Paketen gemäß einer erfindungsgemäßen Ausführungsart.
  • 4 ist eine vereinfachte schematische Zeichnung, die das Herunterladen eines exemplarischen Dienstes gemäß einer erfindungsgemäßen Ausführungsart veranschaulicht.
  • 5 ist ein schematisches Diagramm, das einen exemplarischen Dienst veranschaulicht, der heruntergeladen werden kann, und die assoziierten Abhängigkeiten gemäß einer erfindungsgemäßen Ausführungsart.
  • 6 ist ein Flussdiagramm, das die Verfahrensoperationen zum Herunterladen eines Pakets mit mehrfachen Abhängigkeiten gemäß einer erfindungsgemäßen Ausführungsart veranschaulicht.
  • 7 ist ein Flussdiagramm, das die Verfahrensoperationen für einen Client beim Auflösen von Abhängigkeiten veranschaulicht, die mit dem Herunterladen eines Pakets gemäß einer erfindungsgemäßen Ausführungsart assoziiert sind.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSARTEN
  • Es wird eine Erfindung beschrieben für ein System, eine Einrichtung und ein Verfahren zum Identifizieren von Abhängigkeiten, assoziiert mit herunterzuladendem Digitalinhalt, und zum Bereitstellen von Zugriff auf die Abhängigkeiten. Einem Fachmann wird jedoch offensichtlich sein, dass die vorliegende Erfindung ohne einige oder alle dieser spezifischen Details praktiziert werden kann. In anderen Fallen wurden bekannte Prozessoperationen nicht detailliert beschrieben, um die vorliegende Erfindung nicht unnötigerweise unklar zu machen.
  • Die Ausführungsarten der vorliegenden Erfindung stellen ein Verfahren und ein System zur Verfügung, um Netzbenutzern zu ermöglichen, Digitalinhalt wirkungsvoller herunterzuladen. Das System definiert ein Client-Server-Verhältnis zum Herunterladen von Digitalinhalt über ein verteiltes Netz. In einer Ausführungsart wird ein generisches Download-Protokoll erweitert, um mehrfache mit der Digitalinhaltsausführung assoziierte Abhängigkeiten aufzunehmen. Außerdem ist die Protokollerweiterung fähig, mehrfache Abhängigkeiten anzunehmen, die in einem wie unten beschriebenen Kettenverhältnis konfiguriert sind. In einer Ausführungsart führt das hierin beschriebene Schema eine logische Auswertung vor dem Herunterladen des Digitalinhalts aus. Zuerst ermittelt das System Metadaten, die den Inhalt beschreiben, der identifiziert, welche Abhängigkeiten erfüllt sein müssen, um den Inhalt zu benutzen. So zieht das Schema logische Schlussfolgerungen, um zu bestimmen, ob alle Abhängigkeiten erfüllt werden können und welche Systemressourcen, z. B. Speicherkapazität usw., für den Inhalt erforderlich sind.
  • Im hierin benutzten Sinn ist der Terminus Paket eine separat lieferbare (herunterladbare) Entität. Ein Paket wird entweder als Ganzes oder gar nicht heruntergeladen. Das Paket ist im Allgemeinen durch einen Einzeldeskriptor und ein oder mehrere Objekte repräsentiert. Jedes Paket hat die folgenden Attribute: einen Paketnamen, der ein zugewiesener Paketname oder eine Identifikation (ID) ist, und eine Paketversion, die eine Version des Pakets ist. Vom Standpunkt des Clients haben Pakete, die verschiedene Zwecke erfüllen, verschiedene Namen. Zwei verschiedene Pakete können denselben Namen haben, aber die beiden verschiedenen Pakete sind als zwei verschiedene Versionen identifizierbar, wo eine Version ein Upgrade für eine andere Version ist.
  • Der Terminus Objekt im hierin verwendeten Sinn ist eine atomare Entität wie sie durch eine Einrichtung identifiziert ist. Ein oder mehrere Objekte können ein Paket bilden. Beispielsweise ist eine Filmdatei ein Objekt oder eine Kalenderanwendung ist ein Objekt. Ein Objekt kann, wie unten beschrieben, in verschiedene Typen gradiert werden. Beispielsweise kann ein Objekt als eine Anwendung gradiert werden, was sich auf eine interaktive Anwendung bezieht. Die Anwendung erscheint einem Benutzer durch eine graphische Benutzerschnittstelle (GUI), sodass ein Benutzer starten und stoppen und mit der Anwendung auf andere Weisen interagieren kann. Das Objekt kann auch als ein Dienst gradiert werden. Ein Dienst ist eine Menge von Bits, die im Clientsystem registriert sind und Exporte bereitstellen. Diese Exporte können von anderen Anwendungen oder Diensten gefunden werden, sodass sie diesen Dienst benutzen können. Beispielsweise kann ein Energie-Abrechnungsdienst Anwendungs-Programmierschnittstellen (APIs) freilegen, die eine Anwendung beim Starten aufrufen kann, oder eine Graphikbibliothek, falls registriert, die Zugriff auf einige nützliche Funktionen gewährt, die der Abrechnungsdienst bereitstellt. Man sollte verstehen, dass diese Konfiguration die Flexibilität ermöglicht, zwei verschiedene Dienste zu haben, von zwei verschiedenen Entwicklern bereitgestellt, mit verschiedenen Namen, um durch Freilegen desselben Exports dieselbe Funktionalität freizulegen. Außerdem kann das Objekt als ein Abspieler gradiert werden. Bin Abspieler ist ein ausführbares Programm, kann aber nur dann gestartet werden, wenn ihm ein bestimmtes Paket zur Verfügung gestellt wird. Meistens assoziiert ein Abspieler eine oder mehrere MIME(Vielzweck-Inernet-Mail-Erweiterungen)-Typen und eine oder mehrere Operationen, die der Abspieler auf einem MIME-Typ ausführen kann. Fachleuten wird deutlich sein, dass ein Abspieler zur gleichen Zeit auch eine Anwendung sein kann gemäß einer erfindungsgemäßen Ausführungsart, z. B. dann, wenn der Abspieler auch seine eigene Benutzerschnittstelle (UI) hat. Wie allgemein bekannt ist, ist MIME ein Industriestandard zum Kategorisieren der Inhaltstypen von Dateien.
  • Der Terminus Daten, wie hierin verwendet bezieht sich auf beliebige Daten, meistens durch einen Standort und einen MIME-Typ identifiziert. Daten können lokal beschafft (heruntergeladen) werden, oder es kann von außerhalb des Netzes auf sie Bezug genommen werden. Damit in einer Ausführungsart ein Download-Protokoll Abhängigkeiten unterstützt, wird die herunterladbare Entität durch die oben definierten Termini repräsentiert, oder ein Clientcode muss in der Lage sein, diese Information aus einem Altdownload-Protokoll zusammenzustellen.
  • Ein Paket kann zu den mit ihm spezifizierten Abhängigkeiten Null aufweisen. Eine Abhängigkeit kann ein Erfordernis oder eine Anforderung sein. Falls eine der Erfordernis-Abhängigkeiten nicht erfüllt ist, wird das Paket auf einer Benutzereinrichtung nicht laufen, z. B. wird eine MPEG(Filmexpertengruppe)-Datei auf einer Benutzereinrichtung ohne einen passenden MPEG-Abspieler nicht laufen. Die Anforderungs-Abhängigkeiten müssen nicht erfüllt sein, um das Paket auszuführen, aber das Paket kann für die in diesen Erfordernis-Abhängigkeiten spezifizierten Entitäten Verwendung finden. Fordert beispielsweise ein Nachrichtendienst eine Audiobibliothek an, um Alarmbenachrichtigungen zu spielen, ist aber die Audiobibliothek nicht verfügbar oder fehlt sie, dann läuft der Nachrichtendienst noch, aber ohne Ton.
  • In einer Ausführungsart kann eine Abhängigkeit auf drei verschiedenen Entitäten angefordert werden, d. h. einem Paket, einer exportierten Entität und einem MTME-Typ-Abspieler. Bezüglich eines spezifischen Pakets wird das Anfordern eines spezifischen Paketnamens und eines Paket-Versionsmusters eine Abhängigkeit erfüllen. Beispielsweise das Paket „B: hängt von Paket A, Version 2.* ab" bedeutet, dass jede Version ausreicht, die mit 2 anfängt. Auf einer exportierten Entität muss es einen Dienst geben, der diese Entität exportiert, um diese Abhängigkeit aufzulösen. Auf einem MIME-Typ-Abspieler oder auf einen bestimmten MIME-Typ und einer Aktion wird eine Abspieler installiert, der diesen MIME-Typ handhaben kann, um die Abhängigkeit aufzulösen.
  • In allen drei oben aufgelisteten Fällen gibt es eine Menge von verschiedenen Attributen für jeden definierten Abhängigkeitstyp. In einem Fall seinen referenzierten Namen und seine Version, in einem anderen Fall seinen MIME-Typ usw. Alle diese drei Typen können ein weiteres Attribut tragen, das, falls vorhanden, den Standort repräsentieren sollte, wo diese Abhängigkeit aufgelöst werden kann. Die Standortinformation hängt sehr von der verwendeten tatsächlichen Download-Spezifikation, den Backendserver-Fähigkeiten usw. ab. Ist beispielsweise ein OMA(Open Mobile Alliance)-Download-Protokoll beteiligt, und der Client kann eine HTML-Datei mit Referenzen auf einige wenige OMA-Deskriptoren verarbeiten, dann kann dieser Standort entweder ein URI (Uniform Resource Identifier) für einen OMA-Deskriptor sein, der dieses spezifische Paket hat, oder ein URI für eine HTML-Seite, die ihrerseits eine Referenz auf einen Deskriptor enthält, der diese Abhängigkeit auflöst. Fachleuten wird deutlich sein, dass eine exemplarische Download-Spezifikation, mit der die hierin beschriebenen Ausführungsarten verwendet werden können, die OMA generische Inhalts-Download-Spezifikation ist.
  • 1 ist ein vereinfachtes schematisches Diagramm eines Datenpakets gemäß einer erfindungsgemäßen Ausführungsart. Hier enthält Paket 104 den Datenbereich 102 und den Metadatenbereich 100. Man sollte verstehen, dass der Metadatenbereich 100 Daten enthält, die den Inhalt des Datenbereichs 102 definieren. Das heißt, der Metadatenbereich 100 enthält Daten, die die im Bereich 102 enthaltenen Daten beschreiben. Beispielsweise kann der Metadatenbereich 100 Daten enthalten, die eine mit dem Datenbereich 102 assoziierte Größe angeben, eine Beschreibung des Datentyps, der sich im Datenbereich 102 findet, zusätzliche mit den Daten assoziierte Dateien usw. Wie unten detaillierter beschrieben wird, können die Metadaten Zeiger auf zusätzliche mit den Daten assoziierte Dateien enthalten und Zeiger auf Metadaten für zusätzliche mit den Daten assoziierte Pakete.
  • 2 ist eine alternative Ausführungsart des in 1 beschriebenen Pakets. Hier enthält Paket 104 Metadaten 100, die Zeiger auf verschiedene Dateien enthalten. Beispielsweise zeigen Metadaten 100 auf Dateien F1 106a und F2 106b. F2 106b wiederum enthält Zeiger auf zusätzliche Dateien 106c bis 106e. Die Dateien 106a bis 106e entsprechen den Daten innerhalb des Datenbereichs 102 der 1. Hier können Metadaten 100 auf Dateien zeigen, die erforderlich sind, um den Digitalinhalt auszuführen, der durch Abhängigkeiten herunterzuladen ist, wie unten erörtert wird.
  • 3 ist ein vereinfachtes schematisches Diagramm von zusammenhängenden Paketen gemäß einer erfindungsgemäßen Ausführungsart. Hier hängen die Pakete 104a und 104b durch Abhängigkeit 108a zusammen. Man sollte verstehen, dass die Metadaten 100a mit den Abhängigkeiten D1, D2 bzw. D3 108a bis 108c assoziiert sind. Abhängigkeit D1 108a zeigt auf Paket 104b. Paket 104b enthält Metadaten 100b mit Abhängigkeit 108d, die mit Datei F3 106f assoziiert ist. Abhängigkeit D2 108b zeigt auf Datei F2 106b, die mit zusätzlichen Dateien 106c bis 106e assoziiert ist. Abhängigkeit D3 108c zeigt auf Datei F1 106a. Man sollte Folgendes verstehen: Wo einem System ein bestimmter Abspieler fehlt, beispielsweise könnte ein Benutzer MP3s abspielen wollen, aber dem System könnte ein MP3 Abspieler fehlen, weshalb ein MP3 Abspieler heruntergeladen werden muss. So wird durch die hierin beschriebenen Ausführungsarten eine lieferbare Entität zum Herunterladen freigegeben, um MP3s abzuspielen. Als Teil des MP3-Pakets können jedoch ein zusätzliches Paket oder zusätzliche Dateien zur Ausführung notwendig sein. Beispielsweise werden die Abhängigkeiten D2 bis D3 auf zusätzliche mit Metadaten 100 assoziierte Dateien zeigen, während die Abhängigkeit D1 108a auf ein zusätzliches Paket zeigen wird, das notwendig ist. Beispielsweise kann eine bestimmte Bibliothek erforderlich sein. Dementsprechend kann jedes Paket mit mehrfachen Abhängigkeiten assoziiert sein. Außerdem kann das Paket mit mehrfachen anderen Paketen assoziiert sein. Obwohl in 3 ein Einzelpaket als mit einem anderen Paket assoziiert veranschaulicht ist, sollte man verstehen, dass Paket 104b mit einem oder mehreren anderen Paketen assoziiert sein kann usw. usf. Wie weiter unten erklärt wird, können die Abhängigkeiten D1 bis D4 108a bis 108b jeweilig Standortdaten enthalten, z. B. Uniform Resource Locator (URL), Universal Resource Identifier (URI) usw., die angeben, von wo die assoziierten Dateien heruntergeladen werden. Beispielsweise kann ein Abspieler mit einem MIME assoziiert sein, auf den von einem zentralisierten Standort zugegriffen werden kann. Fachleuten wird deutlich sein, dass Industriestandards festgelegt und angewendet wurden, um MIMEs leicht verfügbar zu machen.
  • 4 ist eine vereinfachte schematische Zeichnung, die das Herunterladen eines exemplarischen Dienstes gemäß einer erfindungsgemäßen Ausführungsart veranschaulicht. Man sollte verstehen, dass die hierin beschriebenen Ausführungsarten das Herunterladen lieferbarer Anwendungen und des assoziierten Inhalts auf ein Benutzersystem durch Abhängigkeiten ermöglicht, die geändert werden können oder wo mehrfache Abhängigkeiten mit einem Einzelpaket assoziiert sind. So können Benutzer mobiler und nicht mobiler Einrichtungen über generische Download-Protokolle, die die wie hierin beschriebenen Abhängigkeiten unterstützen, effizient auf Digitalinhalt zugreifen und ihn herunterladen. Mobile Einrichtungen, z. B. Laptop 120, Zellulartelefon 118, Fahrzeug 114 usw., können mit einem verteilten Netz wie dem Internet 112 über eine verdrahtete oder drahtlose Verbindung kommunizieren. Server 110 kommuniziert auch mit dem Internet 112. Man sollte verstehen, dass, obwohl 4 drahtlose Verbindungen veranschaulicht, die Erfindung nicht auf drahtlose Verbindungen beschränkt ist, da auch verdrahtete Verbindungen mit den hierin beschriebenen Ausführungsarten eingesetzt werden können. Hat also ein Benutzer eine der veranschaulichten mobilen Einrichtungen und will Digitalinhalt herunterladen, wie beispielsweise MP3 Inhalt oder einen Film, ist diese Funktionalität durch die Erweiterung auf ein hierin beschriebenes Download-Protokoll aktiviert. Das heißt, falls eine der mobilen oder nicht mobilen Einrichtungen, z. B. ein Tischrechner, einen MP3 Abspieler oder einen Filmabspieler braucht, können der passende Abspieler und assoziierte Dateien durch die oben beschriebenen Ausführungsarten heruntergeladen werden, wobei Metadaten benutzt werden, um die Dateien, die zur Ausführung des Digitalinhalts notwendig sind, und den Standort dieser Dateien zu bestimmen.
  • 5 ist ein schematisches Diagramm, das einen exemplarischen Dienst veranschaulicht der heruntergeladen werden kann, und die assoziierten Abhängigkeiten für diesen Dienst gemäß einer erfindungsgemäßen Ausführungsart. Hier enthält der Metadatenbereich 122 Daten, die einen Karten-Navigationsdienst beschreiben, der für ein Fahrzeug heruntergeladen werden kann. Die assoziierten Abhängigkeiten enthalten Gleitkomma-Abhängigkeit 124, Standort-Dienst-Abhängigkeit 126 und Karten-Abhängigkeit 128. Mit jeder der Abhängigkeiten 124 bis 128 wird ein Standort eingeschlossen, wo die assoziierte Datei geholt werden kann. Mit Bezug auf 4: Der Karten-Navigationsdienst kann in das Modul 116 des Fahrzeugs 114 heruntergeladen werden. Um den Karten-Navigationsdienst bereitzustellen, müssen die Abhängigkeiten 124, 126 und 128 erfüllt sein. So sind Gleitkomma-Modul 124, Standort-Dienst-Modul 126 und Karten-Modul 128 alle eingeschlossen, wobei jedes mit einer URL-Adresse ausgestattet ist, um auf die Daten zuzugreifen. Wie oben erörtert ist, können die Abhängigkeiten 124, 126 und 128 sowohl auf zusätzliche Pakete wie auf Dateien zeigen. Man sollte verstehen, dass vor dem Herunterladen des Digitalinhalts die Metadaten heruntergeladen und ausgewertet werden, um zu bestimmen, ob der Client den Dateninhalt ausführen und die durch die Abhängigkeiten definierten lieferbaren Entitäten erhalten kann.
  • 6 ist ein Flussdiagramm, das die Verfahrensoperationen zum Herunterladen eines Pakets mit mehrfachen Abhängigkeiten gemäß einer erfindungsgemäßen Ausführungsart veranschaulicht. Das Verfahren beginnt mit Operation 140, wo die Metadaten heruntergeladen werden. Fachleuten wird deutlich sein, dass die Metadaten als Antwort auf eine Anforderung eines Clients oder eines Servers heruntergeladen werden. Ein Benutzer kann beispielsweise das Herunterladen eines Abspielers usw. anfordern, oder ein Server kann eine Anforderung zum Herunterladen eines Dienstes auf einen Client veranlassen. Das Verfahren geht dann weiter zu Operation 142, wo mit den Metadaten assoziierte Abhängigkeiten identifiziert werden. Wie oben erklärt ist, können Abhängigkeiten auf andere Dateien oder andere Pakete zeigen. Das Verfahren geht dann weiter zur Entscheidungsoperation 144, wo bestimmt wird, ob die Abhängigkeiten mit zusätzlichen Paketen assoziiert sind. Falls die Abhängigkeiten mit zusätzlichen Paketen assoziiert sind, dann kehrt das Verfahren zu Operation 140 zurück und wiederholt, wie oben beschrieben ist. Falls die Abhängigkeiten nicht mit zusätzlichen Paketen assoziiert sind, dann geht das Verfahren zu Operation 146, wo bestimmt wird, ob alle Pakete auf die Einrichtung passen. Das heißt, es wird bestimmt, ob die Einrichtung ausreichende Ressourcen hat, z. B. Speicherkapazität, um die Pakete unterzubringen. Falls die die Einrichtung nicht genug Speicherkapazität hat, um das Paket unterzubringen, dann wird in Operation 148 eine Fehlermeldung erzeugt. Falls alle notwendigen Pakete auf die Einrichtung passen, dann geht das Verfahren zu Operation 150, wo die notwendigen Pakete geholt werden. Hier können die Adressen zum Zugreifen auf die notwendigen Pakete in den Abhängigkeitsdaten bereitgestellt sein.
  • 7 ist ein Flussdiagramm, das die Verfahrensoperationen veranschaulicht die ein Client beim Auflösen von Abhängigkeiten ausführt, die mit einem Paket assoziiert sind, das gemäß einer erfindungsgemäßen Ausführungsart heruntergeladen wird. Das Verfahren beginnt mit Operation 160, wo der Client einen Deskriptor empfängt, der eine Abhängigkeitsliste enthält. Man sollte verstehen, dass der Client in einer Ausführungsart eine mit dem Deskriptor assoziierte Anforderung auslösen kann. Als Alternative kann die Anforderung vom Server ausgehst werden, z. B. kann ein Benutzer einen bestimmten Dienst bezahlen. Der Dienst wird dann nach Auslösung durch den Server auf den Client heruntergeladen gemäß den hierin beschriebenen Ausführungsarten. Das Verfahren geht dann zu Operation 162, wo ein Abhängigkeitsvektor vom Client initialisiert wird. Man sollte verstehen, dass alle Abhängigkeiten zum Vektor hier hinzugefügt werden. Der Client wird einen Deskriptorvektor initialisieren und, zusätzlich zum Initialisieren eines Vektors der Abhängigkeitsfehler, den Deskriptor dem Deskriptorvektor hinzufügen. Der Vektor der Abhängigkeitsfehler ist anfänglich leer. Das Verfahren geht dann zu Operation 164, wo der Client versucht, die Abhängigkeit mit einem schon auf dem Client installierten Paket aufzulösen, d. h. einem lokalen Paket. Beispielsweise kann der Client einen notwendigen Abspieler lokal installiert haben, eine notwendige Bibliothek lokal installiert haben usw. Man sollte verstehen, dass für jede lokal aufgelöste Abhängigkeit die Abhängigkeit aus dem Abhängigkeitsvektor entfernt wird. Das Verfahren geht dann zur Entscheidungsoperation 166, wo bestimmt wird, ob der Abhängigkeitsvektor leer ist. Falls der Abhängigkeitsvektor nicht leer ist, geht das Verfahren zu Operation 168, wo für jede Abhängigkeit im Abhängigkeitsvektor ein Versuch gemacht wird, einen Deskriptor für ein Paket zu erfassen, d. h. herunterzuladen. In einer Ausführungsart wird der mit der Abhängigkeit bereitgestellte Standort benutzt, um den Deskriptor zu erfassen. Wie mit Bezug auf 3 und 5 beschrieben wurde, kann eine Adresse, z. B. URL, URI usw., bereitgestellt werden, um den Deskriptor zu erfassen.
  • Das Verfahren von 7 geht dann zu Operation 170, wo für jeden während der Operation 168 heruntergeladenen Deskriptor alle mit dem betreffenden Deskriptor assoziierten Abhängigkeiten extrahiert werden. Hier werden die extrahierten Abhängigkeiten dem Abhängigkeitsvektor hinzugefügt. Außerdem wird jeder während der Operation 168 heruntergeladene Deskriptor dem Deskriptorvektor hinzugefügt. Falls in einer Ausführungsart eine Abhängigkeit nicht aufgelöst werden kann, d. h. es kann extern kein sie auflösender Deskriptor gefunden werden, wird die unaufgelöste Abhängigkeit aus dem Abhängigkeitsvektor entfernt und dem Vektor der Abhängigkeitsfehler hinzugefügt. Das Verfahren kehrt dann zu Operation 164 zurück und wiederholt, wie oben beschrieben ist. Falls der Abhängigkeitsvektor in Entscheidungsoperation 166 leer ist, dann geht das Verfahren zu Entscheidungsoperation 172, wo bestimmt wird, ob der Vektor der Abhängigkeitsfehler mindestens eine erforderliche Abhängigkeit enthält. Falls der Vektor der Abhängigkeitsfehler mindestens eine erforderliche Abhängigkeit enthält, dann geht das Verfahren zu Operation 174, wo der Benutzer alarmiert werden kann, dass das Herunterladen der Anwendung versagt hat. Falls der Vektor der Abhängigkeitsfehler keine erforderlichen Abhängigkeiten enthält, dann geht das Verfahren zu Operation 176, wo die mit jedem der im Deskriptorvektor gefunden Deskriptoren assoziierten Pakete heruntergeladen werden.
  • Zusammenfassend: Die vorliegende Erfindung stellt ein Schema zum wirkungsvollen Herunterladen von Digitalinhalt auf eine Einrichtung bereit, wenn die Einrichtung mehrfache Abhängigkeiten erfassen muss, die mit dem Ausführen oder Darstellen des Digitalinhalts assoziiert sind. In einer Ausführungsart ist das Schema eine Erweiterung zu einem generischen Download-Protokoll. Metadaten, die das Paket als Ganzes beschreiben, enthalten Zeiger oder Referenzen auf zusätzliche Deskriptoren, die mit der Ausführung oder Darstellung des Digitalinhalts assoziiert sind. Wie oben beschrieben wurde, werden durch die Deskriptoren die notwendigen mit dem Digitalinhalt assoziierten Komponenten identifiziert und heruntergeladen, sodass ein Benutzer auf den Digitalinhalt zugreifen kann. Der Digitalinhalt kann auf jede passende Computereinrichtung heruntergeladen werden, z. B. Telefone, persönliche digitale Assistenten (PDAs), Laptopcomputer, Tischcomputer usw. Man sollte verstehen, dass die hierin beschriebenen Ausführungsarten nicht auf ein bestimmtes Download-Protokoll beschränkt sind, sondern angewendet werden können, um jedes passende Download-Protokoll zu erweitern. Beispielsweise kann ein Protokoll seine eigenen Einschränkungen haben, die einige der Abhängigkeiten und Attribute obsolet oder unanwendbar machen. In diesen Situationen wird die Abhängigkeitserweiterung auf die entsprechende Einschränkung des Protokolls beschränkt.
  • Im Hinblick auf die obigen Ausführungsarten sollte verstanden werden, dass die Erfindung verschiedene computerimplementierte Operationen einsetzen kann, an denen in Computersystemen gespeicherte Daten beteiligt sind. Diese Operationen enthalten Operationen, die physische Manipulation physischer Quantitäten erfordern. Meistens, aber nicht notwendigerweise, nehmen diese Quantitäten die Form von elektrischen oder magnetischen Signalen an, die gespeichert, übertragen, kombiniert, verglichen und anderweitig manipuliert werden können. Außerdem bezieht man sich auf die ausgeführten Manipulationen oft mittels solcher Termini wie Herstellen, Identifizieren, Bestimmen oder Vergleichen.
  • Die oben beschriebene Erfindung kann mit anderen Computersystemkonfigurationen praktiziert werden, einschließlich handgehaltener Einrichtungen, Mikroprozessorsystemen, mikroprozessorbasierter oder programmierbarer Konsumelektronik, Minirechnern, Großrechnern u. Ä. Die Erfindung kann auch in verteilten Computerumgebungen praktiziert werden, wo Aufgaben durch entfernte Prozesseinrichtungen ausgeführt werden, die durch ein Kommunikationsnetz miteinander verbunden sind.
  • Die Erfindung kann auch als computerlesbarer Code auf einem computerlesbaren Medium ausgeführt werden. Das computerlesbare Medium ist irgendeine Datenspeichereinrichtung, die Daten speichern kann, die anschließend von einem Computersystem gelesen werden können. Das computerlesbare Medium enthält auch eine elektromagnetische Trägerwelle, in der der Computercode ausgeführt ist. Beispiele des computerlesbaren Mediums umfassen Festplatten, NAS-Speicher, Festwertspeicher, Direktzugriffspeicher, CD-ROMS, CD-Rs, Magnetbänder und andere optische und nicht optische Datenspeichereinrichtungen. Das computerlesbare Medium kann auch über ein Netz in Verbindung mit einem Computersystem verteilt sein, sodass der computerlesbare Code verteilt gespeichert und ausgeführt wird.
  • Obwohl die vorgehende Erfindung der Klarheit und Verständlichkeit wegen detailliert beschrieben wurde, wird deutlich sein, dass bestimmte Veränderungen und Modifikationen vorgenommen werden können. Dementsprechend sind die vorliegenden Ausführungsarten als veranschaulichend und nicht als beschränkend anzusehen.

Claims (17)

  1. Verfahren zum Herunterladen von Digitalinhalt, umfassend: Identifizieren der den Digitalinhalt (102) beschreibenden Daten (100; 100a); Identifizieren einer Abhängigkeit (108b, 108c), zusammenhängend mit der Ausführung des Digitalinhalts (102) aus den Daten (100, 100a), die den Digitalinhalt (102) beschreiben; Bestimmen, ob eine herunterladbare erste Entität (106a, 106b), assoziiert mit der Abhängigkeit (108b, 108c), die mit der Ausführung des Digitalinhalts zusammenhängt, lokal verfügbar ist; Bestimmen, ob eine zusätzliche Abhängigkeit (108a), die mit der Ausführung des Digitalinhalts (102) zusammenhängt, erforderlich ist; falls die erste Entität (106a, 106b) nicht lokal verfügbar ist und eine zusätzliche Abhängigkeit (108a) erforderlich ist, das Erhalten sowohl der ersten Entität (106a, 106b) von einer durch die den Digitalinhalt beschreibenden Daten bereitgestellten Adresse als auch einer herunterladbaren zusätzlichen Entität (106f), assoziiert mit der einen zusätzlichen Abhängigkeit (108a), und gekennzeichnet durch Bestimmen, ob ein Empfänger (114; 118; 120) des Digitalinhalts eine annehmbare Kapazität hat für die erste Entität (106a, 106b) und die zusätzliche Entität (106f), assoziiert mit der einen zusätzlichen Abhängigkeit (108a).
  2. Verfahren nach Anspruch 1, worin die Ausführung des Digitalinhalts (102) die Präsentation des Digitalinhalts enthält.
  3. Verfahren nach Anspruch 1, worin die Verfahrensoperation des Erhalten sowohl der ersten Entität (106a, 106b) von einer durch die den Digitalinhalt beschreibenden Daten (100; 100a) bereitgestellten Adresse als auch einer zusätzlichen Entität (106f), assoziiert mit der einen zusätzlichen Abhängigkeit (108a), enthält Identifizieren einer Adresse zum Erhalten der zusätzlichen Entität (106f), assoziiert mit der einen zusätzlichen Abhängigkeit (108a) von Daten, welche die mit der einen zusätzlichen Abhängigkeit (100b) assoziierte zusätzliche Entität beschreiben.
  4. Verfahren nach Anspruch 1, außerdem umfassend: Identifizieren eines der Adresse entsprechenden Lokalisierers.
  5. Verfahren nach Anspruch 1, worin, falls der Empfänger (114; 118; 120) des Digitalinhalts keine annehmbare Kapazität für die erste Entität hat, das Verfahren enthält: Erzeugen einer Fehlermeldung.
  6. Verfahren nach Anspruch 1, worin die den Digitalinhalt beschreibenden Daten (100; 100a; 122) ein Deskriptor sind, der eine Liste der Abhängigkeiten enthält.
  7. Verfahren nach Anspruch 1, außerdem umfassend: Initialisieren (162) von Vektoren, ausgewählt aus der Gruppe, die aus einem Vektor der Abhängigkeiten, einem Vektor der Deskriptoren und einem Vektor der ausgefallenen Abhängigkeiten besteht, worin der Vektor der Abhängigkeiten sowohl die Abhängigkeit also auch die eine zusätzliche Abhängigkeit enthält; Erfassen (168) eines Deskriptors für jede Entität; und Extrahieren zusätzlicher Deskriptoren aus dem Deskriptor für jede Entität.
  8. Computerlesbares Medium mit Programmbefehlen zum Herunterladen von Digitalinhalt, umfassend: Programmbefehle zum Identifizieren von den Digitalinhalt (102) beschreibenden Daten (100; 100a); Programmbefehle zum Identifizieren einer Abhängigkeit (108b, 108c), zusammenhängend mit der Ausführung des Digitalinhalts (102) aus den Daten, die den Digitalinhalt beschreiben; Programmbefehle zum Bestimmen, ob eine herunterladbare erste Entität (106a, 106b), assoziiert mit der Abhängigkeit (108b, 108c), die mit der Ausführung des Digitalinhalts zusammenhängt, lokal verfügbar ist; Programmbefehle zum Bestimmen, ob eine zusätzliche Abhängigkeit (108a), die mit der Ausführung des Digitalinhalts zusammenhängt, erforderlich ist; Programmbefehle zum Erhalten sowohl der herunterladbaren ersten Entität (106a, 106b) von einer durch die den Digitalinhalt beschreibenden Daten bereitgestellten Adresse als auch einer herunterladbaren zusätzlichen Entität (106f), assoziiert mit der einen zusätzlichen Abhängigkeit (108a), falls die herunterladbare erste Entität nicht lokal verfügbar ist und eine zusätzliche Abhängigkeit erforderlich ist; und gekennzeichnet durch Programmbefehle zum Bestimmen, ob ein Empfänger (114; 118; 120) des Digitalinhalts eine annehmbare Kapazität hat für die herunterladbare erste Entität (106a, 106b) und die herunterladbare zusätzliche Entität (106f), assoziiert mit der einen zusätzlichen Abhängigkeit (108a).
  9. Computerlesbares Medium nach Anspruch 8, worin die Programmbefehle zum Erhalten sowohl der herunterladbaren ersten Entität (106a, 106b) von einer durch die den Digitalinhalt beschreibenden Daten (100; 100a; 122) bereitgestellten Adresse als auch einer herunterladbaren zusätzlichen Entität (106f), assoziiert mit der einen zusätzlichen Abhängigkeit (108a), enthalten: Programmbefehle zum Identifizieren einer Adresse zum Erhalten der herunterladbaren zusätzlichen Entität (106a), assoziiert mit der einen zusätzlichen Abhängigkeit (108a) von Daten, die die mit der einen zusätzlichen Abhängigkeit (100b) assoziierte herunterladbare zusätzliche Entität beschreiben.
  10. Computerlesbares Medium nach Anspruch 8, außerdem umfassend: Programmbefehle zum Identifizieren eines der Adresse entsprechenden Lokalisierers.
  11. Computerlesbares Medium nach Anspruch 8, worin, falls der Empfänger (114; 118; 120) des Digitalinhalts keine annehmbare Kapazität für die herunterladbare erste Entität hat, das computerlesbare Medium enthält: Programmbefehle zum Erzeugen einer Fehlermeldung.
  12. Computerlesbares Medium nach Anspruch 8, worin die den Digitalinhalt beschreibenden Daten (100; 100a; 122) ein Deskriptor sind, der eine Liste der Abhängigkeiten enthält.
  13. Computerlesbares Medium nach Anspruch 8, außerdem umfassend: Programmbefehle zum Initialisieren (162) von Vektoren, ausgewählt aus der Gruppe, die aus einem Vektor der Abhängigkeiten, einem Vektor der Deskriptoren und einem Vektor der ausgefallenen Abhängigkeiten besteht, worin der Vektor der Abhängigkeiten sowohl die Abhängigkeit also auch die eine zusätzliche Abhängigkeit enthält; Programmbefehle zum Erfassen (168) eines Deskriptors für jede herunterladbare Entität; und Programmbefehle zum Extrahieren zusätzlicher Deskriptoren aus dem Deskriptor für jede herunterladbare Entität.
  14. System, umfassend: einen Server (110), konfiguriert zum Bereitstellen von Digitalinhalt (102); einen Client (114; 118; 120), konfiguriert zum Empfangen des Digitalinhalts (102) vom Server (110); der Client ist zum Identifizieren eines Deskriptors (100a) konfiguriert, der eine Liste von Abhängigkeiten (108b, 108c) zum Ausführen des Digitalinhalts (102) vor Empfang des Digitalinhalts enthält; der Client ist außerdem zum Extrahieren zusätzlicher Abhängigkeiten (108a) vom Deskriptor konfiguriert, wobei der Deskriptor Adressen für ein Paket enthält, das jeder der Abhängigkeiten (108a, 108b) und der zusätzlichen Abhängigkeiten (108a) entspricht, sodass der Client von den entsprechenden Adressen jedes Paket erhalten kann, dadurch gekennzeichnet, dass der Client Logik zum Bestimmen enthält, ob der Client (114; 118; 120) eine annehmbare Kapazität für alle Pakete hat.
  15. System nach Anspruch 14, außerdem umfassend: ein verteiltes Netz (112), aber das der Server (110) und der Client (114; 118; 120) kommunizieren.
  16. System nach Anspruch 14, worin der Client (114; 118; 120) eine mobile elektronische Einrichtung ist.
  17. System nach Anspruch 14, worin die Logik zum Bestimmen, ob der Client (114; 118; 120) eine annehmbare Kapazität für alle Pakete hat, enthält: Logik zum Erzeugen einer Fehlermeldung, die anzeigt, dass der Client (114; 118; 120) nicht fähig ist, den Digitalinhalt (102) zu präsentieren.
DE602004008151T 2003-06-09 2004-05-14 Verfahren und Einrichtung zur Abhängigkeitsauflösung von Client angefragten Ladevorgang Expired - Fee Related DE602004008151T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/458,001 US20040250246A1 (en) 2003-06-09 2003-06-09 Method and apparatus for dependency resolution for client-initiated download
US458001 2003-06-09

Publications (2)

Publication Number Publication Date
DE602004008151D1 DE602004008151D1 (de) 2007-09-27
DE602004008151T2 true DE602004008151T2 (de) 2008-05-08

Family

ID=33299631

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004008151T Expired - Fee Related DE602004008151T2 (de) 2003-06-09 2004-05-14 Verfahren und Einrichtung zur Abhängigkeitsauflösung von Client angefragten Ladevorgang

Country Status (3)

Country Link
US (1) US20040250246A1 (de)
EP (1) EP1487179B1 (de)
DE (1) DE602004008151T2 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8135750B2 (en) * 2005-04-22 2012-03-13 Microsoft Corporation Efficiently describing relationships between resources
US20060271924A1 (en) * 2005-05-27 2006-11-30 International Business Machines Corporation Method and apparatus for automating updates to dependencies
FI20055429L (fi) * 2005-08-08 2007-02-09 Rainer Wehkamp Hilalaskentaverkon hallinta
JP5074424B2 (ja) * 2006-01-18 2012-11-14 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 依存関係の通知
KR20090007954A (ko) * 2007-07-16 2009-01-21 삼성전자주식회사 Drm 컨텐츠 다운로드 방법 및 시스템
US8595718B1 (en) * 2007-08-17 2013-11-26 Oracle America, Inc. Method and system for generating a knowledge package
US8015167B1 (en) 2007-09-05 2011-09-06 Adobe Systems Incorporated Media players and download manager functionality
JP5217713B2 (ja) * 2008-07-11 2013-06-19 ソニー株式会社 情報処理装置、情報処理システム、情報記録媒体、および情報処理方法、並びにプログラム
US9286083B2 (en) 2008-09-10 2016-03-15 Microsoft Technology Licensing, Llc Satisfying missing dependencies on a running system
US8707284B2 (en) 2009-12-22 2014-04-22 Microsoft Corporation Dictionary-based dependency determination
EP2519903A1 (de) * 2009-12-31 2012-11-07 Nokia Corp. Verfahren, vorrichtung und computerprogrammprodukt für automatische bereitstellung von inhalten auf einer vorrichtung

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6078951A (en) * 1996-11-27 2000-06-20 Intel Corporation Method and apparatus for automating a software delivery system by locating, downloading, installing, and upgrading of viewer software
US6205140B1 (en) * 1997-12-01 2001-03-20 Intel Corporation Communication of dynamic dependencies along media streams
JP2001061019A (ja) * 1999-08-20 2001-03-06 Matsushita Electric Ind Co Ltd ダウンロードプログラムによる音楽データ再現システム
US7000230B1 (en) * 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US7246351B2 (en) * 2001-02-20 2007-07-17 Jargon Software System and method for deploying and implementing software applications over a distributed network
US20030055925A1 (en) * 2001-08-06 2003-03-20 Mcalinden Paul Discovering client capabilities
AUPR815201A0 (en) * 2001-10-08 2001-11-01 University Of Wollongong, The Session mobility using digital items
US20030131226A1 (en) * 2002-01-04 2003-07-10 Spencer Donald J. Dynamic distributed configuration management system
US20040086120A1 (en) * 2002-11-06 2004-05-06 Akins Glendon L. Selecting and downloading content to a portable player

Also Published As

Publication number Publication date
DE602004008151D1 (de) 2007-09-27
EP1487179B1 (de) 2007-08-15
US20040250246A1 (en) 2004-12-09
EP1487179A2 (de) 2004-12-15
EP1487179A3 (de) 2005-06-15

Similar Documents

Publication Publication Date Title
US11163541B2 (en) System for the discovery and provisioning of artifacts and composites
US8312425B2 (en) Dynamic template instantiation
DE112011102073B4 (de) Dienstimplementierung von einem Dienstverzeichnis
DE69621975T2 (de) Verfahren und System zum Ermöglichen der Zusammenarbeit von zur Ausführung auf unterschiedlichen Betriebssystemen geschriebenen Prozessen
DE102012213795B4 (de) Durch einen Computer implementiertes Verfahren, das es einer Web-Anwendung ermöglicht, mindestens eine native Funktion einer mobilen Einheit aufzurufen
US7725560B2 (en) Web service-enabled portlet wizard
US6892382B1 (en) Method and apparatus for implementing deployment descriptors in an enterprise environment
KR101376916B1 (ko) 소프트웨어 애플리케이션을 신규 버전의 소프트웨어 애플리케이션으로 점진적으로 업그레이드하기 위한 방법, 기계 판독가능 저장 매체를 포함하는 제품 및 장치
US8423527B2 (en) Enabling interactive integration of network-accessible applications in a content aggregation framework
DE60035745T2 (de) Verfahren zum bei Bedarf Laden und Ausführen einer Netzwerkanwendung
EP2307977B1 (de) System und verfahren zur dynamischen partitionierung von anwendungen in client-server-umgebungen
DE202013012467U1 (de) Zuordnung eines Dateityps zu einer Applikation in einem Netzwerk-Speicherdienst
US7577672B2 (en) Systems and methods for providing a portal including multiple windows
US7406664B1 (en) System for integrating HTML Web site views into application file dialogs
DE112006002523T5 (de) Boot-Verhaltensoptimierung für Festplatte für ein persönliches Internet-Kommunikationsgerät
DE112012004893B4 (de) Implementieren eines Software-Abbildes auf mehreren Zielen unter Verwendung einer Datenstromtechnik
DE112009000293T5 (de) Automatische Verbindungen zwischen Anwendungskomponenten
DE602004008151T2 (de) Verfahren und Einrichtung zur Abhängigkeitsauflösung von Client angefragten Ladevorgang
DE202012013432U1 (de) Speichern von Daten auf Speicherknoten
DE112012002362T5 (de) Automatisierte Empfehlungen für Cloud-Computing-Optionen
MX2008011058A (es) Objeto de procesamiento de datos de sindicacion realmente simple (rss).
US8225307B2 (en) On-demand software module deployment
AU2017304282A1 (en) System and method for generating API development code for integrating platforms
DE112017005015T5 (de) Verarbeiten von gleichgeordneten Aufrufen (SIBLING CALLS)
US20070061277A1 (en) Method, system, and storage medium for providing dynamic deployment of grid services over a computer network

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee