Differences between an Open Hyperdocument System and Oneslate

Since you can try using Oneslate as a repository for dynamic knowledge, for group decision-making, to make meetings robust and smooth, for project tracking, to capture learnings, or to transfer internal knowledge, it seems appropriate to take a look at Oneslate in the light of the Open Hyperdocument System (OHS) Framework as described 15 years ago, partially since the authors indicated hope that future system evaluations refer to parts of their document to demonstrate how closely they approximate a true OHS, and also for fun since no true OHS does exist in compatibility with modern systems. (Of course, the evaluation template follows the 1962 framework and there is a deep related literature.)

It turns out that Oneslate is not a very faithful OHS at all; but, then again, that was never its intention.  The goals are just sort of similar; to enable more efficient work by offloading certain tasks to a collaborative environment.  (This PDF version of the below text may be more readable.)

v0.1

Limited Degree of Support in Oneslate for Attributes of Open Hyperdocument Systems (OHS)

Analysis based on Engelbart et al.’s Technology Template Project OHS Framework (1998)

Paraphrased OHS summaries are in normal text; Oneslate’s compatibility summaries are in italics.

Hyperdocument

Linkages among objects in files.

Oneslate supports linkages among objects in Tree views (which can be interlinked among each other supporting multiple support and conclusion relationships per node, but which always appear focused with one idea at the top and include that idea’s complete support structure as it exists in the Oneslate instance).

Open

Vendor-independent access to the documents.

Oneslate is presently only Oneslate-compatible, though its Javascript API could be utilized by any vendor to read/write Oneslate information among applications. Itemized notes appear below on related potential future work as appropriate.

Hyperdocument Content and Structure

Content Objects

Elementary objects

Basic content packets of arbitrary, user and developer extensible nature.

Oneslate: elementary object is a Node, which all users on a system can make and interlink.

Types could contain text, graphics, equations, tables, spreadsheets, images, video, sound, code, etc.

Oneslate: nodes support text, as well as embedded linked images, video, and sound. Nodes with an indicated Type are presented in Tree and Detail views with iconographic graphics conveying their Issue Based Information System (IBIS) designation of Question, Idea, Argument Pro, Argument Con, Decision. Future work would be to additionally support equations, tables, and spreadsheets.

Mixed-Object Documents

Coherent entity made up of mix of objects in an envelope

Oneslate: Views made up of nodes, called by URL and rendered using Javascript are the coherent entity primarily interacted with in Oneslate. HTML documents can technically be saved from the browser to preserve the code comprising that view for archiving or transmission (though URL sharing is preferred for visual quality and up to date information). For printing views containing text-only trees, PNG export is recommend (see Hard Copy below). Future work would be to make views accessible as their HTML equivalent without saving, e.g. for external search engines to index; to enable OPML input/output of trees for transport among systems. The Document-type views are Detail (Single-node full details); Tree (Focused at a node and including its full support hierarchy of nodes).  A view comprising a text mode to compliment the present graphical mode would be appropriate for future work and may make coherent document-style interaction more cogent.

Shared Objects

Objects & documents shareable within networked community: simultaneously viewable, maniupulable, changeable as appropriate to their nature and support in access permissions and restrictions as defined

Oneslate: Nodes and Trees of Nodes shareable via links to them. Nodes and Trees simultaneously viewable by any user with access to that Oneslate instance. Nodes editable by their creator with revision history viewable by all instances users. Any user on the instances can add Nodes and create links between any existing nodes (but no circular linking). Users with Admin permissions can relegate Nodes and can relegate Node Relationships.

Object ID Time Stamps

Automatically stamp objects with creation and modification date, time, and user.

Oneslate: Nodes creation stamped with date, time, user. Node modification only possible by creating user, and stamped with modification date and time.

Users can filter and control portrayal of this information their associated objects.

Oneslate: The latest node versions are used. The node timestamp can be viewed from the node’s Detail view, and the revision history can be revealed from the Detail view, by any user on the instance.

Personal Signature Encryption/Verification/Authentication of Objects and Documents

Users can sign documents or objects within them with private keys that can be used to verify the bits.

