Title: Navigating with the Rapid Selector

View Specification



Each Rapid Selector command modifies one or more aspects of the current Traction view specification. The view specification defines what you see. A view specification has four major components:

  1. View type - chronology, newspage, front page, topic
  2. Time slice - day, week, month, quarter, year, all, or an explicit range
  3. Volumetitles, details, brief, full, comments. Resulting output is skin dependent, but generally, brief shows the most relevant content (i.e. paragraphs with tags or paragraphs with comments) only; full shows all content; comments shows all content plus comments (in skins, such as the Simple skin, which distinguish between full and comments volumes); details shows the title of the entry plus the details (author, post date, etc.); and titles shows entry titles only.
  4. Search Expression - filters the articles (or paragraphs) to display by content, title, author, tag, space, etc., and boolean combinations of the above.


Note: if you use the URL method for a Rapid Selector link, you must specify all parts of the view spec, or accept the defaults.

Generally, the last command you type has precedence over earlier commands.

The Rapid Selector also lets you add search filters to most views. Here are some examples:

The following example rapid selector expression to all items in the ProductAlpha space with the feature tag. It sets the view to all time in full, and, by specifying (), cancels any existing searches.

/::productalpha :feature all full ()

The following example rapid selector expression will display to all items in the current space that have the feature tag, and shows only those paragraphs that have both the V2 and to do tags. It sets the view over the current Year and displays entries in brief volume.

/:feature i(:v2 AND :todo) year brief

Note that defaults for unspecified parameters (e.g. the space) will be taken from the current view. Also, if the current view is a search and a new search is not specified in parentheses, you can add empty parentheses -- () -- at the end of the expression to cancel the search.

View Type



You can type any of these to change to the corresponding view. The time slice will not be changed.

Full Command

Abbreviation

Effect: when navigating, specifies the requested type of view.

chron

C

Navigate to a reverse chronology view.

newspage

N

Navigate to the dashboard ("newspage") view for the current space.

home, frontpage

h, fp

Navigate to the all spaces dashboard ("front page" or "home page").



You can also use the Rapid Selector to jump to a view of one or more specified articles. Just type the Traction IDs of the articles. If the article in the same space the current page is focused on, you do not have to include the space name portion of the Traction ID.

Example

Effect: navigates to a view displaying one or more specific entries.

/9

Navigate to a single-entry view of entry 9 in the current space.

/Foo9

Jump to a single-entry view of entry 54 in the space whose name begins with "Foo". You must type enough characters of the space name to uniquely identify it.

/9 star1 productalpha74

Jump to a multi-entry view consisting of entry 9 in the current space, entry 1 in the StarCustomer space and entry 74 in the ProductAlpha space.



You can also use the Rapid Selector to navigate to tag-driven views; see below.

Time slice



The time slice is specified either by a date and a calendar size (e.g. day, week, month, quarter, year) or by an explicit range of dates.

When a time slice is specified in conjunction with a particular date, the slice will span the dates that includes that date. For example, if the requested time slice type is "week," and the requested date is January 7, 2014, the resulting date range would cover Sunday, January 5, 2014 through Saturday, January 11, 2014. When the time slice is specified in this manner, the single requested date is preserved so that the time slice type can be changed while still being anchored to cover that date. Starting with the previous example, if the date range for the week covering January 7, 2014 had been requested, if we then typed just "day" with no date, the resulting date range would cover the single day of January 7, 2014.

Note that, currently, the week is always defined as Sunday through Saturday.

Note that the exact time and date range that is covered by a query scoped to a requested time or date range is always with respect to the requesting user's time zone.

Date



Full Command

Abbreviation

Effect: when navigating, sets the date range of the resulting view.

today

t

Sets the date range to a time slice that covers the current date, preserving the current time slice.

yesterday

yesterday

Sets the date range to a time slice that covers yesterday's date, preserving the current time slice.

day monday
day tuesday
etc.

mon, tues, wed, thu, fri, sat, sun

Sets the date range to a time slice that covers just the one requested day of the week covered by the current view.

january
february
march
etc.

jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec

Sets the date range to a time slice covering the given month of the year covered by the current view.



To switch to a specific day, you can enter the date in one of several formats. When you enter a date, do not include any spaces.

Example

Format

Effect: when navigating, sets the target date or date range of the resulting view.

