checklist page - oracle · web view2008/11/10  · all nodes having the specified developer-defined...

29
Hierarchy Search Guideline http://fusiongps/guidelines/content/guidelines/hiersearch/ Version 1.0.0.1 Last Modified: May 31 2022 2:40:36 PM Author: Sherry Mead Contributors: Harris Kravatz, Amy Chen This guideline describes a set of hierarchy conditions that can be added to the condition choice list of a search field when the data to be searched is hierarchical. It also provides guidance on how to display hierarchy search results. Guideline Contents Hierarchy Search Guideline..................................................1 Hierarchy Conditions...................................................... 2 Hierarchy Condition Terminology...........................................2 Family Terminology...................................................... 2 Tree Terminology........................................................ 5 Selection-Independent Conditions..........................................5 Default Search Conditions.................................................6 Conventional Search Defaults............................................6 Hierarchy Search Defaults...............................................7 Conventional and Hierarchy Search Combined Defaults.....................7 Hierarchy Search Results..................................................8 Results Marked in a Tree Table..........................................9 Results and Their Ancestors in a Tree Table.............................9 Flat Table and Path.................................................... 10 Flat Table............................................................. 10 View in Hierarchy...................................................... 10 Appendix: Examples......................................................... 12 Conditions that Use Family Terminology...................................12 Is a Descendent of Node................................................13 Is a Last Descendent of Node...........................................14 Is a Child of Node..................................................... 15 Is an Ancestor of Node.................................................16 Is a First Ancestor of Node............................................17 Is a Parent of Node.................................................... 18 Is a Sibling of Node................................................... 19 Conditions that Use Tree Terminology.....................................20 Is a Member of Branch..................................................20 Is a Leaf Node......................................................... 21 Is a Leaf Node Under Node..............................................22 Is the Root Node....................................................... 23 Conditions that Require Metadata.........................................24 Is a Member of the Level...............................................24 Has the Label.......................................................... 25 Change History........................................................... 25 1

Upload: others

Post on 25-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Hierarchy Search Guidelinehttp://fusiongps/guidelines/content/guidelines/hiersearch/ Version 1.0.0.1Last Modified: May 20 2023 6:09:00 PMAuthor: Sherry MeadContributors: Harris Kravatz, Amy Chen

This guideline describes a set of hierarchy conditions that can be added to the condition choice list of a search field when the data to be searched is hierarchical. It also provides guidance on how to display hierarchy search results.

Guideline ContentsHierarchy Search Guideline.............................................................................................................1

Hierarchy Conditions.................................................................................................................2Hierarchy Condition Terminology.................................................................................................2

Family Terminology..............................................................................................................2Tree Terminology.................................................................................................................5

Selection-Independent Conditions.................................................................................................5Default Search Conditions...........................................................................................................6

Conventional Search Defaults...................................................................................................6Hierarchy Search Defaults.......................................................................................................7Conventional and Hierarchy Search Combined Defaults..................................................................7

Hierarchy Search Results............................................................................................................8Results Marked in a Tree Table.................................................................................................9Results and Their Ancestors in a Tree Table.................................................................................9Flat Table and Path..............................................................................................................10Flat Table.........................................................................................................................10View in Hierarchy...............................................................................................................10

Appendix: Examples...................................................................................................................12Conditions that Use Family Terminology......................................................................................12

Is a Descendent of Node.......................................................................................................13Is a Last Descendent of Node.................................................................................................14Is a Child of Node...............................................................................................................15Is an Ancestor of Node.........................................................................................................16Is a First Ancestor of Node....................................................................................................17Is a Parent of Node..............................................................................................................18Is a Sibling of Node.............................................................................................................19

Conditions that Use Tree Terminology.........................................................................................20Is a Member of Branch.........................................................................................................20Is a Leaf Node....................................................................................................................21Is a Leaf Node Under Node...................................................................................................22Is the Root Node.................................................................................................................23

Conditions that Require Metadata................................................................................................24Is a Member of the Level......................................................................................................24Has the Label.....................................................................................................................25

Change History......................................................................................................................25

1