Oneslate does not support signing documents by author. Oneslate services are encrypted with 256-bit SSL. A saved view would have to be separately packaged and transmitted in a separately created and signed message at present. It is preferred to share the URL which will serve the correct data rather than sharing files containing data at present.

Structure

Explicitly Structured Documents

Objects can be arranged in an explicit structure. A hierarchy is one example; others could include more complex cross-linked structures. Compound object-structures may be explicity addressed for access and manipulation.

Oneslate nodes do need to appear within structures, but they may. Oneslate nodes may be arranged within the system as tree hierarchies or as directed acyclic graphs (DAG). Any node can have any number of support and conclusion nodes, and nodes can be re-used anywhere (except in ways that would form circular logic) via autocomplete, from the Grid view used for expanding and interlinking Trees. Any node can be addressed to include just that node’s Detail or that node’s Tree including the focus node and its complete support structure as a Tree.

Shared Documents

Documents (user-defined knowledge package of structured objects) are shareable, subject to access or privacy previsions, across the global domain in which any online collaborative working relationships are established in ever-changing and evolving ways (fundamental).

Oneslate supports sharing links to Views comprised of structured Nodes. The ability of a user to access the linked information depends upon his account in Oneslate having authorization to access the Private Instance of Oneslate on which the information resides. By maintaining different Private Instances, on which information resides to which access must be restricted to certain individuals only, it is possible to facilitate always-secure and always-flexible access controls.

Access controls can include, e.g., allowing or disallowing a range of access types.

Oneslate supports User (create Nodes, interlink Nodes, edit own nodes) and Admin (additionally: relegate Nodes, relegate relationships among nodes) access types. Account credentials without User or Admin access to a Private Instance are denied access to them.

Access and Portrayal

Addressing

Global, Human-Understandable, Object Addresses

Every object someone may want to access or cite should have an unambiguous address that people can read and interpret.

Oneslate has addresses such as https://demo.oneslate.com/#nodes/484. These addresses can be read and cited, since they are persistent for the node and provide access to the node’s revision history.

Link Addresses That Are Readable and Interpretable by Humans

Display and specify complete link addresses to any object in the global domain of the OHS. The human-readable description should permit transparent understanding of the path to read, interpret and conceptually follow the specification.

In Oneslate, addresses like such as https://demo.oneslate.com/#nodes/484 and https://demo.oneslate.com/#trees/481 specify the Private Instance name, the type of view (Node or Tree), and the sequential persistent identifier of the object which on which the view is focused.

Linking/Filtering/Access Control

The Basic “Hyper” Characteristics

Embedded objects called links can point to any arbitrary object within the document or within another document in a specified domain of documents.

In Oneslate, objects can be linked as supports or conclusions of any other objects that exist within the same Private Instance, except as would create circular relationships.

Links can be actuated by a user or an automatic process to “go see what is at the other end”, or “bring the other-end object to this location”, or “execute the process identified at the other end”. The executable processes may control peripheral devices.

In Oneslate, users can navigate among views of Nodes and display the views of related nodes by clicking directly on nodes or the interface background, or from the top toolbar or the node’s on-hover toolbar. The same could theoretically be achieved programmatically using a Javascript API. To “go see what’s on the other end” would be facilitated by clicking a node to reveal its total support link structure or to navigate its linked support and conclusion nodes, or by clicking a node comprised of a traditional unidirectional hyperlink to some resource. To “bring the other-end object to this location” occurs automatically in Tree views for all supporting nodes’ text and media content, as well as during navigation of multiple concluding nodes in the Grid view. To “execute the process identified at the other end” only works so far as the display of text or media; other processes are not supported automatically and would have to be future work, or executed through an auxiliary linked-to process.

Hyperdocument “Back-Links”

Information about other objects pointing to a specific object in a document is available

In Oneslate, hovering a node in Tree or Grid view reveals the number of nodes linked to it as a support or as a conclusion. In Tree, all supporting links and their nodes are displayed. In Grid, all nodes can be navigated to which are linked as direct support or conclusion nodes in relation to the node node in focus.

Access Control

Hyperdocuments in personal, group, and library files can have access restrictions down to the object level based on individual identity or organization role.