/12jan2014

DDmonYYYY

This is the least ambiguous form for specifying dates.

/12jan

DDmon

The specified day and month, of the year covered by the current view.

The following date formats are also supported.

/12jan14

DDmonYY

YY is '48-'99 means 1948-1999
YY is '00-'47 means 2000-2047

/jan27

monDD

If DD is 31 or less, means the specified month and day, day slice size, of the year covered by the current view. This example will link to the Day time slice, specifically on the 27th day of June.

/jan34

monYY

If YY is 32 or more, means the month slice size in the given year. This example will link to the Month time slice, specifically January, 2034.



Slice Size



The slice size can be set to any of these standard sizes.

Full Command

Abbreviation

Effect: when navigating, sets the time slice of the resulting view.

day

d

Set the slice size to a day.

week

w

Set the slice size to a week.

month

m

Set the slice size to a month.

quarter

q

Set the slice size to a quarter.

year

Y

Set the slice size to a year.

all

A

Set the slice size to all time.



Date Range



You can specify an explicit range of dates by typing two dates separated by a "-". You may optionally include spaces around the "-". When a date range is specified which does not correspond to a calendar week, quarter, month or year, the slice size is ignored.

Examples

/1april14 - 7april14

/jun21-sep17

Volume and Content Modifiers



Modifiers are effective in the single entry, multi-entry, topic, chronology and update views.

Full Command

Abbreviation

Effect: when navigating, sets the requested "volume" of content displayed in the resulting view.

brief

b

Show a brief view. The interpretation of "brief" depends on the specific view (e.g. a tag views shows only the paragraphs that carry the tag.)

full

f

Show a full view.

feed

 

Show an activity feed view.

details

 

Show a compact view with only entry titles and details.

titles

t

Show a compact view with only entry titles.



Clumping—Combining Letter Command Abbreviations



Any single letter abbreviations may be combined into a single word or "clump" without spaces. As long as the resulting word is not itself a valid command, each abbreviated command will be interpreted.

Example

Effect: navigation.

/nwt

Show this week's newspage (newspage week today)

/cbtw

A brief chronology of this week.



Moving through Time



These commands allow you to move and stretch the current calendar timeslice back and forward.

Command

Effect: navigates to a page with a time slice translation/transformation applied to the current view's time slice.

-

Move back in time by the current slice size. E.g. if slice size is a week, this moves to the previous week. If the slice size is all, this doesn't do anything.

+

Move forward in time by the current slice size.

-n

Move the slice backward by n times, e.g. if the current slice is a week, -2 moves backward two weeks.

+n

Move the slice forward by n times.

--

Extend the slice back by the current slice size. If the current slice is this month, the resulting slice will be last month and this month.

++

Extend the slice forward by the current slice size.

--n

Extend the slice back by the n slices of the current size. If the current slice is this month, typing ñ-4 the resulting slice will be this month and the 3 months preceding it.

++n

Extend the slice forward by n slices of the current size.



Finding People



The "profile" keyword can be used to navigate to the profile of a user, or search for users.

Full Command

Effect: navigates to a user profile page, or searches for a user.

/profile [username]

Search for people with the matching profile. If only one match is returned, navigate to that person's profile page. For example:
/profile foobar
Should find the user called "foobar".



Changing Spaces



You can refer to a space with the Rapid Selector by typing the name of a space preceded by double colons -- "::". If you are looking at the MarketResearch dashboard and you wish to switch to the ProductAlpha dashboard, just type /::productalpha

Note that, as with the space name supplied as part of a Traction ID used to navigate to one or more specific entries, the space name only needs to include enough letters in a space or tag name to identify it uniquely.

Viewing by Tag



The Rapid Selector lets you type just a few characters to jump to a view of all entries that carry a tag (or at least one of any set of tags). You only have to type the minimum number of letters to uniquely identify a tag name.

If the wildcard character "*" appears in a tag name expression, the resulting view will display entries with any of the tags whose names that match that expression, but with at least one character in place of the "*". For example, the expression /:head* would expand to cover the tags "headline" and "headstart", but would not cover the tag "head".

Command

Effect: navigating to a view that shows the entries that carry at least one of the requested tags.

:news

Shows entries that have the news tag in the current space.

::*:news

