UI/Filtering and Searching

There are several locations throughout the DNAnexus platform give you the option to search within a certain context (for example, within a project) or filter existing items (for example, the list of projects to which you have access).

Jump to:

Filter Bars

You can perform advanced filtering on projects, data objects, and jobs using the filter bars above the table of results. This feature is displayed at the top of the Monitor tab but is hidden by default on the Manage tab and Projects page. You can display or hide the filter bar by toggling the filters button in the top right corner (see image below)

Filter bar toggle

The filter bar will allow you to specify different criteria on which to filter your data. The specific fields available are detailed in the sections below (Filtering Projects, Filtering Objects, Filtering Jobs). You can combine several different filters for greater control over your results.

To use this feature, first choose the field you want to filter your data by, then enter your filter criteria (e.g. select the "Name" filter then search for "NA12878"). The filter will usually be activated when you press or when you click outside of the filter bar.

Multi-Word Queries in Filters and Searches

When filtering on a name, any spaces will be expanded to include intermediate words. For example, filtering by "b37 build" will also return "b37 dbSNP build".

Filtering by dates

Some filters allow you to specify a date range for your query. For example, the "Created date" filter allows you to specify a beginning time ("From") and/or an end time ("To"). Clicking on the date box will open a calendar widget which allows you to specify a relative time period in minutes, hours, days, weeks, months, or an absolute time period by specifying a certain date.

If you select a relative time period, you will be able to represent it as some amount of time before the current time. For example, if you select "Day" and type in 5, you will be setting the datetime to the time 5 days prior to the current time.

Filter bar calendar widget

Alternatively, you can use the calendar to represent an exact (absolute) datetime.

If you only set the beginning datetime ("From"), the range will automatically be set from the "From" time to the present moment. If you only set the end ("To") datetime, the range will be set from the beginning of time to the "To" time.

Note that if you have a filter saved with a time period defined in relative terms, it will be calculated from the current time every time you load the filter. For example, if you have a saved filter showing all items created within the last two hours and you load it at 11am, it will show you everything created since 9am. But if you load it again at 4pm, it will show you everything created since 2pm. If you wanted consistent results when using a saved filter, make sure to specify an absolute datetime using the calendar widget.

Filtering by Tags and Properties

Tags

To search by tag, simply enter (or select) the tag(s) you're searching for. For example, if you're searching for all objects with the tag "human", enter human into the filter query box and tick the checkbox next to the tag.

Note that while normal searches on project titles only require you to type in part of the title, searches using the above keywords require the entire value to be typed in, although casing doesn't matter (so for example, a search for HUMAN and human will both find a project with the tag "Human", but Hum will not).

Properties

Properties have two parts: a key and a value. You'll be asked to enter each of these when you create a new property. Just like tags, properties allow you to create your own common attributes across multiple projects or items and find them quickly and easily. When searching for a property, you can either search for all items that have that property, or items that have a property with a certain value.

To search for all items that possess a property, regardless of the value of that property, simply select the "Properties" filter (not displayed by default), enter the property key, and hit . To search for items that possess a property with a certain value, enter that property's key and value.

Note that the keys and values must be entered in their entirety. For example, entering the key sample and the value NA will not find objects corresponding to {"sample_id": "NA12878"}!

Any vs. All queries

Some filters allow you to select multiple values. For example, the "Tag" filter allows you to specify multiple tags in the dialog. When you have selected multiple tags, you will have a choice whether to search for objects containing any of the the selected tags or containing all of the selected tags.

Given the following set of objects:

  • Object 1 (tags: "human", "normal")
  • Object 2 (tags: "human", "tumor")
  • Object 3 (tags: "mouse", "tumor")

Selecting both "human" and "tumor" tags, and choosing to filter by any tag will return all 3 objects. Choosing to filter by all tags will return only Object 2.

Filter bar any or all toggle

Clear all filters

Click the "Clear All Filters" button on the filter bar to reset your filters.

Data manager tab filter bar toggle

Saving filters

If you wish to save your filters, active filters are saved in the URL of the filtered page. You can bookmark this URL in your browser to return to your filtered view in the future.