Page 2: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Hierarchy ConditionsWhen hierarchy search conditions are available, the condition choice list (drop-down) should be visible by default. Use ADF Query Basic View, not ADF Quick Query. See the Focused Search Guideline. Any of the Transactional Search Design Patterns may be used for the search.

The searchable fields must include:

Tree NodeThe prompt for the Search field must be the name of the object each tree node represents. For example, if tree nodes are employees, the prompt for the search field is "Employee Name". See the example below.Note: ApplCore will provide a "Tree Node Picker" in Drop 7. Use it for all tree node search fields. All select tree node illustrations in this guideline represent the ApplCore tree node picker.

Tree Node LabelIf you are using Fusion Tree Management and have Labels enabled, then the Labels field must be a searchable field. The prompt for the field must be the name of the attribute the label represents. For example, if tree node labels represent Positions, the search field is labeled "Position". See the example below.Figure 1: Tree Node and Label in search region

fFigure 2: Tree Node and Label in search results

Hierarchy Condition TerminologyThere are a few different options in displaying hierarchy Search Condition Terminology to the user. The three options are: Family Terminology, Domain-Specific Terminology, and Tree Terminology.

2

Page 3: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Family TerminologyFamily terminology provides a set of seven (7) different conditions. These conditions include: Is a descendent of node, Is a child of node, Is a parent of node. Some family condition names may be confusing if used standalone. For example, Is a last descendent of node of Node may not make sense when used on its own. Use family terminology when users will be accessing several levels of a hierarchy and will need to use a majority of these terms.

Not all of these are required in the condition choice list. Use the ones that are applicable to your use cases.

Is a child of node Is a descendent of node Is a last descendent of node Is a parent of node Is an ancestor of node Is a first ancestor of node Is a sibling of node

Figure 3: Sample hierarchy: Chart of accounts

Table 1 shows the search results of each of the Family Terminology conditions. For a more detailed diagram, click on the link for each of the Family Terminology conditions.Table 1: Search results for family conditionsFamily Condition Selecte

d NodeSearch Results*

Is a child of node Current Cash, Market, Receivables, 127000Is a descendent of node

Current Cash, 100000-100099, 100100; Market, 110000, 110001, 110002, …, 110099, 110100; Receivables, 120000, 120001, 120002, …, 120199, 121000; 127000

Is a last descendent of node

Current 100000, 100001, 100002, …, 100099, 100100; 110000, 110001, 110001, …, 110099, 110100; 120000, 120001, 120002, …, 120199, 121000; 127000

3

Page 4: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a parent of node Current AssetsIs an ancestor of node

Current Assets, Balance Sheet, All Accounts

Is a first ancestor of node

Current All Accounts

Is a sibling of node Current Prepaids*Note: Matching range nodes appear expanded in the search results. Range nodes are expressions that represent a set of tree nodes. The actual tree nodes appear in the search results.

Figure 4: Detailed example of an “Is a child of node” hierarchy search.

1. User selects a hierarchy condition in a search field.2. User launches the tree picker then selects the desired node.3. Step 3 in the illustration is not visible to the user. It is included here and in the

Appendix to illustrate the definition of the selected condition by displaying the tree nodes that match it.

4. Results are displayed to the user.Note: In Fusion v1, this dialog contains a Tree Table and will only support browsing for tree nodes. Also note that the tree picker behaves like a date picker and is based on LOV Text Field, rather than LOV Choice list (see the BLAF+ LOV UI Spec.)

4

Page 5: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Domain-Specific Terminology Use domain-specific terminology when you are certain it will be familiar to the majority of your users. For example, when searching for an employee of a specific manager, use a condition such as “Is an employee of person” instead of “Is a child of node”, which is the less familiar family term.Table 2: Examples of Domain-Specific hierarchy conditions for employee search.Family Terminology Domain-Specific Terminology*Is a child of node Is a direct report of personIs a descendent of node Is a report of personIs a last descendent of node Is an individual contributorIs a parent of node Is the manager of personIs an ancestor of node Is in the reporting chain of personIs a first ancestor of node Is the CEO/PresidentIs a sibling of node Is a peer of person*Note: These are examples, not recommended terms.

