Tips and Tricks: Searching in Innoslate

There are many different types of views in Innoslate. The different views are meant to help users zone in on a particular part of that project’s database as they go through the lifecycle of their project. Each view brings their own unique capabilities and functionalities meant to make a systems engineer’s job easier as you work out of each view. With the amount of people invested into a project, there is never going to be enough ways to look at a project’s data. Therefore, Innoslate gives you numerous ways to look at your data. Not just from the views we’ve built into the tool, or Diagrams View with the 25 diagrams we provide there; but you can actually create what I like to personally call “My Favorite View” or “XYZ Report View” from Database View in Innoslate. This can be done with the Saved Queries function in Database View.

Before we can go further, we must establish a few things. First, Database View in Innoslate provides you all the objects existing in that project’s database. I like to think of it as your project’s database index by the classes of information and more (Database View even has other capabilities in it like our Roll-Up feature). There is a search bar given in this view to help you manipulate this view, so that you only pull up the information you are most concerned. To create this custom view, this can be done by entering your desired search query in the search bar. Furthermore, you can change the columns in this view with the settings option in the top right wrench of this view. If you are not familiar with query searching and it is used in Innoslate, I highly suggest trying out the filter capability on the left sidebar of Database View before building your own queries and saving them. As you click on the left sidebar the different things like the class of information you want to look at, attribute filters and labels, you will see your query build up in this search bar. This will give you a good feel as to how these queries build and gives you a real life example on how you can really bring in some detailed information here in Database View (things you can’t experience in a blog!). Lastly, the final thing to note before we move on, is the search function in Database View was just recently given a nice redesign in our most recent release Innoslate 4.3 deployed on 4/6/2020. So, there will be new information here if you’re already familiar with the basic functionality of this part of the tool. Now that we’ve got the fundamentals established, let’s dig into this more so the next time you need to pull a report out of Innoslate for a deadline, you pull the exact data you need into a report out of Database View in Innoslate with ease.

 

Let’s start with a basic overview on typing in search queries. Referencing the Innoslate Help Center on Searching for Entities in Database View, there are Basic Searches, Basic Searches with Qualifiers, then Advanced Searches. Let’s do a quick recap of the 3 main categories next.

 

**Please note, search query examples given in this blog are bolded. The bold is the only part to enter into the search bar.  Due to the blog format, I entered some example queries in parenthesis. Do NOT use the parenthesis if given in examples below!

 

Walkthrough of Searching in Database View

 

Basic Searches in Innoslate are queries for entities by name, word (or words) or number. You can perform these basic searches such as number (1.5) and word (system) or words (requirements document) by typing these into the search bar in Database View. Please note that multiple word queries, like (requirements document), will bring in entities containing the word requirements and entities containing the word document. So, don’t type that in expecting to see all your requirements documents (that’s the purpose of Documents View). However, if you are looking for specific entities in “XYZ document” out of Database View, then you should use the next type of search we are reviewing. We call these “Basic Searches with Qualifiers.”

 

“Basic Searches with Qualifiers” are simply queries to pull entities with certain qualifying criteria based on whatever qualifier you are using. You end these qualifiers with the desired data you are looking for so Innoslate can pull up those entities. The following are qualifiers supported in Innoslate:

 

 

labels:

id:

relationship:

relationshipid:

attributeid:

createdon:

diagram:

is:

order:

class:

name:

number:

 

 

When putting in your text after a qualifier above, it is important to note a couple options and/or tips and tricks to get exactly what you’re looking for (I’ll be adding in the advanced search techniques from the Help Center here as well):

 

As an example with the qualifier and if you’d like to see the entities with the label containing two sequential words like “XYZ Document” you do this by entering: (label:“XYZ Document”) Note to use the quotations before and after the sequence of words you like to see together.

 

You can also use AND & OR in your search to get even more refined results.  For the AND modifier, it is important you have both values on either side of the AND to find entities. The OR modifier requires only 1 value on either side of the OR to be found.  These modifiers can also be lowercase, used in combination with a single word, class qualifier, and/or label qualifier.  Examples:

 

  • label:”DoDAF Product” and Class:”Action” Pulls up entities that are labeled with the “DoDAF Product” and are the schema-based class Action.
  • new class:”Statement” OR label:Agreement – Pulls up entities with the word “new “that are labeled with Agreement or are the schema-based class Statement.

 