In Oneslate, access restrictions are made at the Private Instance level, so that objects in one subdomain are available to the users with credentials to access to that domain. It is possible to create Private Instance defined as appropriate for work in certain areas, for short-term or long-term use; then, users who should have access to that area may be invited to the instance by email. One user account can have access to multiple different Private Instances. Object-level restrictions may be valid future work.

Access controls can include, for example, allowing or disallowing a range of access types such as read, write, or knowledge about existence.

In Oneslate, users with access to a Private Instance’s domain can read, write, and know about the existence of content residing in that domain. Finer grain control may be appropriate for future work.

Portrayal

View Control of Objects’ Form, Sequence, and Content

Display objects differently depending on user or application control or device nature.

Oneslate views are Detail, Tree, and Grid, Add Node, Add Support, Add Conclusion, User Profile, Node Lists, Home (Expanding Tree Streams). Future work would contain views suitable for different user, application, or device requirements.

A structured, mixed-object document may be displayed in a window according to flexible viewing options. Options could include level clipping, content filtering, truncation or algorithmic views for portrayal of structure or object content such as new sequences or groupings from other documents. Editing structures or objects directly from special views to be allowed as possible.

Oneslate supports mixed-object views that can be panned and zoomed as Trees. Future work could include level clipping, filtering content by criteria, etc. Structure can be expanded from any Tree or Node view by any user. Nodes can be relegated by any Admin from any view, and node relationships can be relegated by Admins from Tree views.

Hard-Copy Print Options to Show Addresses of Objects and Address Specification of Links

People reading online or offline documents can follow link citations visible and interpretable by humans.

