To-Do
- Add administrator name/email to library clients
- Organize library client information into tabbed dialog (mailing lists, ftp accounts, library hosts)
- Pass browser information (IE, Mozilla, Aspect, etc.) onto documents so they can format themselves accordingly
- Add a GreenLight listener to return the metadata for any document. This function needs to find a document based on the
document ID or on other criteria like a library client / document name, etc. This function could be used by Aspect Back-Office
to determine if a file needs to be sent again or not.
Library Contents
- html docs
- style sheets
- binary data
- Music files
- javascript
- images
- Aspect scripts
- Widgets
- Executable
- Dynamic content generated by a server
- Actions to be performed on a server
- User-interface docs
In short, everything we ever need to deal with.
Notes
- Clients connect to the library to request documents for viewing and editing
- Any browser can be used to view documents. Aspect Back-Office must be used to edit documents.
- The library does not encrypt any documents. Encrypting/decrypting must be done by the client
- The library uses a default document store for all documents. That is, all documents are stored locally in the library.
It should also be possible to indicate that a document should not be stored locally. In this case, a document can be
passed through the library to its final location.
- Make it easy for a user to upload and share any document. A user should be able to browse to any document and add it to
the library and then they or others can view and edit the document from any pc. A benefit over Google Apps is that they
can use whatever program they want to edit the document locally and it is private. Another benefit is that their documents
can be backed up automatically by using a 2nd document store. They can also be encrypted so they can only be viewed/edited
when a password is entered locally in Aspect Back-Office. A user can post financial data in the library with complete confidence.
- Document filenames don't matter anymore. Documents can be accessed by identifying the document in the library (ID, name) or
by selecting from a list provided by the library.
- A function should be provided to request the specific url (filename) of a document from the library behind the scenes - e.g.
when a browser needs to load a javascript document or other library document.
- Every document may have one or more additional document stores specified. Whenever a document is updated, it will be posted
to the additional document stores. An additional document store can also be another library.
- An email notification may be indicated for whenever a document is updated. The document that was updated can be included in
the email or a link can be included.
- A user can schedule a document to be emailed on a regular basis. E.g. - a dynamic Aspect report could be mailed every day.
- Library clients can back up all of their documents on demand on on a scheduled basis
- A url can be specified in the email notification, not just the document. For example, an email might contain a link to
a 'wrapping' document and pass the ID of the document that has been updated as a parameter. This could be used to format
an Income & Expense report by using a single document to format the report and passing the document ID containing the data
to be formatted
- Users can use the Aspect library or their own library
- Library documents can point to dynamic content - for example, reports created by Aspect.
- Library documents can indicate that another document should be used to view the document. For example, a document containing
an Income & Expense report can point to a 'wrapper' document that is used to format the data. Information about the
original document is passed to the 'wrapper', so the wrapper can access the original document
- Any library document can be accessed as a widget. Style information for the widget can be included in another
document that can be included via a widget in a document that uses the original widget. Maybe add a tag to
indicate the section of a document to be returned as a widget. A document could contain multiple widgets by adding
a name to the widget tag.
- Provide the ability to send a document to an email list manually. This allows a document to be edited quietly
a number of times before a notification is sent after the final edit. It also allows for broadcasting things like
newsletters or files.
- Users can also elect to receive a daily briefing of all activity on the library. This prevents redundant email notifications
when a document is edited.
- All documents have counters to indicate the number of times they have been accessed for reading and for editing
- All document accesses are recorded in the document history
- Metadata for documents is stored in a single field using a '&' delimited string
- Arguments can be passed to the library which passes them on to the document during retrieval
- Library documents are validated for existence daily. Any documents not valid over a 30 day period are automatically archived and
removed from the library
- When Aspect Back-Office is acting as a server, the documents it has available are added to the library on a daily basis
for redundancy.
- Traffic reports can be generated from the library
- Library needs to track and report on facts for each document. E.g. - file size, last time updated, last checkout,
last updated by who, last checkout by who, number of edits, number of views, etc... This information can be used
to determine if Aspect Back-Office needs to update a file from Aspect.
- Error messages are recorded in the library history. This allows users to access the history for a library client
to see problems - e.g. if a document cannot be uploaded to a secondary document store. The library history can be
emailed to a library client administrator daily or whenever there's a problem.
- Provide a way for library errors to be sent to an email list or administrator. E.g. when a document is set to be sent daily
and one or more recipients fail.
- Provide a "library client" page which contains stats, errors, etc. for the client
- Include ability to archive past versions of every document. This allows a user to revert to a previous document
- Archiving documents is a possible way to make dynamic data available on a daily or other basis. For example, dynamic
content from Aspect can be archived. It's as if Aspect is a person who is modifying documents on a regular basis.
- Don't require documents stored locally to be checked in/out for editing. Allow editing of the file directly so changes
can be saved and viewed immediately.
- Allow public-key encryption so a document can be shared securely. Two users could share a public key, or, one
person could post using the other's public key. The other could then edit and post using the first's public key. in
this case, only on or the other could open the document depending on who's public key was used to post it last.
- Allow users to subscribe to an RSS feed of a document
Document Information
- Name
- Description
- Read-only - For documents created on the fly by a server
- Client
- Email notification (how to specify to who? probably a group)
Examples
Aspect Website
- All documents are stored locally in the default library store on the Aspect server
- The Aspect website is a secondary store. Whenever a document is updated, it is ftp'd to the Aspect site as well.
This provides an automatic backup.
Aspect Exports (e.g. Income & Expense)
- Aspect exports are placed in a specific directory. The filename must conform to a specific convention to provide
the information necessary for describing the document to the library. E.g. storecode_date_name.ext
- A timer in Aspect Back-Office ensures that all documents are posted to the library
- A notification is sent to specified users when the document is updated in the library. The notification points to a
standard Income & Expense document and passes the document ID so it can be included in the standard document.
- Customers can use the Aspect library or their own library.
- All past reports are available by browsing the library
Other Aspect Reports
- Any report that can be formatted by Aspect Back-Office and posted to the Library can be made available. Either the
raw data can be posted or a final html document
Aspect dynamic reports
- When a copy of Aspect Back-Office is ready to act as a server, it adds a set of documents to the selected library which
are then available to users.
- When a request is made to the library for a document, the library contacts the Aspect Server and returns the dynamic content
- This is a good security feature because the Aspect Back-Office server can be configured to only accept connections from the
Aspect report server's IP address
Aspect Polling
Don't know if this fits in the library or not
Compare To
- Share Point (Microsoft)
- Flickr
- Peer-to-peer file sharing