Tree TerminologyTree terminology provides a set of 7 conditions. These conditions include: Is a leaf node, is the root node. Use tree terminology when domain specific terminology is not appropriate, and where tree terminology will be the most familiar terminology for the users.Table 3: Relationship between family terms and tree termsFamily Terminology Tree Terminology EquivalentIs a child of node Is a child of nodeIs a descendent of node (excludes selected node)

Is a member of branch (includes selected node)

Is a last descendent of node Is a leaf node Is a last descendent of node Is a leaf node under nodeIs a parent of node Is a parent of nodeIs an ancestor of node Is an ancestor of nodeIs a first ancestor of node Is the root nodeIs a sibling of node Is a sibling of node

Selection-Independent ConditionsThe following conditions are selection-independent. Selecting one of these conditions should trigger a PPR event that hides the value field. Selection-independent searches do not need a value in the hierarchy to compare to execute the search.Table 4: Selection-independent hierarchy conditions

Family Terminology Tree Terminology EquivalentIs a last descendent of node Is a leaf node Is a first ancestor of node Is the root nodeFigure 5: Selection-independent condition: Is a leaf node

5

Page 6: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

The Value field is hidden when a selection-independent hierarchy condition is selected.

6

Page 7: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Figure 6: Selection-dependent condition: Is a leaf node under node

The Value field remains visible when a selection-dependent hierarchy condition is selected.

Default Search Conditions This section explains the Default Search Conditions shown in Conventional Search, Hierarchy Search, and Conventional and Hierarchy Search.

Conventional Search DefaultsTypical Focused Search default conditions include: Starts With, Contains, or Equals; depending on the field type.Figure 7: Default condition list for character fields

See the Focused Search Guideline for the list of default conditions by data type.

Hierarchy Search DefaultsThe Hierarchy Search default recommendation is to use the most common search condition for the particular task as the default. This default may differ from task to task.

For example, if the most common task in this Hierarchy search example task is to find the child of an Account in the hierarchy, then the default should be “Is a child of node.”

7

Page 8: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Figure 8: Select the default hierarchy condition based on common use cases.

Using Conventional and Hierarchy Search ConditionsWhen Conventional and Hierarchy Search are combined, the recommendation is to group conditions by type of search. For example, group Conventional search conditions together, such as Starts With, Ends With, Equals, Contains; then group the Hierarchy Search conditions together, such as Is a child of node, Is a descendent of node.Figure 9: Hierarchy condition list

Hierarchy Search ResultsThere are four format options for presenting the results of a hierarchy search:

Results Marked in a Tree Table Results and Their Ancestor in a Tree Table Flat Table and Path Flat Table

To illustrate these four hierarchy search results options, we will use the example of the following organizational chart as the tree to be searched.

8

Page 9: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Figure 10: Sample hierarchy used in examples

Results display examples show the results of the search: “Employee Name starts with K”. The following are examples of the search results shown in the four hierarchy search result formats.

Results Marked in a Tree Table Figure 11: Matching nodes highlighted in full hierarchy

9

Page 10: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

The full hierarchy is displayed with nodes expanded to show matching records. Matching records are indicated using an icon (see icon request SHERRY.MEAD.2381).This results display is often preferred by users but produces the slowest performance. Use this display when the hierarchy is small and it is important for users to see matching nodes in the context of their peers and descendants as well as their ancestors. This display is also preferred when most use cases involve searching for multiple target records per query.

Results and Their Ancestors in a Tree Table Figure 12: Matching nodes and their ancestors

Search results are displayed in a tree table. Matching records appear as leaf nodes under their ancestors.This results display typically produces acceptable usability and adequate performance. Use this display when users require some context when viewing search results, which can be adequately provided by displaying the ancestor nodes. This display works well when most use cases involve searching for a single target record.

Flat Table and PathFigure 13: Matching records with their ancestors in a flat table

Search results are shown in a flat table along with a list of their ancestors in path or breadcrumb form. This results display provides the same amount of hierarchy context as the Results and Ancestors in Tree Table display, but in a less usable form. Use this design only if the path will be short in the large majority of cases.

10

Page 11: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Flat TableFigure 14: Results in flat table with no hierarchy context