To find the inverse of entities, use the word NOT (note, no colon & no quotations). Which can be included with qualifiers such as: NOT Station class:Asset  which will pull up entities that do not have the word station and are of the schema-based class Asset.

 

Wildcards allow for searches with the percent sign (%) before or after a string of characters (letters or numbers). This allows you to search for any number of non-whitespace characters before or after a set of characters. If you are looking for any entity containing any word form of “sub…” (like if you are looking for words like subsystem and substitute), for this you would type in (name:sub%).

 

Prefixes can also be used and are great if you are trying to search for a specific string of combination of characters. Innoslate uses the asterisk (*) for prefixes. The asterisks are useful if you are looking for entities that start with the number 8 (8.*) or all your Verification Requirements that start with a (VR.*).

 

The final advanced search tip to note are Stop Words. Stop words are words or characters that are automatically filtered out of the search, if you were to type in a whole phrase. It’s best to not use this feature unless you must. These stop words are usually linking verbs, conjunctions, or pronouns. To see the full list of Innoslate stop words, please see those here. You will have to scroll down a little. However, if you want to use one of these stop words in your search, you can do so by entering the stop word with the percent sign (%) after.

 

The Newly Enhanced Attribute Search

 

The attribute search is a newer search we just released with Innoslate 4.3. I am very excited to be the first to write about this topic! The attribute search has been enhanced and includes much more functionality than before. In fact, it has enhanced so much there is not enough room in this blog to cover it one by one. Feel free to peruse the new functionalities for this here (scroll down a little).

 

What we will cover here is the way we address this on that website, so when you’re ready to start using this capability, you can review and read those with ease. If there’s anything I’ve learned, it’s not always about remembering every single detail, it’s remembering where and how to reference them! A couple basics to go over before I go into detail with this, like what attributes are so you know what you are actually searching for when using these queries. We go into further detail about attributes here in our Help Center, but essentially, attributes are inherent qualities to further describe an entity in the database; since entities are actual objects in a database, attributes are a specific data type in the database within Innoslate and actual attributes will vary depending on the entity’s class. In Innoslate out of the box, examples of attributes by the class are: Action has Duration and Percent Complete, Asset has Mass, Conduit has Latency and Capacity and so on. The last thing to note about attributes is the beauty of attributes and that is only because of the open schema provided in Innoslate, because with the Schema Editor, you are able to open up the schema and include your own attributes as well and select their data type.

 

Attribute data types supported in Innoslate are:

 

  • Text – a single character, single word, or multiple words
  • Number – any individual real number
  • Boolean – the two possible logical values “true” and “false”, can also be “yes” or “no”
  • Percent – a special case of Number where the value is restricted to values between zero and one hundred, inclusive
  • URI – a special case of Text where the value must be a Uniform Resource Identifier, or web address
  • DateTime – a specific method of storing a given date and time value
  • Enumeration – a set of defined choices, where the selection of only one choice is permitted
  • GeoPoint – a longitude and latitude pair on the surface of a body
  • Big Text – any multiple lines of text
  • File – an uploaded file
  • Duration – a specific method of storing a length of time value
  • Quality – any boolean parameter used to identify better requirements
  • Multiplicity – a number or number range

Innoslate supports the >, <, >=, <=, or = characters to search for attributes or attributes in ranges. So, when you see what operators are supported, that is the character you can use for each data type in that list.

The last thing to note about these examples with attributes, is that the class name does not require the class: qualifier. You simply need to type the class name, colon, quotation, attribute name, operator, value of what you’re searching for, end quotation. EXAMPLE:Action:”Duration:<=5Hours” This query will search for action entities with durations less than or equal to 5 hours.

Now that we’ve walked through nearly all of the possible search queries in Innoslate, you can start seeing once you get familiar with this type of search querying, you can build some great custom search queries to get the view of the data you specifically need right out of Database View. This is great because once you get the view exactly as you need it (queries + changing the columns with the settings in the wrench on the top right below your name icon), you can now save your queries and name them appropriately (“XYZ REPORT” “MY Favorite View” “Stakeholder John Smith View” “Mass Roll Up”). When you tie the saved queries with the report capability of Database View, you’ll be pulling out that report in CSV format in a matter of minutes (and definitely before your deadline)!