WO2011066597A1 - Method of and apparatus for recording information - Google Patents
Method of and apparatus for recording information Download PDFInfo
- Publication number
- WO2011066597A1 WO2011066597A1 PCT/AU2009/001580 AU2009001580W WO2011066597A1 WO 2011066597 A1 WO2011066597 A1 WO 2011066597A1 AU 2009001580 W AU2009001580 W AU 2009001580W WO 2011066597 A1 WO2011066597 A1 WO 2011066597A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- computer
- client
- recording information
- implemented method
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/20—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for electronic clinical trials or questionnaires
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H40/00—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
- G16H40/60—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
- G16H40/67—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
Definitions
- the present invention relates generally to a system for gathering, storing and sharing information. Although embodiments of the present invention are described with reference to a healthcare environment, the invention is not limited to use in such environments.
- the present invention provides a method of recording information in an environment which comprises;
- At least one client terminal which is adapted to:
- the method further comprise the step of synchronizing data which is stored in the database on the at least one client terminal with data which is stored in a database on the at least one server. It is preferred that the method further comprise the step of synchronizing the data which is stored in the database on the at least one server with data which is stored in a database on at least another client terminal.
- the software client application has been downloaded to the at least one client terminal from a server.
- the software client application is adapted to display promotional material on the at least one client terminal.
- the step of receiving input from a user comprises:
- the user creating a document by entering input into the document template.
- the document template comprises an image of at least a portion of a physical entity.
- the physical entity is the human body. It is preferred that the step of the user entering input in the document template further comprises the step of the user marking a portion of the image.
- the user uses a pointing device to mark a portion of the image. It is preferred that the user enters handwritten input in the document template.
- the document template comprises data entry fields.
- the method further comprise the step of client software application retrieving a document from the database on the at least one client terminal.
- the document is retrieved by the client software application searching for documents which satisfy at least one criterion which has been specified .by the user.
- the at least one criterion identifies a portion of a physical entity.
- an end-user can download a copy of the application software from the public web site.
- the application software provides the facility whereby an end-user can create records of data, such as the clinical notes of a health-care professional.
- the records of data can be stored locally and remotely at the synchronization servers. Records of data which have been stored remotely can then be used to update records which are stored locally by other users.
- the website owner generates revenue by the display of advertisements to the end-users.
- figure 1 is a schematic representation of apparatus which is suitable for
- FIGS. 2 to 42 are screen capture images of output from a user interface according - to preferred embodiments of the invention.
- FIGS 43 to 61 illustrated software-implemented processing according to preferred embodiments of the invention.
- the client-server system 1 includes user terminals 1 which are connected over the Internet or other network 2 to a server or servers 3. Suitable forms of user terminal 1 include tablet PCs, laptop PCs and desktop PCs. As is also illustrated in figure 1 , the user terminals 1 may be used by standalone users and so be directly connected to the network 2 or may be aggregated in healthcare or the like facilities 4 and 6, in which case it is preferred that they be on a local network which is in turn connected to the Internet or the like.
- users access the necessary client software by accessing a web site such as is illustrated by the web page 7 of figure 2.
- the web page 7 includes links to informational and promotional material and also a
- the registration form 9 includes fields which allow for entry of the names of the user, contact details such as email address, a password and a check-box by which the users acknowledge that they agree to the terms of use.
- An example of a filled-in registration form is illustrated in figure 4.
- the notification 12 includes a message to the effect that an email has been sent to the user's email address to complete the registration process.
- FIG. 6 An example 13 of the contents of such an email is illustrated in figure 6.
- the email 13 includes a link 14 which, when clicked on by the user, takes the user to a web page 16 which is illustrated in figure 7.
- a registration confirmation email is sent to the user.
- Contents of the registration confirmation email are illustrated in figure 18.
- the web page 16 includes a further link 17 which takes the user to a download options page 18 which is illustrated in figure 8.
- the download options page 18 includes links which lead to the downloading of embodiments of the client software which are tailored to suit the needs of different categories of end users.
- the embodiments of the software which arc illustrated in figure 8 are:
- the client software utilizes a different version of a "terminology pack", depending on whether that client software is tailored to the needs of health-related industry, client-related industry, education-related industry or project-related industry.
- the user is presented with the option 24 of downloading a "quick install” of the user software and the option 26 of downloading a "full install” of the user software.
- the quick install option 24 is suitable when the operating system and middleware on the client device 1 are up-to-date and the full install 26 is suitable when the operating system and middleware on the client device 1 are not up-to-date.
- the download process starts as is illustrated in figure 10.
- the download process has started, the user is prompted to run the downloaded software as is illustrated in figure 1 1.
- dialog box 28 gives the user the options of proceeding with the installation of the client software or terminating the installation of the client software. If the user proceeds with installation of the client software, the installation proceeds through the conventional steps of:
- the user clicks on the "new client” menu item 29 which is illustrated in figure 23 and the user is then presented with a default note-taking screen as is illustrated in figure 25.
- the user is presented with an input form for entering details of the client as is illustrated in figure 26.
- the fields in this input screen are customizable, both as to the fields which are to appear in the form and as to the relative positioning of the fields on the form.
- the outline body model category of document includes simplified front and rear views of the human body to facilitate note-taking by clinicians.
- Figures 29 and 30 illustrate that the fields "Clinician” and “Created by User” have been added to the default form of "outline body model” category of document by use of the drop-down menu 31.
- Figure 32 illustrates an example of an outline body model document in which a clinician has entered clinical notes by use of a tablet computer or like device. The clinician has used a colour-pen tool to mark an area 321 of the body model 320.
- the hand-written annotations 322 indicate that the clinicians subjective assessment (that is, an assessment which is based on discussion with the client) is that the client has suffered right low back pain for 2 days, which is aggravated by sitting and eased by lying. The client's general health is otherwise good and the client is not on medication.
- the clinician's objective (physical) assessment is that lumbar flexure range is around about half normal, but following treatment the client has a normal range of movement.
- the client Unilaterally on the right hand side the client is tender on palpation at lumbar spine segments 4 and 5 and it also feels stiff.
- the treatment prescribed is a home exercise program and "hands on” treatment unilaterally on the right hand side with grade 4 mobilisation technique.
- the client is to be reviewed in 2 days.
- the document is a multi- page document and, as is illustrated in figure 33, the client software has the facility to popup a slider window 33 which shows thumb-nail images of the two pages of the document. The user choose a thumb-nail image to switch the main document view to the
- Figure 34 illustrates a document which the clinician has prepared when the client returns for review.
- the handwritten annotations in the document indicate that the clinician's objective assessment is that now no abnormality of lower spine flexion is detected.
- Treatment is to be "status quo".
- the clinician's plan is to discharge the client.
- the user can use the slider button 34 to move from document to document.
- an indicator 36 pops up on the client window to indicate the progress of such a synchronization.
- a drop-down menu 39 allows the user:
- Figures 37 and 38 illustrate the process of keyword searching. After the user has entered the keyword "improving" in the text entry box 38 of figure 36 and has chosen a keyword search, a results window is displayed as is illustrated in figure 37. The results window lists the documents in which the keyword "improving" appears. As is illustrated in figure 38, clicking on the "Handwriting Keywords" button 35 displays an informational window which lists the words which a handwriting-recognition feature has identified as being within that document.
- Figure 39 illustrates the process of searching using details of the client.
- the user has entered the first and last names of the client.and the date of birth of the client into the relevant fields of an input forum and clicked on the "search" button.
- the client software then performs a search using the entered search parameters and produces a listing of the clients who satisfy the search criteria.
- Figure 40 illustrates the process of searching relating to a specified area of the human body.
- the user has used a pointing device to specify an area of the human body in respect of which to search and clicked on the "search" button.
- the client software then performs a search and produces a listing of the documents which satisfy the search criteria-
- Figure 41 illustrates the process of using the "show all” search to produce a listing of all documents.
- the software produces a listing of all documents.
- An “organization” is a body in which one or more users collectively create and share projects.
- the "organization” is a healthcare facility such as a physiotherapy practice. All “projects” within an organization are visible to all users within that organization. In the case of a healthcare facility, the “projects” would be “clients”.
- a “category” is both a document template (such as the template for the "body model document” in a healthcare facility) and is a grouping of similar document (such as a collection of annotated body model documents for a client in a healthcare facility).
- Categories can be set up as document templates that allow users to create consistent notations containing images, automatically populated fields and input controls. .
- a “project” is a grouping of documents organized within categories and having associated metadata. In the case of a healthcare facility, a “project” is known as a “client”.
- A. "document” is a notation consisting of one or more pages. Documents can contain ink, images, input controls and automatically populated fields based upon the containing project. ⁇
- a "terminology pack” is a set of string resources that can be applied to the client application software to customize the terms that are displayed throughout the application to simplify the use across different industries.
- a “user role” is the role that a user is assigned.
- the software client application according to embodiments of the present invention utilizes role-based security to manage access to various components, according to the "user roles" of users.
- User roles are not mutually exclusive - a user can be a member of one, two or all three of these roles simultaneously.
- the "administrator” role is granted to only a select few users; It enables these users to effectively manage the day-to-day operations of the client application. Users who are assigned to this role have the ability to access an administration website to perform required maintenance tasks such as:
- the "organization administrator” role is automatically assigned to those users who initially register an organization. It can also be granted to additional users within an organization by an existing organization administrator with the help of the "my account” section of the website.
- Organization administrators have the following abilities:
- the "application user” role is automatically assigned to all users who successfully activate their account. Membership in this role allows access to the client application.
- the "public website” runs on the servers 3. Material describing the features, functions and benefits of the client software is available on the public website.
- FIG 43 is a flowchart illustrating a user registration process 100 according to preferred embodiments of the present invention.
- Users must be registered in order to use the client application. Registration is open to the general public and is accessed by clicking 102 on download link on the public website. A registration page is presented 103 to the user.
- the users enter their first and last names, email address and password and click a "register" button on the registration page. The user must specify both the email address and password twice to ensure that they have not accidently typed either incorrectly.
- the data which was entered by the user at 104 is checked for validity. If the entered data is not valid, the user is returned to sub-process 103 to correct the registration page.
- sub-process 106 determines that the data which was entered by the user at 104 is valid, then sub-process 108 checks whether the email address entered by the user is already registered. If the email address is already registered, then the user is returned to . ⁇ sub-process 103 to enter a different email address. If the email address is not registered, then sub-process 107 sends an email message to the user to confirm ownership of that email address.
- sub-process 109 the user receives that email message and at sub-process 1 1 1 the user reviews that email message and, if the user wishes to confirm ownership of the email address and proceed with registration, then the user clicks on a web-link in that message. Clicking on the web link results in the user's web browser navigating to an "account activation" page by sub-process 1 12. This page presents a link to enable download of client software.
- Figure 44 is a flowchart illustrating the "organization setup" process 200.
- the client application is based on the Microsoft Windows Presentation Foundation Library which is part of the Microsoft .NET Framework. It is an occasionally connected application (OCA) that utilises Microsoft Synchronization Services for ADO.NET to enable user to synchronize and share their notations.
- OCA often connected application
- the user is first prompted by sub-process 201 to download the client application. The user does so by selecting one of the four available editions of the client application, namely:
- the offline/full install is considerably larger and contains all required dependencies within the installation package.
- the user selects the desired download option.
- a new organization is then "set up" on the synchronization servers by defined process 209, based upon the user's selections throughout the registration process.
- the sequence diagram 300 of figure 45 details this process.
- a DotNctNukc module instantiates an organization manager and then invokes the activate organization method 301.
- the Activate organization method commences by first copying a template directory on a shared file system to an organization specific directory. Contained within chis template directory are the following items:
- the activate organization method then communicates with a client SQL server instance and requests that the recently duplicated database files be attached and brought online for querying. With the database attached, connections can now be made to customise it for the new organization.
- the master database is now updated to reflect the new organization's existence.
- the selected terminology pack is flagged and the user promoted to an organization administrator.
- a HTTP redirect is then sent back to the user at sub-process 21 1, directing the user's browser to the actual client application installer file for download.
- the user then either saves the installer to a location on their computer or chooses to immediately run the installer.
- Client Application Services - a component of the Microsoft .NET Framework 3.5 - is integrated.
- Client Application Services allows for the secure local caching of user credentials, role memberships and user settings in a transparent fashion.
- the client application builds on top of this functionality by offering users the opportunity to "work offline” as if no connection to the servers is available.
- the authentication and authorization process is 400 illustrated by the flowchart of figure 46.
- the first window displayed following the launch of the client application is the login dialog box, by the sub-process 401. This dialog box prompts the user for their email address and password and also offers them the opportunity to "work offline”.
- Sub-process 403 checks whether the user has opted to work offline. If the user has not opted to work offline, sub-process 404 checks whether a server connection is available. If a server connection is available, the user's credentials are checked for validity at sub-process 407 to ensure that the user has entered the required information. If any of the details are not supplied, the fields are highlighted with a red border to indicate that the fields must be completed and the user is presented with a "login failed" message box by sub-process 414 and re-directed to the login sub-process 401. If the user has requested an offline session. If this is the case, sub-process 412 checks whether the user has previously had a successful online session.
- the local credential cache is a Microsoft SQL Server Compact Edition database.
- the client application does not directly interact with this database. In order for a user's credentials to be cached locally, the user must have previously authenticated against the server. If a user attempts an online login but the client application is not able to connect to the client application servers, then the user is alerted to the fact by sub-process 409 and given the opportunity to attempt an offline login.
- the default thread principal for the application domain is set to the current user to allow subsequent service calls to be made in context of the authenticated user.
- the application will not attempt to access any of the online services unless specifically requested by the user until the client's next online session.
- the supply of client software and of storage capacity to the client software are financially supported through the display of banner advertisements.
- a background task is started that determines whether the currently-running version of the client application is supported. This task is started whether or not the User has selected to work offline. The task communicates to a WCF (Windows Communication Foundation) service, supplying the current user's credentials. From the credentials, the server extrapolates the organization's identifier and queries for the supported versions of the application for that particular organization. This supports the notion of different organizations running different versions of the client application. Both mandatory and optional upgrades are supported.
- WCF Windows Communication Foundation
- a mandatory upgrade is available, the user will be given the option of upgrading now or exiting the client application.
- An optional upgrade on the other-hand, allows the user either to download the upgrade or to continue working.
- Mandatory upgrades are provided to force users to upgrade to the latest version of client application to urgently address vulnerabilities or bugs.
- the application update service is described below in this specification.
- the client application has an embedded, default terminology pack that provides a fall backshould no additional terminology pack be available.
- the client application is distributed with all four additional terminology packs to simplify deployment. Following the login process, the user settings are retrieved from either the server or the local cache (via client application services) and queried for the correct pack to be applied.
- Each terminology pack is a WPF Resource Dictionary containing sti'ing resources that, when loaded, changes the names of menu items, message box content and various other items to more closely represent the organization's use of the system.
- Microsoft SQL Server Compact Edition CE is used for the local storage of data within the client application. Images that have been added by users are persisted out to the file system and reference records created within the database. Connectivity to the database is provided by ADO.NET using strongly-typed DataSets, Raw SQL queries and also LINQ to SQL.
- SQLCE Unlike standard Microsoft SQL Server development, SQLCE has been designed with compact, embedded devices in mind and as such imposes certain restrictions upon the way in which the calling code must interact with it. For example; when developing with Microsoft SQL Server, Microsoft recommend opening and closing database connections as required - as connection pooling is built it. With CE however, there is no connection pooling and applications will typically open a database connection at application start-up and hold on to it until the application terminates.
- a central database connection factory is implemented to ensure that a single database connection object is not accessed across multiple threads of execution. This factory internally consists of a single dictionary object that maintains a list of executing threads (by their associated unique identifiers) and database connections.
- the flowchart 500 of figure 47 illustrates the operation of the database connection factory.
- the calling method queries the connection factory for the correct database connection to use.
- the database connection factory determines if the calling thread's unique identifier is already contained within its internal dictionary. If the thread's unique identifier is found, the associated open database connection is returned to the invoking method at sub-process 504. If the thread's unique identifier is not be located at sub-process 502, an internal synchronization lock is obtained at sub-process 506 to ensure that no other threads can manipulate the internal dictionary.
- the internal dictionary is again queried to ensure that another thread has not manipulated the dictionary before the current thread acquired the synchronization lock. If no database connection exists for the thread, a new database connection is opened by sub-process 508, the new database connection is opened by sub-process 508. The new database connection, together with the current thread's unique identifier, is added to the dictionary by sub-process 509.
- the new database connection is added to the dictionary by sub-process 509.
- sub-process 51 synchronization lock is released by sub-process 51 1, allowing other threads to create database connections if required.
- the new database connection is returned to the invoking method by sub-process 504.
- Each client application uses local file system storage.
- Local file system directories are created for each organization - named by the organization's unique identifier
- Each of these organization directories contains the following items: an MSSQL CE Database;
- a database initialization process 600 as is. illustrated in figure 48 is initiated by the client software to ensure that the necessary resources for a given organization can be accessed during the user's session.
- a test is conducted at sub- process 601 to determine whether a database exists. If the database does not exist, then sub-process 604 creates the database, sub-process 606 synchronization with the corresponding database on the servers 3, sub-process 607 executes an installation script and sub-process 602 retrieves the database revision number. If sub-process 601 identifies that the database does exist, then sub-process 602 retrieves the database revision number. After the database revision number has been retrieved, sub-process 603 checks whether that revision number is current. If it is current, then the organization installation process finishes.
- sub-process 608 backs up the existing database
- sub-process 609 executes an upgrade script
- sub-process 611 retrieves the database revision number. If it is current, then the organization installation process finishes. If the database revision number is not current, then sub-processes 609 and 61 1 are iterated until the database revision number is current.
- the client software contains a number of database scripts that ensure that any version of client can be upgraded to any future version. Those scripts include:
- an "install database” script which is responsible for the creation of a new empty organization database and is executed the first time a user logs in to an organization on a computer;
- the flowchart 700 of figure 49 illustrates a data synchronization process according to preferred embodiments of the invention.
- sub-process 701 to commence the data synchronization process, the user selects a "synchronize" menu item in the user software. If there are any notation (either electronic memo or project) windows open that have pending changes, validation is performed to ensure that all mandatory information within the windows has been provided and that all data entered is in a valid format. This involves performing validation at sub-process 703.
- all open windows are checked to ascertain whether or not they are valid. If an individual open window is valid when it is checked for validity, sub-process 707 saves that window.
- sub- process 706 activates the offending windows with the invalid fields highlighted for the user to address. A message is added to the window's status bar detailing what has happened and the process is terminated. When the user has corrected all invalid windows, they may re-initiatc the synchronization process. At sub-process 708, the user's credentials are appended to a new Microsoft
- Synchronization Services SyncAgent object This enables the synchronization servers to validate that the user is indeed a member of the organization. It also enables the servers to validate that a current synchronization subscription exists for the organization.
- Microsoft Synchronization Services is then used to perform the data synchronization. The processing which is performed within sub-process 709 is illustrated in the sequence diagram 800 of figure 50.
- AppContext 801 is launched.
- AppContext is a long-lived object that maintains the state of the application from when it is launched to application exit.
- AppContcxt instantiates a SyncManager 802.
- the SyncManager 802 is responsible for initiating data synchronizations as well as ensuring that only one synchronization can occur at one time. Preferably, it is also able to schedule background synchronizations that occur automatically. Rather than implement an entire end-to-end file synchronization process, the client application builds on top of Microsoft Synchronization Services and monitors various events that are raised to determine when files need to be uploaded or downloaded to or from the synchronizationservers.
- the SyncAgcnt raises the ApplyingChanges event 804,
- the FileSyncManager 806 checks the list of registrations to determine if file uploads needs to be actioned by checking if any new rows have been added to the registered table since the last synchronization.
- the FileSyncManager 806 instantiates the registered File Sync Handler.
- the File Sync Handler uploads 805 a file to the synchronization servers.
- Figure 50 also illustrates processing which takes place .when synchronization requires downloading to a client.
- the SyncAgent 803 raises the ChangesSelected event 807.
- the FileSyncManager 806 checks the list of registrations to determine if file downloads need to be actioned by checking the set of downloaded changes for any new rows that have been added since the last synchronization.
- the FileSyncManager 806 instantiates the registered File Sync Handler.
- the File Sync Handler then downloads 808 the file from the Synchronization Servers. Searching
- the client application offers a number of options when it comes to locating information, including:
- a notation indexer regularly queries the database for batches of notations that have no corresponding index records, or for which the existing index record is stale. Index records are deemed to be stale if changes have been made to the notation subsequent to a previous indexing occurrence. Index records are not synchronized and must be generated on each application instance.
- the notation indexer process 1000 is illustrated by the flowchart of figure 51.
- the notation indexer process is initiated on application start-up and fires every 5 seconds.
- the timer is started.
- Sub-process 1002 illustrates the elapse of 5 seconds, on which the timer is stopped at sub-process 1003.
- Sub-process 1004 queries the database for notations which require indexing. If no such notations arc found by the decision sub-process 1006, then the process returns to sub-process 1001 and the timer is re-started. If any such notations are found by the decision sub-process 1006, then sub- process 1007 generates indexing tasks and the tasks are then queued in their own thread.
- the defined sub-process 1008 indexes the notations.
- a check is performed by decision sub-process 1009 to determine if the application is exiting. If the application is not exiting, processing is returned to sub-process 1001 and the timer is re-started.
- the flowchart 1 100 of figure 52 illustrates the processing that is performed by defined by the notation indexing sub-process 1008.
- a simplified bitmap such as is shown at 1301 in figure 54 is generated from an image such as the image 1201 of figure 53 (which shows a body model and a clinician's notations on that image),
- This simplified bitmap 1301 is to serve as a notation index bitmap. It is a 128 x 128 pixel, black and white image with' any category/template artefacts removed.
- Each notation index bitmap is stored as a consecutive array of 2048 bytes. This simplified format was chosen after various tests at various colour depths and sizes as it gave superior performance while providing a reduced index data footprint and. sufficient search precision.
- the "ink recognition" sub-process 1 102 attempts to recognize the user's hand-writing. This process integrates with Microsoft's in- built text recognition offered by the InkAnalyzer class, This process also ensures that duplicate terms are removed. If it is a project which is being indexed, all project field values are extracted and combined into a comma separated string and stored within the index record. A name for the item being indexed is then generated. This will be composed of a number of components based on the item's type. For example; a document page within a project will be named after the project (based on the project identification format) and the name of the category the document was based on. The index record is then persisted to the database by sub-process 1 106.
- This search allows users to locate projects by searching based upon a defined list of project fields that have been configured organization-wide.
- the project search window dynamically lays out each of the defined project fields.
- An embodiment of a project search window is illustrated by the form 1401 of figure 55. Should a user wish to locate all projects with a specific last name for example, they supply a value only within a last name field 1402 and click a search button 1403. Should multiple results match the supplied last name, the user can then choose to refine the search by supplying additional values and again clicking the search button. Keyword searching is also available to locate projects. This differs from the keyword search functionality in that it will only return projects; and not the specific document page the specified keyword appears on.
- the keyword search allows users to locate projects, electronic memos and document pages that contain specific text or keywords. These keywords can be hand-written within a document or typed directly into a text box or supplied as project field values. Keyword searching directly queries the notation index. Area Search
- the area search allows a user to locate documents based on a region of interest as is illustrated in figures 56 to 58.
- a physiotherapist can locate the records of all clients who have suffered disorders of their back.
- the physiotherapist uses a mouse cursor or the like to highlight an area 1502 of the human back on the category/template image 1501.
- a search bitmap 1601 is produced from the highlighting on the image 1501.
- a bitwise AND operation is then performed between the search bitmap 1601 and each notation index ⁇ record such as 1701 for the specified category to locate matching documents. As all notated areas on both the 1601 and the notation index record bitmaps are white
- Categories are templates that can be constructed by adding and laying out any number of the following-components:
- Figure 59 depicts a sample "body model” category 1801 that would be suitable for use by physiotherapists.
- Electronic forms can also be configured as categories. In this case, the paper form would be scanned in as an image, added to the category and subsequently text boxes and mandatory text boxes laid out where normal written notes are required. Project fields can also be added to the forms by adding and then dragging into place. This allows for the partial auto completion of forms and documents.
- Documents are instances of categories / document templates. Each document is filed within the category in which it was created. For example, all documents created with the "3D body model” category are filed in the "3D body model” category within projects.
- a 3D body model document 1901 is illustrated in figure 60.
- the client application slider 1902 located at the bottom left of the screen) enables the user to navigate backwards and forwards through their notations chronologically. Together with the components that have been defined at the category / document template level, the user is also able to define ad- hoc text boxes within a document as needed. They are also able to import images that relate specifically to the project (for example, a client XRAY).
- Synchronization servers 3 provide a number of important services to the client application, as follows:
- the synchronization servers provide authentication and authorisation services to the client application by using the built-in ASP.NET membership, roles and profiling components.
- Client application services connects to each of these services automatically and transparently takes care of caching these details for offline use.
- This service is responsible for the distribution of advertisements to the client applications.
- This service requires user credentials be supplied during invocation to validate that the user is a valid subscriber and to determine the organization for which they are a member. This allows for targeted advertisements to be delivered. For example, medical product advertisements can be sent to organizations which operate in the healthcare industry.
- Figure 61 is a flowchart illustrating a process 2001 of updating the user application software.
- the client application attempts to connect to a web-based update service at sub- process 2002.
- This service exposes a single method, GetVersionRequirements. This method requires the user's credentials to be supplied in order to determine the organization for which the user is a member.
- the web service queries the organization database at sub-process 2003 for the minimum and maximum supported versions of the client application.
- the web service then returns the identified version numbers to the client application.
- the client application then ascertains whether its version is equal to or greater than the return minimum version.
- the client application determines whether its version is less than or equal to the maximum supported version.
- sub-process 2008 the user is given the option of downloading the latest version of the client application or terminating the application.
- sub-process 2009 a test is made to ascertain whether or not the user has opted to download the latest version of the client application. If the user has opted to do so, then the download is initiated at sub-process 2012 and the application then terminates at sub-process 2010. If the user has opted not to download the latest version of the client application, then the running client application is terminated at sub- process 2010. This updating process is accordingly a forced update.
- decision sub-processes 2006 determines that the executing version of the client is greater than or equal to the minimum supported version, but less than the maximum supported version, then decision sub-process 2007 determines whether the executing version is less than the maximum version. If the determination is positive, then sub- process 2014 offers to the user the option of downloading the latest version or continuing to use the current version of the client application OCA. If the user opts to download the latest version, then that version is downloaded by sub-process 2017. This updating process is accordingly an optional update.
- Various embodiments of the invention may be embodied in many different forms, including computer program logic for use with a processor (eg., a microprocessor, microcontroller, digital signal processor, or general purpose computer), programmable logic for use with a programmable logic device (eg., a field programmable gate array (FPGA) or other PLD), discrete components, integrated circuitry (eg., an application specific integrated circuit (ASIC)), or any other means including any combination thereof.
- a processor eg., a microprocessor, microcontroller, digital signal processor, or general purpose computer
- programmable logic for use with a programmable logic device
- FPGA field programmable gate array
- ASIC application specific integrated circuit
- predominantly all of the communication between users and the server is implemented as a set of computer program instructions that is converted into a computer executable form, stored as such in a computer readable medium, and executed by a microprocessor under the control of an operating system.
- Source code may include a series of computer program instructions implemented in any of various programming languages (e.g., an object code, an assembly language, or a high-level language such as Fortran, C, C++, JAVA, Ruby, C#, XML, XAML, SQL, JavaScript, or HTML) for use with various operating systems or operating environments.
- the source code may define and use various data structures and communication messages.
- the source code may be in a computer executable form (e.g., via an inteipreter), or the source code may be converted (e.g., via a translator, assembler, or compiler) into a computer executable form.
- the computer program may be fixed in any form (e.g., source code form, computer executable form, or an intermediate form) either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM or DVD-ROM), a PC card (e.g., PCMCIA card), or other memory device.
- a semiconductor memory device e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM
- a magnetic memory device e.g., a diskette or fixed disk
- an optical memory device e.g., a CD-ROM or DVD-ROM
- PC card e.g., PCMCIA card
- the computer program may be fixed in any form in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analogue technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and inter-networking technologies.
- the computer program may be distributed in any form as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the internet or world wide web).
- Hardware logic including programmable logic for use with a programmable logic device
- Hardware logic may be designed using traditional manual methods, or may be designed, captured, simulated, or
- CAD computer aided design
- a hardware description language e.g., VHDL or AHDL
- a PLD programming language e.g., PALASM, ABEL, or CUPL
- Programmable logic may be fixed either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk); an optical memory device (e.g., a CD-ROM or DVD-ROM), or other memory device.
- a semiconductor memory device e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM
- a magnetic memory device e.g., a diskette or fixed disk
- an optical memory device e.g., a CD-ROM or DVD-ROM
- the programmable logic may be fixed in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analogue technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies.
- various communication technologies including, but in no way limited to, analogue technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies.
- programmable logic may be distributed as a removable storage medium with
- each dependent claim is to be read as being within the scope of its parent claim or claims, in the sense that a dependent claim is not to be interpreted as infringed unless its parent claims are also infringed.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Public Health (AREA)
- Medical Informatics (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Epidemiology (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/AU2009/001580 WO2011066597A1 (en) | 2009-12-04 | 2009-12-04 | Method of and apparatus for recording information |
| AU2009356144A AU2009356144A1 (en) | 2009-12-04 | 2009-12-04 | Method of and apparatus for recording information |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/AU2009/001580 WO2011066597A1 (en) | 2009-12-04 | 2009-12-04 | Method of and apparatus for recording information |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2011066597A1 true WO2011066597A1 (en) | 2011-06-09 |
Family
ID=44114541
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/AU2009/001580 WO2011066597A1 (en) | 2009-12-04 | 2009-12-04 | Method of and apparatus for recording information |
Country Status (2)
| Country | Link |
|---|---|
| AU (1) | AU2009356144A1 (en) |
| WO (1) | WO2011066597A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021133152A1 (en) * | 2019-12-23 | 2021-07-01 | Mimos Berhad | A method for authenticating and synchronizing offline data |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5807256A (en) * | 1993-03-01 | 1998-09-15 | Kabushiki Kaisha Toshiba | Medical information processing system for supporting diagnosis |
| US6157914A (en) * | 1992-02-21 | 2000-12-05 | Kabushiki Kaisha Toshiba | Medical support system |
| WO2001035376A1 (en) * | 1999-11-12 | 2001-05-17 | Recare, Inc. | Electronic healthcare information and delivery management system |
| US6272470B1 (en) * | 1996-09-03 | 2001-08-07 | Kabushiki Kaisha Toshiba | Electronic clinical recording system |
| WO2002042875A2 (en) * | 2000-11-22 | 2002-05-30 | Recare, Inc. | Systems and methods for documenting medical findings of a physical examination |
| US20030204420A1 (en) * | 2002-04-30 | 2003-10-30 | Wilkes Gordon J. | Healthcare database management offline backup and synchronization system and method |
| US20060178911A1 (en) * | 2005-02-10 | 2006-08-10 | Iqbal Syed | System and user interface for providing patient status and care setting information |
-
2009
- 2009-12-04 AU AU2009356144A patent/AU2009356144A1/en not_active Abandoned
- 2009-12-04 WO PCT/AU2009/001580 patent/WO2011066597A1/en active Application Filing
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6157914A (en) * | 1992-02-21 | 2000-12-05 | Kabushiki Kaisha Toshiba | Medical support system |
| US5807256A (en) * | 1993-03-01 | 1998-09-15 | Kabushiki Kaisha Toshiba | Medical information processing system for supporting diagnosis |
| US6272470B1 (en) * | 1996-09-03 | 2001-08-07 | Kabushiki Kaisha Toshiba | Electronic clinical recording system |
| WO2001035376A1 (en) * | 1999-11-12 | 2001-05-17 | Recare, Inc. | Electronic healthcare information and delivery management system |
| WO2002042875A2 (en) * | 2000-11-22 | 2002-05-30 | Recare, Inc. | Systems and methods for documenting medical findings of a physical examination |
| US20030204420A1 (en) * | 2002-04-30 | 2003-10-30 | Wilkes Gordon J. | Healthcare database management offline backup and synchronization system and method |
| US20060178911A1 (en) * | 2005-02-10 | 2006-08-10 | Iqbal Syed | System and user interface for providing patient status and care setting information |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021133152A1 (en) * | 2019-12-23 | 2021-07-01 | Mimos Berhad | A method for authenticating and synchronizing offline data |
Also Published As
| Publication number | Publication date |
|---|---|
| AU2009356144A1 (en) | 2012-06-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6785920B2 (en) | Browser display of native application presence and interaction data | |
| JP6793766B2 (en) | Displaying presence in applications that access shared and synchronized content | |
| JP6980062B2 (en) | Managing presence across devices that access shared and synchronized content | |
| JP6487456B2 (en) | Determining presence in applications that access shared and synchronized content | |
| TWI450107B (en) | Method and computer readable storage media for web data usage platform | |
| EP2740062B1 (en) | Software distribution amongst medical devices taking into account dependencies between devices | |
| AU2009238294B2 (en) | Data transformation based on a technical design document | |
| US10649864B1 (en) | Framework to facilitate taking snapshots of web application on demand | |
| US9495376B2 (en) | Content migration tool and method associated therewith | |
| US7747644B1 (en) | Internet delivery system delivering electronic information products to a purality of users according to user authentication and type of user | |
| EP1452975A2 (en) | Method for managing file replication in applications | |
| US12010165B2 (en) | Cross-platform module for loading across a plurality of device types | |
| WO2007063547A2 (en) | System and method for appending security information to search engine results | |
| WO2015164108A1 (en) | Decoupling front end page and back end using tags | |
| WO2011066597A1 (en) | Method of and apparatus for recording information | |
| JP2005352980A (en) | Document difference display system, document difference display server and document difference display method and its program | |
| US20210407630A1 (en) | Clinical Trial Protocol Portal | |
| TW487879B (en) | Internet document creation system and document-format generator therefor | |
| US10445749B2 (en) | Universal content architecture system | |
| CN113703898A (en) | Card type interaction method, device, equipment and medium | |
| KR101945993B1 (en) | Method and apparatus for generating medical information of object | |
| Ruttan | Oscar | |
| TOMPAZI | An electronic health record management system | |
| Patel | Ultimate search engine | |
| Tamir et al. | DB1-a DBMS-based application generator |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09851764 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2009356144 Country of ref document: AU |
|
| ENP | Entry into the national phase |
Ref document number: 2009356144 Country of ref document: AU Date of ref document: 20091204 Kind code of ref document: A |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 09851764 Country of ref document: EP Kind code of ref document: A1 |