In Oneslate, for offline printing and hardcopy viewing, PNG-exported snapshots of Trees contain the persistent URI for the tree focused at that node (e.g., https://demo.oneslate.com/trees/482.png?height=1000&width=1900). For online viewing, the URL of the view contains the address used to specify links to it for citations.

Asynchronous Collaboration Support

Hyperdocument Mail

Integrate mail service for documents to be sent to people in the knowledge community. Embedded links are transmitted to any recipient, which can be followed to the targets in mail, files, library items, or access controls.

Oneslate Nodes have “share” buttons on hover, which, when clicked, present a form for inputting the email address of the recipient. (Oneslate configuration includes mail server settings for local network operation, and uses the built-in mail settings when run from the Cloud.) The recipient can access the linked resources if he has credentials to access the Private Instance on which they are located. The target is a Oneslate Node Detail, from which its Tree and Grid views can be accessed and utilized. Shared Oneslate links do not target mail, file, or access control information.

Hyperdocument “Journal System”

Journal is a library-like system to which messages and documents can be submitted.

All Oneslate Nodes and Tree views are contained in a library-like system.

An automated “clerk” assigns Journal documents unique catalog numbers, stores them, notifies recipients with links, notifies of supercessions, catalogs for future searching, and manages document collections.

All Oneslate Nodes have unique numbers and are cataloged for searching. Future work would include notification (“alert”) functionality based on updates to Nodes.

Access to Journal documents is guaranteed when referenced by catalog number, or “jumped to” with an appropriate link. Links within new hyperdocuments can cite any passages within prior documents. Back-linking lets online readers detect and examine subsequent documents linking the cited document.

Oneslate Tree view and Node access is guaranteed numerically by resource address since content is considered persistent. Relegated nodes are directly unavailable and require database level access for review. Grid view permits navigation among all nodes with relationships directly linking to any particular node as a support or as a conclusion.

External Document Control (XDoc)

Documents not integrated online (hard copies and external records) can be managed with the same catalog system to simulate hyperdocument capabilities. OHS users can find out about content relating to external documents in the hyperdocument world.

In Oneslate, references to external documents can be made by creating Text or Media nodes containing the URI or citation of an external document, so that this document may be referenced and interlinked with other content in the system.

A knowledge environment in an OHS includes shared files, throw-away email, journal/library, and external documents. Documents in each of the four areas can be inter-hyperlinked as needed to the retention level required by their types.

In Oneslate, nodes and relationships are considered additive, unless they are Relegated. (Nodes may be flagged by any user prior to relegation by an Admin.)

Services, Applications, and Utilities

Interface and Hardware Independence

Global and Individual Vocabulary Control

People collaborating on knowledge will have ranges of capabilities and experience. A formal Common Meta Language (CML) to describe operations (verbs), object classes (nouns) as a grammatical description of tools will allow collaboration while allowing differences among tool offerings. A Command Language Interpreter (CLI) interprets user actions, based on a grammar file, and executes actions by remote procedure calls to a common application interface of the “open system environment”. This is a practical approach to supporting an evolving “workshop vocabulary” to integrate services on different platforms.

Oneslate has informally adopted some terms: “Private Instance” (subdomain where nodes can be stored and accessed and to which users can be added and authenticated), “Node” (object), “Text Node”, “Media Node”, “Add Node”, “Add Support/Child Node”, “Add Conclusion/Parent Node”, “Search”, “Tree view”, “Detail view”, “Grid view”, “Node Lists”, “User Profile”, “Flag”, “Rate”, “Node Rating”, “Bar Chart”, “Line Chart”, “Toggle Charts”, “Share”, “Follow”, “Relegate Node”, and “Relegate Edge”, “Type” (Issue Based Information System type: Question, Idea, Argument Pro, Argument Con, Decision). Future work would include a more memorable and expanded vocabulary.

Multiplicity of Look-and-Feel Interface Choices

Knowledge workers will have a range of interaction style preferences. Independent of look-and-feel style, the user can have a mental model for their type of command interaction, and they can learn from co-workers with differing interface preferences. This permits evolving interaction styles, means that people do not need to conform to a standard interface style, means that “easy” interfaces are not necessarily the only ones utilized. Some users with large vocabularies and great processing skills will benefit from significant interface changes. This way, truly high performance may be reached.

Oneslate’s support of multiple interface styles is intended as future work.

Realtime Collaboration Support

Shared Window Conferencing

Remote workers view and manipulate the environment as if sitting side-by-side, with application control passed freely.

Oneslate supports simultaneous operation on an environment but currently requires reloading the page to see updates. Future work would include implementation of more seamless workspace sharing.

Real time communication

Tools for teleconferencing, chatting, and group decision making may be available in media including text, audio, and video. The capture of these communications can be facilitated for future review and storage in the Journal.

Oneslate does not have built in-chat or teleconferencing. Rating nodes directly on a 5-bin basis with node statistics over time and collaborative tree building is intended to support group decision making.

Interapplication Connectivity

Inter-Linkage Between Hyperdocuments and Other Data Systems

OHS must be able to access and comment on data in tools and systems outside of its scope (for example, linking between an OHS and a CAD database).

In Oneslate and other systems, standardized URIs can be used to link among resources where supported.

End user Programmability

Extensible Applications

Tools to manipulate objects can be built into other applications, and even exchanged.

In Oneslate, external tools could use a Javascript API to manipulate the Oneslate system.

End User Systems

Foundational Knowledge Environment

To support work-in-progress for individuals, teams, organizations, communities, and nations; integrates dialog records, intelligence collections, and knowledge products; accommodates dynamic contributions from participants of broad diversity, in real time, concurrently, and over time.

Oneslate aims at essentially being a foundational knowledge environment.

Collaboration, coordination, concurrency

Shared authoring, linked commentary, shared files, group indexes, shared-window teleconferencing across applications, workflow

Oneslate supports multiple authors on structures of Nodes, with shared indexes of nodes. Teleconferencing, external applications, and specific workflows could be part of future integrations.

Dynamic knowledge capture, integration, management

Automated capture, indexing and cross-referencing, integrated email, journal/library, intelligence collections; utilities for repository management

Oneslate supports manual capture with automated indexing, and objects can be re-used via autocomplete during Add Support and Add Conclusion processes. Emailing of persistent links to nodes is supported in the software. The system serves as an atomic or structured journal or library suitable for intelligence collections. The repository can be managed by Admins with Relegate Node and Relegate Edge capabilities.

Value-added access, maneuverability, utility

Dynamic portrayal, precision browsing, filtering, integrated editor, object-level addressability, linkability, traceability, annotated index, accommodation for disabled

Oneslate supports browsing to any particular Node by itself, or including its total support structure, or with its directly related support and conclusion nodes navigable and expandable. Each node is directly addressable and linkable with a fully viewable revision history and with each of its directly related support or conclusion nodes navigable and its total-support tree viewable. The index of all nodes is searchable, and all nodes are indexed for autocomplete during the addition of support and conclusion nodes (except for nodes which would form circular logic). Future work would include filtering of nodes (e.g., in Tree view and Search results), as well as accessibility accommodations.

Paradigm Shift Summary

OHS departs from the prevailing system

From | To | Oneslate comment

Tool centric | Document centric | View centric

Fn-oriented tools | Integrated end-end | Integrated end-end

Author/publish | Develop, integrate, apply | Dev., integ., apply

Isolated libraries | Active “living” libraries | Active “living” libraries

One “easy” class | Many user classes | One (Future: many)

Files addressable | Objects addressable | Nodes, Views addressable

Load/scroll | Precision jumping | Detail, Tree, Grid

Windows: file/app | Portals: repository | Views: repository

App-specific filetype | Common file design | Nodes defined by text in db

Interop. = same fonts | Knowledge environment i.o. | Javascript API extensible

Collaborative Authoring

Structured outlining and rearranging, easy reuse, link-creation, and citation annotation. Publish drafts for review; reviewers comment via annotated links. Track who changed what when. Integrate and track contributions, version control, manage collections.

Oneslate supports creating pyramid-shaped outlines with node re-use and interlinking of trees. Users can create a tree, send out the link for review; the reviewers can expand the tree with related comment information linked in. Node authorship and histories are available. Future work would include text-mode for easier outlining, easier rearranging of orders within any node group (currently by link creation timestamp).

Study

Precision browsing with cross-window jumping, dynamic view control; keep annotated lists of links or hits to passages, email links to author with questions or comments.

Oneslate supports browsing support trees and jumping to trees of different conclusion nodes. Followed nodes are available as lists; tagging nodes to communities was implemented and could be reimplemented; link to email users from their profile could be implemented in the future.

Online Publishing

Draft of final document submitted to repository by email, assigned document number, cataloged; email notification with link to document issued to suitable list, which can respond as needed. Access and version control, traceability, acountability, authentication.

Publishing of documents is not implemented in Oneslate, though information developed over time to be incorporated documents to be published can be updated, interlinked, and reviewed in the system.

Meeting Support

Agenda development, group note-taking, shared-window teleconferencing, repository access; capture and cross-reference records in the repository; integrate into work-in-progress.

Oneslate can be used to develop an agenda, which can be expanded upon collectively, with access to the full repository. Records can be created and reused side by side for cross reference; information can be updated on an ongoing basis for works in progress.

Personal Time Management

Integral time records, todo lists, status reports, email management; policies, procedures, reference manuals all integral.

Oneslate can be used to manage todos, statuses, to log email information; to document policy, procedure, and reference information.

Project Management

Structured work breakdown, status reports, work flow; structured and crosslinked for automated management reporting and review at various detail levels; project management and continuous improvement, learning, technology transfer

Oneslate may be suitable for work breakdown, status reports, and work flow with structure and crosslinking, project management, continuous improvement, learning, and technology transfer. Future work would include a text mode and performance optimizations to better facilitate these tasks; future work could also include automated reporting and review at various detail levels.

Software Engineering

Structured source code, cross reference between source, design, requirements, bugs, user docs; interlinking procedure and source; semi-automatic OO structure; revision information; filtering

Oneslate is not developed for software development beyond project documentation, feature requests, idea lists, bug lists, etc. It has been used in the development of Oneslate for these purposes, but other existing software development tools are likely more efficient at the present.

Continuous Improvement, Learning, Technology Transfer

Facilitates co-evolution of practices and tools, pro-active customer/stakeholder participation, shared repositories, lessons learned integration, screen-shared coaching and virtual help desk; graduated proficiency (path from unskilled to high performance)

Oneslate is intended to be useful for co-evolving practices and tools, for pro-active customer/stakeholder participation, shared repositories, integrating lessons learned, and virtual help. Future work could include screen-sharing and interfaces designed for progressive proficiency.

(Etc.)

(Etc.)

Disclaimer: Oneslate is neither endorsed by nor associated with the Douglas Engelbart Institute.