Shows entries that have a tag called "news" from any space. (Obviously, as with any view, this would only cover the entries the requesting user is allowed to read, and would only expand to tags that the requesting user is allowed to read.)

:ne

Shows entries that have the tag from the current space whose name starts with "ne". If multiple tag names match, the user will be prompted to select from the possible matches.

:ne*

Shows entries that have at least one of any tags from the current space whose names start with "ne", followed by at least one additional character.

:b:o

TeamPage informally supports the concept of "nested" tag names, with the colon character used to indicate the nesting prefix or prefixes. If, e.g., there were a tag named "bug:open" in the current space, this expression would be equivalent to :bug:o which would be equivalent to :bug:open . If the expression were ambiguous -- that is, if there were multiple tag names that might match -- the user will be prompted to select from the possible matches.

:*

In keeping with the example for the previous expression, this expression might navigate to a view of all entries that have the tags "bug:open" or "bug:closed" from the current space.

::ProductAlpha:news ::MarketResearch:news

Shows all entries that have a "news" tag from either or both of the ProductAlpha or MarketResearch spaces.



The Rapid Selector also supports navigating to a view of entries that had a tag added or removed during a given time period. To see the entries to which a tag was added during a time slice, use the keyword added; to show the entries from which a given tag was removed, use the keyword removed.

Command

Effect: navigating to a view showing entries that have had one of the requested tags added or removed.

":done" added

Shows entries to which the "done" tag from the current space was added during the current time slice, as long as the tag is still present.

":todo" removed

Shows entries from which the "to do" tag from the current space was removed during the current time slice, as long as the tag is still gone.



Searching with the Rapid Selector



Rapid Selector commands can contain search expressions in conjuction with most view specifications. Search expressions will be applied to the resulting view. Search expressions should be nested in parenthesis to ensure they are interpreted separately from view specification keywords, tags, etc. -- e.g.,
/chron day today (a(bob) and not ::FooBar)
which would return only articles authored by Bob that are not in the space "FooBar".

Command

Effect: when navigating, applies a search expression to the resulting view.

word

Matches any item that contains the specified word, without regard to case. This is shorthand for c(word) (see below). Words may be typed without the preceeding / character if used without any other Rapid Selector command.

c(word)

Matches any item that contains the specified word. Content search expressions that are specified with the lowercase c character use case-insensitive matching.

C(word)

Matches any item that contains the specified word. Content search expressions that are specified with the uppercase C character use case-sensitive matching.

c("phrase made up of several words")

Matches any item that contains the specified phrase. Phrases must be surrounded by quotes. For case specific, use C() instead of c(). Phrases may be typed without the preceeding / character if used without any other Rapid Selector command.

a(user)

Matches any entry that was authored by the specified user.

u(user)

Matches any entry that was updated (edited) by the specified user.

()
(:"foo bar")

Tags in search expressions match any item (paragraph) that carries the requested tag. The tag name must be enclosed in at least one level of parentheses to ensure that it is inpreted as a search filter rather than a request to show a tag-driven view, although tag search expressions can be applied to the rapid selector command used to navigate to a tag-driven view.

(::Foo)

Space names preceded by double colons in search expressions match entries belonging to the given space. The space name must be enclosed in at least one level of parentheses to ensure that it is inpreted as a search filter rather than part of the view specification to set the target space for the requested view.

The rest of this table contains special or complex cases.

word AND word

Matches any item that contains both specified words, without regard to case. This is shorthand for c(word1 AND word2) below.

word OR word

Matches any item that contains either of the specified words, without regard to case. This is shorthand for c(word1 OR word2) below.

c(word1 AND word2)

The contains commands c() and C() may include the operators AND, OR and NOT joining together the arguments of the expression. The resulting command is transformed into the expression (c(word1) AND c(word2)) (see below).

c(word1 OR word2)

Transformed into the expression (c(word1) OR c(word2)).

c(word1 word2)

If multiple words are included in contains commands without an operator, AND is implied. Transformed into the expression (c(word1) AND c(word2)).

a(user1 OR user2)

Same as for c(), but since an entry can not have more than one author, AND is not allowed.

Transformed into the expression (a(bob) OR a(jane)).

a(user1 user2)

a(not jkn)
a(~ jkn)

Transformed into the expression (not a(bob)). Note: there must be a space between the ~ and the argument.

c("and not")

