READABLE STRUCTURAL TEXT-BASED REPRESENTATION OF ACTIVITY FLOWS
A computerized method for converting a graphical representation of an activity flow to a structural text-based representation according to a plurality of human readability considerations, said computerized method comprising: converting a graphical representation of an activity flow to a structural text-based representation having a plurality of text elements which are related to one another in a hierarchical manner; identifying a subset of said plurality of text elements having an equal number of hierarchical degrees of separation from a root of said plurality of text elements; acquiring a plurality of human readability rules; ordering said subset of plurality of text elements by applying said plurality of human readability rules to said subset of plurality of text elements.
Latest IBM Patents:
- INTERACTIVE DATASET EXPLORATION AND PREPROCESSING
- NETWORK SECURITY ASSESSMENT BASED UPON IDENTIFICATION OF AN ADVERSARY
- NON-LINEAR APPROXIMATION ROBUST TO INPUT RANGE OF HOMOMORPHIC ENCRYPTION ANALYTICS
- Back-side memory element with local memory select transistor
- Injection molded solder head with improved sealing performance
The present invention, in some embodiments thereof, relates to computer implemented methods, computer programs and systems for converting graphical representations of activity flows to human readable textual representations and, more specifically, but not exclusively, to computer implemented methods, computer programs and systems for converting graphical representations of activity flows to human readable nested-lists.
An activity flow is a set of related, structured processes producing a specific service and/or product, as well as the relationships between these activities. The relationships are often described as a sequence and/or a hierarchy with or without decision points. Decision points can be based on external data, user preferences and/or data in the process.
Business entities often model their activity flows. Such models assist business entities with diverse activities: Improving existing processes, Examining processes across lines of business to discover which one is the best of breed in entities merging, Automating processes, and Complying with government regulations requiring activity flows documentation to name a few.
Activity flow models can be roughly classified as graphical and non-graphical representations. A graphical representation may be a flowchart, a mathematic graph having nodes and edges, a bar graph, a topological chart, a process matrix and/or the likes. Some of these representations, for example, a mathematic graph, are more commonly used in conjunction with an activity flow. A non graphical activity flow model can be text-based. The text can be structured or unstructured.
Editing tools for modeling activity flows benefit from offering both graphical and non-graphical representations. Editing tools are frequently utilized for modeling activity flows. Generation of activity flow models is typically a shared effort performed by multiple stakeholders within a business entity. Different stakeholders posse different knowledge elements and expertise required for modeling an activity flow. Such collaborative efforts benefit from editing tools' assistance. The preferred representation of activity flow models varies between the stakeholders. The preferred representation is typically correlated with the stakeholder's proficiency. For example, technology savvy users, which are familiar with the graph metaphor, tend to prefer a mathematic graph representation. On the other hand, professionals in their domain (e.g., physicians), are typically not used to working with a graph metaphor, but are costumed to interacting with text editors. Such professionals usually tend to prefer a textual based representation. Editing tools for modeling activity flows catering to both of these needs include dual representations: graphical and non-graphical. Such dual representations require conversion between the graphical and the non-graphical representation and vice versa.
Converting an activity flow's graphical representation to a non-graphical representation is not a straight forward task. There is no direct equivalence between graphical representations and non-graphical representations. Instead, alternative conversion methodologies exist. Consequently, dissimilar non-graphical representations may be generated for the same graphical representation of an activity flow. This challenge increases with the complexity of the modeled activity flow's sequence. Some alternative conversion methodologies pose challenges such as conversion consistency. For example, the original graphical representation may differ from the re-conversion result obtained after converting the non-graphical representation back to a graphical representation.
Despite the above mentioned challenges in round-trip conversion between graphical and non-graphical representations of activity flows, tools for editing both graphical and non-graphical activity flow models exist. Among them are: IBM® WebSphere Business Modeler®, IBM® Business Process Management® (BPM), IBM® WebShere Lombardi edition, SAP NetWeaver BPM, Appian BPM Suite, TIBCO BPM.
The above mentioned tools, as well as other tools which capture activity flow models, employ different formats for graphical representations. These include Business Process Model and Notation (BPMN), XML Process Definition Language (XPDL) and Business Process Execution Language (BPEL).
The above mentioned tools, as well as other tools capturing activity flow models, employ structured text for non-graphical representations. Several formats are utilized for capturing and displaying structured text. These formats include Extensible Markup Language (XML), XML Process Definition Language (XPDL) and Business Process Execution Language for Web Services (BPEL4WS). XPDL is a format standardized by the Workflow Management Coalition (WfMC) to interchange activity flow definitions between different modeling tools. XPDL supplements an XML schema with process oriented elements. BPEL4WS combines Web services Flow Language (WSFL), which provides support for graph oriented processes, and XML language (XLANG), which has structural constructs for processes, into one package that supports implementation of an activity flow.
SUMMARYAccording to an aspect of some embodiments of the present invention there is provided a computerized method for converting a graphical representation of an activity flow to a structural text-based representation according to a plurality of human readability considerations, the computerized method comprising: converting a graphical representation of an activity flow to a structural text-based representation having a plurality of text elements which are related to one another in a hierarchical manner; identifying a subset of the plurality of text elements having an equal number of hierarchical degrees of separation from a root of the plurality of text elements; acquiring a plurality of human readability rules; ordering the subset of plurality of text elements by applying the plurality of human readability rules to the subset of plurality of text elements.
Optionally, data of the structural text-based representation is arranged as a nested list. Optionally, the plurality of human readability rules comprises at least one of alphabetical sorting the subset of plurality of text elements and sorting the subset of plurality of text elements according to user provided rating. Optionally, at least one of the plurality of human readability rules is defined according to a layout of a plurality of graph elements of the graphical representation of an activity flow. Optionally, the layout is at least one of an order of a plurality of edges, an orientation in a left to right axis, an orientation in a right to left axis and orientation in a up to down axis. Optionally, the layout is chosen according to at least one of a language in which the activity flow was developed and a physical location indicating a visual order preference. Optionally, at least one of the plurality of human readability rules defines a desired hierarchy of a plurality of domain specific terms wherein at least one of the plurality of domain specific terms appears in the subset of plurality of text elements of the structural text-based representation. Optionally, the domain is workflow approval. Optionally, the converting is performed by: pre-processing the graphical representation, thereby detecting at least one of a cycle route and a backward route; building a flow content; detecting a plurality of split nodes and a plurality of join nodes; defining a plurality of basins by matching each of a plurality of split nodes with a corresponding join node of the plurality of join nodes; generating a plurality of nesting text elements for each basin of detected the plurality of basins. Optionally, the method further comprises measuring usage frequency of a plurality of elements of the structural text-based representation and the graphical representation; wherein at least one of the plurality of human readability rules is defined according to measured the usage frequency. Optionally, the structural text-based representation is deviates from a one to one correspondence of the graphical representation. Optionally the method further comprises: re-converting ordered the structural text-based representation to the graphical representation. Optionally the method further comprises: synchronizing elements of the structural text-based representation with elements of the a graphical representation thereby allowing edits made to elements of one representation to be propagated to the other representation.
According to another aspect of some embodiments of the present invention there is provided a computer program product for converting a graphical representation of an activity flow to a structural text-based representation according to a plurality of human readability considerations, the computer program comprising: a computer readable storage medium; first program instructions to convert a graphical representation of an activity flow to a structural text-based representation having a plurality of text elements which are related to one another in a hierarchical manner; second program instructions to identify a plurality of text elements having an equal number of hierarchical degrees of separation from a root of the plurality of text elements; third program instructions to acquire a plurality of human readability rules; and fourth program instructions to order the subset of plurality of text elements by applying the plurality of human readability rules to the subset of plurality of text elements; wherein the first, second, third and fourth program instructions are stored on the computer readable storage medium.
According to another aspect of some embodiments of the present invention there is provided a system for converting a graphical representation of an activity flow to a structural text-based representation according to a plurality of human readability considerations, the system comprising: a processor; a conversion module which converts, using a processor, a graphical representation of an activity flow to a structural text-based representation having a plurality of text elements which are related to one another in a hierarchical manner; readability promoting module which identifies a subset of the plurality of text elements having an equal number of hierarchical degrees of separation from a root of the plurality of text elements; a user interface for presenting at least one of the graphical representation and the structural text-based representation.
Optionally, the user interface further enables a user to provide a plurality of human readability rules. Optionally, the system further comprises: an editing module which enables a user to view and edit at least one of ordered the structural text-based representation and the graphical representation. Optionally, the editing performed on one representation is reflected in the other representation.
Unless otherwise defined, all technical and/or scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the invention pertains. Although methods and materials similar or equivalent to those described herein can be used in the practice or testing of embodiments of the invention, exemplary methods and/or materials are described below. In case of conflict, the patent specification, including definitions, will control. In addition, the materials, methods, and examples are illustrative only and are not intended to be necessarily limiting.
Some embodiments of the invention are herein described, by way of example only, with reference to the accompanying drawings. With specific reference now to the drawings in detail, it is stressed that the particulars shown are by way of example and for purposes of illustrative discussion of embodiments of the invention. In this regard, the description taken with the drawings makes apparent to those skilled in the art how embodiments of the invention may be practiced.
In the drawings:
The present invention, in some embodiments thereof, relates to computer implemented methods, computer programs and systems for converting graphical representations of activity flows to human readable textual representations and, more specifically, but not exclusively, to computer implemented methods, computer programs and systems for converting graphical representations of activity flows to human readable nested-lists.
There are various transformation strategies for transforming graph representations into text based representations. One exemplary transformation strategy is based on shared node segmentation. Shared nodes, which are nodes having more than one incoming control connection, are identified. A graph is segmented according to the location of the identified shared nodes. Each segment becomes a text element, and a synchronization element is used to preserve the relation between the graph segment and the corresponding text element. Another transformation technique is based on basins. It is detailed herein as part of
The above mentioned transformation strategies regard the resulting text as a one-to-one corresponding object: i.e. the resulting text-based representation is but a different form of the graph. However, according to some aspects of the present invention, human readability considerations are taken into account. The generated structured text-based representation may be revised, edited, modified and/or changed according to human readability considerations. Such considerations may include the layout of graph elements, usability of elements, inherent order of elements (such as, for example, alphabetical order), a logical order of elements (such as, for example, their order of appearance in a documentation article), an order dictated by domain knowledge (such as, for example, process approval in which “approve” precedes “reject”) etc. The result structured text differs from a textual representation of the graph which does not take readability considerations into account. The differences may be the length of the text, the number of textual elements, the content of the textual elements, the order of the textual elements, the level of the textual elements, the number of referral to non-proximate steps (such as go-to) etc. The structured text-based representation may be more easily readable by a user, may be easier to comprehend by a user, may enable a user to locate text elements quicker, may allow group editing of similar proximate text elements, and/or may be more visually appealing.
Before explaining at least one embodiment of the invention in detail, it is to be understood that the invention is not necessarily limited in its application to the details of construction and the arrangement of the components and/or methods set forth in the following description and/or illustrated in the drawings and/or the Examples. The invention is capable of other embodiments or of being practiced or carried out in various ways.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident
software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
Reference is now made to
Reference is now made to
Reference is now made to
Optionally, a human readability rule regards the position of a go-to command and/or another form of referral to a distant step. A go-to in the last textual element is preferred over a central and/or a beginning position of a text element in a list of same hierarchical level elements.
Reference is now made to
Optionally, additional data is provided about graph elements 405A-409A. One such data type is usage in a source control system. For example, the number of times an element was retrieved by a source control system in the last version may be used to account for element importance. Here decision B 409A was visited by a programmer more than decision A 408A. As a result the human readability rule which ranks elements of an equal level in the graph hierarchy according to their usability measurement would apply. As a result of that rule the second structural presentation 400C, which presents decision B 409C and action B 407C before decision A 408B and action A 406B, would be preferred. Other optional ways to measure and/or estimate an element's importance comprise: an element number of appearances in documentation records, an element location in documentation records (central versus side position relative to page edges), the number of times an element was retrieved by a source control system in the last version versus former version, an element's data size (for example: long string versus short string), an element's connectivity, the number of times an element was retrieved from a database etc. Usability measurements may be summed for a single graph element 405A-409A and/or for a subgroup, such as a group of graph elements representing a route in the graph.
Reference is now made to
The set of flow data elements is the route's content. The graph's flow content is build according to the following rules:
-
- 1) Each split node starts a “stream” with quantity of 1.
- 2) Each node merges its incoming routes' content. The quantity of streams that have the same identification is summed up.
- 3) In case the node is a split, it adds its stream to its own content.
- 4) Each node divides and dispenses it content's equally to the outgoing routes.
- 5) A node spills its content according to Table 1.
For each candidate node a split-stack is kept. The split-stack keeps candidate nodes in which the node's stream was merged. For each candidate node a join-stack is kept. The join-stack keeps candidate nodes whose content was merged for that node. Once the graph's flow content is built and the split-stack and join-stack are complete the match of OR-split and OR-joins is performed. If the stream's quantity in the node is equal to the stream quantity in the split node, then the split node is marked as ‘possible split’ of the join node. Decide which one of the possible origins is the correct split node. In case of multiple possible origins precedence between the candidates split nodes is determined. The later node is then removed from the stack and is no longer a candidate for an origin split node. There are multiple possible convergence states:
1) Full convergence
2) Partial convergence
3) Exit point
4) No convergence
5) Terminating node is part of another basin.
The match is performed according to the above listed order.
The methods as described above are used in the fabrication of integrated circuit chips.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The descriptions of the various embodiments of the present invention have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.
It is expected that during the life of a patent maturing from this application many relevant graphical representations and text based representations will be developed and the scope of the terms graphical representation and text based representation are intended to include all such new technologies a priori.
As used herein the term “about” refers to ±10%.
The terms “comprises”, “comprising”, “includes”, “including”, “having” and their conjugates mean “including but not limited to”. This term encompasses the terms “consisting of” and “consisting essentially of”.
The phrase “consisting essentially of” means that the composition or method may include additional ingredients and/or steps, but only if the additional ingredients and/or steps do not materially alter the basic and novel characteristics of the claimed composition or method.
As used herein, the singular form “a”, “an” and “the” include plural references unless the context clearly dictates otherwise. For example, the term “a compound” or “at least one compound” may include a plurality of compounds, including mixtures thereof.
The word “exemplary” is used herein to mean “serving as an example, instance or illustration”. Any embodiment described as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments and/or to exclude the incorporation of features from other embodiments.
The word “optionally” is used herein to mean “is provided in some embodiments and not provided in other embodiments”. Any particular embodiment of the invention may include a plurality of “optional” features unless such features conflict.
Throughout this application, various embodiments of this invention may be presented in a range format. It should be understood that the description in range format is merely for convenience and brevity and should not be construed as an inflexible limitation on the scope of the invention. Accordingly, the description of a range should be considered to have specifically disclosed all the possible subranges as well as individual numerical values within that range. For example, description of a range such as from 1 to 6 should be considered to have specifically disclosed subranges such as from 1 to 3, from 1 to 4, from 1 to 5, from 2 to 4, from 2 to 6, from 3 to 6 etc., as well as individual numbers within that range, for example, 1, 2, 3, 4, 5, and 6. This applies regardless of the breadth of the range.
Whenever a numerical range is indicated herein, it is meant to include any cited numeral (fractional or integral) within the indicated range. The phrases “ranging/ranges between” a first indicate number and a second indicate number and “ranging/ranges from” a first indicate number “to” a second indicate number are used herein interchangeably and are meant to include the first and second indicated numbers and all the fractional and integral numerals therebetween.
It is appreciated that certain features of the invention, which are, for clarity, described in the context of separate embodiments, may also be provided in combination in a single embodiment. Conversely, various features of the invention, which are, for brevity, described in the context of a single embodiment, may also be provided separately or in any suitable subcombination or as suitable in any other described embodiment of the invention. Certain features described in the context of various embodiments are not to be considered essential features of those embodiments, unless the embodiment is inoperative without those elements.
Although the invention has been described in conjunction with specific embodiments thereof, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art. Accordingly, it is intended to embrace all such alternatives, modifications and variations that fall within the spirit and broad scope of the appended claims.
All publications, patents and patent applications mentioned in this specification are herein incorporated in their entirety by reference into the specification, to the same extent as if each individual publication, patent or patent application was specifically and individually indicated to be incorporated herein by reference. In addition, citation or identification of any reference in this application shall not be construed as an admission that such reference is available as prior art to the present invention. To the extent that section headings are used, they should not be construed as necessarily limiting.
Claims
1. A computerized method for converting a graphical representation of an activity flow to a structural text-based representation according to a plurality of human readability considerations, said computerized method comprising:
- converting a graphical representation of an activity flow to a structural text-based representation having a plurality of text elements which are related to one another in a hierarchical manner;
- identifying a subset of said plurality of text elements having an equal number of hierarchical degrees of separation from a root of said plurality of text elements;
- acquiring a plurality of human readability rules;
- ordering said subset of plurality of text elements by applying said plurality of human readability rules to said subset of plurality of text elements.
2. The method of claim 1, wherein data of said structural text-based representation is arranged as a nested list.
3. The method of claim 1, wherein said plurality of human readability rules comprises at least one of alphabetical sorting said subset of plurality of text elements and sorting said subset of plurality of text elements according to user provided rating.
4. The method of claim 1, wherein at least one of said plurality of human readability rules is defined according to a layout of a plurality of graph elements of said graphical representation of an activity flow.
5. The method of claim 4, wherein said layout is at least one of an order of a plurality of edges, an orientation in a left to right axis, an orientation in a right to left axis and orientation in a up to down axis.
6. The method of claim 5, wherein said layout is chosen according to at least one of a language in which said activity flow was developed and a physical location indicating a visual order preference.
7. The method of claim 1, wherein at least one of said plurality of human readability rules defines a desired hierarchy of a plurality of domain specific terms wherein at least one of said plurality of domain specific terms appears in said subset of plurality of text elements of said structural text-based representation.
8. The method of claim 7, wherein said domain is workflow approval.
9. The method of claim 1, wherein said converting is performed by:
- pre-processing said graphical representation, thereby detecting at least one of a cycle route and a backward route;
- building a flow content;
- detecting a plurality of split nodes and a plurality of join nodes;
- defining a plurality of basins by matching each of a plurality of split nodes with a corresponding join node of said plurality of join nodes;
- generating a plurality of nesting text elements for each basin of detected said plurality of basins.
10. The method of claim 1, further comprising:
- measuring usage frequency of a plurality of elements of said structural text-based representation and said graphical representation;
- wherein at least one of said plurality of human readability rules is defined according to measured said usage frequency.
11. The method of claim 1, wherein said structural text-based representation is deviates from a one to one correspondence of said graphical representation.
12. The method of claim 1, further comprising:
- re-converting ordered said structural text-based representation to said a graphical representation.
13. The method of claim 1, further comprising:
- synchronizing elements of said structural text-based representation with elements of said graphical representation thereby allowing edits made to elements of one representation to be propagated to the other representation.
14. A computer program product for converting a graphical representation of an activity flow to a structural text-based representation according to a plurality of human readability considerations, said computer program comprising:
- a computer readable storage medium;
- first program instructions to convert a graphical representation of an activity flow to a structural text-based representation having a plurality of text elements which are related to one another in a hierarchical manner;
- second program instructions to identify a plurality of text elements having an equal number of hierarchical degrees of separation from a root of said plurality of text elements;
- third program instructions to acquire a plurality of human readability rules; and
- fourth program instructions to order said subset of plurality of text elements by applying said plurality of human readability rules to said subset of plurality of text elements;
- wherein said first, second, third and fourth program instructions are stored on said computer readable storage medium.
15. A system for converting a graphical representation of an activity flow to a structural text-based representation according to a plurality of human readability considerations, said system comprising:
- a processor;
- a conversion module which converts, using a processor, a graphical representation of an activity flow to a structural text-based representation having a plurality of text elements which are related to one another in a hierarchical manner;
- readability promoting module which identifies a subset of said plurality of text elements having an equal number of hierarchical degrees of separation from a root of said plurality of text elements;
- a user interface for presenting at least one of said graphical representation and said structural text-based representation.
16. The system of claim 15, wherein said user interface further enables a user to provide a plurality of human readability rules.
17. The system of claim 15, further comprising:
- an editing module which enables a user to view and edit at least one of ordered said structural text-based representation and said graphical representation.
18. The system of claim 17, wherein said edit performed on one representation is reflected in the other representation.
Type: Application
Filed: Feb 27, 2013
Publication Date: Aug 28, 2014
Patent Grant number: 10346516
Applicant: International Business Machines Corporation (Armonk, NY)
Inventors: Tomer Bentov (Bikat Beit Hakerem), Samuel Kallner (Menashe), Dany Moshkovich (Yokneam Ilit), Balunaini Prasad (Bangalore), Ravi Ray (Uttar Pradesh), Yoav Rubin (Haifa)
Application Number: 13/778,165
International Classification: G06F 3/0484 (20060101);