BE1022528A1 - Een systeem en computerprogrammaproducten om grote hoeveelheden bestanden om te zetten - Google Patents

Een systeem en computerprogrammaproducten om grote hoeveelheden bestanden om te zetten Download PDF

Info

Publication number
BE1022528A1
BE1022528A1 BE20140778A BE201400778A BE1022528A1 BE 1022528 A1 BE1022528 A1 BE 1022528A1 BE 20140778 A BE20140778 A BE 20140778A BE 201400778 A BE201400778 A BE 201400778A BE 1022528 A1 BE1022528 A1 BE 1022528A1
Authority
BE
Belgium
Prior art keywords
workflow
files
modules
module
convert
Prior art date
Application number
BE20140778A
Other languages
English (en)
Other versions
BE1022528B1 (nl
Inventor
Frederik Hilaire Leon Rosseel
Driessche Michiel Luc Nathalie Van
Maxime Vermeir
Original Assignee
Docbyte Nv
Inventive It Bvba
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Docbyte Nv, Inventive It Bvba filed Critical Docbyte Nv
Application granted granted Critical
Publication of BE1022528A1 publication Critical patent/BE1022528A1/nl
Publication of BE1022528B1 publication Critical patent/BE1022528B1/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/116Details of conversion of file system types or formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1263Job scheduling, e.g. queuing, determine appropriate device based on job priority, e.g. re-arranging the order of jobs, e.g. the printing sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1275Print workflow management, e.g. defining or changing a workflow, cross publishing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/123Storage facilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • G06K15/1859Generation of the printable image characterized by its workflow involving data processing distributed amongst different data processing apparatus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Een systeem (100) om grote hoeveelheden bestanden BE201W78
om te zetten, omvattende: invoermodules (101) die inkomende bestanden verwerken; omzettingsmodules (102) die inkomende bestanden in een respectief bronformaat omzetten in uitgaande bestanden in een respectief doelformaat; vrijgavemodules (103) die uitgaande bestanden verwerken; een webinterface die een gebruiker in staat stelt om workflows (104) te configureren, omvattende een invoermodule, één of meerdere omzettingsmodules en één of meerdere vrijgavemodules; een workflowdatabase (105); een taakwachtrij (106) om taken op te slaan die het resultaat zijn van de workflows; een zenderdienst Hg.i (107) die een workflow laadt, een invoermodule daarvan uitvoert, en taken opslaat die het resultaat zijn van de workflow in de taakwachtrij (106); en een ontvangerdienst (108) die een taak leest uit de taakwachtrij (106), een overeenkomstige workflow laadt, en de omzettingsmodules en vrijgavemodules van de workflow uitvoert om inkomende bestanden om te zetten in uitgaande bestanden.

Description

EEN SYSTEEM EN COMPUTERPROGRAMMAPRODUCTEN OM GROTE HOEVEELHEDEN BESTANDEN OM TE ZETTEN
Gebied van de uitvinding [01] De onderhavige uitvinding heeft algemeen betrekking op het omzetten van elektronische bestanden of documenten, m.a.w. de conversie van bestanden van een bronformaat naar een doelformaat. De uitvinding levert in het bijzonder een oplossing voor bestandsomzettingen op bedrijfsniveau, m.a.w. de conversie van grote hoeveelheden bestanden van één of meerdere bronformaten naar één of meerdere doelformaten.
Achtergrond van de uitvinding [02] In bedrijven komen veel situaties of toepassingen voor waarbij grote hoeveelheden digitale bestanden die beschikbaar zijn in één of meerdere bronformaten moeten worden omgezet in één of meerdere doelformaten. In een drukkerij bijvoorbeeld, moeten bronbestanden die worden ontvangen van klanten in jpg, tif, gif, bmp, pdf, ppt, ... worden omgezet in een doelformaat dat geschikt is voor de beschikbare printers in de drukkerij. In grote ondernemingen moeten soms grote hoeveelheden documenten die beschikbaar zijn in verschillende bronformaten, bijvoorbeeld duizenden facturen in doe- of xls-formaat, worden omgezet in een formaat dat geschikt is voor archivering, bijv. pdf enz. Bijgevolg bestaat er een algemene behoefte aan schaalbare tools die automatisch de omzetting van grote hoeveelheden elektronische bestanden verwerken van verschillende bronformaten naar verschillende doelformaten.
[03] Het is bekend dat een printerstuurprogramma moet worden geïnstalleerd in elke applicatie die bestanden moet omzetten. Bijvoorbeeld kan een pdf-printerstuurprogramma geïnstalleerd zijn in een Open Office-applicatie op een PC, laptop of tablet zodat bestanden die worden geopend via de Open Office-applicatie kunnen worden omgezet in pdf-formaat. Dergelijke printerstuurprogramma's moeten worden geïnstalleerd of geconfigureerd in elke applicatie waarin ze zullen worden gebruikt, ze zetten doorgaans één enkel bestandsformaat om in één enkel doelformaat, hebben geen schaalbaarheid en modulariteit en zijn bijgevolg niet nuttig in situaties waarbij grote hoeveelheden bestanden moeten worden omgezet en/of situaties waarbij meerdere ingangsformaten en meerdere uitgangsformaten moeten worden ondersteund.
[04] Om te voorkomen dat gebruikers manueel bestandsconversietools moeten installeren in applicaties zoals een browser, beschrijft de Japanse octrooiaanvraag JP 2001319069 getiteld "File Conversion System, Web Server, File Converting Method, and Medium with Recorded File Converting Program" een online dienst die het mogelijk maakt om een bestand te uploaden, een bestand om te zetten in een doelformaat opgegeven door de gebruiker, en het omgezette bestand beschikbaar te maken na het uitvoeren van een betaling voor de online dienst. Hoewel de dienst die bekend is van JP 2001319069 de gebruiker bevrijdt van de last van het installeren van plug-ins voor bestandsconversie, biedt het geen schaalbare oplossing voor bestandsomzettingen op bedrijfsniveau.
[05] Amerikaanse octrooiaanvraag US 2009/0138540 getiteld "File Conversion System and Method Used Thereby" beschrijft een systeem en methode voor het converteren van bestanden die via een netwerk worden verstuurd van een zender naar een ontvangend apparaat, bijv. een mobiel apparaat, een PDA, ... Zoals beschreven in paragraaf [0024] van US 2009/0138540, bevat het systeem een database die een lijst met ondersteunde formaten bijhoudt voor de ontvangende apparaten en gebruikt het deze database om ervoor te zorgen dat bestanden die worden verzonden naar een ontvangend apparaat toekomen bij dat ontvangende apparaat in een formaat, m.a.w. codée, resolutie, schermgrootte, ... dat wordt ondersteund door het ontvangende apparaat. Behalve de database met ondersteunde bestandsformaten, bevat het systeem dat bekend is van US 2009/0138540 ontvangstmodules, omzettingsmodules en zendmodules die een bestand ontvangen, omzetten en verzenden naar het ontvangende apparaat, of een netwerkadres voorzien waarmee de locatie van het omgezette bestand wordt doorgegeven aan het ontvangende apparaat.
[06] Het systeem en de methode bekend van US 2009/0138540 is beperkt tot toepassingen waarbij bestanden via een netwerk worden verzonden vanaf een zenderapparaat naar een ontvangerapparaat die verschillende formaten ondersteunen. Het vergt onderhoud van een database met ondersteunde formaten voor de grote waaier aan bestaande draagbare en niet-draagbare apparaten en het is niet schaalbaar om te kunnen omgaan met grote hoeveelheden bestanden, bijv. duizenden of zelfs honderdduizenden bestanden die een soortgelijke omzetting moeten ondergaan.
[07] Amerikaanse octrooiaanvraag US 2003/0182450 getiteld "Generic Infrastructure for Converting Documents Between Formats with Merge Capabilities" beschrijft een platform voor het omzetten/samenvoegen van bestanden van een formaat voor kleine apparaten naar een serverformaat. Modules voor formaatconversie kunnen dynamisch worden ingeplugd terwijl het platform operationeel is. Hoewel de mogelijkheid om conversiemodules in te pluggen flexibiliteit biedt, heeft het platform dat bekend is van US 2003/0182450 niet de schaalbaarheid en voordelen op het vlak van taakverdeling die nodig zijn voor bestandsomzettingen op bedrijfsniveau.
[08] De beste bestaande oplossing voor bestandsomzettingen op bedrijfsniveau wordt beschreven in internationale octrooiaanvraag WO 2013/043739 getiteld "Systems, Methods and Articles to Automatically Transform Documents Transmitted Between Senders and Récipients". Het systeem dat bekend is van WO 2013/043739 extraheert informatie uit ontvangen documenten, genereert of selecteert omzettingsinstructies, zet de documenten om in een generisch intern formaat, en genereert tot slot een uitgangsdocument in het gewenste doelformaat. Zoals geïllustreerd door 408 in Fig. 4, is het systeem van WO 2013/043739 wachtrijgebaseerd.
[09] Het systeem dat bekend is van WO 2013/043739 is nadelig om verschillende redenen. Het systeem legt de nadruk op het behoud van de informatie en het positioneren van informatie in officiële documenten zoals bankafschriften. Daartoe maakt het gebruik van een intern DTS-formaat. De conversie van documenten naar een dergelijk intern generisch formaat is een omslachtige, extra stap die de schaalbaarheid van het systeem vermindert, m.a.w. het vermogen om grote hoeveelheden documenten te verwerken binnen een aanvaardbaar tijdsinterval, en de modulariteit van het systeem, m.a.w. de mogelijkheid om extra bron- of doelformaten te ondersteunen.
[10] Het is een doelstelling van de onderhavige uitvinding om een systeem en methode te beschrijven voor het omzetten van bestanden die de hierboven beschreven nadelen van oplossingen uit de stand van de techniek overwint. Meer specifiek is het een doelstelling van de onderhavige uitvinding om een systeem en methode te beschrijven voor het omzetten van bestanden die schaalbaar is voor omzettingstoepassingen op bedrijfsniveau, en die modulair is om eenvoudige of complexe omzettingen te ondersteunen van eender welk bronformaat naar eender welk doelformaat. Het is een verdere doelstelling om een systeem en methode te voorzien voor het omzetten van bestanden waarbij taakverdeling wordt ondersteund over verschillende servers, online/on-site installatie, en het rangschikken van bepaalde omzettingen op prioriteit. r
Samenvatting van de uitvinding [11] Volgens de onderhavige uitvinding worden de hierboven geïdentificeerde doelstellingen verwezenlijkt door een systeem dat is aangepast om grote hoeveelheden bestanden om te zetten, zoals gedefinieerd door conclusie 1, waarbij het systeem een meervoudig aantal bronformaten en een meervoudig aantal doelformaten voor de bestanden ondersteunt, en waarbij het systeem het volgende omvat: - een meervoudig aantal invoermodules, waarbij elke invoermodule is aangepast om inkomende bestanden te verwerken; - een meervoudig aantal omzettingsmodules, waarbij elke omzettingsmodule is aangepast om inkomende bestanden in een respectief bronformaat om te zetten in uitgaande bestanden in een respectief doelformaat; - een meervoudig aantal vrijgavemodules, waarbij elke vrijgavemodule is aangepast om uitgaande bestanden te verwerken; - een webinterface die een gebruiker van het systeem in staat stelt om workflows te configureren, waarbij elke workflow een invoermodule, één of meerdere van de omzettingsmodules en één of meerdere van de vrijgavemodules omvat; - een workflowdatabase, aangepast om de workflows, invoermodules, omzettingsmodules en vrijgavemodules op te slaan; - een taakwachtrij die is aangepast om taken op te slaan die het resultaat zijn van één of meerdere van de workflows; - een zenderdienst die is aangepast om een workflow van de workflowdatabase te laden, een invoermodule van de workflow uit te voeren om zo na te gaan of aan voorwaarden voor de uitvoering van de workflow is voldaan, en om taken op te slaan met parameters die het resultaat zijn van de workflow in de taakwachtrij; en - een ontvangerapparaat dat is aangepast om een taak te lezen van de taakwachtrij, om een overeenkomstige workflow te laden uit de workflowdatabase, en om de één of meerdere omzettingsmodules en de één of meerdere vrijgavemodules van de overeenkomstige workflow uit te voeren met parameters die deel uitmaken van de taak om zo één of meerdere inkomende bestanden die worden verwerkt door de invoermodule van de overeenkomstige workflow om te zetten in uitgaande bestanden die worden verwerkt door de één of meerdere vrijgavemodules van de overeenkomstige workflow.
[12] Met andere woorden heeft de uitvinding betrekking op een workflowgebaseerd systeem dat meerdere componenten omvat die langs een taakwachtrij communiceren. De workflows worden samengesteld door een gebruiker een opgeslagen in een workflowdatabase. Een basisworkflow bestaat uit een invoermodule, een omzettingsmodule en een vrijgavemodule, maar meer complexe workflows die meerdere omzettingsmodules aan elkaar koppelen, kunnen ook worden samengesteld. Een invoermodule is een inplugbare component die inkomende bestanden verwerkt, m.a.w. ze identificeert de locatie waar inkomende bestanden die moeten worden omgezet zich bevinden en ze specificeert de voorwaarden waaraan inkomende bestanden moeten voldoen om te worden omgezet. Een invoermodule kan bijvoorbeeld specificeren dat alle MS Word-documenten die zich in een specifieke map op een netwerkschijf bevinden en waarvan de bestandsgrootte minder is dan 5 megabyte moeten worden omgezet naar pdf-formaat. Een omzettingsmodule is een inplugbare component die een bestand in een bronformaat omzet naar een bestand in een doelformaat. Verwijzend naar het bovenstaande voorbeeld, kan een omzettingsmodule bijvoorbeeld een doc-naar-pdf conversiesoftwaremodule zijn. Een vrijgavemodule is een inplugbare component die uitgaande bestanden verwerkt, m.a.w. ze identificeert de locatie waar de omgezette, uitgaande bestanden kunnen worden gevonden. Een vrijgavemodule in het bovenstaande voorbeeld kan bijvoorbeeld het pad naar de pdf-bestanden specificeren.
[13] Het systeem volgens de uitvinding bestaat in feite uit een zenderdienst en ontvangerdienst die via de taakwachtrij communiceren. De zenderdienst laadt een workflow uit de workflowdatabase en voert de invoermodule van de workflow uit. Zoals hierboven vermeld, definieert de invoermodule de locatie van de bestanden die moeten worden omgezet en de voorwaarden/parameters voor omzetting van die bestanden. Wanneer de zenderdienst een om te zetten bestand detecteert, m.a.w. wanneer de dienst op de locatie opgegeven door de invoermodule een bestand detecteert dat voldoet aan de voorwaarden voor omzetting, zal hij een taak toevoegen aan de taakwachtrij. De ontvangerdienst luistert naar de taakwachtrij en voert de taken uit die zijn opgeslagen in de taakwachtrij volgens het FIFO-principe (first-in-first-out). De ontvanger maakt daartoe contact met de workflowdatabase, laadt de workflow die overeenkomt met een taak, en voert de omzettingsmodule(s) en de vrijgavemodule(s) uit die bij die workflow horen. Als gevolg van het uitvoeren van de taak, zal een inkomend bestand worden omgezet van een bronformaat naar één of meerdere doelformaten, en de paden naar de omgezette bestanden zullen worden vrijgegeven door de vrijgavemodule(s).
[14] Nieuwe invoermodules, omzettingsmodules en vrijgavemodules kunnen in het systeem worden ingeplugd, bijv. via een uploadinterface, met als gevolg dat het systeem kan worden uitgebreid om nieuwe bronformaten en nieuwe doelformaten te ondersteunen op een modulaire, flexibele en gebruiksvriendelijke manier. Als gevolg van de modulaire aanpak, ondersteunt één enkel systeem volgens de onderhavige uitvinding meerdere omzettingen. Bovendien maakt de workflowgebaseerd aanpak het mogelijk om duizenden bestanden om te zetten door activering van één enkele workflow, wat het systeem schaalbaar en geschikt maakt voor bestandsomzettingen op bedrijfsniveau. Het systeem kan ter plaatse bij een bedrijf worden geïnstalleerd, of op afstand als een online dienst. Bovendien maakt de architectuur met een zender en ontvanger die communiceren via een wachtrij het mogelijk om aan taakverdeling en prioriteitsbepaling te doen, zoals hieronder verder wordt uitgelegd.
[15] Volgens een optioneel aspect van het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding, gedefinieerd door conclusie 2, is elke invoermodule aangepast om een locatie van inkomende bestanden te definiëren die moeten worden omgezet, en de voorwaarden waaraan moet worden voldaan om de inkomende bestanden om te zetten.
[16] Een invoermodule is in feite een inplugbare component die bepaalt waar inkomende bestanden kunnen worden gevonden en aan welke voorwaarden moet worden voldaan om de inkomende bestanden om te zetten. Invoermodules kunnen dus verschillende bestandsbronnen verwerken, zoals een bestandssysteem, dropbox, webdiensten, documentum, enz. Een invoermodule kan bijvoorbeeld een ondervrager voor een bestandssysteem zijn die in een specifieke map op een netwerkschijf naar bestanden zoekt. De voorwaarden kunnen bijvoorbeeld betrekking hebben op het type bestand (bijv. alleen pdf-bestanden moeten worden omgezet), een minimumgrootte van het bestand (bijv. alleen bestanden groter dan 5 kilobytes moeten worden omgezet), een maximumgrootte van het bestand (bijv. alleen bestanden kleiner dan 5 megabyte moeten worden omgezet), een maximale leeftijd (bijv. alleen bestanden aangemaakt in de afgelopen maand moeten worden omgezet), een ondergrens voor de aanmaakdatum van het bestand (bijv. alleen bestanden aangemaakt of bijgewerkt na 1 januari 2013 moeten worden omgezet) enz.
[17] Volgens een ander aspect van het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding, gedefinieerd door conclusie 3, is elke vrijgavemodule aangepast om een locatie van uitgaande bestanden te definiëren, en aangepast om een pad naar de locatie van uitgaande bestanden te leveren.
[18] Een uitvoermodule is in feite een inplugbare component of agent die bepaalt waar en hoe de omgezette, uitgaande bestanden moeten worden vrijgegeven. Vrijgavemodules kunnen dus verschillende bestemmingen verwerken, zoals een bestandssysteem, dropbox, webdiensten, documentum, enz. De vrijgavemodule kan bijvoorbeeld bepalen dat uitgaande bestanden in pdf-formaat moeten worden vrijgegeven in een specifieke map. De vrijgavemodule kan als output een padspecificatie leveren naar de specifieke map.
[19] Volgens nog een ander optioneel aspect van het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding, gedefinieerd door conclusie 4, omvat een workflow een meervoudig aantal omzettingsmodules die met elkaar zijn verbonden.
[20] Op deze manier, door meerdere omzettingsmodules met elkaar te verbinden in één enkele workflow, kunnen meer complexe omzettingsconfiguraties worden uitgevoerd. Bijgevolg kan een bestand worden omgezet in meerdere, verschillende doelformaten die op verschillende locaties worden opgeslagen.
[21] Optioneel, zoals gedefinieerd door conclusie 5, omvat het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding verder het volgende: - een tweede taakwachtrij die is aangepast om taken met hoge prioriteit op te slaan die het resultaat zijn van één of meerdere van de workflows.
[22] Het systeem kan inderdaad worden voorzien van een tweede wachtrij met hoge prioriteit waarvan de taken een hogere prioriteit hebben dan de eerste, standaard wachtrij. De ontvangerdienst verwerkt eerst taken uit de wachtrij met hoge prioriteit. Taken uit de standaard wachtrij worden verwerkt door de ontvangerdienst zodra de wachtrij met hoge prioriteit leeg is.
[23] Ook optioneel, zoals gedefinieerd door conclusie 6, omvat het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding verder het volgende: - een printerdienst die is aangepast om een workflow van de workflowdatabase te laden, een invoermodule van de workflow uit te voeren om zo na te gaan of aan voorwaarden voor de uitvoering van de workflow is voldaan, en om taken met hoge prioriteit op te slaan die het resultaat zijn van de workflow in de tweede taakwachtrij.
[24] De printerdienst is dus een soort zenderdienst die bijvoorbeeld kan worden geïnstalleerd als een printer op de computer van een gebruiker, en die taken met hoge prioriteit genereert die standaard worden opgeslagen in en verwerkt via de wachtrij voor taken met hoge prioriteit.
[25] In lijn met nog een ander optioneel aspect van het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding, gedefinieerd door conclusie 7, is de taakwachtrij een FIFO-wachtrij (first-in-first-out).
[26] De standaard wachtrij en ook de wachtrij met hoge prioriteit worden bij voorkeur geïmplementeerd als FIFO-wachtrijen (first-in-first-out) waarvan de ontvangerdienst taken leest in de volgorde waarin deze taken werden opgenomen in de wachtrij door de zenderdienst. De enige manier om een taak uit te voeren vóór een taak die al in de wachtrij staat, is door de wachtrij met hoge prioriteit te gebruiken.
[27] Verder optioneel, zoals opgegeven in conclusie 8, omvat het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding het volgende: - meerdere zenderdiensten die geconfigureerd zijn om te draaien op verschillende servers; en/of - meerdere ontvangerdiensten die geconfigureerd zijn om te draaien op verschillende servers.
[28] Het systeem volgens de onderhavige uitvinding kan inderdaad meerdere zenderdiensten of meerdere ontvangerdiensten of meerdere zender- en ontvangerdiensten integreren die op verschillende servers draaien om zo een taakverdeling mogelijk te maken.
[29] Volgens nog een ander optioneel aspect, gedefinieerd door conclusie 9, omvat het systeem dat is aangepast om bestanden om te zetten volgens de onderhavige uitvinding verder het volgende: - een uploadinterface voor de invoermodules, de omzettingsmodules en de vrijgavemodules, waarbij de uploadinterface is aangepast om voor een geüploade module een JavaScript Object Notation of JSON-bestand te eisen omvattende een beschrijving van de module en een ziparchiefbestand omvattende klassen voor de module.
[30] Bijgevolg kunnen nieuwe invoermodules, omzettingsmodules en/of vrijgavemodules worden ingeplugd in het systeem via een uploadinterface die een JSON-bestand vereist dat een beschrijving bevat van de module en een zipbestand dat de klassen van de module bevat.
[31] Zoals verder bepaald in conclusie 10, omvat de beschrijving van een module: - een naam van de module; - een klassenaam van een klasse van de module; - een typespecificatie van de module, m.a.w. ofwel invoer, omzetting of vrijgave; - een tekstbeschrijving van de module; en - een parameterlijst van de module.
[32] Naast een systeem voor het omzetten van bestanden, heeft de onderhavige uitvinding ook betrekking op een overeenkomstige, door een computer geïmplementeerde methode voor het omzetten van grote hoeveelheden bestanden zoals gedefinieerd door conclusie 11, waarbij de methode een meervoudig aantal bronformaten en een meervoudig aantal doelformaten voor de bestanden ondersteunt, en de methode het volgende omvat: - het opslaan in een workflowdatabase van: - een meervoudig aantal invoermodules, waarbij elke invoermodule is aangepast om inkomende bestanden te verwerken; - een meervoudig aantal omzettingsmodules, waarbij elke omzettingsmodule is aangepast om inkomende bestanden in een respectief bronformaat om te zetten in uitgaande bestanden in een respectief doelformaat; - een meervoudig aantal vrijgavemodules, waarbij elke vrijgavemodule is aangepast om uitgaande bestanden te verwerken; en - workflows waarbij elke workflow een invoermodule, één of meerdere van de omzettingsmodules en één of meerdere van de vrijgavemodules omvat; - het laden van een workflow uit de workflowdatabase in een zenderdienst, het uitvoeren van een invoermodule van de workflow om zo na te gaan of aan voorwaarden voor de uitvoering van de workflow is voldaan, en het opslaan van taken met parameters die het resultaat zijn van de workflow in een taakwachtrij; en - het lezen van een taak uit de taakwachtrij in een ontvangerdienst, het laden van een overeenkomstige workflow uit de workflowdatabase in de ontvangerdienst en het uitvoeren van de één of meerdere omzettingsmodules en de één of meerdere vrijgavemodules van de overeenkomstige workflow met parameters die deel uitmaken van de taak om zo één of meerdere inkomende bestanden die worden verwerkt door de invoermodule van de overeenkomstige workflow om te zetten in uitgaande bestanden die worden verwerkt door de één of meerdere vrijgavemodules van de overeenkomstige workflow.
[33] De onderhavige uitvinding heeft verder ook betrekking op een gegevensverwerkingssysteem zoals gedefinieerd door conclusie 12, omvattende middelen voor het uitvoeren van de methode volgens de uitvinding.
[34] Zoals verder gespecificeerd door conclusie 13, heeft de onderhavige uitvinding betrekking op een computerprogramma omvattende softwarecode die is aangepast om de methode uit te voeren, en op een door een computer leesbar opslagmedium zoals gedefinieerd door conclusie 14, omvattende het computerprogramma.
Korte beschrijving van de tekeningen [35] Fig. 1 is een functioneel blokschema dat een uitvoeringsvorm voorstelt van het systeem voor het omzetten van bestanden in overeenstemming met de onderhavige uitvinding; [36] Fig. 2 is een diagram dat een uitvoeringsvorm voorstelt van de methode voor het omzetten van bestanden in overeenstemming met de onderhavige uitvinding; en [37] Fig. 3 geeft een computersysteem weer dat geschikt is voor het hosten van het systeem voor het omzetten van bestanden volgens de onderhavige uitvinding en dat geschikt is voor het implementeren van de methode voor het omzetten van bestanden volgens de onderhavige uitvinding.
Gedetailleerde beschrijving van de uitvoeringsvorm(en) [38] Fig. 1 geeft een systeem 100 weer voor bestandsomzettingen op bedrijfsniveau. Het systeem bestaat uit meerdere functionele blokken of componenten die via een Java Message Service of JMS-wachtrij 106 communiceren. Het systeem 100 bevat ook een tweede JMS-wachtrij 110, de zogeheten wachtrij met hoge prioriteit of HP QUEUE 110 die prioriteit krijgt over QUEUE 106.
[39] Centraal in systeem 100 staat een database 105 die invoermodules INPUT MOD of 101, omzettingsmodules TRANSF MOD of 102, vrijgavemodules RELEASE MOD of 103 en workflows 104 opslaat. Invoermodules zijn softwarecomponenten die inkomende bestanden verwerken. Vrijgavemodules zijn softwarecomponenten die uitgaande bestanden verwerken. Een vrijgavemodule bepaalt met andere woorden hoe en waar een omgezet bestand zal worden vrijgegeven, bijvoorbeeld door de map of het pad naar een map waar de omgezette bestanden worden opgeslagen te specificeren. Omzettingsmodules zijn softwarecomponenten die inkomende bestanden met een specifiek bronformaat omzetten in uitgaande bestanden met een specifiek doelformaat. Een basisworkflow bestaat uit een invoermodule, een omzettingsmodule en een vrijgavemodule. Meer complexe workflows bevatten een keten van meerdere omzettingsmodules en meerdere vrijgavemodules die het mogelijk maken om inkomende bestanden met een specifiek bronformaat om te zetten in uitgaande bestanden met meerdere, verschillende doelformaten die op meerdere, verschillende locaties kunnen worden opgeslagen. De workflows 104 worden via een HTML-webinterface 114 geüpload, m.a.w. een applicatie die op een clientapparaat draait, bijv. een pc of laptop, en het is mogelijk voor een gebruiker om workflows te configureren via een interface op basis van slepen-en-neerzetten, en om de geconfigureerde workflows op te slaan in database 105. Webinterface 114 kan ook worden gebruikt om nieuwe invoermodules, nieuwe omzettingsmodules en/of nieuwe vrijgavemodules te uploaden in database 105.
[40] Fig. 1 geeft verder een eerste zenderdienst, SENDER1 of 107 weer, en een tweede zenderdienst SENDER2 of 112 die beide contact leggen met dezelfde JMS-wachtrij 106. Een zenderdienst, 107 of 112, is een component die de invoermodules van de verschillende workflows 104 verwerkt. Een zenderdienst als 107 interageert met andere woorden met database 105 om workflows te laden. Voor een geüploade workflow, voert de zenderdienst 107 de overeenkomstige invoermodule uit met als gevolg dat hij naar een opgegeven locatie kijkt, bijv. een map in bestandopslag 109 voor inkomende bestanden die voldoen aan bepaalde voorwaarden, opgegeven door de invoermodule. De voorwaarden zijn bijvoorbeeld het type bestand, de bestandsgrootte, de leeftijd van het bestand enz. Wanneer de zenderdienst 107 op de opgegeven locatie een nieuw bestand detecteert dat voldoet aan de voorwaarden die zijn opgegeven in de invoermodule, verstuurt de zenderdienst 107 een taak naar wachtrij 106. De taak is een aanvraag om het bestand om te zetten in overeenstemming met de workflow.
[41] Afhankelijk van de behoeften van bijvoorbeeld het bedrijf waar systeem 100 is geïnstalleerd, kunnen meerdere zenders als 107 en 112 worden geïnstalleerd op verschillende servers. Deze zenders 107 en 112 versturen taken naar dezelfde wachtrij 106 die deze taken behandelt op FIFO-basis (first-in-first-out).
[42] Om taken met hoge prioriteit te kunnen verwerken, wordt een tweede wachtrij 110 geïnstalleerd in systeem 100. Taken die in de wachtrij met hoge prioriteit 110 worden opgenomen, worden verwerkt vóór taken die zijn opgeslagen in wachtrij 106. Taken in wachtrij 106 worden met andere woorden alleen verwerkt als wachtrij 110 leeg is.
[43] Behalve de twee zenderdiensten 107 en 112 die taken versturen naar wachtrij 106, geeft Fig. 1 ook een printerdienst 111 weer. Deze printerdienst 111 is een bepaald type zenderdienst die ook interageert met de database 105, workflows laadt en de overeenkomstige invoermodules uitvoert. De taken die worden aangemaakt door de printerdienst 111, gaan echter naar de wachtrij met hoge prioriteit 110 zodat ze altijd prioriteit krijgen over lopende taken van de andere zenderdiensten 107 en 112. Dit geeft de gebruiker van het systeem 100 de mogelijkheid om een printerdienst te installeren op hun clientcomputers. Wanneer naar deze printerdienst wordt geprint, wordt een taak voor bestandsomzetting verstuurd naar een wachtrij die prioriteit heeft over de standaard wachtrij die andere bestandsomzettingen verwerkt.
[44] Fig. 1 toont tot slot ontvangerdiensten: RECEIVER1 of 108 en RECEIVER2 of 113. Een ontvangerdienst is een component die taken uit een wachtrij leest en verwerkt. Als een ontvanger, 108 of 113, naar een te verwerken taak zoekt, zal hij de volgende taak in de wachtrij verwerken, m.a.w. de volgende taak in wachtrij 110 of - in het geval wachtrij 110 leeg is - de volgende taak in wachtrij 106. Op deze manier wordt de FIFO-volgorde gegarandeerd. Nadat een taak werd gelezen, zal de ontvangerdienst 108 interageren met database 105 om de overeenkomstige workflow te laden en de omzettingsmodule(s) en vrijgavemodule(s) uit te voeren die deel uitmaken van die workflow. Als gevolg van het uitvoeren van de omzettingsmodule(s), wordt een inkomend bestand dat wordt gevonden op een opgegeven locatie in bestandopslag 109 omgezet in één of meerdere doelformaten. Elke vrijgavemodule die deel uitmaakt van de workflow geeft het pad op naar een omgezet bestand, bijv. het pad naar een map in bestandopslag 109 waar een uitgaand bestand in een doelformaat wordt opgeslagen.
Meerdere vrijgavemodules kunnen deel uitmaken van één enkele workflow. Dit geeft de gebruiker de mogelijkheid om een vrijgave toe te voegen in het midden van een keten van omzettingen, hetgeen handig kan zijn als de gebruiker een omgezet bestand wil vrijgeven, maar ook een verdere omzetting van het omgezette bestand wil uitvoeren.
[45] Als een bedrijf dat gebruik maakt van systeem 100 merkt dat omzettingstaken niet kunnen worden verwerkt in een aanvaardbare tijdspanne, kan een extra ontvangerdienst worden geïnstalleerd op een extra server. Het resultaat is dat de belasting op de ontvangerdiensten wordt herverdeeld en dat de tijd om omzettingstaken te verwerken wordt verminderd.
[46] Fig. 2 illustreert een uitvoeringsvorm van de methode om een bestand om te zetten volgens de onderhavige uitvinding. Meer specifiek geeft Fig. 2 een typische communicatiestroom weer tussen de webinterface 114, database 105, zenderdienst 107, wachtrij 106 en ontvangerdienst 108 van het systeem dat is afgebeeld in Fig. 1. In een eerste stap configureert de gebruiker één of meerdere workflows gebruik makende van de webinterface 114 en uploadt hij de configuraties 201 in workflowdatabase 105. In een tweede stap interageert zenderdienst 107 met database 105 om een workflow te laden. Dit wordt aangeduid door GET CONFIGURATION 202 in Fig. 2: de zenderdienst 107 verstuurt een verzoek naar de database 105 en krijgt in ruil een workflow. De zenderdienst 107 laadt vervolgens de invoermodule die deel uitmaakt van de workflow en voert die uit. Indien, als gevolg van het uitvoeren van de invoermodule, een bestand wordt gevonden dat moet worden omgezet, verstuurt de ontvangerdienst 107 een taak 203 naar wachtrij 106. De ontvangerdienst 108 interageert met de wachtrij 106 en leest de taak van de wachtrij 106 zoals wordt aangeduid door GET TASK 204 in Fig. 2. De ontvangerdienst 108 interageert daarop met de database 105 om de overeenkomstige workflow te laden. Dit wordt geïllustreerd door GET CONFIGURATION 205 in Fig. 2: de ontvangerdienst 108 verstuurt een verzoek voor de overeenkomstige workflow naar de database, ontvangt de overeenkomstige workflow als reactie op het verzoek, en begint met het uitvoeren van de omzettingsmodules en de vrijgavemodules van de geüploade workflow. Het gevolg is dat de omzettingstaak zal worden uitgevoerd en het pad naar de locatie van het omgezette bestand zal worden vrijgegeven.
[47] Fig. 3 toont een geschikt computersysteem 300 voor het hosten van het systeem van Fig. 1. Computersysteem 300 kan algemeen worden gevormd als een geschikte computer voor algemene doeleinden en een bus 310, een processor 302, een lokaal geheugen 304, één of meerdere optionele invoerinterfaces 314, één of meerdere optionele uitvoerinterfaces 316, een communicatie-interface 312, een opslagelementinterface 306 en één of meerdere opslagelementen 308 omvatten. Bus 310 kan één of meerdere geleiders omvatten die communicatie toelaten tussen de componenten van het computersysteem. Processor 302 kan eender welk type conventionele processor of microprocessor omvatten die programmeringsinstructies interpreteert en uitvoert. Lokaal geheugen 304 kan een Random Acces Memory (RAM) of eender welk ander type dynamisch opslagapparaat omvatten dat informatie en instructies opslaat om te worden uitgevoerd door processor 302 en/of een Read Only Memory (ROM) of eender welk ander type statisch opslagapparaat dat statische informatie en instructies opslaat voor gebruik door processor 304. Invoerinterface 314 kan één of meerdere conventionele mechanismen omvatten die een operator in staat stellen om informatie in te voeren in het computersysteem 300, zoals een toetsenbord 320, een muis 330, een pen, stemherkenning en/of biometrische mechanismen enz. Uitvoerinterface 316 kan één of meerdere conventionele mechanismen omvatten die informatie uitvoeren naar de operator, zoals een display 340, een printer 350, een luidspreker enz. Communicatie-interface 312 kan eender welke zendontvangerachtig mechanisme omvatten zoals twee ethernetinterfaces van 1 Gb die computersysteem 300 in staat stellen om te communiceren met andere apparaten en/of systemen, bijvoorbeeld mechanismen om te communiceren met één of meerdere andere computersystemen. De communicatie-interface 312 van computersysteem 300 kan verbonden zijn met dergelijk ander computersysteem 360 door middel van een LAN (local area network) of WAN (wide area network), zoals het internet, in welk geval het andere computersysteem bijvoorbeeld een geschikte Webserver kan omvatten. Opslagelementinterface 306 kan een opslaginterface omvatten zoals een SATA-interface (Serial Advanced Technology Attachment) of een SCSI (Small Computer System Interface) om bus 310 te verbinden met één of meerdere opslagelementen 308, zoals één of meerdere lokale schijven, bijvoorbeeld 1TB SATA-schijfstations, en het lezen en schrijven van gegevens naar en/of van deze opslagelementen 308 te besturen. Hoewel de opslagelementen 308 hierboven worden beschreven als een lokale schijf, kunnen algemeen ook eender welke andere door een computer leesbare media worden gebruikt, zoals een verwijderbare magnetische schijf, optische opslagmedia zoals een CD- of DVD-ROM, SSD's, flashgeheugenkaarten enz.
[48] Hoewel de onderhavige uitvinding werd geïllustreerd aan de hand van specifieke uitvoeringsvormen, zal het voor de vakman duidelijk zijn dat de uitvinding niet is beperkt tot de details van de voorgaande illustratieve uitvoeringsvormen, en dat de onderhavige uitvinding kan worden uitgevoerd met verschillende wijzigingen en aanpassingen zonder daarbij het toepassingsgebied van de uitvinding te verlaten. De onderhavige uitvoeringsvormen moeten daarom op alle vlakken worden beschouwd als illustratief en niet restrictief, waarbij het toepassingsgebied van de uitvinding wordt beschreven door de bijgevoegde conclusies en niet door de voorgaande beschrijving, en alle wijzigingen die binnen de betekenis en de reikwijdte van de conclusies vallen, zijn hier derhalve mee opgenomen. Er wordt met andere woorden van uitgegaan dat hieronder alle wijzigingen, variaties of equivalenten vallen die binnen het toepassingsgebied van de onderliggende basisprincipes vallen en waarvan de essentiële attributen worden geclaimd in deze octrooiaanvraag. Bovendien zal de lezer van deze octrooiaanvraag begrijpen dat de woorden "omvattende" of "omvatten" andere elementen of stappen niet uitsluiten, dat het woord "een" geen meervoud uitsluit, en dat een enkelvoudig element, zoals een computersysteem, een processor of een andere geïntegreerde eenheid de functies van verschillende hulpmiddelen kunnen vervullen die in de conclusies worden vermeld. Eventuele verwijzingen in de conclusies mogen niet worden opgevat als een beperking van de conclusies in kwestie. De termen "eerste", "tweede", "derde", "a", "b", "c" en dergelijke, wanneer gebruikt in de beschrijving of in de conclusies, worden gebruikt om het onderscheid te maken tussen soortgelijke elementen of stappen en beschrijven niet noodzakelijk een opeenvolgende of chronologische volgorde. Op dezelfde manier worden de termen "bovenkant", "onderkant", "over", "onder" en dergelijke gebruikt ten behoeve van de beschrijving en verwijzen ze niet noodzakelijk naar relatieve posities. Het moet worden begrepen dat die termen onderling verwisselbaar zijn onder de juiste omstandigheden en dat uitvoeringsvormen van de uitvinding in staat zijn om te functioneren volgens de onderhavige uitvinding in andere volgordes of oriëntaties dan hierboven beschreven of geïllustreerd.

Claims (14)

  1. CONCLUSIES
    1. Een systeem (100) dat is aangepast om grote hoeveelheden bestanden om te zetten, waarbij genoemd systeem (100) een meervoudig aantal bronformaten en een meervoudig aantal doelformaten ondersteunt voor genoemde bestanden, genoemd systeem (100) omvattende: - een meervoudig aantal invoermodules (101), waarbij elke invoermodule is aangepast om inkomende bestanden te verwerken; - een meervoudig aantal omzettingsmodules (102), waarbij elke omzettingsmodule is aangepast om inkomende bestanden in een respectief bronformaat om te zetten in uitgaande bestanden in een respectief doelformaat; - een meervoudig aantal vrijgavemodules (103), waarbij elke vrijgavemodule is aangepast om uitgaande bestanden te verwerken; - een webinterface die een gebruiker van genoemd systeem in staat stelt om workflows (104) te configureren, waarbij elke workflow een invoermodule, één of meerdere van genoemde omzettingsmodules en één of meerdere van genoemde vrijgavemodules omvat; - een workflowdatabase (105), aangepast om genoemde workflows (104), invoermodules (101), omzettingsmodules (102) en vrijgavemodules (103) op te slaan; - een taakwachtrij (106) die is aangepast om taken op te slaan die het resultaat zijn van één of meerdere van genoemde workflows; - een zenderdienst (107) die is aangepast om een workflow van genoemde workflowdatabase (105) te laden, een invoermodule van genoemde workflow uit te voeren om zo na te gaan of aan voorwaarden voor de uitvoering van genoemde workflow is voldaan, en om taken op te slaan met parameters die het resultaat zijn van genoemde workflow in genoemde taakwachtrij (106); en - een ontvangerapparaat (108) dat is aangepast om een taak te lezen van genoemde taakwachtrij (106), om een overeenkomstige workflow te laden uit genoemde workflowdatabase (105), en om de één of meerdere omzettingsmodules en de één of meerdere vrijgavemodules van genoemde overeenkomstige workflow uit te voeren met parameters die deel uitmaken van genoemde taak om zo één of meerdere inkomende bestanden die worden verwerkt door de invoermodule van genoemde overeenkomstige workflow om te zetten in uitgaande bestanden die worden verwerkt door de één of meerdere vrijgavemodules van genoemde overeenkomstige workflow.
  2. 2. Een systeem (100) dat is aangepast om bestanden om te zetten volgens conclusie 1, waarbij elke invoermodule van genoemde invoermodules (101) is aangepast om een locatie (109) te definiëren van inkomende bestanden die moeten worden omgezet, en voorwaarden waaraan moet worden voldaan om genoemde inkomende bestanden om te zetten.
  3. 3. Een systeem (100) dat is aangepast om bestanden om te zetten volgens conclusie 1 of conclusie 2, waarbij elke vrijgavemodule van genoemde vrijgavemodules (103) is aangepast om een locatie (109) te definiëren van uitgaande bestanden, en is aangepast om een pad te leveren naar genoemde locatie (109) met uitgaande bestanden.
  4. 4. Een systeem (100) dat is aangepast om bestanden om te zetten volgens één van de voorgaande conclusies, waarbij een workflow van genoemde workflows (104) een meervoudig aantal omzettingsmodules (102) omvat die met elkaar zijn verbonden.
  5. 5. Een systeem (100) dat is aangepast om bestanden om te zetten volgens één van de voorgaande conclusies, verder omvattende: - een tweede taakwachtrij (110) die is aangepast om taken met hoge prioriteit op te slaan die het resultaat zijn van één of meerdere van genoemde workflows.
  6. 6. Een systeem (100) dat is aangepast om bestanden om te zetten volgens conclusie 5, verder omvattende: - een printerdienst (111) die is aangepast om een workflow van genoemde workflowdatabase (105) te laden, een invoermodule van genoemde workflow uit te voeren om zo na te gaan of aan voorwaarden voor de uitvoering van genoemde workflow is voldaan, en om taken die een hoge prioriteit hebben en het resultaat zijn van genoemde workflow op te slaan in genoemde tweede taakwachtrij (110).
  7. 7. Een systeem (100) dat is aangepast om bestanden om te zetten volgens één van de voorgaande conclusies, waarbij genoemde taakwachtrij (106) een FIFO-wachtrij (first-infirst-out) is.
  8. 8. Een systeem (100) dat is aangepast om bestanden om te zetten volgens één van de voorgaande conclusies, omvattende: - een meervoudig aantal zenderdiensten (107, 111, 112) soortgelijk aan genoemde zenderdienst (107), genoemd meervoudig aantal zenderdiensten (107, 111, 112) zijnde geconfigureerd om op verschillende servers te draaien; en/of - een meervoudig aantal ontvangerdiensten (108, 113) soortgelijk aan genoemde ontvangerdienst (108), genoemd meervoudig aantal ontvangerdiensten (108, 113) zijnde geconfigureerd om op verschillende servers te draaien.
  9. 9. Een systeem (100) dat is aangepast om bestanden om te zetten volgens één van de voorgaande conclusies, verder omvattende: - een uploadinterface (114) voor genoemde invoermodules (101), genoemde omzettingsmodules (102) en genoemde vrijgavemodules (103), waarbij genoemde uploadinterface (114) is aangepast om voor een geüploade module een JavaScript Object Notation of JSON-bestand te eisen omvattende een beschrijving van genoemde module en een ziparchiefbestand omvattende klassen voor genoemde module.
  10. 10. Een systeem (100) dat is aangepast om bestanden om te zetten volgens conclusie 9, waarbij genoemde beschrijving van genoemde module het volgende omvat: - een naam van genoemde module; - een klassenaam van een klasse van genoemde module; - een typespecificatie van genoemde module, m.a.w. ofwel invoer, omzetting of vrijgave; - een tekstbeschrijving van genoemde module; en - een parameterlijst van genoemde module.
  11. 11. Een door een computer geïmplementeerde methode om grote hoeveelheden bestanden om te zetten, waarbij genoemde methode een meervoudig aantal bronformaten en een meervoudig aantal doelformaten ondersteunt voor genoemde bestanden, genoemde methode omvattende: - het opslaan in een workflowdatabase (105) van: - een meervoudig aantal invoermodules (101), waarbij elke invoermodule is aangepast om inkomende bestanden te verwerken; - een meervoudig aantal omzettingsmodules (102), waarbij elke omzettingsmodule is aangepast om inkomende bestanden in een respectief bronformaat om te zetten in uitgaande bestanden in een respectief doelformaat; - een meervoudig aantal vrijgavemodules (103), waarbij elke vrijgavemodule is aangepast om uitgaande bestanden te verwerken; en - workflows (104) waarbij elke workflow een invoermodule, één of meerdere van genoemde omzettingsmodules en één of meerdere van genoemde vrijgavemodules omvat; - het laden van een workflow uit genoemde workflowdatabase (105) in een zenderdienst (107), het uitvoeren van een invoermodule van genoemde workflow om zo na te gaan of aan voorwaarden voor de uitvoering van genoemde workflow is voldaan, en het opslaan van taken met parameters die het resultaat zijn van genoemde workflow in een taakwachtrij (106); en - het lezen van een taak uit genoemde taakwachtrij (106) in een ontvangerdienst (108), het laden van een overeenkomstige workflow uit genoemde workflowdatabase (105) in genoemde ontvangerdienst (108) en het uitvoeren van de één of meerdere omzettingsmodules en de één of meerdere vrijgavemodules van genoemde overeenkomstige workflow met parameters die deel uitmaken van genoemde taak om zo één of meerdere inkomende bestanden die worden verwerkt door de invoermodule van genoemde overeenkomstige workflow om te zetten in uitgaande bestanden die worden verwerkt door de één of meerdere vrijgavemodules van genoemde overeenkomstige workflow.
  12. 12. Een gegevensverwerkingssysteem omvattende middelen om de methode volgens conclusie 11 uit te voeren.
  13. 13. Een computerprogramma omvattende softwarecode die is aangepast om de methode van conclusie 11 uit te voeren.
  14. 14. Een door een computer leesbaar medium omvattende het computerprogramma van conclusie 13.
BE2014/0778A 2014-06-12 2014-10-14 Een systeem en computerprogrammaproducten om grote hoeveelheden bestanden om te zetten BE1022528B1 (nl)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP141722017 2014-06-12
EP14172201.7A EP2955623A1 (en) 2014-06-12 2014-06-12 A system and computer program products to transform large amounts of files

Publications (2)

Publication Number Publication Date
BE1022528A1 true BE1022528A1 (nl) 2016-05-24
BE1022528B1 BE1022528B1 (nl) 2016-05-24

Family

ID=50943139

Family Applications (1)

Application Number Title Priority Date Filing Date
BE2014/0778A BE1022528B1 (nl) 2014-06-12 2014-10-14 Een systeem en computerprogrammaproducten om grote hoeveelheden bestanden om te zetten

Country Status (4)

Country Link
US (1) US10073850B2 (nl)
EP (1) EP2955623A1 (nl)
BE (1) BE1022528B1 (nl)
WO (1) WO2015188993A1 (nl)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106777034B (zh) * 2016-12-09 2020-12-29 裴宏伟 一种文档批量格式转换的方法和系统
BE1026765B1 (nl) 2018-11-08 2020-06-09 Docbyte Nv Systeem en computerprogrammaproducten voor duurzame langetermijn archivering van een digitaal bestand
CN110991145A (zh) * 2019-12-10 2020-04-10 深圳市兴之佳科技有限公司 一种文档转换方法、装置、电子设备和存储介质
CN113590299B (zh) * 2021-09-28 2022-03-01 南京国睿信维软件有限公司 高并发高可用异构系统的转换调度框架算法
CN117194549B (zh) * 2023-11-07 2024-01-26 上海柯林布瑞信息技术有限公司 基于任务数据配置的数据传输方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001319069A (ja) 2000-05-12 2001-11-16 Melco Inc ファイル変換システム、ウェブサーバ、ファイル変換方法およびファイル変換プログラムを記録した媒体
US7478170B2 (en) 2002-03-05 2009-01-13 Sun Microsystems, Inc. Generic infrastructure for converting documents between formats with merge capabilities
US8296461B2 (en) * 2007-08-07 2012-10-23 Object Innovation Inc. Data transformation and exchange
TWI421702B (zh) 2007-11-26 2014-01-01 Ubitus Inc 轉檔系統及其方法
IN2011CH02818A (nl) * 2011-08-18 2015-05-29 Infosys Ltd
WO2013043739A1 (en) 2011-09-23 2013-03-28 Ecmarket Inc. Systems, methods and articles to automatically transform documents transmitted between senders and recipients
JP6094152B2 (ja) * 2012-11-08 2017-03-15 株式会社リコー 情報処理装置、情報処理システム、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
US20160224571A1 (en) 2016-08-04
EP2955623A1 (en) 2015-12-16
US10073850B2 (en) 2018-09-11
BE1022528B1 (nl) 2016-05-24
WO2015188993A1 (en) 2015-12-17

Similar Documents

Publication Publication Date Title
BE1022528B1 (nl) Een systeem en computerprogrammaproducten om grote hoeveelheden bestanden om te zetten
US9742845B2 (en) Multi-service cloud storage decision optimization process
US20170206217A1 (en) Data delivery and validation in hybrid cloud environments
US8694685B2 (en) Migrating virtual machines with adaptive compression
JP6315878B2 (ja) プリントショップ環境におけるシステム及び方法
US20190320045A1 (en) Reusable message flow between applications of a message broker integrated systems environment
US11836372B2 (en) Archive center for content management
US10587675B2 (en) Offline mobile data storage system and method
US10320733B2 (en) Prioritization of lock allocation
EP2779583B1 (en) Telecommunication method and system
US20150310333A1 (en) Determination of data object exposure in cloud computing environments
US20170019361A1 (en) Selective forwarding of components of an attached archive in email system
TW201528166A (zh) 針對經選取用於追蹤動作之電子郵件的提醒服務
CN113779409A (zh) 基于大数据的意图挖掘方法及系统
JP5744611B2 (ja) 情報処理装置、情報処理方法及びプログラム
US20230071548A1 (en) Archived data crawling
EP3734458B1 (en) Method and system for prioritizing critical data object storage during backup operations
JP7080741B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US10205768B2 (en) Facility for initiating automatic exchange of file(s) between mobile devices
US20220309414A1 (en) Information processing apparatus, non-transitory computer readable medium storing program causing computer to execute information processing and method for information processing
US11184310B2 (en) Social media infused relationship management based on 5G connection speed
US20200234221A1 (en) Implementing individual customized task priorization based on real-time context
JP2022012252A (ja) 情報処理装置
WO2023095078A1 (en) System and method for providing a customized solution for a predefined problem
CN114466005A (zh) 物联网设备编排

Legal Events

Date Code Title Description
PD Change of ownership

Owner name: DOCBYTE NV; BE

Free format text: DETAILS ASSIGNMENT: CHANGE OF OWNER(S), OTHER; FORMER OWNER NAME: DOCBYTE NV

Effective date: 20240311