Note that the bookmarked URL is a saved set of search parameters, not a saved set of search results. Every time you click on the bookmarked filters, those parameters will be loaded into the filter bar. For example, if your saved filters includes a filter for items created in the last thirty days, each time you click that search it will show you items created in the last thirty days from the current point in time, not thirty days before the URL was created. Thus, as time goes by, you may notice slightly different results every time you click on a saved search.

Filtering Projects

The following filters are available for projects. Filters listed in italics are not displayed in the filter bar by default but can be added by selecting them from the "Filters" dropdown menu on the right.

  • Billed to: The user or org ID that the project is billed to, e.g. "user-xxxx" or "org-xxxx". NOTE: When you are viewing a partner organization's projects, the Billed to field will be fixed to the org ID.
  • Project Name: Search by case insensitive string or regex, e.g. "Example" or "exam$" will both match "Example Project"
  • ID: Search by project ID, e.g. "project-xxxx"
  • Created date: Search by projects created before, after, or between different dates
  • Modified date: Search by projects modified before, after, or between different dates
  • Creator: The user ID who created the project, e.g. "user-xxxx"
  • Shared with member: A user ID with whom the project is shared, e.g. "user-xxxx" or "org-xxxx"
  • Level: The minimum permission level to the project. The dropdown will have the options "Viewer+", "Uploader+", "Contribuer+", and "Admin only". e.g. "Contributer+" will filter projects with access Contributer or Administer.
  • Tags: Search by tag. The filter bar will automatically populate with tags available on projects
  • Properties: Search by properties. The filter bar will automatically provide properties available on projects

For more information about the filter options, please visit the API documentation.

Filtering Objects

The following filters are available for objects. Filters listed in italics are not displayed in the filter bar by default but can be added by selecting them from the "Filters" dropdown menu on the right.

  • Search scope: The default scope is "Entire project", but if you know the location of the object you are looking for, limiting your search scope to "Current Folder" will allow you to search more efficiently.
  • Object name: Search by case insensitive string or regex, e.g. "NA1" or "bam$" will both match "NA12878.bam"
  • ID: Search by object ID, e.g. "file-xxxx" or "applet-xxxx"
  • Modified date: Search by objects modified before, after, or between different dates
  • Class: e.g. "File", "Applet", "Folder"
  • Types: e.g. "File" or custom Type
  • Created date: Search by objects created before, after, or between different dates
  • Tags: Search by tag. The filter bar will automatically populate with tags available on objects within the current folder
  • Properties: Search by properties. The filter bar will automatically provide properties available on objects within the current folder

When you filter on anything other than the current folder, you will get results from many different places in the project. The folders will be displayed in a lighter gray font and some actions will be unavailable (such as creating a new workflow or folder), but otherwise functionality will remain the same as in the normal data view.

For more information about the filter options, please visit the API documentation.

Filtering Jobs and Analyses

The following filters are available for executions. Filters listed in italics are not displayed in the filter bar by default but can be added to the bar by selecting them from the "Filters" dropdown menu on the right.

  • Search scope: The default displays root executions only, but you can choose to view all executions (root and subjobs) instead
  • State: e.g. Failed, Waiting, Done, Running, In Progress, Terminated
  • Name: Search by case-insensitive string or regex, e.g. "BWA" or "MEM$" will both match "BWA-MEM". This will only match the name of the job or analysis, not the executable name.
  • ID: Search by job or analysis ID, e.g. "job-1234" or "analysis-5678"
  • Created date: Search by executions created before, after, or between different dates
  • Launched by: Search by the user ID of the user who launched the job. The filter bar will automatically populate with users who have run the currently-shown jobs within the project
  • Tags: Search by tag. The filter bar will automatically populate with tags available on the currently-shown executions
  • Properties: Search by properties. The filter bar will automatically provide properties available on executions currently shown within the project
  • Executable: Search by the ID of executable run by the executions in question (e.g. app-1234 or applet-5678)
  • Class: e.g. Analysis or Job
  • Origin Jobs: ID of origin job
  • Parent Jobs: ID of parent job
  • Parent Analysis: ID of parent analysis
  • Root Executions: ID of root execution

For more information about the filter options, please visit the API documentation.

Last edited by pmurray, 2017-06-28 17:59:40

 Feedback