-
Die
vorliegende Erfindung ist verwandt mit den folgenden anhängigen US-Patentanmeldungen der
Anmelderin der vorliegenden Anmeldung: Seriennr. 09/712336 mit dem
Titel „SYSTEM
AND METHOD FOR PROCESSING DATA IN A DISTRIBUTED ENVIRONMENT", die am 13. November
2000 eingereicht wurde; Seriennr. 09/874184 mit dem Titel „SYSTEM
AND METHOD FOR PRINTING FROM A WEB APPLICATION", die am 4. Juni 2001 eingereicht wurde;
Seriennr. 09/874427 mit dem Titel „DYNAMIC PRODUCTION DEVICE
REPRESENTATION IN A DISTRIBUTED ENVIRONMENT", die am 4. Juni 2001 eingereicht wurde;
und Seriennr. 09/924058 mit dem Titel „SYSTEM AND METHOD AND PROGRAM
PRODUCT FOR MULTIUSER PROFILE OPERATIONS AND GROUP COMPOSITION STORE", die am 8. August
2001 eingereicht wurde, deren Offenbarungen hiermit hierin durch
Bezugnahme aufgenommen werden.
-
Die
Erfindung bezieht sich auf ein Drucken in einer webbasierten Bilderzeugungsumgebung
und spezieller auf einen web-basierten Bilderzeugungsgeräte-Dienst,
der durch Zubehör
beeinflußt
ist.
-
Momentan
liefert ein Zubehör,
z. B. ein Papierhandhabungsgerät,
das einem Drucker zugeordnet ist, seine Fähigkeiten an den Drucker, der
wiederum in seinem Auftrag jene Fähigkeiten der Außenwelt
repräsentiert.
Dahingehend besteht eine Einschränkung,
weil der Drucker modifiziert werden muß, um unvorhergesehene zugeordnete
Zubehörfähigkeiten
zu repräsentieren.
-
Typischerweise
versuchen Desktop-Computer-Anwendungen entweder immer sortiert zusammenzustellen
(collate) oder immer mehrere Kopien des Dokuments, das gedruckt
werden soll, zu senden. Existierende Desktop-Anwendungen unterstützen ein
zusammengestelltes Drucken nur in einer geräte- und plattformspezifischen
Weise.
-
Aus
der
EP 1079299 A2 ist
ein System zum Drucken in einer Web-Umgebung bekannt, bei dem ansprechend
auf einen Druckbefehl durch einen Browser eine Internet-Druck-Web-Seite,
die mehrere Druckjoboptionen identifiziert von einem dem Drucker
zugeordneten Dienstbüro
zu dem Browser heruntergeladen wird. Auf eine Benutzerauswahl einer Druckjoboption
hin wird ein Druckauftrag zu dem Dienstbüro geleitet.
-
Aus
der
JP 07230372 A ist
ein Drucksystem bekannt, das einen Druckserver aufweist, der eine Druckverwaltungsfunktion
ausführt,
um alle Drucker in einem Netzwerk zu steuern.
-
Es
wäre in
der Technik vorteilhaft, ein System und ein Verfahren zum sortierten
Zusammenstellen und für
andere zugeordnete Zubehörfähigkeiten zu
haben, die gerätetransparent
und plattformunabhängig
sind.
-
Es
ist die Aufgabe der vorliegenden Erfindung, ein Verfahren und ein
System zu schaffen, die eine web-basierte Bilderzeugung geräte-transparent und
plattformabhängig
ermöglichen.
-
Diese
Aufgabe wird durch ein Verfahren nach Anspruch 1 und ein System
nach Anspruch 12 gelöst.
-
Die
vorliegende Erfindung bezieht sich auf ein System und ein Verfahren,
bei denen ein web-basierter Bilderzeugungsbestimmungspositionsdienst bzw.
Druckerwebdienst einen Web-Inhalt
(oder Daten, die verwendet werden können, um einen solchen Inhalt
zu synthetisieren) von seinen zugeordneten Zubehören bzw. Druckerzubehörgeräten, z.
B. Papierhandhabungsgeräten,
für ein
repräsentiertes Druckgerät anfordert
und diesen Inhalt in den Web-Inhalt einbaut, den er auf den Client-Browser herunterlädt. Bei
einigen Ausführungsbeispielen
versteht der Bestimmungspositions dienst des Druckgeräts den Web-Inhalt
nicht, der von dem zugeordneten Zubehör kommt, sondern integriert
diesen Inhalt einfach in den Inhalt, den er herunterlädt. Bei
einigen Ausführungsbeispielen
baut der Bestimmungspositionsdienst den Web-Inhalt auf, der durch
die Zubehöre
des dargestellten Druckgeräts
beeinflußt
ist.
-
Bei
einer Variation umfaßt
der Inhalt, der von dem zugeordneten Zubehör kommt, einen ausführbaren
Inhalt. Bei einer weiteren Variation umfaßt der ausführbare Inhalt eine Einrichtung
zum Sammeln und Übertragen
von Einstellungen zurück
zum Druckgerät.
Bei einer noch weiteren Variation ent hält das zugeordnete Zubehör tatsächlich seinen
eigenen Bestimmungspositions-Server, auf den durch den Bestimmungspositions-Server
des Druckgeräts
zugegriffen wird.
-
Zu
den technischen Vorteilen gehört,
daß den
zugeordneten Zubehören
ermöglicht
wird, einen Web-Inhalt dem Inhalt beizusteuern, der ein Druckgerät darstellt,
ohne daß das
Druckgerät
ein spezifisches Wissen über
das Zubehör
aufweist. Dadurch benötigt
der Drucker kein spezifisches Wissen über alle möglichen zugeordneten Zubehörfähigkeiten.
Da das zugeordnete Zubehör
sich selbst durch Bereitstellen eines Web-Inhalts darstellt, ist
es frei, viele Fähigkeiten
darzustellen, z. B. Sattelheften, Klebstoffbinden, Schneiden und
Stapeln.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1A ein
vereinfachtes schematisches Diagramm, das eine logische Übersicht über ein
typisches web-basiertes
Bilderzeugungssystem gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt;
-
1B ein
vereinfachtes schematisches Diagramm, das verschiedene Aspekte von
Bestimmungspositionsdiensten gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt;
-
1C ein
schematisches Diagramm, das verschiedene Aspekte des Netzwerks von 1A gemäß den Ausführungsbeispielen
der vorliegenden Erfindung ausführlicher
darstellt;
-
2A ein
vereinfachtes schematisches Diagramm, das gemäß den Ausführungsbeispielen einen konfigurier baren,
web-basierten Bilderzeugungsdienst, der zugeordnete Zubehöre unterstützt, darstellt;
-
2B ein
Flußdiagramm,
das den Betrieb eines ersten Aspekts einer verbesserten Papierhandhabung
gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt;
-
2C eine
schematische Ansicht der Browseranzeige, die durch den Web-Inhalt
in verschiedenen Stufen des Betriebs, der in 2B dargestellt
ist, erzeugt wird;
-
3 ein
Flußdiagramm,
das ein web-basiertes Bilderzeugungsdrucken unter Verwendung diverser
Sortierfähigkeiten
gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt;
-
4A eine
schematische Darstellung von spezialisierten Medien;
-
4B ein
Flußdiagramm,
das den Betrieb eines Systems und eines Verfahrens zum Drucken mit
spezialisierten Medien gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt;
-
4C eine
schematische Darstellung, die eine Implementierung zum Scannen von
codierten spezialisierten Medien gemäß der vorliegenden Erfindung
darstellt;
-
5A ein
schematisches Diagramm, das ein Client-Server-Netzsystem gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt; und
-
5B ein
schematisches Diagramm, das eine Variation des Client-Server-Netzsystems
von 5A darstellt, das auf schnellere Datenraten oder eine begrenzte
Client-Maschinen-Speicherungskapazität zugeschnitten ist.
-
Die
nachstehenden Begriffe und Akronyme werden in der gesamten ausführlichen
Beschreibung verwendet:
„API". Eine API (API =
application programming Interface = Anwendungsprogrammierschnittstelle)
ist eine Bibliothek von programmatischen Verfahren, die durch ein
System einer bestimmten Art (ein Beispiel ist ein web-basiertes
Bilderzeugungssystem wie bei der vorliegenden Erfindung) geliefert
wird, das Client-Programmen (beispielsweise ein Web-Anwendungsinhalt,
der innerhalb des Browsers arbeitet) ermöglicht, mit diesem System zu
interagieren. Ein Verfahren zum Erzeugen einer API ist das Erzeugen
einer Bibliothek. Zum Beispiel wird eine Bibliothek (die herkömmlich als
Jar-Datei bezeichnet
wird) in JAVATM durch Definieren einer Klasse
oder von Klassen, Kompilieren der Klasse oder Klassen und Gruppieren der
Klasse oder Klassen in eine Bibliothek definiert. Zum Beispiel könnte die
folgende Klasse erzeugt werden:
class BaseConversionAPI {static
public String convert-Base
ToBase (String in Number, int inBase, int outBase) {// Code zum
Zurückgeben
einer Zeichenfolge, die inNumber umgewandelt in outBase darstellt}}
Diese
Klasse würde
dann mit dem Befehl kompiliert werden:
java.exe BaseConversionAPI.java
-
Anmerkung:
Die Programme sind typischerweise in Textdateien gespeichert, die „kompiliert" werden, um „Objektdateien" zu erzeugen, die
die ausführbaren
(oder interpretierbaren) Anweisungen enthalten. In diesem Fall ist
das Programm in der Datei BaseConversionAPI.java enthalten. Der
Vorgang des Kompilierens erzeugt eine Datei mit dem Namen „BaseConversionAPI.class", die Anweisungen
für eine
spezifische Re chenarchitektur (in diesem Fall die JAVA Virtual MachineTM), die dem Programm entspricht, enthält.
-
Als
nächstes
würde in
diesem Beispiel eine Jar-Datei erzeugt werden:
jar.exe cvf
BaseConversionAPI.tar BaseConversionAPI.class
-
Dieser
Befehl erzeugt eine „Bibliotheksdatei", die die BaseConversionAPI-Klasse
enthält.
Dieser letzte Schritt ist nicht absolut erforderlich. In manchen
Fällen
werden APIs als einfache Dateien bereitgestellt, die ausführbare Anweisungen
(wie die BaseConversionAPI-class-Datei) enthalten.
-
Referenzen
bezüglich
des Erzeugens von APIs sind:
http://www.library.yale.edu/orbis2/public/activity/AP.html
-
Es
ist zu beachten, daß die
APIs für
Netzwerkdienste (Graphikspeicher, Kompositionsspeicher und Benutzerprofilspeicher,
die nachstehend alle erörtert
werden) erzeugt würden,
damit auf sie durch eine Fernaufruftechnologie wie CORBA, JAVATM-RMI, DCOMTM, RPC
oder SOAP zugegriffen werden kann. Eine große Vielzahl von gedruckten Referenzen
ist verfügbar,
die beschreiben, wie die APIs erzeugt werden können, damit auf sie durch eine
Fernaufruftechnologie wie eine der vorstehend angemerkten Technologien
zugegriffen werden kann.
-
„Client-Server". Ein Modell zur
Interaktion in einem verteilten System, in dem ein Programm an einem
Standort eine Anforderung an ein Programm an einem anderen Standort
sendet und auf eine Antwort wartet. Das anfordernde Programm wird
als „Client" bezeichnet, und
das Programm, das auf die Anforderung antwortet, wird als „Server" bezeichnet. Im Zusammenhang
mit dem World Wide Web (nachstehend erörtert) ist der Client ein „Web-Browser" (oder einfach „Browser") der auf dem Computer
eines Benutzers läuft;
das Programm, das auf die Browseranforderungen antwortet, indem
Web-Seiten oder
andere Typen eines Web-Inhalts vorgelegt bzw. serviert werden, wird
im allgemeinen als „Web-Server" bezeichnet.
-
„Komposition". Eine Komposition,
die auch als „Graphikkomposition" bezeichnet wird,
weist eine Datei mit Verknüpfungen
zu Graphikdaten auf, die als eine einzelne Einheit, d. h. eine Graphik,
behandelt werden. Die Datei umfaßt üblicherweise auch Informationen über den
Austausch jener Graphiken auf einer Sequenz von Seitenbilddaten.
Sie beschreibt, wie ein oder mehrere Graphiken von ein oder mehreren
Quellen auf eine Sequenz von Seitenbilddaten (canvas = Satz von
Bilddaten, der für
eine Seite bestimmt ist) mit einer Vielzahl unterschiedlicher Möglichkeiten
kombiniert werden können.
Die Verwendung von Kompositionen ermöglicht, daß mehrere Kompositionen auf
eine Graphik in einem Graphikspeicher Bezug nehmen können, ohne
daß die
Graphik verdoppelt werden muß.
-
„Kompositionsspeicher". Der Kompositionsspeicher
bezieht sich auf einen Dienst (der Idealerweise als ein Netzdienst
implementiert ist), der einen Zugriff auf die Bilderzeugungskomposition(en)
speichert und bereitstellt, auf die der Benutzer oder die Web-Dienste
zugreifen können.
In diesem Zusammenhang umfaßt
das Bereitstellen eines „Zugriffs" das Bereitstellen
von Verfahren zum Bauen von Kompositionen, Modifizieren von Kompositionen
und stückweisen
Zugreifen auf dieselben. Zum Beispiel könnte ein Satz von Verfahren,
der zum Ausführen über den
Kompositionsspeicher verfügbar
ist, die Verfahren „Get
a Composition" (Erhalte
eine Komposition), „Create
a Composition" (Erzeuge
eine Komposition), „Delete
a Composition" (Lösche eine
Komposition) und „Modify
a Composition" (Modifiziere eine
Komposition) umfassen.
-
„Inhalt". Ein Satz von ausführbaren
Anweisungen, der einem Client durch einen Server vorgelegt wird,
und der durch den Client ausgeführt
werden soll, um den Client mit einer bestimmten Funktionalität zu versorgen.
Der Web-Inhalt bezieht
sich auf den Inhalt, der durch Betrieb eines Web-Browsers ausgeführt werden
soll. Der Web-Inhalt
kann daher auf unerschöpfliche
Weise einen oder mehrere der nachstehenden Codes umfassen: HTML-Code, SGML-Code,
XML-Code, XSL-Code, CSS-Code, JAVATM-Applet, JavaScriptTM und
C-„Sharp"-Code.
-
„Austauschinfrastruktur". Eine Austauschinfrastruktur
ist eine Sammlung von Diensten, die in einem Netzwerk verteilt sind,
das Bilderzeugungsdaten speichert, die einem speziellen Benutzer
durch ein Benutzerprofil zugeordnet sind.
-
„Brandmauer". Eine Brandmauer
filtert unerwünschte
Kommunikationspakete in eine oder mehrere Richtungen aus. Bei einer
Implementierung einer Brandmauer können beispielsweise Anforderung vom
Inneren einer Brandmauer vorgenommen werden, um auf Daten auf der
Außenseite
der Brandmauer zuzugreifen, und die Antworten auf solche Anforderungen
sind typischerweise zulässig.
Kommunikationen, die von außerhalb
der Brandmauer auf Geräte
innerhalb der Brandmauer initiiert werden, sind typischerweise nicht
zulässig.
Allgemein kann die Brandmauer durch einen Brandmauer-Proxy-Server implementiert
sein, der den Geräten
innerhalb der Brandmauer erlaubt, HTTP-Anforderungen an die Web-Server
außerhalb
der Brandmauer weiterzuleiten. Offensichtlich können andere Protokolle verwendet
werden, um eine Kommunikation durch die Brandmauer zu implementieren.
-
„Generische
Zugriffsanweisungen".
Eine generische Zugriffsanweisung bezieht sich auf eine ausführbare Anweisung,
die bewirken soll, daß das ausführende Gerät generische
Zugriffsanforderungen erzeugt, um auf einen Satz von Zielgraphikdaten zuzugreifen.
Diese Anweisungen rufen Verfahren auf, die beispielsweise durch
eine Bilderzeugungserweiterung geliefert werden, jedoch innerhalb
einer JVM/JAVATM- oder einer ähnlichen
Umgebung (zu der die Bilderzeugungserweiterung gehört) ausgeführt weiterung
gehört)
ausgeführt
werden. Die durch die Umgebung, in der das Programm ausgeführt wird,
gelieferten Verfahren werden typischerweise als API bezeichnet.
Es ist zu beachten, daß eine
generische Zugriffsanweisung nicht die Position der Zielgraphikdaten
umfaßt.
Typischerweise werden die Zielgraphikdaten vorausgewählt (allgemein
durch einen Benutzer), und ihre Position wird anhand der Informationen
bestimmt, die lokal innerhalb des ausführenden Geräts beibehalten werden.
-
Zum
Zwecke dieser Anwendung bezieht sich der Begriff „all-gemeine Zugriffsanweisung" auf eine ausführbare Anweisung,
die bewirken soll, daß das ausführende Gerät generische
Zugriffsanforderungen erzeugt, um auf einen Satz von Zieldaten zuzugreifen.
Eine generische Zugriffsanweisung umfaßt jedoch nicht die Position
der Zieldaten an sich, und dies tun auch die generischen Zugriffsanforderungen nicht.
Bedeutsamerweise werden die Zieldaten vorausgewählt (typischerweise durch einen
Benutzer), und ihre Position wird anhand von Informationen bestimmt,
die lokal innerhalb des ausführenden
Computers beibehalten werden. Aus diesem Grund gelten die Zieldaten
für einen
speziellen Computer als diesem Computer „zugeordnet". Daher sind z. B.
die Zieldaten, die dem Computer „A" zugeordnet sind, die Daten, auf die
der Computer „A" ansprechend auf eine
generische Zugriffsanweisung zugreift. Die Zieldaten, die dem Computer „B" zugeordnet sind,
sind die Daten, auf die der Computer „B" ansprechend auf die identische generische
Zugriffsanweisung zugreift.
-
Ferner,
in dem Fall, in dem die Zieldaten ein Bild darstellen, wird dieses
Bild hierin als das „Zielbild" bezeichnet. Bei
diesem vereinfachten Beispiel wird davon ausgegangen, daß alle generischen
Zugriffsanweisungen, die durch den systemweiten Standard, der vorstehend
erwähnt
wurde, spezifiziert sind, zum Zugriff auf die Daten dienen, die
ein Bild beschreiben.
-
„Graphische
Daten". Graphische
Daten beziehen sich auf digitale Daten, die als zweidimensionale
Graphiken dargestellt werden können,
wie eine PDF-Datei (PDF = Portable Document Format = tragbares Dokumentformat)
oder eine JPEG-Datei (JPEG
= Joint Photographic Experts Group = vereinte photographische Expertengruppe).
-
„Graphikspeicher". Der Graphikspeicher
bezieht sich auf einen Netzwerkdienst oder ein Speicherungsgerät zum Speichern
von Graphikdaten, auf die der Benutzer oder andere Netzwerkdienste
zugreifen können.
Der Graphikspeicher akzeptiert die Graphikdaten vorzugsweise in
mehreren Standarddateiformaten, und die Graphikdaten werden nach Bedarf
abhängig
von der Implementierung in diese Dateiformate konvertiert.
-
„Hyperlink". Eine Navigationsverknüpfung von
einem Dokument zu einem anderen, von einem Abschnitt (oder einer
Komponente) eines Dokuments zu einem anderen oder zu einem Web-Betriebsmittel wie
ein JAVA-AppletTM. Typischerweise wird ein
Hyperlink als ein hervorgehobenes Wort oder eine Phrase angezeigt,
die durch Verwendung einer Maus ausgewählt werden können, indem
sie angeklickt werden, um auf das zugeordnete Dokument oder den Dokumentabschnitt
zu springen oder ein spezielles Betriebsmittel wiederzugewinnen.
-
„Hypertext-System". Ein computerbasiertes Informationssystem,
in dem Dokumente (und möglicherweise
andere Typen von Datenentitäten) über Hyperlinks
miteinander verknüpft
werden, um ein benutzernavigierbares „Web" zu bilden.
-
„HTML" (Hyper Text Markup
Language). Eine Standardcodiervereinbarung und ein Satz von Codes
zum Anbringen einer Präsentation
und zum Verknüpfen
von Attributen mit einem Informationsinhalt innerhalb von Dokumenten.
(HTML 2.0 ist derzeit der primäre
Standard, der zum Erzeugen von Web-Dokumenten verwendet wird.) Während einer Dokumentautorisierungsstufe
werden die HTML Codes (die als „Etiketten" bezeichnet werden) in den Informationsinhalt
des Dokuments eingebettet. Wenn das Web-Dokument (oder HTML-Dokument)
anschließend
von einem Web-Server an einen Browser übertragen wird, werden die
Codes durch den Browser interpretiert und zum Anzeigen des Dokuments verwendet.
Zusätzlich
können
beim Spezifizieren, wie der Web-Browser das Dokument anzeigen soll, HTML-Etiketten
verwendet werden, um die Verknüpfungen
mit anderen Web-Dokumenten (die im allgemeinen als Hyperlinks bezeichnet
werden) zu erzeugen. Für
mehr Informationen über
HTML siehe beispielsweise Ian S. Graham, The HTML Source Book, John
Wiley and Sons, Inc., 1995 (ISBN 0471-11894-4).
-
„HTTP" (HTTP = Hyper Text
Transport Protocol). Das Standard World Wide Web Client-Server-Protokoll,
das zum Austauschen von Informationen (wie HTML-Dokumenten und Client-Anforderungen für solche
Dokumente) zwischen einem Browser und einem Web-server verwendet
wird. Das HTTP umfaßt
eine Anzahl von unterschiedlichen Typen von Nachrichten, die vom
Client zum Server gesendet werden können, um unterschiedliche Typen
von Server-Aktionen anzufordern. Zum Beispiel bewirkt eine GET-Nachricht,
die das Format GET <URL> aufweist, daß der Server
das Dokument oder die Datei, die sich auf dem spezifizierten URL
befindet, zurücksendet.
-
„Bilderzeugungskomposition". Eine Bilderzeugungskomposition
weist Verknüpfungen
mit Bilderzeugungsdaten auf, die als eine einzelne Einheit vorgelegt
werden.
-
„Bilderzeugungsdaten". Bilderzeugungsdaten
beziehen sich auf digitale Daten, die als zweidimensionale Graphiken
dargestellt werden können, wie
eine PDF-Datei oder eine JPEG-Datei.
-
„Bilderzeugungsdatenspeicher". Der Bilderzeugungsdatenspeicher
bezieht sich auf einen Netzwerkdienst oder auf ein Speichergerät zum Speichern
von Bilderzeugungsdaten, auf die durch den Benutzer oder andere
Netzwerkdienste zugegriffen werden kann. Der Bilderzeugungsdatenspeicher
akzeptiert die Bilderzeugungsdaten miteinander in mehreren Standarddateiformaten,
und die Bilderzeugungsdaten werden in diese Dateiformate nach Bedarf
abhängig
von der Implementierung konvertiert.
-
„Internet". Ein Sammlung von
miteinander verbundenen oder getrennten Netzwerken (öffentliche
und/oder private), die durch einen Satz von Standardprotokollen
(wie TCP/IP und HTTP) miteinander verknüpft sind, um ein globales,
verteiltes Netzwerk zu bilden. (Obgleich dieser Begriff sich auf
das beziehen soll, was nun allgemein als Internet bekannt ist, soll
er auch Variationen umfassen, die in Zukunft vorgenommen werden
können,
einschließlich
Veränderungen
und Hinzufügungen
zu existierenden Standardprotokollen.)
-
„PDA" (Personal Digital
Assistant = persönlicher
digitaler Assistent). Ein kleiner Handcomputer, der zum Schreiben
von Notizen, Verfolgen von Terminen verwendet wird, ein E-Mail- und Web-Browser mit
allgemein weit weniger Speicherkapazität als ein Desktop Computer.
-
„Persönliche Bilderzeugungsverwahrungsstelle". Eine persönliche Bilderzeugungsverwahrungsstelle
ist ein konzeptioneller Begriff, der die Austauschinfrastruktur
beschreibt, die zum Austauschen von Graphikkomposition und von Graphikdaten
mit Webdiensten verwendet wird. Die Benutzer werden ihren Graphikdaten
durch Benutzerprofile zugeordnet. Es wird darauf hingewiesen, daß die persönliche Bilderzeugungsverwahrungsstelle 50 einen beliebigen
Typ oder eine Kombination von Datenspeicherungsgeräten darstellen
kann.
-
„URL" (URL = Uniform Resource
Locator = einheitlicher Betriebsmittellokalisierer). Eine eindeutige
Adresse, die die Position einer Datei oder eines anderen Betriebsmittels
im Internet oder einem Netzwerk vollständig spezifiziert. Das allgemeine
Format eines URLs ist das Protokoll: //machine address: port/path/filename.
-
„Benutzerinformation". Benutzerinformationen
sind Identifizierungs- und Sicherheitsinformationen, die zum Zugreifen
auf Graphikkompositionen und Graphikdaten, die einem speziellen
Benutzerprofil zugeordnet sind, verwendet werden. Auf diese wird
vorzugsweise entweder direkt oder indirekt durch Verfahren, die
durch eine in dem Web-Browser integrierte Erweiterungskomponente
bereitgestellt sind, zugegriffen.
-
„Benutzerschnittstelle". Der Übergang
zwischen einem Benutzer und einem Computerprogramm, der Befehle
oder Menüs
bereitstellt, durch die ein Benutzer mit einem Programm kommuniziert. Zum
Beispiel erzeugt und liefert der Server bei dem vorstehend definierten
Client-Server-Modell normalerweise einem Client eine Benutzerschnittstelle
zum Kommunizieren mit einem Programm, das auf dem Server-Gerät arbeitet
oder durch dasselbe gesteuert wird. Wenn der Server ein Web-Server
ist, ist die Benutzerschnittstelle eine Webseite. Die Webseite, wenn
dieselbe durch das Client-Gerät
angezeigt ist, präsentiert
einem Benutzer Steuerungen zum Auswählen von Optionen, Ausgeben
von Befehlen und Eingeben von Text. Die angezeigten Steuerungen können viele
Formen annehmen. Sie können
Druckknöpfe,
Wählknöpfe (Radiobuttons),
Textfelder, Scrollbars oder Pulldown-Menüs umfassen, auf die unter Verwendung
einer Tastatur und/oder eines Zeigegerätes wie einer Maus, die mit
einem Client-Geräte
verbunden ist, zugegriffen werden kann. In einer nicht-graphischen Umgebung
können
die Steuerungen Befehlszeilen umfassen, die dem Benutzer erlauben,
Textbefehle einzugeben.
-
„World
Wide Web" („Web"). Wird hierin verwendet,
um allgemein auf sowohl i) eine verteilte Sammlung von miteinander
verknüpften,
benutzereinsehbaren Hypertext-Dokumenten (die im allgemeinen als
Web-Dokumente oder Webseiten bezeichnet werden), auf die über das
Internet zugegriffen werden kann, als auch ii) die Client- und Server-Software-Komponenten,
die einen Benutzerzugriff auf solche Dokumente unter Ver wendung
von standardisierten Internetprotokollen liefern, Bezug zu nehmen.
Derzeit ist das primäre
Standardprotokoll, das ermöglicht,
Anwendungen zu lokalisieren und Web-Dokumente zu erhalten, das HTTP, und
die Web-Seiten werden unter Verwendung von HTML codiert. Die Begriffe „Web" und „World
Wide Web" sollen
WAP und WML für
Mobiltelephon-Web-Browser
sowie andere aktuelle und zukünftige
Markierungssprachen und Transportprotokolle umfassen, die anstelle
(oder zusätzlich
zu) HTML und HTTP verwendet werden können.
-
„Web Site". Ein Computersystem,
das einen Informationsinhalt über
ein Netz unter Verwendung der Standardprotokolle des World Wide
Web vorlegt. Typischerweise entspricht eine Web-Site einem speziellen
Internet-Domain-Namen wie „HP.com" und umfaßt den Inhalt,
der einer speziellen Organisation zugeordnet ist. Der hierin verwendete
Begriff soll allgemein sowohl i) die Hardware/Software-Server-Komponenten, die
den Informationsinhalt über das
Netzwerk vorlegen als auch ii) die „Back End"-Hardware/Software-Komponenten einschließlich beliebiger
Nichtstandard- oder Spezialkomponenten, die mit den Server-Komponenten
interagieren, um Dienste für
die Website-Benutzer auszuführen,
umfassen. Bedeutsamerweise kann die Website eine zusätzliche
Funktionalität
aufweisen, z. B. kann eine Website die Fähigkeit haben, Dokumente zu drucken,
Dokumente zu scannen etc.
-
„Web-Dienst". Ein Webdienst soll
auf einen Dienst verweisen, der (zumindest teilweise) durch einen
Web-Server bereitgestellt wird. Ein Web-Dienst beinhaltet jedoch
eine umfassendere Bedeutung als ein Web-Server. Diesbezüglich ist
ein „Web-Server" ein Programm, das
unter Verwendung des Client/Server-Modells und des Hypertext Transfer
Protocol des World Wide Web (Hypertext Transfer Protocol = Hypertext-Übertragungsprotokoll)
die Dateien vorlegt, die die Web-Seiten für die Web-Benutzer (deren Computer
HTTP-Clients enthalten,
die ihre Anweisungen weiterleiten) bilden. Jeder Computer im Internet,
der eine Web-Site enthält, muß ein Web-Serverprogramm
aufweisen. Die populärsten Web-Server sind derzeit
der Internet Information Server von Microsoft, der mit dem Windows-NT-Server verfügbar ist,
Netscape Fast Track und Enterprise-Server und Apache, ein Web-Server
für UNIX-basierte
Betriebssysteme. Andere Web-Server
umfassen den Web-Server von Novelle für Benutzer ihres NetWare-Betriebssystems
und die Lotus Domino-Server der IBM-Familie, vorwiegend für Kunden des
OS/390 und des AS/400 von IBM.
-
Web-Server
kommen oft als Teil eines größeren Pakets
von Internet- und Intranet-bezogenen Programmen zum Vorlegen von
E-Mails, Herunterladen von Anforderungen für File Transfer Protocol-Dateien
(Dateiübertragungsprotokolldateien)
und zum Aufbauen und Veröffentlichen
von Web-Seiten. Dieses größere Paket
wird als Web-Dienst bezeichnet. Parameter für einen Web-Server sind, wie
gut er mit verschiedenen Betriebssystemen und anderen Servern arbeitet,
seine Fähigkeit,
eine server-seitige Programmierung, ein Veröffentlichen (Publishing), Suchmaschinen
sowie Site-Aufbau-Tools
im Paket zu handhaben.
-
1A ist
ein vereinfachtes schematisches Diagramm, das eine logische Übersicht
eines typischen web-basierten Bilderzeugungssystem gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt. Ein Benutzer 100 ist
mit dem Client-Programm 16, typischerweise ein Web-Browser, schnittstellenmäßig verbunden,
das durch einen Datenweg 51 mit dem Netzwerk 10 logisch
verbunden ist. Unter anderem sind beispielsweise ein Entitätenquellendienst 24,
ein Bilderzeugungsdienst 32, ein Bestimmungspositionsdienst 34 und
ein Bilderzeugungsspeicher 30 (für eine weitere Beschreibung
eines Quellendienstes, eines Bestimmungspositionsdienstes und eines
Bilderzeugungsspeichers siehe mitanhängige und gemeinsam übertragene
US-Patentanmeldungen, Seriennr. 09/712336, 09/874184, 09/874427
und 09/924,058, die vorstehend zitiert wurden und deren Offenbarungen
hierin durch Bezugnahme aufgenommen worden sind) durch jeweilige
Daten wege 52 – 55 ebenfalls
mit dem Netzwerk 10 verbunden. Das Netzwerk 10 kann
ein beliebiges einer Vielzahl von Netzwerktypen, die beispielsweise das
Internet, Intranet und Ethernet umfassen, und das Übertragungsmedium
des Netzwerks 10 und der Datenwege 51 – 55 können ein
elektrisch leitfähiges Kabel,
eine optische Faser, einen Halbleiter, drahtlose oder beliebige
Kombinationen derselben umfassen. Die Datenwege 51 – 55 müssen keine
physischen Verknüpfungen
sein, sondern können
Datenflüsse
durch ein beliebiges Medium darstellen. Allgemein kann ein web-basiertes
Bilderzeugungssystem mehrere Client-Programme 16, Quellendienste 24, Bestimmungspositionsdienste 34 und
Bilderzeugungsspeicher 30 aufweisen, die jeweils mit einem Netzwerk 10 verbunden
sind und eine eindeutige Netzwerkadresse aufweisen, die typischerweise durch
eine URL dargestellt ist. Der Bilderzeugungsdienst 32 ist
eine logische Entität,
die einen Zugriff des Client-Programms 16 auf mehrere Bestimmungspositionsdienste 34 durch
Zugreifen auf und Herunterladen von Schnittstellen, die typischerweise Webseiten
sind, die in herkömmlicher
Weise unter Verwendung einer HTML-Codierung erzeugt werden, liefert.
Die Web-Dokumente sind in herkömmlicher Weise
im gesamten Netzwerk 10 positioniert und werden unter Verwendung
eines HTTPs in dem selben erfaßt.
-
1B ist
ein vereinfachtes schematisches Diagramm, das verschiedene Aspekte
der Bestimmungspositionsdienste 34 gemäß den Ausführungsbeispielen der vorliegenden
Erfindung darstellt. Ein Bestimmungspositionsdienst 34 ist
typischerweise ein Bestimmungsposition-Webdienst, der ein oder mehrere
Produktionsgeräte 152, 154 auf
dem Netzwerk 10 darstellt. Die Produktionsgeräte 152, 154 umfassen
Drucker, Papierhandhabungszubehöre wie
Binde-Einrichtungen, Sortier-Einrichtungen
oder Falt-Einrichtungen, E-Mail-Clienten, Faxvorrichtungen, Web-Server
und Datenspeicherungsvorrichtungen. Die Produktionsgeräte sind
jedoch nicht auf die vorstehenden Geräte beschränkt, können jedoch beliebige Geräte umfassen,
die ein Zielbild elektronisch oder physisch speichern, anzeigen,
formatieren oder übertragen
können.
-
Einige
Produktionsgeräte
führen
nur einen einzigen Typ von Dienst aus, z. B. Drucken, wohingegen
andere Produktionsgeräte
mehrere Dienste ausführen.
Ein selbstdarstellendes Produktionsgerät 152 enthält einen
eingebetteten Bestimmungspositionsdienst 34, der ein Produktionsgerät 152 auf
dem Netzwerk 10 darstellt, wodurch dem Produktionsgerät 152 ermöglicht wird,
direkt mit dem Netzwerk 10 verbunden zu sein und daß auf sie
direkt durch das Client-Programm 16 zugegriffen werden
kann. Das Client-Programm 16 ist typischerweise ein Web-Browser,
der in einer Client-Maschine arbeitet, die üblicherweise ein Desktop- oder
Laptop- und potentiell ein tragbarer Computer oder persönlicher
digitaler Assistent ist. Andererseits ist ein Produktionsgerät 154 wie
ein herkömmlicher
Drucker nicht zur Selbstdarstellung fähig und muß folglich mit einem externen
Bestimmungspositionsdienst 34 verbunden sein und durch
denselben gesteuert werden, wobei derselbe auf einem Zwischengerät wie einem
Desktop-Computer oder einer Druck-Server-Maschine arbeitet.
-
Bei
einigen Ausführungsbeispielen
der vorliegenden Erfindung erzeugt der Quellendienst 24 einen
Satz von Daten, der eine druckbare Version eines Zielbildes darstellt,
das ein gesteuertes Symbol umfaßt,
das sich auf einen vorbestimmten Symbolsatz bezieht. Erst wenn auf
die druckbare Version des Zielbildes durch einen entsprechenden
Bestimmungspositionsdienst zugegriffen wird, der den vorbestimmten
Symbolsatz enthält,
z. B. den entsprechenden Bestimmungspositionsdienst 35,
kann das gesteuerte Symbol in dem Zielbild erzeugt oder angezeigt
werden. Ein anderer Bestimmungspositionsdienst 34, der
den vorbestimmten Symbolsatz nicht enthält und der z. B. Bestimmungspositionsdienste umfaßt, auf
die durch den Bilderzeugungsdienst 32 zugegriffen werden
kann, kann höchstens
nur ein Stellvertretersymbol anstelle des gesteuerten Symbols drucken
oder anzeigen, wenn das Bild gedruckt oder angezeigt wird. Auf die
Daten, die die druckbare Version des Zielbildes darstellen, wird
durch eine Komposition Bezug genommen, die in einem Bilderzeugungs speicher 30 gespeichert
ist, wie nachstehend ausführlicher
beschrieben ist.
-
1C ist
ein schematisches Diagramm, das verschiedene Aspekte des Netzwerks 10 von 1A gemäß verschiedenen
Ausführungsbeispielen
der vorliegenden Erfindung ausführlicher
darstellt. Das Client-Programm 16, das auf dem Betriebssystem 14 in
der Client-Maschine 12 arbeitet, ist durch den Datenweg 52 des
Netzwerks 10 mit dem Quellendienst 24, der typischerweise
ein Quellenwebdienst ist, der auf einer Server-Maschine 22 arbeitet
und Schnittstellen, typischerweise den Web-Inhalt 20, erzeugt,
logisch verbunden. Wenn das Client-Programm 16 zum Quellendienst 24 browst,
wird der Web-Inhalt 20, der gewöhnlicherweise einen ausführbaren
Inhalt umfaßt,
in das Browser-Fenster des Client-Programms 16 heruntergeladen.
Der ausführbare
Inhalt 20 greift auf den Bilderzeugungsspeicher 30 über die
APIs, die in einer modifizierten Bilderzeugungserweiterung 18 des
Client-Programms 16 enthalten sind, z. B. durch die Datenwege 55 und 56 zu.
Zur weiteren Beschreibung der Bilderzeugungserweiterungen, die APIs
enthalten, siehe mitanhängige
und gemeinsam übertragene
US-Patentanmeldungen, Seriennr. 09/874184 und 09/924.058, die vorstehend
zitiert sind, und deren Offenbarungen hierin durch Bezugnahme aufgenommen
worden sind. Auf die modifizierte Bilderzeugungserweiterung 18,
die nachstehend ausführlicher beschrieben
ist, kann beispielsweise durch die JAVA-AppletsTM zum
Zugreifen auf den Bilderzeugungsspeicher 30 zugegriffen
werden, obwohl andere Web-Programmiertechnologien verwendet werden können.
-
Bei
einigen Ausführungsbeispielen
der vorliegenden Erfindung ist eine Vorschauversion der druckbaren
Version des Zielbildes in den Web-Inhalt 20 der zugegriffenen
Bestimmungspositionsdienste 34, 35 eingebaut,
die die Bestimmungspositionsdienste 34 umfassen, auf die
durch den Bilderzeugungsdienst 32 zugegriffen wird, der
Verknüpfungen zu
Quellen- und Bestimmungspositionsdiensten liefert und der dem Benutzer 100 durch
das Client-Programm 16 im Zusammen hang mit den Fähigkeiten der
zugegriffenen Bestimmungspositionsdienste 34, 35 vorher
gezeigt wird. Wenn der Benutzer 100 die „Jetzt
Drucken"-Option
auswählt,
wird der gesamte Produktionsprozeß indirekt durch den Benutzer 100 durch
das Client-Programm 16 gesteuert.
-
Gemäß den Ausführungsbeispielen
der vorliegenden Erfindung ist nachstehend eine Anzahl von Verbesserungen
an den webbasierten Bilderzeugungssystemen ausführlich aufgeführt. Speziell
werden die Systeme und Verfahren beschrieben, die die Papierhandhabung
auf ein zugeordnetes web-basiertes Druckgerät erleichtern. 2A ist
ein vereinfachtes schematisches Diagramm, das einen konfigurierbaren,
webbasierten Bilderzeugungsdienst darstellt, der die zugeordneten
Zubehöre
gemäß den Ausführungsbeispielen
unterstützt.
Ein Browser 16 eines Benutzers, der auf der Client-Maschine 12 arbeitet,
kann durch das Netzwerk auf verschiedene Bestimmungspositionsdienste
zugreifen, z. B. die Bestimmungspositionsdienste 34 und 35,
die die Produktionsgeräte,
z. B. die Drucker 201 – 205,
darstellen und einen Web-Inhalt 20 an den Browser 16 liefern.
Die Bestimmungspositionsdienste, z. B. die Dienste 34, 35,
umfassen jeweilige logische Funktionen 210, 211,
die mit den jeweiligen Druckern 201 – 205 und einem nicht-flüchtigen
Speicher, z. B. den Festplatten 212 und 213, verbunden
sind. Die Bestimmungspositionsdienste 34, 35 können jeweils
auf die persönliche
Bilderzeugungsverwahrungsstelle 30 des Benutzers durch
den Web-Inhalt 20 über
die Bilderzeugungserweiterung 18 über jeweilige Datenverknüpfungen 204, 206 und 207 zugreifen.
Bei manchen Ausführungsbeispielen
können
die Bestimmungspositionsdienste 34, 35 alternativ
jeweils auf die persönliche
Bilderzeugungsverwahrungsstelle 30 des Benutzers unter
direkter Verwendung eines server-seitigen Lösungsansatzes über jeweilige
Datenverknüpfungen 205, 208 zugreifen.
-
In
einer web-basierten Bilderzeugungsumgebung, die ein Drucken ermöglicht,
gibt es zwei allgemeine Arten von Druckgerätkonfigurationen. Eine erste
Konfiguration ist durch den Drucker 201 dargestellt, der
durch einen eingebetteten Bestimmungspositionsdienst 34,
der für
den Drucker 201 sehr spezifisch ist, dargestellt ist. Eine
zweite Konfiguration ist ein Allzweck-Bestimmungspositionsdienst 35,
der z. B. mehrere Drucker 202 – 205 eines älteren Entwurfs darstellt,
die im einzelnen keine eingebetteten Bestimmungspositionsdienste
umfassen. Vorteilhafterweise erfaßt der zweite Bestimmungspositionsdienst 35 das
Wissen über
die Merkmale und Betriebscharakteristika der individuellen, dargestellten
Drucker 202 – 205,
z. B. unterstützt
der Drucker 202 intern ein sortiertes Zusammenstellen (z.
B. über
ein angebrachtes Sortierzubehör 218),
jedoch tut dies der Drucker 203 nicht, wohingegen der Drucker 204 ein Hefter-Zubehör 217 umfaßt und so
ein Heften unterstützt,
was jedoch der Drucker 205 nicht tut. Jeder der Drucker 202 – 205,
die durch den Bestimmungspositionsdienst 35 dargestellt
sind, umfaßt
eine Vielzweck-Papierablage 215, und der Drucker 202 umfaßt einen
eingebetteten Sensor 216. Die Drucker 202, 204 und 205 umfassen
jeweils ein Steuerbedienfeld 214.
-
An
einem Drucker sind üblicherweise
ein oder mehrere ihm zugeordnete Zubehöre einer dritten Partei, die
in 2A durch die Zubehöre 219 – 221 dargestellt
sind, die an die durch den Bestimmungspositionsdienst 35 repräsentierten
Drucker 204 – 205 angebracht
sind. In einem allgemeineren Sinn, können der Hefter 217 und
der Sortierer 218, die jeweils an den Druckern 204 und 202 angebracht sind,
auch in ihnen zugeordneten Zubehören 217 – 221 von
dritten Parteien umfaßt
sein. Neue Zubehöre,
die kontinuierlich zur Funktionalität der vorhandenen Drucker beitragen,
werden normalerweise durch dritte Parteien entwickelt und/oder bereitgestellt. Zum
Beispiel kann ein von der Firma Hewlett-Packard hergestelltes Hefter-Stapler-Zubehör und/oder eine
von einer Firma mit dem Namen Duplo hergestellte Broschürenfertigungseinrichtung
(Booklet-Maker) einem Basismodell eines Hewlett-Packard Druckers
hinzugefügt
werden.
-
Eine
Möglichkeit
für den
Bestimmungspositionsdienst 35 ist, das zugeordnete Zubehör 217 – 221 der
dritten Partei zu ignorieren, und für den Drucker 16,
einfach den Web-Inhalt 20, der dem Bestimmungspositionsdienst 35 zugeordnet
ist, in den Browser herunterzuladen. Dann kann jedoch der Benutzer
nicht von der Verwendung des zugeordneten Zubehörs der dritten Partei profitieren.
Bei einem ersten Aspekt einer verbesserten Papierhandhabung gemäß den Ausführungsbeispielen
der vorliegenden Erfindung beeinflußt ein zugeordnetes Zubehör 217 – 221 einer
dritten Partei, das allgemein an einen Drucker angebracht ist, den
Web-Inhalt 20, der durch den Bestimmungspositionsdienst 35 erzeugt
wird.
-
2B ist
ein Flußdiagramm,
das den Betrieb eines ersten Aspekts einer verbesserten Papierhandhabung
gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt. 2C ist
eine schematische Ansicht der Browser-Anzeige, die durch den Web-Inhalt 20 in
verschiedenen Stufen des Betriebs, der in 2B dargestellt
ist, erzeugt wird. Bei Block 231 von 2B fordert
ein web-basierter Bilderzeugungs-Bestimmungspositionsdienst 35 einen
Web-Inhalt, der durch das Handhabungszubehör 217 – 221 beeinflußt wird,
für ein
Produktionsgerät,
z. B. den Drucker 204, 205, an, und bei Block 232 baut
er diesen Inhalt in den Web-Inhalt 20 ein (oder baut den
Inhalt entsprechend dem zugeordneten Zubehör 217 – 221 basierend
auf Informationen, die durch das zugeordnete Zubehör 217 – 221 geliefert
werden, auf), den er in den Client-Browser 16 bei Block 232 herunterlädt. Bei
einigen Ausführungsbeispielen
versteht der web-basierte Bilderzeugungs-Bestimmungspositionsdienst 35 des
Druckers den Web-Inhalt von dem zugeordneten Zubehör 217 – 221 nicht,
jedoch integriert er diesen Inhalt bei Block 232 einfach
in den Web-Inhalt 20, den er bei Block 233 in
den Browser 16 herunterlädt. Bei einigen Ausführungsbeispielen
gibt es einen anderen Beeinflussungsmechanismus, z. B. baut der
Drucker den Inhalt basierend auf Informationen auf, die durch das
zugeordnete Zubehör
geliefert werden. Typischerweise involviert dies ein Hinzufügen von
Optionen zum Be stimmungspositionsdienst-Web-Inhalt 20,
der im Browser 16 bei Block 234 angezeigt ist, wie
durch das Beispiel in der Anzeigeansicht 260 von 2C dargestellt
ist. Der vom Bestimmungspositionsdienst 35 des Druckers
in den Browser 16 heruntergeladene Web-Inhalt 20 reflektiert
das Vorhandensein eines zugeordneten Zubehörs 217 – 221 einer
dritten Partei.
-
Bei
einer Variation umfaßt
der Inhalt vom Papierhandhabungszubehör 217 – 221 einen
ausführbaren
Inhalt. Das zugeordnete Zubehör 217 – 221 einer
dritten Partei weist nicht nur eine Möglichkeit zum Spezifizieren
oder Beeinflussen des Web-Inhalts 20 auf, sondern weist
auch eine Möglichkeit
zum Hinzufügen
zu den Aufgabenoptionseinstellungen auf. Wenn ein physisches Zubehör das gedruckte
Bild beeinflußt,
dann wird dies auch in dem Vorschau-Bild des Web-Inhalts 20 reflektiert,
wie dies durch das Heftbild 271 des Vorschau-Bilds 272 in
der Anzeigenansicht 270 von 2C schematisch
dargestellt ist. Bei einer anderen Variation umfaßt der ausführbare Inhalt
eine Einrichtung zum Sammeln von Einstellungen und zum Übermitteln
dieser Einstellungen zurück
zum Drucker (wenn das Drucken aufgerufen wurde). Die Aufgabenoptionseinstellungen
einschließlich
der Zubehöreinstellungen
werden dann bei Block 235 ausgewählt, angezeigt, wie in der
Anzeigeansicht 270 dargestellt ist, und an den Drucker 204, 205 übermittelt,
wo bei Block 236 die Druckaufgabe einschließlich z.
B. einer Heften- oder Nicht-Heften-Anforderung über eine
logische Funktion 211 eines zugeordneten Zubehörs einer
dritten Partei implementiert wird.
-
Wenn
ein Verarbeitungsstatus vorhanden ist, der das Zubehör involviert,
dann kann dieser Status auch bei Block 237 in dynamischen
Druckfortschrittsseiten gezeigt werden, die in einem Web-Inhalt 20 bereitgestellt
sind, wie in der Anzeigenansicht 280 von 2C schematisch
dargestellt ist. Vorteilhafterweise wird der Web-Inhalt 20 des
Live-Druckfortschritts
kontinuierlich durch die Logikfunktion 211 aktualisiert,
die Abfragen vornimmt oder anderweitig kontinuierlich mit dem Drucker 204, 205 kommuniziert,
um den Status zu bestimmen. Die Logikfunktion 211 umfaßt eine
Intelligenz, die ausreicht, um die Browser-Anzeige einschließlich des
Status eines beliebigen zugeordneten Zubehörs 217 – 221 einer
dritten Partei zu aktualisieren, was zusätzliche Anzeigemerkmale beträgt. Zum
Beispiel ändert
sich die Statusanzeige von einem Vorschau-Bild und Ankreuzkästchen zum
Heften und anderen Papierhandhabungsoptionen wie in der Anzeigeansicht 270 über eine
Nachricht „Jetzt
Kopie 1, Seite 1 drucken" wie
in der Anzeigenansicht 280 zu einer Nachricht „Kopie
3 jetzt heften" wie
in der Anzeigenansicht 290 von 2C. Bei
Block 238 von 2B wird das Drucken und die
Zubehörverarbeitungsaufgabe
beendet.
-
Bei
einer weiteren Variation enthält
das zugeordnete Zubehör 217 – 221 intern
einen Bestimmungspositionsdienst, z. B. den Bestimmungspositionsdienst 222,
der in dem Zubehör 221 enthalten
ist, auf den durch den Bestimmungspositionsdienst 35 des
Druckers zugegriffen wird. Vorteilhafterweise ermöglicht dies
den zugeordneten Zubehören 217 – 221,
einen Web-Inhalt zum Web-Inhalt 20 beizutragen, der ein
Druckgerät 204, 205 darstellt,
ohne daß das
Druckgerät
an sich ein spezifisches Wissen über das
Zubehör
benötigt.
Dies befreit den Drucker von der Notwendigkeit nach einem spezifischen
Wissen über
alle möglichen
zugeordneten Zubehörfähigkeiten.
Da das zugeordnete Zubehör 217 – 221 sich selbst
durch das Liefern des Web-Inhalts repräsentiert, steht es ihm frei,
viele Fähigkeiten
zu repräsentieren,
z. B. Sattelheften, Klebstoffbinden, Schneiden und Stapeln.
-
Bei
dem zweiten Aspekt der verbesserten Papierhandhabung gemäß den Ausführungsbeispielen
der vorliegenden Erfindung implementiert die web-basierte Bilderzeugung
ein sortiertes, zusammengestelltes Drucken abhängig von den Sortierfähigkeiten
des Druckers. Unter Bezugnahme auf 2A stellt
der Bestimmungspositionsdienst 35 mehrere Drucker 202 – 205 dar,
die nicht ihre eigenen eingebetteten Bestimmungsposi tionsdienste enthalten.
Der Bestimmungspositionsdienst 35 muß für jeden der verschiedenen Drucker,
die er repräsentiert,
in entsprechender Weise arbeiten. Speziell kann sich der Bestimmungspositionsdienst 35 basierend auf
der Sortierfähigkeit
von jedem einzelnen Drucker 202 – 205 unterschiedlich
verhalten.
-
Ein
Drucker kann das sortierte Zusammenstellen typischerweise auf eine
von drei Arten unterstützen – überhaupt
nicht durch eine physische Einrichtung oder durch eine logische
Speicherungseinrichtung. Unter Verwendung des logischen sortierten Zusammenstellens
kann ein Benutzer z. B. ein 20-Seiten-Dokument an einen Drucker
senden und anfordern, fünf
Kopien des Dokuments zu drucken. Die erste Kopie wird er sofort
drucken, und während er
jede Seite druckt, erzeugt er eine drucker- oder hardware-bereite
Version dieser Seite, die er auf der Festplatte oder einem anderen
nicht-flüchtigen
Speicher speichert. Jede anschließende Kopie wird dann bei einer
Maschinengeschwindigkeit von der gespeicherten hardware-bereiten
Version gedruckt. Alternativ, unter Verwendung eines physischen
Sortierers, wird die Seite 1 z. B. an einen ersten Behälter gedruckt,
die Seite 1 an einen zweiten Behälter
gedruckt, die Seite 1 an einen dritten Behälter gedruckt, ..., dann wird
die Seite 2 an den ersten Behälter
gedruckt, und die Sequenz wiederholt sich. Ein Vorteil ist, daß in Verbindung
mit dem Druckgerät
weniger Speicher erforderlich ist als für ein logisches sortiertes
Zusammenstellen, jedoch ist ein Nachteil, daß die Wahrscheinlichkeit, daß die mechanische
Vorrichtung kaputt geht, höher
und ihr Bau kostspieliger ist als ein speicherbasiertes sortiertes
Zusammenstellen, wo die druckbereiten Daten in einem Speicher laufend
einbehalten werden.
-
Wenn
der Drucker keinen Typ eines sortierten Zusammenstellens unterstützt, wie
bei den Druckern 203 – 205,
sendet der Bestimmungspositionsdienst 35 jede darauffolgende
elektronische Kopie einzeln an den Drucker 202 – 205.
Folglich sendet der Bestimmungspositionsdienst 35 alle
Seiten der ersten Kopie in elektronischer Form an den Drucker, der
dieselben druckt, als druckte er eine einzelne Kopie. Der Bestimmungspositionsdienst
sendet dann erneut alle Seiten für
die zweite Kopie elektronisch, wobei die zweite Kopie mit der ersten
Kopie identisch ist, und wiederholt den Prozeß, bis schließlich alle fünf Kopien
gedruckt sind. Das Nettoergebnis ist, daß der Benutzer die gleichen
fünf gedruckten
Kopien erhält,
unabhängig
davon, ob der Drucker, der verwendet wird, das sortierte Zusammenstellen
intern unterstützt.
-
3 ist
ein Flußdiagramm,
das ein web-basiertes Bilderzeugungsdrucken unter Verwendung diverser
Sortierfähigkeiten
gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt. Bei Block 301 lernt
der Bestimmungspositionsdienst 35 die Art von Sortierfähigkeiten
von jedem Drukker, den er repräsentiert
und paßt
sein Verhalten aufgrund der Sortierfähigkeiten des Druckers an.
Ein Benutzer hat Bilderzeugungsinformationen in der persönlichen
Bilderzeugungsverwahrungsstelle 30 des Benutzers gesammelt
und an einen web-basierten Bestimmungspositionsdienst 35 gebrowst.
Der Benutzer bei Block 302 wählt den Drucker 202 – 205 aus,
bei Block 303 wählt
er Druckoptionen einschließlich
der Option des Druckens von mehr als einer Kopie aus, und bei Block 304 wählt er das
sortierte Zusammenstellen. Der Bestimmungspositionsdienst arbeitet
abhängig davon
anders, ob das Gerät,
das durch den Bestimmungspositionsdienst repräsentiert wird, ein sortiertes
Drucken unterstützt.
Bei einigen Ausführungsbeispielen,
wenn bei Block 305 bestimmt wird, daß der ausgewählte Drucker
eine interne Sortierung entweder physisch oder logisch unterstützt, wie
beispielsweise durch den Sortierer 218 dargestellt ist,
der am Drukker 202 angebracht ist, dann sendet der Bestimmungspositionsdienst 35 bei
Block 306 einfach die Druckaufgabe an den Drucker 202,
der dann bei Block 307 die mehreren Kopien unabhängig druckt und
sortiert.
-
Andererseits,
wenn bei Block 305 bestimmt wird, daß der ausgewählte Drucker,
z. B. der Drucker 205, keine interne Sortierung unterstützt, dann
stellt der Bestimmungspositionsdienst 35 ein extern unterstütztes sortiertes,
zusammengestelltes Drucken bereit, indem er bei Block 309 eine
einzelne Kopie an den Drucker sendet und bei Block 310 druckt,
dann wiederholt, d. h. einmal für
jede komplette angeforderte Kopie, wie bei Block 313 dargestellt
ist, bis alle angeforderten Kopien gedruckt worden sind, wie bei Block 312 dargestellt
ist. Obwohl die extern unterstützte
Alternative typischerweise langsamer ist als das Drucken mit einem
Gerät,
das ein internes Sammeln unterstützt,
erfüllt
sie nichtsdestotrotz die Erwartung des Benutzers, sortierte, zusammengestellte
Kopien zu erhalten. Bei einer Variation zeigt der Bestimmungspositionsdienst 35 am
Frontbedienfeld des Druckgeräts
Statusaktualisierungen an, wie bei Block 311 angezeigt
ist, um z. B. anzuzeigen, welche sortierte, zusammengestellte Kopie
derzeit gedruckt wird, wie in der Anzeigeansicht 280 von 2C dargestellt
ist. Bei einer weiteren Variation, wie bei Block 308 angezeigt
ist, greift der Bestimmungspositionsdienst 35 auf die persönliche Bilderzeugungsverwahrungsstelle 30 des
Benutzers auf Bedarfsbasis mehrere Male zu, um die Bilderzeugungsdaten
zum extern unterstützten,
sortierten, zusammengestellten Drucken wiederzugewinnen.
-
Vorteilhafterweise
erhält
der Benutzer die angeforderte Anzahl von sortierten, zusammengestellten
Kopien ungeachtet davon, ob das Druckgerät ein sortiertes, zusammengestelltes
Drucken intern unterstützt.
Unabhängig
von einer beliebigen speziellen Softwareanwendung ermöglichen
die Ausführungsbeispiele
der vorliegenden Erfindung ein existierendes sortiertes, zusammengestelltes
Drucken unter Verwendung von Geräten,
die ein sortiertes, zusammengestelltes Drucken intern unterstützen, während zusätzlich ein
extern unterstütztes,
sortiertes, zusammengestelltes Drucken unter Verwendung von Druckgeräten ermöglicht wird,
die ein sortiertes, zusammengestelltes Drucken intern nicht unterstützen.
-
Bei
einem dritten Aspekt der verbesserten Papierhandhabung gemäß den Ausführungsbeispielen
der vorliegenden Erfindung sind die Papierhandhabungszubehöre verallgemeinert
worden, um Spezialmedien zu umfassen. Spezialmedien umfassen z. B.
Zertifikate, Briefköpfe
und verziertes Festtagspapier mit Kunststoffolien und lebendigen
Farben, die nicht mit einem herkömmlichen
Drucker hergestellt werden, um Festtagspost zu drucken. 4A ist
eine schematische Darstellung von Spezialmedien 401 und 402.
Typische Spezialmedien 401, 402 umfassen verzierte
Nicht-Druckbereiche 403, die in 4A verdunkelt
gezeigt sind, und Textbereiche 404, die für gedruckte
Nachrichten im allgemeinen von Verzierungen frei sind. Typischerweise
möchte
ein Benutzer den Text oder die Nachricht so entwerfen, daß dieselbe
nicht auf verzierte Bereiche 403 auf einem Spezialmedium 401, 402 gedruckt
wird und dieselben verdunkelt werden. Derzeit wird dies vorwiegend durch
die Versuchs- und Irrtums-Methode erreicht.
-
Existierende
Drucker weisen Mehrzweckablagen auf, die herausgeklappt werden können, um Umschläge oder
Spezialmedien zu empfangen. Momentan wird die Mehrzweckablage durch
einen Benutzer herausgeklappt, das Spezialmedium eingeführt, und
ein Sensor kann erfassen, daß der
Benutzer das Medium geladen hat. Was derzeit nicht existiert ist,
daß der
Drucker nicht weiß,
was diese Spezialmedien sind. Gemäß der vorliegenden Erfindung kann
der Benutzer eine Anzeige des Texts oder der Nachricht, die in Ausrichtung
mit dem gewünschten Spezialmedium überlagert
sind, im voraus betrachten und kann daher vor dem Drucken bestimmen,
ob Einstellungen oder Korrekturen notwendig sind.
-
4B ist
ein Flußdiagramm,
das den Betrieb eines Systems und eines Verfahrens zum Drucken mit
Spezialmedien gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt. Bei Block 421 sammelt
ein Benutzer die Bilderzeugungsdaten in der persönlichen Bilderzeugungsverwahrungsstelle 30 des
Benutzers. Bei Block 422 lädt ein Benutzer die Spezialmedien 401, 402 in
die Mehrzweckablage 215 eines Druckers, z. B. des Druckers 202,
und kehrt zum Browser 16 des Benutzers zurück. Bei
Block 423 greift der Benutzer auf einen web-basierten Bestimmungspositionsdienst 35 zu, der
den Drucker 202 repräsentiert,
der die Spezialmedien 401, 402 in der Mehrzweckablage 215 enthält und in
der Lage ist, die Spezialmedien zu unterstützen. Bei Block 424 gewinnt
der Bestimmungspositionsdienst 35 die Bilderzeugungsdaten
von der persönlichen
Bilderzeugungsverwahrungsstelle 30 des Benutzers wieder,
und bei Block 425 zeigt er die Druckaufgabenoptionen durch
den Web-Inhalt 20 an, der in den Browser 16 des
Benutzers heruntergeladen wurde. Bei Block 426 wählt der
Benutzer die gewünschten
Aufgabenoptionen aus.
-
Bei
einigen Ausführungsbeispielen
werden die Spezialmedien 401, 402 durch einen
Sensor 216 erfaßt,
wenn dieselben in die Mehrzweckablage des Druckes 202 eingebracht
werden, wie bei Block 427 angezeigt ist. Alternativ wählt der
Benutzer einen Wunsch aus, ein Spezialmedium zu drucken, wie bei Block 428 angezeigt
ist. Bei einer Variation werden die individuellen Typen von Spezialmedien 401, 402 individuell
codiert und durch einen Abtastmechanismus an der Mehrzweckablage 215 automatisch
identifiziert, wie bei Block 429 angezeigt ist. Alternativ, wie
bei Block 430 angezeigt ist, ist jeder Typ der Spezialmedien 401, 402 in
einer Liste von verfügbaren Medien,
die im Browser 16 des Benutzers durch den Bestimmungspositionsdienst 35 angezeigt
ist, einzeln aufgeführt
und ist aus derselben wählbar.
Wie bei Block 431 angezeigt ist, kann ein Benutzer z. B. aus
dieser Liste den Typ von Spezialmedium 401, 402 auswählen, der
in die Mehrzweckablage 215 des Druckers 202 geladen
wird. Bei einer weiteren Alternative, wie bei Block 432 angezeigt
ist, gibt der Benutzer in die Client-Maschine 12 per Hand
einen Code ein, der den Typ von Spezialmedium 401, 402 darstellt,
der in die Mehrzweckablage 215 des Druckers 202 geladen
wird.
-
4C ist
eine schematische Darstellung, die eine Implementierung zum Abtasten
von codierten Spezialmedien gemäß der vorliegenden
Erfindung darstellt. Die Mehrzweckablage 215 umfaßt eine
einstückige
Strichcode-Abtastvorrichtung 216, die zum Identifizieren
von Spezialmedien 481 verwendet wird, die einen dekorierten
Bereich 282, einen Nachrichtenbereich 483 und
einen Strichcode 484 umfassen, der das spezielle Medium
spezifiziert. Eine der Anforderungen zum Strichcode-Abtasten ist eine
relative Bewegung zwischen dem Strichcode und dem Abtastsensor.
Um z. B. einen speziellen Strichcode abzutasten, geht ein Abtaststift über den Code
oder eine Maschine bewegt den Abtastsensor wie bei einem Kassensystem
vor und zurück.
Alternativ kann der Strichcode über
dem Abtastsensor bewegt werden. Der Vorgang des Einbringens von
Spezialmedien 481 in die Mehrzweckablage, der durch den
Richtungspfeil 485 angezeigt ist, bewirkt an sich, daß die Abtastbewegung
stattfindet, wodurch der Bedarf nach einem separaten Abtastmechanismus
aufgehoben wird und dem Drucker ermöglicht wird, eine Strichcodeabtastung
innerhalb seiner Mehrzweckablage auszuführen. Auf diese Weise erfährt der
Drucker, welche Art von Medium sich in der Mehrzweckablage befindet,
weil der Drucker den Strichcode gelesen hat.
-
Bei
einer weiteren Variation werden Tinten, die nur durch einen Infrarot-Abtastmechanismus sichtbar
sind, verwendet, um die Informationen, die das Medium identifizieren,
zu codieren. Bei einigen Variationen wird der Strichcode auf das
Spezialmedium unter Verwendung einer Infrarottinte- oder eines Toners
gedruckt, die nur unter Verwendung eines Infrarot-sensitiven Abtastsensors,
jedoch nicht unter Verwendung einer sichtbaren Beleuchtung erfaßbar ist.
Bei anderen Variationen ist der Strichcode sichtbar, befindet sich
jedoch auf der Rück-(Nicht-Druck-) Seite
des Spezialmedienblatts.
-
Bei
einer anderen Variation, wenn der Benutzer an der Mehrzweckablage 215 die
Spezialmedien hinzufügt
oder dieselben entfernt, wird das Medium durch den web-basierten
Bestimmungspositionsdienst 25 verfügbar oder nicht verfügbar (wenn
es unverfügbar
ist, dann wird ein vorgegebenes Medium verfügbar gemacht). Bei einer weiteren
Variation wird ein Spezialmedium automatisch ausgewählt, wenn der
Benutzer dasselbe in die Mehrzweckablage 215 einbringt.
Bei einer anderen Variation wird das Spezialmedium automatisch ausgewählt, wenn
sich das Spezialmedium bereits in der Mehrzweckablage 215 befindet,
wenn der Benutzer auf den webbasierten Bestimmungspositionsdienst 35 zugreift.
-
Der
Bestimmungspositionsdienst 35 interpretiert die Strichcodeabtastung
oder den Mediencode, der ansonsten erhalten wird, um auf eine Graphik
oder ein Bild zuzugreifen, das das spezielle Druckmedium repräsentiert.
Bei einigen Variationen wird die Graphik oder das Bild, das das
Spezialmedium 481 repräsentiert,
von einem Bilderzeugungsspeicher nahe dem Bestimmungspositionsdienst 35 wiedergewonnen,
wie bei Block 433 von 4B angezeigt
ist. Bei anderen Variationen, wie bei Block 434 angezeigt
ist, kann der Mediencode den URL einer Webseite im Internet spezifizieren,
der dem speziellen Spezialmedium zugeordnet ist. Bei einer Variation
werden Graphiken, die jeweils die Medien darstellen, vom Internet
in einen lokalen Bilderzeugungsspeicher heruntergeladen, der für den Bestimmungspositionsdienst 35 durch
die Informationen, die auf dem Spezialmedium codiert sind, zugreifbar ist.
-
Nachdem
das Medienbild durch den Bestimmungspositionsdienst 35,
der den Drucker 202 repräsentiert, wiedergewonnen wurde,
zeigt der Web-Inhalt 20, der im Browser 16 arbeitet,
bei Block 435 eine Vorschau der Druckaufgabe in Verbindung
damit an, wie die Aufgabe aussehen wird, wenn sie letztendlich auf
dem speziellen Medium gedruckt ist. Um eine realistischere Vorschauanzeige
zu liefern, wird das Bild der Druckaufgabe in Ausrichtung auf ein Bild
des ausgewählten
Spezialmediums überlagert, so
daß der
Benutzer im voraus bestimmen kann, ob der Text beispielsweise auf
dekorative Bildbereiche entlang der Seite gedruckt worden ist, und
kann daher verhindern, daß ein
Blatt von einem Spezialmedi um verschwendet wird. Dies ergeht analog
zum Anzeigen einer Vorschau einer Druckaufgabe in Verbindung mit
anderen ausgewählten
Aufgabenoptionen und/oder Zubehören
beim webbasierten Bilderzeugungsdrucken. Folglich können die
Spezialmedien 401, 402 als spezielle Beispiele
von verallgemeinerten Druckzubehören-
oder Optionen erkannt werden.
-
Nach
dem Betrachten der Vorschauanzeige bei Block 435 hat der
Benutzer die Option, ein Drucken bei Block 436 auszuwählen, was
die Verarbeitung der Aufgabe bei Block 437 startet. Bei
einer kostengünstigen,
jedoch zuverlässigen
Variation verwendet ein Sensor, der der Mehrzweckablage zugeordnet
ist, den Vorgang des Einbringens von Spezialmedien, um eine Abtastbewegung
zu liefern, nur um die Spezialmedien zu erfassen, jedoch nicht um
dieselben im voraus zu betrachten.
-
Ausführungsbeispiele
der Erfindung ermöglichen
dem Benutzer, die Spezialmedien einfach in die Sonderzweckablage
einzubringen und diese Spezialmedien in nahtloser Weise zu verwenden.
Durch Zugreifen auf ein Bild, das durch einen Mediencode spezifiziert
ist, scheint die Vorrichtung über
das Spezialmedium Bescheid zu wissen, wobei eine Einrichtung bereitgestellt
wird, die durch die web-basierte Bilderzeugung zur einfachen und
exakten Verwendung von Spezialmedien freigegeben wird. Bei einigen
Variationen ist der Abtastmechanismus vereinfacht, was Kosten verringert.
-
Das
System und das Verfahren schaffen ein Drucken aus einer Webanwendung,
die von der Konfiguration des Betriebssystems unabhängig ist.
Da der Druckbestimmungspositions-Server einen spezifischen Druckinhalt
zurückgeben
kann, der sich auf ein ausgewähltes
Gerät bezieht,
ermöglicht
die vorliegende Erfindung eine Vorschau auf die Druckaufgabe in
Verbindung mit den Geräten
und/oder Diensten, die durch den Druckbestimmungspositions-Server
angeboten werden.
-
5A ist
ein schematisches Diagramm, das ein Client-Server-Netzwerksystem 10 gemäß den Ausführungsbeispielen
der vorliegenden Erfindung darstellt. Die Client-Maschine 12 ist
mit einer ersten Server-Maschine 514 und einer zweiten
Server-Maschine 516 über
das Internet 518 verbunden. Die Client-Maschine 12 umfaßt ein Client-Programm (Browser 16)
und vorzugsweise eine persönliche
Bilderzeugungsverwahrungsstelle 522. Der Browser 16 umfaßt ferner
eine Erweiterungskomponente (Bilderzeugungserweiterung) 18,
die die Benutzerinformationen 526 nutzt, um eine Schnittstelle
zwischen dem Inhalt, der im Browser 16 ausgeführt wird,
und der persönlichen
Bilderzeugungsverwahrungsstelle 522 zu liefern. Spezieller
werden die Benutzerinformationen 526 zum Zuordnen von Zugriffen
durch die Erweiterungskomponente 18 zur persönlichen
Bilderzeugungsstelle des entsprechenden Benutzers verwendet. Es
wird darauf hingewiesen, daß das
Benutzerprofil der persönlichen
Bilderzeugungsverwahrungsstelle 522 unterschiedliche Benutzer
oder Gruppen zuordnen kann. Zum Beispiel kann das Benutzerprofil
eine spezielle persönliche
Bilderzeugungsverwahrungsstelle einem einzelnen Benutzer zuordnen,
jedoch kann dieser Benutzer gleichzeitig auch über mehrere Benutzerprofile
verfügen,
was dazu führt,
daß mehrere
persönliche
Bilderzeugungsverwaltungsstellen einem einzelnen Benutzer zugeordnet
sind. Desgleichen kann das Benutzerprofil einer speziellen persönlichen
Bilderzeugungsverwahrungsstelle eine Gruppe mit mehreren Benutzern zuordnen.
Eine persönliche
Bilderzeugungsverwahrungsstelle kann in diesem Szenario durch eine Gruppe
mit einem gemeinsamen Zusammenhang, wie z. B. einem Gruppenprojekt,
verwendet werden. Wie beschrieben ist, kann das Benutzerprofil mit
großer
Diskretion und Flexibilität
definiert sein, und die vorstehenden Implementierungen werden berücksichtigt
und bewegen sich innerhalb des Schutzbereichs der vorliegenden Erfindung.
-
Obwohl
die vorhergehende Beschreibung das Benutzerprofil weitgehend definiert,
wird darauf hingewiesen, daß bei
dem vorliegenden Ausführungsbeispiel
jeder Benutzer eine per sönliche
Bilderzeugungsverwahrungsstelle hat. Eine persönliche Bilderzeugungsverwahrungsstelle
wird nicht typischerweise Gruppen zugeordnet – sie wird typischerweise nur
Einzelpersonen zugeordnet, könnte
jedoch optional mehreren Einzelpersonen erlauben, die gleiche Verwahrungsstelle
zu verwenden. Diese persönliche
Bilderzeugungsverwahrungsstelle ist durch alle Informationen und
Dienste definiert, die zum Ausführen
von Bilderzeugungsoperationen für
den speziellen Benutzer relevant sind. Die „Wurzel" einer persönlichen Bilderzeugungsstelle
des Benutzers sind ein oder mehrere Benutzerprofile, die dem Benutzer durch
einen oder mehrere Sätze
von Benutzerinformationen zugeordnet sind. Die vorliegende Erfindung bezieht
sich auf das Implementieren des Konzepts zum Ermöglichen, daß die Informationen eines Benutzers
ihm/ihr überall
hin folgen, d. h. von einer Vielzahl von unterschiedlichen Positionen
aus zugreifbar sind, sowohl innerhalb einer Brandmauer als auch außerhalb
der Brandmauer sowie von einer Vielzahl von verschiedenen Maschinen.
-
Die
Bilderzeugungserweiterung 18 ist konfiguriert, um auf die
Ausführung
der generischen Zugriffsanweisungen vom Web-Anwendungsinhalt 528 zu reagieren,
indem diese generischen Anweisungen erzeugt/auf entsprechende bilderzeugungsclient-spezifische
Befehle des Bilderzeugungs-Clients 16 abgebildet werden.
Dies geschieht jedoch nur, wenn die Benutzerinformationen 526 (die
die Referenzen für
die Profile des Benutzers enthalten) der Bilderzeugungserweiterung 18 zur
Verfügung
stehen, um auf die persönliche
Bilderzeugungsverwahrungsstelle 522 des Benutzers zuzugreifen.
-
Die
Bilderzeugungserweiterung 18 kann als eine API betrachtet
und implementiert sein. Die API, die zur Bilderzeugungserweiterung 18 verwendet wird,
ist vorzugsweise gemäß einem
systemweiten Standard strukturiert. Die generischen Zugriffsanweisungen
von z. B. dem Web-Anwendungsinhalt 528, können, wenn
sie ausgeführt
sind, bewirken, daß die Bilderzeugungserweiterungs-API-Aufrufe
an die API ausgegeben wer den, um auf die persönliche Bilderzeugungsverwahrungsstelle 522 des
Benutzers über die
bilderzeugungs-clientspezifischen Anweisungen zuzugreifen. Fachleute
werden erkennen, daß es
andere Möglichkeiten
(sowohl hardwaremäßige als auch
softwaremäßige) gibt,
um die gleiche Funktionalität
zu implementieren. Die Ausführungsbeispiele der
vorliegenden Erfindung sind nicht auf eine einzelne der Möglichkeiten
beschränkt.
Grundsätzlich
liefert die Bilderzeugungserweiterung 18 eine Einrichtung
zum Zugreifen auf Benutzerinformationen 526 und zum Bereitstellen
einer undurchsichtigen Schnittstelle zwischen dem Web-Anwendungsinhalt 528,
der im Browser 16 ausgeführt wird, und der persönlichen
Bilderzeugungsverwahrungsstelle 522 und anderen Funktionalitäten des
Bilderzeugungs-Clients 16. Eine Beispielsimplementierung
der Bilderzeugungserweiterung ist nachstehend ausführlicher
erörtert.
-
Während des
Betriebs greift der Browser anfänglich
auf eine Web-Site zu und, unter Verwendung von entsprechenden Anforderungsbefehlen
(HTTP für
die aktuelle Generation von Browsern), lädt den Web-Anwendungsinhalt 528 von
derselben herunter, der einen Satz von ausführbaren Anweisungen umfaßt, die
in dem Browser 16 ausgeführt werden sollen, um den Browser 16 mit
der vorbestimmten Funktionalität
zu versehen. Diese ausführbaren
Anweisungen weisen generische Zugriffsanweisungen (siehe Definition
oben) auf, die systemweite, in einer bestimmten Sprache (d. h. JAVATM) ausgedrückte Anweisungen sind, die
die Betriebsmittel einer Bilderzeugungserweiterungs-API aufrufen,
um auf die persönliche
Bilderzeugungsverwahrungsstelle 522 zuzugreifen, um die
Web-Bilderzeugungsoperationen auszuführen. Solche generischen Zugriffsanweisungen
können
im Rahmen eines Beispiels, jedoch nicht im Sinne einer Einschränkung JAVATM-, JavaScriptTM-,
und C-Sharp-Anweisungen sein. Ein systemweiter Standard, der vorzugsweise
als eine API oder ein Satz von APIs manifestiert ist, spezifiziert
typischerweise „generische
Zugriffsanweisungen", „generische
Zugriffsanforderungen" und „Zielgraphiken".
-
Viele
verschiedene Funktionalitäten
können durch
den Web-Anwendungsinhalt 528 bereitgestellt werden,
der z. B. ausführbare
Anweisungen für
den Bilderzeugungs-Client 16 umfaßt, um Zielgraphiken anzuzeigen,
d. h. um verfügbare
Graphiken auf der Website, auf die zugegriffen wurde, zu zeigen.
Ein anderer Web-Anwendungsinhalt kann ausführbare Anweisungen umfassen,
um eine Drucktaste anzuzeigen, und wenn die Drucktaste geklickt
worden ist, um zu bewirken, daß ein
Bilderzeugungs-Client 16 eine Druckaufgabe erzeugt, die
eine Graphik in der persönlichen
Bilderzeugungsverwahrungsstelle 522 des Benutzers beschreibt
und die Druckaufgabe z. B. an den Drucker 542 überträgt. Ein
Web-Anwendungsinhalt kann ebenfalls eine Vorschau der Zielgraphik
liefern. Folglich bezieht sich der Web-Anwendungsinhalt 528 auf
einen Satz von ausführbaren
Anweisungen, die in den Browser 16 heruntergeladen werden,
um einen Dienst, der durch den Benutzer angefordert wird, auszuführen.
-
Der
Browser 16 führt
den Web-Anwendungsinhalt 528 aus, egal ob dieser HTML-interpretiert
ist und/oder durch den Browser 16 in Markierungen, die auf
einer Anzeige des Benutzers angezeigt sind, oder JAVATM und
JavaScriptTM oder einer anderen entsprechenden
Sprache ausgeführt
ist.
-
Wie
zuvor angemerkt wurde, enthält
der Web-Anwendungsinhalt 528 ausführbare Anweisungen, die die
API verwenden, die durch die Bilderzeugungserweiterung 18 bereitgestellt
ist, um indirekt auf die persönliche
Bilderzeugungsverwahrungsstelle 522 des Benutzers zuzugreifen.
Zum Beispiel können
die ausführbaren
Anweisungen des Web-Anwendungsinhalts einen undurchsichtigen Zugriff
auf die Informationen vom Profil des Benutzers erhalten (um die
persönliche
Bilderzeugungsverwahrungsstelle des Benutzers zu spezifizieren),
indem mit einem Benutzerprofil-Speicherdienst (nicht gezeigt) interagiert
wird.
-
In
der Erörterung
hierin wird der Begriff „undurchsichtige
Referenz" verwendet.
Eine „undurchsichtige
Referenz" ist eine
Referenz, die keine Informationen über ein zugrundeliegendes Betriebsmittel offenlegt.
Der Besitzer einer undurchsichtigen Referenz ist nicht in der Lage,
etwas über
das Betriebsmittel von der undurchsichtigen Referenz zu bestimmen oder
die undurchsichtige Referenz so zu modifizieren, um zu ändern, auf
welches Betriebsmittel Bezug genommen wird. (Im Gegensatz dazu,
wenn ein URL vorgesehen ist, z. B. „http://www.hp.com", wäre es für den Web-Anwendungsinhalt
ziemlich unkompliziert, den URL zu modifizieren, um auf ein anderes
Betriebsmittel Bezug zu nehmen, z. B. „http://www.other.com".)
-
Die
ausführbaren
Anweisungen des Web-Anwendungsinhalts 528 führen diesen
Zugriff aus, um eine undurchsichtige Referenz zum Kompositionsspeicher 546 und
zum Graphikspeicher 548 des Benutzers zu erhalten. Der
Web-Anwendungsinhalt kann ferner die API verwenden, die durch die
Bilderzeugungserweiterung 18 bereitgestellt ist, um dem
Graphikspeicher 548 über
eine undurchsichtige Referenz eine neue Graphik hinzuzufügen.
-
Die
Bilderzeugungserweiterung 18 ist konfiguriert, um zu verhindern,
daß der
Web-Anwendungsinhalt 528 (d. h. die ausführbaren
Anweisungen vom Webdienst 530) direkt auf willkürliche Dienste
und die persönliche
Bilderzeugungsverwahrungsstelle 522 des Benutzers zugreift.
Grundsätzlich
verwendet der Web-Anwendungsinhalt 528 die Bilderzeugungserweiterung 18 als
einen Netzübergang
(bzw. Gateway), um auf alles, was sich in der persönlichen
Bilderzeugungsverwahrungsstelle 522 des Benutzers befindet,
einschließlich
der Informationen in dem Benutzerprofil zuzugreifen.
-
Dieser
beschränkte
Zugriff, der dem Web-Anwendungsinhalt 528 auferlegt ist,
kann unter Verwendung einer Vielzahl von Verfahren implementiert
sein. Der Konstrukteur kann die API zur Bilderzeugungserweiterung 18 so
implementieren, daß die API
nur Referenzen vom Web-Anwendungsinhalt 528 akzeptiert,
die derselben zuvor durch die Bilderzeugungserweiterung 18 bereitgestellt
wurden. Grundsätzlich
ist der Web-Anwendungsinhalt 528 dann
nicht in der Lage, Referenzen in willkürlicher Weise zu liefern, wenn
die API, die durch die Bilderzeugungserweiterung 18 bereitgestellt
wird, aufgerufen wird. Der Web-Anwendungsinhalt 528, der
auf einem Bilderzeugungs-Client 16 arbeitet, um mit den Bilderzeugungs-Client-Betriebsmitteln
und mit der persönlichen
Bilderzeugungsverwahrungsstelle 522 des Benutzers zu kommunizieren,
muß zuerst
die undurchsichtigen Referenzen unter Verwendung der API der Bilderzeugungserweiterung 18 erhalten.
Zum Beispiel, wenn der Web-Anwendungsinhalt 528 auf den
Graphikspeicher 548 zugreifen will, muß der Web-Anwendungsinhalt 528 ein
Verfahren aufrufen (das durch die API der Bilderzeugungserweiterung 18 bereitgestellt
ist), das eine undurchsichtige Referenz an den Graphikspeicher 548 liefert.
Diese Referenz kann dann in anschließenden Aufrufen durch den Web-Anwendungsinhalt 528 an
die API der Bilderzeugungserweiterung 18 verwendet werden.
-
Ein
Lösungsansatz
zum Erreichen dieser Einschränkung
umfaßt
die Erzeugung einer Sitzung. Zum Beispiel könnte eine Bilderzeugungserweiterungs-API
für eine
spezielle Operation folgendes aufweisen:
CreateParticularOperationSession():
gibt SessionID zurück
PerformOperation
(Parameter, SessionID id): gibt Boolesche Zahlen zurück (die
ein Ergebnis anzeigen)
DeleteParticularOperationSession (SessionID)
-
Folglich
muß der
Web-Anwendungsinhalt 528 die Bilderzeugungserweiterungs-API
aufrufen, um zuerst eine Sitzung zu erzeugen, indem „CreateParticularOperationSession" aufgerufen wird,
die eine SessionID zurückgibt.
Diese SessionID wird anschließend
verwendet, um auf die spezielle Sitzung Bezug zu nehmen. Anschließend ruft
der Web-Anwendungsinhalt 528 PerformOperation in der Bilderzeugungserweiterung-API
mit einer speziellen Eingabe und der SessionID auf. Der Web-Anwendungsinhalt 528 kann
eine Vielzahl von Manipulationen ausführen, kann jedoch nicht direkt
auf die Parameter und Operationen zugreifen, die der SessionID „zugeordnet" sind, weil die Zuordnung
in einer Weise erreicht wird, die für den Client undurchsichtig
ist. Die Bilderzeugungserweiterungs-API und diese API alleine weiß, wie die
SessionID zu verwenden ist, um die Bilderzeugungs-Client-Parameter zu bestimmen/abzubilden.
Häufig
ist die SessionID eine Referenz wie ein Hinweis auf eine Datenstruktur,
die Informationen enthält,
die für
die Sitzung relevant sind. Diese Datenstruktur kann Parameter und
andere zugehörige Informationen
enthalten. Wenn der Web-Anwendungsinhalt 528 seinen Betrieb
vollendet hat, ruft der Web-Anwendungsinhalt 528 „DeleteParticularOperationSession" in der Bilderzeugungserweiterungs-API mit
der SessionID als einen Parameter auf. Diese weist die Bilderzeugungserweiterungs-API
an, egal welche Betriebsmittel (wie z. B. einen Speicher) auch immer
der Sitzung zugeordnet sind, zu befreien. Es ist zu beachten, daß, wenn
der Web-Anwendungsinhalt 528 die SessionID ändert, dies
dem Web-Anwendungsinhalt 528 nicht ermöglicht, eingeschränkte Parameter
zu erhalten, sondern nur die Bilderzeugungserweiterung 18 mit
der veränderten
zuvor nicht gesehenen SessionID verwechselt.
-
Die
durch die Bilderzeugungserweiterung 18 bereitgestellte
API ist typischerweise als eine Bibliothek von Verfahren implementiert,
die einen gesteuerten Zugriff auf eine API liefert, die durch die
Netzwerkdienste bereitgestellt wird, die an der persönlichen
Bilderzeugungsverwahrungsstelle 522 des Benutzers teilnehmen.
Diese API ist implementiert, um die API aufzurufen, die durch den
Benutzerprofilspeicher, den Kompositionsspeicher 546 und
den Graphikspeicher 548 bereitgestellt ist. Auf die API,
die durch die Bilderzeugungserweiterung 18 bereitgestellt
ist, wird im allgemeinen nicht durch eine Fernaufruftechnologie
zugegriffen, obwohl die Fernaufruftechnologie implementiert sein
kann, um auf die APIs zuzugreifen, die durch die Netzwerkdienste
bereitgestellt sind, die an der persönlichen Bilderzeugungsverwahrungsstelle 522 des
Benutzers teilnehmen. Die API, die durch die Bilderzeugungserweiterung 18 bereitgestellt
ist, ist keine exakte Kopie von APIs, die durch den Benutzerprofilspeicher,
den Kompositionsspeicher und den Graphikspeicher bereitgestellt
sind, da diese API einen gesteuerten Zugriff auf jene Netzwerkdienste
durch (unter anderen Techniken) undurchsichtige Referenzen bereitstellt.
-
Anhand
der vorstehenden Beschreibung ist zu ersehen, daß verhindert wird, daß der Web-Anwendungsinhalt 528 die
API verwendet, die durch die Bilderzeugungserweiterung 18 bereitgestellt
ist, um auf die willkürlichen
Dienste zuzugreifen. Der Schlüssel
für diese
Einschränkung
liegt darin, daß der Web-Anwendungsinhalt 528 nicht
die Adressen für diese
willkürlichen
Dienste liefern kann. Der Web-Anwendungsinhalt 528 kann
nur auf Dienste durch undurchsichtige Referenzen Bezug nehmen, die
durch die Bilderzeugungserweiterungs-API (die die tatsächliche
Referenz/URL zum Web-Anwendungsinhalt 528 nicht freilegt)
bereitgestellt sind. Zum Beispiel kann der Web-Anwendungsinhalt 528 die
API verwenden, um eine Liste von undurchsichtigen Referenzen für verfügbare Kompositionen
zu erhalten. Diese Liste von undurchsichtigen Referenzen würde statt
dessen die realen Referenzen/URLs in der Bilderzeugungserweiterung 18 alleine
abbilden. Daher kann der Web-Anwendungsinhalt 528 bei einer
anschließenden
Bezugnahme auf diese Kompositionen keinen URL liefern (der einer
aus eigener Erzeugung sein könnte),
weil dieser erzeugte URL innerhalb der Bilderzeugungserweiterung 18 nicht
auf reale Betriebsmittel abgebildet werden kann. Statt dessen darf
der Web-Anwendungsinhalt 528 nur Referenzen verwenden,
die ihm durch die API bereitgestellt werden, was nur im Zusammenhang
mit der aktuellen Sitzung mit jener API Sinn macht. Diese Einschränkung kann
unter Umständen
entspannt werden, wenn der Web- Anwendungsinhalt 528 Referenzen an
die Betriebsmittel liefert, die vom gleichen Netzwerkdienst verfügbar sind,
aus dem der Web-Anwendungsinhalt 528 entstammte. Dies ist
zulässig,
weil der Web-Anwendungsinhalt 528 bereits über ein
Maß des
Zugriffs auf den Webdienst verfügt,
aus dem er entstammte (entweder wenn er dort ursprünglich oder
anschließend
erzeugt wurde), wodurch kein spezieller Zugriff, der dem Web-Anwendungsinhalt 528 nicht
bereits zur Verfügung
steht, erfaßt
wird.
-
Der
Browser 16 verwendet den Web-Anwendungsinhalt 528,
der durch den Web-Server 530 bereitgestellt ist. Wenn der
Benutzer im Web-Anwendungsinhalt „Drucken" auswählt, lenkt der Web-Anwendungsinhalt 528 unter
anderem den Browser 16 zur Druckbestimmungsposition. Obwohl
eine Client-Maschine 12 und zwei Server-Maschinen 514, 516 als
Beispiele gezeigt sind, kann eine umfassender Implementierung mehrere
Server-Maschinen umfassen,
auf die die Client-Maschine 12 Zugriff hat und mit denen
sie kommunizieren kann. Zur besseren Lesbarkeit wird hierin auf
eine einzelne Client-Maschine, einen Server, ein Produktionsgerät, z. B.
ein Drucker oder eine Anwendung, Bezug genommen und gezeigt. Dies
sollte jedoch verständlich
werden, indem nur eine Einheit gezeigt wird und der unbestimmten
Artikel „ein" verwendet, daß mit dem
Gezeigten, nur ein oder mehrere gemeint ist. Zum Beispiel, obwohl
ein einzelner Drucker beschrieben und gezeigt worden ist und wird,
kann dieser Drucker tatsächlich
eine Mehrzahl von Druckern sein, die ein Druckbetriebsmittel bilden.
In einer solchen Situation ist klar, daß die vorliegenden erfindungsgemäßen Konzepten
gelten.
-
Die
erste Server-Maschine 514 umfaßt einen ersten Server 534.
Wenn der Browser 16 zum ersten Server 534 gelenkt
wird, der durch einen eindeutigen URL adressiert ist, wird der erste
Inhalt 536 dem Browser 16 durch den ersten Server
vorgelegt. Jeder Inhalt 536 ist abhängig vom Typ des Dienstes,
den die Server-Maschine repräsentiert,
mit spezifischen Anweisungen vorkonfiguriert. Desgleichen umfaßt die zweite
Server-Maschine 516 einen zweiten Server 538 mit
einem zweiten Inhalt 540. Allgemein sind die Inhalte 536, 540 unterschiedlich,
weil die Dienste und/oder der Zugriff auf die Geräte, die
durch die Server bereitgestellt sind, unterschiedlich sind. In 5A ist
die erste Server-Maschine 514 mit
eine einzelnen Druckgerät 542 verbunden,
wohingegen die zweite Server-Maschine 516 mehrere Druckgeräte 544 bedient.
Folglich sind der erste Inhalt 536 und der zweite Inhalt 540 voneinander
unterschiedlich, wobei jeder separate Anweisungen an den Browser 16 umfaßt.
-
Obwohl
gezeigt ist, daß die
Server in diesem Beispiel nur Druckgeräte repräsentieren, kann der Server
andere Dienste repräsentieren.
Zum Beispiel kann der Server eine Auktions-Website, wie z. B. ebay.com, die eine
Auktionsseite für
den Benutzer erstellt, wenn eine Graphikdatei auf die Web-Site gedruckt
ist, oder ein Schrift-Überprüfen-Dienst
sein. Bei den Ausführungsbeispielen
der vorliegenden Erfindung kann der Benutzer an einen beliebigen
von vielen Diensten „drucken". Infolgedessen soll
die Verwendung des Worts „Drucken" eine breitere Definition
aufweisen, die auf viele verfügbare
Geräte
oder Dienste angewendet werden kann. Egal welche Dienste und/oder
welches Gerät
die Server bereitstellen, kann der Inhalt die Anweisungen umfassen, die
für die
Konfiguration notwendig sind. Es ist vorteilhaft, daß eine persönliche Bilderzeugungsverwahrungsstelle 522 gemäß der vorliegenden
Erfindung implementiert ist, um Daten zu speichern, auf die diese
Server zugreifen können.
-
Bei
dem vorliegenden Ausführungsbeispiel umfaßt die persönliche Bilderzeugungsverwahrungsstelle 522 einen
Kompositionsspeicher 546 zum Speichern von Kompositionen
der Bilderzeugungsdaten, die als eine einzelne Einheit gewartet
werden, und einen Graphikspeicher 548, d. h. einen digitalen Speicher,
zum Speichern der Bilderzeugungsdaten. Eine Bilderzeugungskomposition
weist im allgemeinen Verknüpfungen
zu den Bilderzeugungsdaten auf (die auch als Graphiken bekannt sind),
die sich bei einem anderen Dienst oder anderen Diensten befinden können. Folglich
speichert der Kompositionsspeicher 546 nur die Bilderzeugungskompositionen.
Der Graphikspeicher 548 ist andererseits ein beliebiger
Bilderzeugungsdatenspeicher, der sich auf einem beliebigen Computer
befindet, der die Graphiken enthält. Spezieller
kann jeder Webdienst seinen eigenen Graphikspeicher 548 aufweisen,
der der Öffentlichkeit zur
Verfügung
steht.
-
Zum
Beispiel kann ein Benutzer zu einem früheren Zeitpunkt den Artikel
von einer Webdienst-Site drucken, was dazu führt, daß eine Bilderzeugungskomposition
erzeugt und in dem Kompositionsspeicher 546 des Benutzers
gespeichert wird. Die Bilderzeugungskomposition enthält nur die
Verknüpfung
mit der Graphik für
diesen Artikel, der z. B. auf der ersten Webdienst-Site 514 gespeichert
ist. Folglich befindet sich die Graphik für den Artikel nicht im Graphikspeicher 548,
der sich auf der Client-Maschine 12 befindet. Vielmehr
ist die Graphik in einem Graphikspeicher 548 gespeichert,
der sich auf der Web-Dienst-Site 514 befindet. Die Benutzer
haben einen Graphikspeicher 548, der zu ihrer Benutzeridentifikation
gehört,
wo sie Bilderzeugungsdaten speichern können, was der Graphikspeicher 548 ist, der
in der Client-Maschine 12 gezeigt ist. Infolgedessen ist
der Begriff „persönliche Bilderzeugungsverwahrungsstelle" 522 ein
konzeptueller Begriff für
eine Austauschinfrastruktur zwischen den Bilderzeugungsdaten und
den verfügbaren
Webdiensten im Internet 518. Desgleichen bezeichnet der
Begriff „Web" Millionen von verschiedenen
Servern, die das Web aufweist. Das Web an sich führt tatsächlich keine Aufgaben aus.
Bei Ausführungsbeispielen
der vorliegenden Erfindung sind die Server, die den Kompositionsspeicher 546 und
den Graphikspeicher 548 bedienen, physische Implementierungen
der persönlichen
Bilderzeugungsverwahrungsstelle.
-
Es
wird darauf hingewiesen, daß die
persönliche
Bilderzeugungsverwahrungsstelle 522 einen beliebigen Typ
von Datenspeicherungsgerät
repräsentieren
kann. Tatsächlich
muß sich das
Datenspeicherungsgerät
der persönlichen
Bilderzeugungsverwahrungsstelle 522 nicht notwendigerweise
bei der Client-Maschine 12 befinden. Die persönliche Bilderzeugungsverwahrungsstelle 522 kann
sich z. B. auf einer anderen Maschine befinden oder auf mehrere Maschinen
segmentiert und verteilt sein, auf die die Client-Maschine 12 durch
das Internet 518 zugreifen kann. Obwohl es häufig vorteilhaft
ist, eine persönliche
Bilderzeugungsverwahrungsstelle 522 mit der Client-Maschine 12 zu
haben, kann sich dies ändern, da
die Datenraten schneller und die Beliebtheit von PDAs zunimmt. Diese
alternativen Implementierungen gelten als sich innerhalb des Schutzbereichs
der vorliegenden Erfindung bewegend.
-
5B ist
ein schematisches Diagramm, das eine Variation 560 des
Client-Server-Netzwerksystems von 5A darstellt,
das auf schnellere Datenraten oder eine beschränkte Client-Maschinen-Speicherungskapazität zugeschnitten
ist. Bei dieser Implementierung nutzen mehrere Benutzer 562, 564 die
gleichen Client-Maschinen 566 durch das Internet 568.
Bei dieser Implementierung können die
Client-Maschinen 566 Client-Computer umfassen, die weniger
Speicher aufweisen wie ein persönlicher
digitaler Assistent oder ein Laptop. Aufgrund dieses eingeschränkten Speichers,
befindet sich die persönliche
Bilderzeugungsverwahrungsstelle 570 zum Speichern der Daten 572 des
Benutzers auf einem separaten Computer 574, der ein Server-Computer
oder nur eine verknüpfte
Client-Maschine 566 sein kann. Bei diesem Beispiel ist
der separate Computer 574 ein Server, der hierin als Speicher-Server 574 bezeichnet
wird, um ihn von anderen Servern für das Drucken zu unterscheiden.
Den Benutzern 562, 564 werden unterschiedliche
Benutzerprofile (in 5B nicht explizit dargestellt)
zum Zugreifen auf die persönliche
Bilderzeugungsverwahrungsstelle 570 durch den Speicherserver 574 zugeordnet.
Das Benutzerprofil (oder – profile)
ist Teil der persönlichen Bilderzeugungsverwahrungsstelle
des Benutzers. Die Benutzer 562, 564 weisen jeweils
eine bestimmte persönliche
Bilderzeugungsverwahrungs stelle auf, obwohl nur eine einzelne persönliche Bilderzeugungsverwahrungsstelle 570 explizit
in 5B dargestellt ist. Obwohl sie nicht gezeigt ist,
kann die persönliche
Bilderzeugungsverwahrungsstelle 570 in ähnlicher Weise mit einem Kompositionsspeicher und
einem Graphikspeicher implementiert sein, wo die Daten 572 des
Benutzers gespeichert sein können.
Die Daten 572 des Benutzers sind weitgehend interpretiert,
um ein oder mehrere Benutzerprofil-Speicherdienste, ein oder mehrere Kompositionsspeicherdienste
und/oder ein oder mehrere Graphikspeicherdienste zu umfassen.
-
Während des
Betriebs greift ein erster Benutzer 562 anfänglich auf
das System 560 mit einem Login-Name und einem Paßwort zu.
Sobald der erste Benutzer 562 auf das System 560 zugegriffen
hat, hat der erste Benutzer dann auch Zugriff auf die persönliche Bilderzeugungsverwahrungsstelle 570,
die mit dem Login-Namen des ersten Benutzers verknüpft ist.
Desgleichen, wenn sich ein zweiter Benutzer 564 mit einem
Login-Namen und einem Paßwort einlogt,
hat der zweite Benutzer Zugriff auf das System 560 einschließlich der
persönlichen
Bilderzeugungsverwahrungsstelle 570, die zum Login-Namen dieses
zweiten Benutzers gehört.
Bei dieser Implementierung können
die Benutzer auf das System 560 und ihre persönliche Bilderzeugungsverwahrungsstelle 570 von
beliebigen Computern aus zugreifen, die einen Browser und einen
Internetzugriff aufweisen. Infolge der Flexibilität des Internets
ist es den Benutzern möglich,
auf das System 560 und ihre persönliche Bilderzeugungsverwahrungsstelle 570 unter Verwendung
eines Standard-PDA und/oder eines drahtlosen Web-Telephons zuzugreifen.
-
Der
Web-Anwendungsinhalt 576 kann durch die Benutzer durch
einen Browser 578 verwendet werden, der sich auf einer
Client-Maschine 566 befindet. Ähnlich zu der vorhergehenden
Implementierung wird der Web-Anwendungsinhalt 576 durch
den Web-server 580 bereitgestellt. Der Browser 578 enthält auch
eine Erweiterung 584 zum Zugreifen auf die Benutzerinforma tionen 586, 587,
die die unterschiedlichen Benutzerprofile, die den Benutzern 562, 564 zugeordnet
sind, ihren jeweiligen persönlichen
Bilderzeugungsverwahrungsstellen zuordnen. Die Benutzerinformationen
unterscheiden sich von einem Benutzerprofil. Die Benutzerinformationen
nehmen auf ein oder mehrere Benutzerprofile Bezug, die einem speziellen
Benutzer zugeordnet sind. Wie gezeigt ist, weist jedes Benutzerprofil
seine eigenen Benutzerinformationen auf. Alternativ können die
Benutzerinformationen auch Informationen für zwei oder mehrere Benutzerprofile
enthalten. Diese anderen Variationen werden berücksichtigt und befinden sich
innerhalb des Schutzbereichs der vorliegenden Erfindung.
-
Die
Benutzer können
auf eine Vielzahl von Servern auf dem Internet zum Drucken der Zieldaten von
dem Web-Anwendungsinhalt 576 zugreifen.
Bei diesem Beispiel gibt es einen ersten Server 588 und einen
zweiten Server 590. Der erste Server 588 liefert
einen ersten Druckinhalt 592, der ein einzelnes Druckgerät 594 repräsentiert,
und ein zweiter Server 590 liefert einen zweiten Druckinhalt 596,
der eine Mehrzahl von Druckgeräten 598 repräsentiert.
-
Nachdem
der Benutzer PRINT oder PRINT PREVIEW vom Web-Anwendungsinhalt 576 ausgewählt hat,
leitet der Web-Anwendungsinhalt 576 zuerst
den Browser 578 an, einen spezifischen URL anzufordern,
der auf eine Webseite Bezug nimmt, die sich auf dem Web-Server 580 befindet.
In 5B ist als Beispiel gezeigt, wie ein Benutzer
ein Dokument unter Verwendung eines Web-Anwendungsinhalts 576 erzeugt,
und anhand des Web-Anwendungsinhalts 576 kann sich der
Benutzer dann dazu entschließen,
das Dokument (d. h. die Zieldaten) zu DRUCKEN.
-
Ansprechend
auf das Empfangen der Anforderung für die Webseite, die durch den
vorerwähnten URL
spezifiziert wird, konstruiert der Web-Server 580 Bilderzeugungsdaten
der Zieldaten. Bilderzeugungsdaten beziehen sich auf die gedruckte
Aufgabe der Zieldaten, die, abhängig
vom Verhalten des Web-Anwendungsinhalts 576 nicht notwendigerweise
wie die Zieldaten aussehen. Dieser Schritt zum Konstruieren von
Bilderzeugungsdaten ist eventuell nicht notwendig und hängt von
der Implementierung und Konfiguration der Druckbestimmungsposition
ab. Zum Beispiel, wenn eine Graphikdatei an ein älteres Beispiel einer Auktions-Site
gesendet wird, um eine Auktionsseite mit der Graphikdatei zu erstellen,
ist es eventuell nicht notwendig, daß die Bilderzeugungsdaten erzeugt
werden. Statt dessen kann der Druckbestimmungspositionserver 588, 590 die
Zieldaten ohne eine weitere Modifizierung für eine Kompatibilität akzeptieren.
Da es jedoch schwierig vorherzusehen ist, welchen Typ von Graphikdateien
die Website akzeptieren wird, ist das beispielhafte Verfahren mit
dem Zwischenschritt des Konstruierens von Bilderzeugungsdaten implementiert,
um eine Einheitlichkeit und Kompatibilität zu garantieren. Formate für die Bilderzeugungsdaten
umfassen JPEG, GIF (Graphics Interchange Format = Graphikaustauschformat), Portable
Network Graphics Format (tragbares Netzwerk-Graphikformat), TIFF
(TIF = Tagged Image File Format = etikettiertes Bilddateiformat),
PDF und Microsoft Windows-BMP (BMP = bitmap format = Bitabbildungsformat).
-
Nachdem
der Web-server 580 die Bilderzeugungsdaten für die Zieldaten
konstruiert hat, überträgt der Web-Anwendungsinhalt 576 die
Bilderzeugungsdaten an die persönliche
Bilderzeugungsverwahrungsstelle 570. Es wird dann bestimmt,
ob sich die persönliche
Bilderzeugungsverwahrungsstelle 570 auf der Client-Maschine 566 oder
auf dem Speicherserver 574 befindet. Wenn sich die persönliche Bilderzeugungsverwahrungsstelle 570 auf
der Client-Maschine 566 befindet, werden die Bilderzeugungsdaten
auf der persönlichen
Bilderzeugungsverwahrungsstelle 570 ohne weitere Verbindung
gespeichert. Wenn sich jedoch die persönliche Bilderzeugungsverwahrungsstelle 570 auf
einem Speicherserver 574 befindet, ist die Client-Maschine 566 mit
dem Speicherserver 574 verbunden. Es wird dann bestimmt,
ob die Verbindung vor einem Zeitablauf erfolgreich ist, und die Client-Maschine 576 versucht weiterhin,
sich mit dem Speicherserver 574 zu verbinden, bis sein
Zeitablauf oder seine erfolgreiche Verbindung eintritt. Sobald die
Verbindung mit dem Speicherserver 574 erfolgreich ist, überträgt die Client-Maschine 566 die
Bilderzeugungsdaten an den Speicherserver 574 zur Speicherung
in der persönlichen
Bilderzeugungsverwahrungsstelle 570.
-
Nachdem
die Bilderzeugungsdaten in der persönlichen Bilderzeugungsverwahrungsstelle 570 gespeichert
worden sind, lenkt der Web-Anwendungsinhalt 576 den Browser 578 zum
Server, der durch die Druckbestimmungsposition 594 angezeigt ist,
der als Druckbestimmungsserver 588 bezeichnet wird. Als
nächstes
wird bestimmt, ob der Druckbestimmungsserver 588 zum Drucken
verfügbar
ist. Eine Fehlernachricht wird an den Browser 578 gesendet,
wenn der Druckbestimmungsserver 588 nicht verfügbar ist.
Wenn der Druckbestimmungsserver 588 einerseits verfügbar ist,
reagiert er auf den Browser 578, indem ein Druckinhalt 592 zurückgesendet
wird, der auf den Browser 578 zur Benutzerkonfiguration
angezeigt wird. Der Druckinhalt 592 ist im allgemeinen
eine Web-Seite, die gemäß den Diensten,
die die Druckbestimmungsposition liefert, konzipiert ist. Ferner
gibt es, abhängig
von den verfügbaren
Diensten, eine Anzahl von Möglichkeiten, um
den Druckinhalt 592 zu implementieren. Zum Beispiel kann
der Druckinhalt 592 konfiguriert sein, um eine Liste von
Bilderzeugungsdaten, die in der persönlichen Bilderzeugungsverwahrungsstelle 570 gespeichert
sind, anzuzeigen. Bei diesem Szenario greift der Druckinhalt 592 auf
die persönliche
Bilderzeugungsverwahrungsstelle 570 zu, um die Liste zu erhalten,
um sie dem Benutzer anzuzeigen. Die oben beschriebenen Variationen
werden berücksichtigt und
sollten als sich innerhalb des Schutzbereichs der vorliegenden Erfindung
befindlich betrachtet werden.
-
Als
ein Beispiel, wenn der Druckbestimmungsserver 588, 590 mehrere
Druckgeräte
repräsentiert,
kann eine Seite des Druckanwendungsinhalts alle Druckvorrichtungen 594, 598 enthalten,
die zur Benutzerauswahl verfügbar
sind. Anhand dieser Seite des Druckinhalts wählt der Benutzer ein Druckgerät aus, und
eine weitere Seite wird an den Benutzer mit den Bilderzeugungsdaten
und den Konfigurationen zurückgesendet,
die für
dieses spezielles Druckgerät
verfügbar
sind. Durch den Druckinhalt kann der Benutzer drucken oder eine
Vorschau der Bilderzeugungsdaten gemäß den Konfigurationen der Druckgeräte 598 drucken.
Bei dem Beispiel mit der Auktions-Site können die Benutzer die Auktionsseiten,
die sie konfiguriert hatten, bevor sie sich auf die Auktionslistqe
eintrugen, im voraus betrachten. Wie gezeigt kann der Druckinhalt
mit mehreren Seiten abhängig
vom Bedarf an Diensten, die durch den Druckbestimmungspositions-Server
bereitgestellt werden, zurückgesendet
werden.
-
Sobald
die benutzer-ausgewählte
Konfiguration abgeschlossen ist, kann sich der Benutzer dann dazu
entscheiden, vom ersten Druckinhalt 592 zu DRUCKEN oder
die VORSCHAU zu DRUCKEN. Der Druckinhalt 592 greift auf
die Bilderzeugungsdaten von der persönlichen Bilderzeugungsverwahrungsstelle 570 zu
und überträgt die Bilderzeugungsdaten mit
der spezifizierten Benutzerkonfiguration an den Druckbestimmungspositions-Server 588,
durch den die Bilderzeugungsdaten gemäß den spezifizierten Konfigurationen
einschließlich
dem ausgewählten Druckgerät 594 gedruckt
oder angezeigt werden. Am Ende kann der Druckinhalt eine Statusseite
zurücksenden,
um die erfolgreiche Ausgabe am Druckgerät anzuzeigen.
-
Die
persönliche
Bilderzeugungsverwahrungsstelle 570 ist ein Beispiel des
Begriffs „Identität". Der Benutzer hat
eine Netzwerk-Identität,
durch die er/sie repräsentiert
wird. Die persönliche
Bilderzeugungsverwahrungsstelle 570 enthält Informationen,
die der Identität
des Benutzers zugeordnet sind. Die vorhergehende Beschreibung befaßt sich
mit einer Rechenumgebung, in der die Bilderzeugungserweiterung 584 verwendet
wird, um die Benutzerinformationen dem Web-Inhalt 592, 596,
der in den Browser 578 heruntergeladen wurde, zur Verfügung zu stellen.
Die Bilderzeugungserweiterung 584 stellt die der Identität des Benutzers
zugeordneten Informationen zur Verfügung. Der primäre Zweck
der Bilderzeugungserweiterung 584 ist, einen Zugriff auf
die Informationen zu liefern, die durch die benutzerspezifischen
Informationen 586, 587 identifiziert sind. Grundsätzlich handelt
es sich dabei um einen clientseitigen Lösungsansatz zum Identifizieren
der Benutzerinformationen.
-
Obwohl
es möglich
ist, die Browser auf Windows-Betriebssysteme
zu erweitern, ist dies für
neuere Geräte
wie persönliche
digitale Assistenten schwieriger umzusetzen. Folglich ist es wünschenswert,
den Begriff der Identität
zu unterstützen,
ohne zu erfordern, daß der
Browser erweitert werden muß. Alternativ
ist server-seitige Annäherung
zum Identifizieren von Benutzerinformationen möglich. Dies kann durch Bewegen
der Logik, die normalerweise im Web-Inhalt 592, 596 vorhanden
ist, der im Browser 578 arbeitet, zum Web-Server 588, 590 erreicht werden.
Im Gegensatz zum Web-Inhalt 592, 596, der auf
Dienste, die für
den Benutzer spezifisch sind, zugreift, greift der Web-Server 588, 590 direkt
auf die für
den Benutzer spezifischen Dienste zu. In anderen Worten ist die
Identitätstechnologie
server-seitig und nicht client-seitig.
-
Bei
der Verwendung einer server-seitigen Identitätstechnologie, weil der Browser 578 die
Informationen bezüglich
einer Benutzeridentität
nicht mehr liefert, kann eine „Authentifizierungs-Website" verwendet werden,
um solche Informationen zu liefern. Bei einer solchen Anordnung
lenkt der Web-Inhalt 592, 596 den Browser 578 auf
die Authentifizierungs-Website um, die die Identität des Benutzers bestimmt
und dann den Browser 578 zurück zum Web-Inhalt 592, 596 mit
der Benutzeridentität
einschließlich
der Position des Benutzerprofils zurücklenkt. Für diesen Zweck wird davon ausgegangen, daß Web-Bilderzeugungs-Bestimmungspositionen Informationen
bezüglich
des Authentifizierungsservers aufweisen. Sobald die Identität des Benutzers bestimmt
worden ist (d. h. die Position des Benutzerprofils ist bekannt)
dann kann die Web-Bilderzeugungs-Bestimmungsposition
direkt mit dem für
den Benutzer spezifischen Diensten, ohne eine Intervention durch
die Bilderzeugungserweiterung 584 interagieren.