Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Overview

In PhixFlow, and attribute is equivalent to a column of data in a table. Use the stream attributes properties tab to specify the characteristics of the data column.  

This setting is not available from the repository browser. It opens from:

  • the Stream properties → Attributes table
  • other attribute lists. 

Stream Attribute Properties

For information about the properties toolbar, and about the sections Parent Details, Analysis Models, Description and Audit Summary, see Common Properties.  We recommend you always add a Description that explains the purpose of the item you are creating. 

For a full list of all the PhixFlow property tabs and windows, see Properties, Windows, Menus and Toolbars.

Basic Settings

FieldDescription
NameEnter the name of the attribute.
TypeSelect the attribute type for the data.
  • String for text strings 
  • Bigstring for text
  • Integer for text
  • Float for text
  • Decimal for text
  • Date for text
  • Datetime for text
  • Graphic for text
  • TrueFalse for text

Length

This field is available when Type is String. Enter the maximum number of characters allowed in text data. For unlimited text strings, set a Type of  Bigstring


PrecisionThis field is available when Type is Integer. Enter the maximum number of digits allowed in whole numbers.
Significant FiguresThis field is available when Type is Decimal. Enter the maximum number of total digits for decimal numbers. 

For example, to specify numbers must have two digits before and after the decimal point, such as 12.34, enter

significant figures 4

Decimal places 2

Decimal Places

This field is available when Type is Decimal. Enter the maximum number of digits allowed after the decimal point.


ScaleOnly applies to Decimal types. The number of digits after the decimal point; must be less than the number of significant figures.



Local

In most cases leave this option  Untick to keep both stream data and any result of using it in a calculation

Error rendering macro 'excerpt-include' : No link could be created for '_check_box_ticked'.
 for an attribute that you need to use in a stream calculation, but you do not need to keep the result.



Order

The order of the attributes in the stream. Stream attribute expressions are evaluated in this order. 

This is important when you need to use the results of a calculation in another attribute:

  • either in its expression
  • or in a $ variable 

In the attribute list, the attribute that calculates the result must come before the attribute that requires the result.


ExpressionThe expression used to generate the attribute value. This is written as a PhixFlow Expression. It must evaluate to a single value, of the type specified in the Type field.

Advanced

FieldDescription
IndexedTick this option if this field should be indexed in the underlying database. An indexed field should be used to increase performance on very large streams in the following situations:-
  • When 1 or more output pipes from the stream uses the field to 'Filter' the stream.
  • When 1 or more output pipes from the stream uses the field in a 'Sort/Group' by action.
Filter conditions are
case-independent by default

If ticked, new filter conditions on this field are case-insensitive by default. The filter window → Ignore Case check box inherits this setting; see Filters on Data Views. For case-insensitive filters, there is no difference if the attribute is also indexed. 

This option affects the behaviour of filters for PhixFlow instances running on Oracle or MariaDB (MySQL) databases.
For PhixFlow instances running on a SQL Server database, filters are always case-independent.


KeyFor in-memory streams, whether this field will be used as a key value. See How To: Summarise unsorted data with In Memory Streams.
Cache KeyIf a cache key is set, the value of this attribute persists throughout the stream calculation, rather than being created from scratch for each stream item as normal. This allows you to keep track of the calculation as it progresses. The cache key is an expression that is evaluated for each stream item, and of course it can use the existing value of the attribute, in other words, to value it had in the previous stream item processed in the stream calculation. This allows expressions to use the "persistent" attribute value on subsequent stream items. The expression provided in the Cache Key is evaluated for each stream item so that this "persistent" attribute can refer to multiple value keyed on the "Cache Key".

Access Permissions

FieldDescription
All Users Can View Data
User Groups

Attribute Types

If you load data without specifying a type what happens?

Does PhixFlow make a best guess at what the type is and if it's not sure, assumes string??

What if you want to change a format - e.g set a decimal or date format?

Which fields can have "null"?

String

Apply a string type to sequences of characters (i.e., letters, numerals, symbols and punctuation marks). By default string attribute types have a fixed length of how long?

do we need to tell users about any information-loss if data that is naturally a different type gets loaded as a string?

Bigstring

Apply a bigstring type to text strings over 4000 characters long. Bigstring is a different data type to string and has some restrictions on filtering, sorting and aggregation.

For PhixFlow instances that use an Oracle database, bigstrings cannot be sorted or aggregated. On Oracle bigstrings may only be filtered with the conditions:

  • (not) contains
  • is (not) null
  • (not) starts with
  • (not) ends with.

The maximum bigstring size can be configured in System Configuration → System Tuning → Maximum Bigstring Size.

Integer

Apply an integer type to whole numbers (not a fractions or decimals) that can be positive, negative, or zero. 

What happens if you attempt to load a float or decimal number into an integer attribute?

Float

Apply a float type to non-integer numbers with an undefined level of precision. Float numbers have:

  • significant figures: the total number of digits stored, 
  • decimal places: the number of digits after the decimal place.

Decimal

Apply a decimal type to non-integer numbers with a set level of precision. Decimals have a specific number of:

  • significant figures: the total number of digits stored, 
  • decimal places: the number of digits after the decimal place.

The maximum number of integer digits is therefore the significant figure minus the decimal places. By default, decimals have 10 significant figures and 2 decimal places, and therefore 8 integer digits.

If the number of integer digits present in a decimal field exceeds the specified format, running analysis will fail and PhixFlow will report an error.

If the number of decimal digits present in a decimal field exceeds the specified format, PhixFlow will discard the excess decimal places. For example, if a data record includes the number 12.3456, but the decimal type can have 4 significant figures and 2 decimal places, PhixFlow records 12.34.

Ensure your decimal type has the number of decimal places you need for yout data. Once the data is loaded into PhixFlow, you will not be able to recover excess decimal places.

Date

Apply a date type to representations of a calendar day.

Are there any specific formats to say are recognised/not recognised?

What about word formats e.g. Tuesday the fourteenth of February?

Datetime

Apply a datetime type to representations of a time, or day and time.

Are there any specific formats to say are recognised/not recognised?

Graphic

Is this still available?

TrueFalse

Apply a TrueFalse type to fields that can have the values true or false.

What happens if the field is empty? Or has something other than True/False?


  • No labels