Look for the phrase "and not". (If quotes are not used, the search would have been transformed into (c() AND (NOT c())).)



More complex search expressions may be made up of the above commands as well as any of the operators below. Note that expressions which contain operators must be enclosed in ()'s.

Operator

Effect: when navigating, applies a complex search expression to the resulting view.

(expr AND expr)
(expr & expr)

Matches if both expressions match. Operators can be typed in either uppercase or lowercase.

(expr OR expr)
(expr | expr)

Matches if either expression matches.

(NOT expr)
(~ expr)

Matches if the contained expression does not match.

i(expr)

Require that all matches within expression match on the same paragraph (or "item") within an article (entry). E.g. i(:news and :views) requires that both tags exist within the same paragraph, not just the same article.

n(0)
n(1)
etc.

In association with the i() operator, the n() operator may be used to specify the number of the paragraph (or "item") to which a search must apply. The "number" refers to the number corresponding to the paragraph's current position in the entry. For example, the expression i(n(0) and expr) would apply the search expression given by "expr" only to item number 0 -- the title item.

id(0)
id(1)
etc.

In association with the i() operator, the id() operator may be used to specify the ID of the paragraph (or "item") to which a search must apply. unlike the paragraph's number, the ID refers to a persistent numeric identifier that "follows the paragraph around" even if it is moved, or if other paragraphs are inserted before it during a later revision. For example, the expression i(id(1) and expr) would apply the search expression given by "expr" only to item number 1, which will be whatever paragraph was the first paragraph after the title when the entry was first created, as long as that paragraph has not been removed. ID search expressions are not used very much because they are rarely applicable.

e(expr)

Allow the matches contained in expression to match as long as they are contained within the same article (the term article is also referred to as entry). E.g. e(:news and :views) requires that both tags exist within the same article, regardless of whether they are contained in the same item.

(:tag1 :tag2)

If multiple tags occur in an expression, OR is implied; this is the same as (:tag1 OR :tag2).

(:tag:*)

If ambiguous wildcards occur in expression, the expression is transformed into the OR of all the matching tags, e.g. :bug:*) might evaluate to :bug:open OR :bug:closed)



Command

Effect: removes a search expression.

()

Navigates to a view that is the same as the current view but with the search expression removed.



This is a useful expression since in most cases the search expression for the current view will apply to a view reached via Rapid Selector command unless the search is explicitly removed.

Command

Effect: removes a search expression.

()

Navigates to a view that is the same as the current view but with the search expression removed.



Search Examples



Here are several example searches. In some cases, additional Rapid Selector commands have been included. Remember that a / is required when typing these commands into the search box.

Search Expression

Effect

/a(bob)

Show all articles in the current timeslice authored by bob.

/a(bob) abc

Show a brief chronology of all the entries in the current space authored by bob.

/abc (a(bob) and c(meeting))

Show a brief chronology of all the entries in the current space that were authored by bob and that contain the word meeting.

/i(c(meeting and notes))

Show all the entries in the timeslice which have paragraphs that contain both the words "meeting" and "notes".

/(a(jkn) & i(c(meeting and notes)))

Same as the previous example but showing only those matches authored by bob.

/C(Carlos & ! Associates)

Show all articles which contain the word Carlos but not the word Associates, using case-sensitive matching.

/I(c(this and not that))

Show all entries with paragraphs that contain the word "this" but not the word "that".

/:news ab c(future)

Search the view of all entries with the "news" tag from the current space, across all time, containing the word "future", displaying the results in "brief" content volume. When searching for entries that carry a tag, it is best to use a tag-driven view as the base view and apply search expressions (for content, tags, etc.) to that view with search expressions, rather than using a search expression that matches a tag.

/:foo ((:bar AND :baz) OR (:good and :bad)

Applies a search expression to a view of entries carrying the "foo" tag from the current space, so that only entries are shown that either: have both the "bar" and "baz" tag from the current space; or have the "good" and "bad" tags from the current space.

/:foo i(n(0) and :bar)

Applies a search expression to a view of entries carrying the "foo" tag from the current space, so that only entries that have the "bar" tag on paragraph 0 -- the title paragraph, or "title item" -- are displayed.





Related Articles
Article: Doc176 (permalink)
Categories: :Doc:bulletin
Date: March 22, 2008; 4:09:37 PM EDT
Author Name: Documentation Importer
Author ID: importer