Mapping Schema to CSV for Import in Innoslate: A Walkthrough Guide
Importing Diverse Data Types into Innoslate Using a Custom Schema and CSV
Introduction
This guide provides a step-by-step walkthrough for mapping a customized schema to a CSV file for importing into Innoslate using the Import Analyzer tool. It focuses on customizing a project’s schema and formatting your CSV, where each row represents an entity (e.g., Asset) and each column represents an attribute (e.g., Name, Description, Number). The provided Data Type Importing Sample.csv serves as the example, designed to demonstrate importing every applicable Innoslate data type (e.g., Text, Number, Boolean, Percent, URI, DateTime, Enumeration, GeoPoint, Big Text, Duration, Equation, HTML, Quality, Multiplicity and Multiselect) for illustrative purposes.
For importing relationships via CSV, refer to this separate walkthrough.
Use Case Overview
This walkthrough uses a CSV file to showcase as the artifact to import a comprehensive set of Innoslate data types (15 of 18) in to Asset entities with their respective attribute data types. The CSV includes one header row, and one row per data type (19 rows total). Upon import each row will represent an Asset entity with the Data Type Name, its description and a single attribute populated to demonstrate the format and mapping for that data type. For example, the "Text" row has a value in the "Text" column, the "Boolean" row has a value in the "Boolean" column, and so on. This approach ensures users understand how to import and how to handle various data types when importing into Innoslate. The "Import?" column flags rows (e.g., "File", "UserTeam" and "Computable") as "N/A" to indicate they will not have an attribute for user reference. Note, "File", "UserTeam" and "Computable" data types will be imported as Assets in this example with no applicable attribute.
Prerequisites
- Download this CSV | 'Data Type Importing Sample.csv'
- Download and import this into a new Innoslate Project | 'Custom Schema CSV Import Walkthrough'
Step-by-Step Guide
Step 0: Confirm Your Project’s Schema
To support the diverse data types in the CSV, import the project and confirm the customized Innoslate schema includes the following 15 data type attributes.
Custom Attributes- Innoslate Schema Editor
- Navigate to the Schema Editor (Menu > Schema- under 'Tools') in Innoslate.
- Select 'Classes' on the left sidebar then select the 'Asset' class.
- Verify that each entity includes each custom attribute Name and Data Type listed below, ensuring they correspond exactly to the columns in the CSV. Throughout this list, you’ll find tips to help address specific formatting rules and requirements for accurate data import.
- Text (Text type)
- Number Data Type (Number type)
- Educational Tip: In Innoslate, “Number” is already a reserved attribute name. To prevent naming conflicts and ensure successful data mapping during import, always assign a unique name like “Number Data Type” for your custom number attributes in the schema. This practice supports data clarity and helps maintain schema integrity.
- Boolean (Boolean type)
- Default is set to ‘No’.
- Percent (Percent type)
- URI (URI type)
- DateTime (DateTime type)
- Enumeration (Enumeration type)
- Options include System 1, Subsystem 1 for this project's schema.
- GeoPoint (GeoPoint type)
- Big Text (Big Text type)
- Duration (Duration type)
- Units must start with a capitalized letter (i.e., Minutes, Hours, Years).
- Equation (Equation type)
- LaTeX field, but does not follow LaTeX importing rules
- HTML (HTML type)
- Quality (Quality type)
-
Default is set to ‘No’.
-
- Multiselect (Multiselect type with values: A, B ,C)
- When you need to import multiple values for a single multi-select attribute, they can be separated via commas in the same cell.
- Multiplicity
- Plain Text Field
Use Case Note: The schema must include every data type from the CSV (e.g., GeoPoint, Multiselect, etc.) to ensure proper mapping. This CSV is designed to test Innoslate’s support for all applicable importable data types. For further notes on data types not importable via CSV, please see our notes below.
Step 1: Import CSV
Step 1: Configure Import Analyzer- CSV
- Open the Import Analyzer in Innoslate (Menu> Import Analyzer) and select the Excel (.csv) tab.
- Choose the Document Type as "None" to load all schema classes, since this CSV focuses on the “Asset” class with diverse attributes.
- Set the default entity class to Asset from your schema.
- Select the attribute for fetching existing and related entities to “Global ID".
- Click Next to proceed.
Step 2: Select a File
- Drag and drop the Data Type Importing Sample.csv file into the upload area or browse to select it.
- Wait for the Analyzer Progress bar to show Done (100%).
- Click Next to move to mapping.
Use Case Note: The CSV’s structure (rows as Asset entities, columns as attributes) is ideal for demonstrating how Innoslate handles various data types, from simple (Text, Number) to complex (GeoPoint, Multiselect).
Step 3: Enter Custom Field Mapping (Schema Mapping)
This step maps CSV columns to your Innoslate project schema’s attributes.
Step 3: Enter Custom Field Mapping- Import Analyzer CSV
- Review auto-detected mappings picked up by the Import Analyzer based on Step 1, your schema, and CSV headers (e.g., "Text", "Number Data Type").
- If the mapping isn’t detected automatically, double-check that you’ve selected ‘Asset’ as the default class in Step 1.
- For each CSV column use the drop-down to map your column headers from the csv to your Innoslate project schema:
- In the 'Include' column, uncheck the Import? row to ensure this row is not imported (Row 4).
- Map Class to 'Class' attribute.
- Map Name to the 'Name' attribute.
- Map Description to 'Description' attribute.
- Text to the Text attribute.
- Number Data Type to the Number Data Type attribute
- NOTE: Number is selected by default; change it manually.
- Boolean to the Boolean attribute.
- Percent to the Percent attribute.
- URI to the URI attribute.
- DateTime to the DateTime attribute.
- NOTE: you’ll have to scroll down to the bottom for this one, as this data type has multiple format options.
- Select ‘MM/dd/yyyy'
- Enumeration to the Enumeration attribute.
- GeoPoint to the GeoPoint attribute.
- Big Text to the Big Text attribute.
- Duration to the Duration attribute.
- Equation to the Equation attribute.
- HTML to the HTML attribute.
- Quality to the Quality attribute.
- Multiselect to the Multiselect attribute.
- Note, multiple options are separated by commas in the csv.
- Multiplicity to the Multiplicity attribute.
- Multiplicity is a plain text field.
3. Click Next to preview.
Use Case Note: Each row in the CSV tests a specific data type, ensuring you map each column to its corresponding schema attribute. For example, the "Boolean" row tests the Boolean format, and the "Multiselect" rows tests multi-value handling.
Step 4: Verify and Complete the Import
Step 4: Import Preview- Import Analyzer
- Review the import preview to ensure mappings are correct. You should see 19 total entities: 1 Artifact and 18 Assets.
- If issues appear, click < Prev to adjust mappings or schema settings.
- Click Save to import the data into your project’s database.
Use Case Note: The import will create one Asset entity per row, each demonstrating a different data type except for the Computable, File and UserTeam entities (see notes below on DateTime, Computable, File and User Team data types). This allows you to verify Innoslate’s handling of nearly all data types, from simple (Boolean) to complex (GeoPoint, MultiSelect).
Step 5: Auto Navigate to Database View
- Once the Import is saved Innoslate will direct you to Database View.
- Note you'll see all 19 entities imported into the database.
- On the left sidebar, select 'Saved Queries' > 'My Asset Data Type Attributes Query'.
- This is a project level saved query that will allow you to view the Asset entities with their associated attributes as imported, as shown above.
Conclusion
This guide has provided a comprehensive walkthrough for importing a customized schema into Innoslate using the Import Analyzer tool with the Data Type Importing Sample.csv. By following the step-by-step process, users can successfully map and import a variety of Innoslate data types (e.g., Text, Number, Boolean, GeoPoint, Multiselect) into Asset entities, ensuring accurate data integration. The structured approach—verifying the schema, configuring the Import Analyzer, mapping CSV columns to schema attributes, and reviewing the import—ensures a seamless process.
Key considerations, such as avoiding reserved attribute names (e.g., “Number”), formatting multi-value fields like Multiselect, and handling non-importable data types (e.g., File, Computable), are critical for success. By adhering to the outlined best practices and leveraging the provided tips, users can confidently import complex datasets into Innoslate, enabling efficient project data management and customization.
Best Practices and Helpful Tips
- When importing a UserTeam datatype, remember your usernames must already be in the organization, project and schema editor. When importing UserTeams, use this format ('user: xyz'):
- user: johnmoore, user: tester
- To add File Data Types, you must use the Innoslate UI File upload feature. Importing a file within another file is not supported via the Import Analyzer.
- To add Computable Data Types use the Innoslate UI, as you'll indicate specific attributes of other entities to compute for this data type.
- For DateTime formats, note the following available formats:
- yyyy-MM-dd HH:mm:ss
- dd/MM/yyyy
- MM/dd/yyyy
- yyyyMMdd
- Custom Date
- Any value allowed for Custom Date, the data must match the cell.
- CSV Structure: The Data Type Importing Sample.csv uses rows for Asset entities and columns for attributes, with each row showcasing one data type for clarity.
- Schema Customization: Ensure all CSV attributes (e.g., Percent, MultiSelect) are defined in the schema to avoid mapping errors.
- Best Practices:
- Use consistent header names;
- import large files in batches,
- test mappings with a small CSV first.
To continue learning about Importing Relationships via CSV, Click Here.
(Next Article: CSV Import Relationship Tracing Walkthrough)