Matching nodes are shown in a flat table without information regarding where they appear in the hierarchy. Other relevant attributes can be added to the results table, such as Label.This results display provides no hierarchy context for result items, but it supports the display of additional node attributes better than the other alternatives. Use this display only if users do not need to see hierarchy context for matching nodes.

View in HierarchyWhen search results are displayed in a flat table, with or without hierarchy context, place a View in Hierarchy button on the toolbar of the results table. When users select a result item, then click View in Hierarchy, the results table is replaced with a tree table. The selected item's parent (if exists) appears as the root note and the tree is expanded to display the children of the selected result item (if exist). The View in Hierarchy button is disabled if a row is not selected. Note that the results table should not support multiple selection.Figure 15: View in Hierarchy interaction

11

Page 12: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Appendix: ExamplesEach of the following examples use one of three sample hierarchies, an organization chart, a geography hierarchy and a chart of accounts. Each example shows:

A hierarchy condition in a sample search panel Selecting a node from a hierarchical Search and Select dialog with search results

displayed in a Tree Table Nodes that match the search criteria highlighted in yellow

Note that, when hierarchy conditions are used as section headers in this document, they appear headline capitalized. When used in a search panel, hierarchy conditions should appear sentence capitalized. See BLAF+ Language in UI: Capitalization.

Conditions that Use Family TerminologyNot all of these are required in the condition choice list. Use the ones that are applicable to your use cases.

Is a descendent of node Is a last descendent of node

Is a child of node

Is an ancestor of node

Is a first ancestor of node

Is a parent of node

Is a sibling of node

12

Page 13: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a Descendent of NodeAll tree nodes under the selected node, children, grandchildren, and so on to the leaf nodes.

13

Page 14: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a Last Descendent of NodeAll leaf nodes under the selected node.

14

Page 15: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a Child of NodeAll nodes directly under the selected node.

15

Page 16: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is an Ancestor of NodeAll nodes above the selected node, parents, grandparents, and so on up to the root node.

16

Page 17: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a First Ancestor of NodeIs the Root Node or nodes above the selected node in a multi-root hierarchy. Is the Root Node in a single root hierarchy. In this case, the value field should be hidden. See the Is the Root Node condition.

17

Page 18: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a Parent of NodeIs the node directly above the selected node.

18

Page 19: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a Sibling of NodeAll nodes that are peers of / have the same parent as the selected node.

19

Page 20: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Conditions that Use Tree TerminologyNot all of these are required in the condition choice list. Use the ones that are applicable to your use cases.

Is a member of branch Is a leaf node

Is a leaf node under node

Is the Root Node

Is a Member of BranchThe selected node and all nodes under it, children, grandchildren, and so on to the leaf nodes.

20

Page 21: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a Leaf NodeAll leaf nodes (last nodes in each branch) in the tree. All last descendents of the root node.

21

Page 22: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is a Leaf Node Under NodeAll lead nodes under / last descendants of the selected node.

22

Page 23: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Is the Root NodeThe top most node in a single root tree. This condition would be "Is a root node" for trees with multiple root nodes and requires a value field if multi-parent nodes are allowed. See the Is a first ancestor condition.

23

Page 24: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Conditions that Require Metadata

Is a member of the level Has the label

Is a Member of the LevelAll nodes the same distance from the root node in a level-based hierarchy. A level-based hierarchy is a hierarchy in which all nodes the same distance from the root node are logical peers and have the same label.

24

Page 25: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Has the LabelAll nodes having the specified developer-defined label.

Change History

Date Description Author Bug Previous Version

10-Nov-2008 Note added referring to ApplCore Tree Node picker to be available in Drop 7

Fixed examples Recommendation is to

include the immediate parent when the user selects View in Hierarchy.

Sherry Mead 7262268 1.0.0.0

16-Jan-2008 Initial Version Harris Kravatz, Amy Chen,

7199778 n/a

25

Page 26: Checklist Page - Oracle · Web view2008/11/10  · All nodes having the specified developer-defined label. Change History Date Description Author Bug Previous Version 10-Nov-2008

Sherry Mead

26