본문으로 건너뛰기
Ontology Modeler Path

Change and hand off an ontology

Distinguish supported model edits from recreate migrations, then hand analysts Cypher and engineers an exact output contract.

12 min

When operational data changes, review the ontology definition, loading pipelines, and consuming Cypher together. This final lesson separates edits that Portal supports in place from changes that require a recreated resource and a data migration.

Understand supported edits

A saved entity or relation exposes Overview, Attributes, Data, and History, but not every field remains editable.

ChangeCurrent Portal behaviorImpact to inspect
Alias, description, tagsEditable under OverviewCanvas labels and search context
New nullable attributeAdditive schema edit is supportedCode output and NULL on existing rows
Display ColumnRead-only after creationGraph node captions
System nameRead-only after creationRecreate as a new resource
Remove or rename an attributeNot supported in placeMigrate data and pipelines before recreating
Change type or nullabilityNot supported in placeTransformation and data migration
Change Identity KeysNot supported in placeUpsert identity and duplicate behavior
Change relation Source or TargetRead-only after creationCreate a correctly directed relation

Unsupported schema edits show a message explaining that removing or renaming a column, changing its type or nullability, or changing Identity Keys is not supported. The same restriction applies to an empty resource, so verify names, keys, and types before creation.

Practice extending the model

Assume a new maintenance_events dataset arrives.

  1. In Modeling, create entity name iot_maintenance_event with alias Maintenance event.
  2. Add id as Text, NOT NULL and select it for Identity Keys and Display Column.
  3. Add the maintenance_events input and a transform or Code node to a Batch pipeline.
  4. Connect iot_maintenance_event as an Entity output with Upsert.
  5. Create relation iot_triggers from iot_machine to iot_maintenance_event.
  6. Output these structural relation columns.
ColumnMeaning
idStable unique relation-row ID
iot_machine_idSource iot_machine identity key id
iot_maintenance_event_idTarget iot_maintenance_event identity key id
  1. Confirm Ready and latest run Success for both pipelines.
  2. Verify each resource's Data tab and the result in Graph Explorer.

Saving a definition does not create data. Keep repeatable loading in pipelines.

Hand a result to an analyst

The selected collection and latest query are not continuously saved to the address bar. Share a reproducible bundle:

Collection: test1
Inspect: CNC machine connected to sensor_001
Expected result: 2 nodes, 1 relation
Query:
MATCH (s:`iot_sensor`)-[r:`iot_reads_from`]->(m:`iot_machine`)
WHERE s.id = 'sensor_001'
RETURN s, r, m
LIMIT 20

The analyst selects the same collection and pastes the Cypher into Query Console. Attach a screenshot when visual property confirmation matters.

Hand an output contract to an engineer

There is no collection README editor for a detailed contract. Keep purpose and owning team in the collection Description, and maintain the detailed contract in team documentation or code.

PipelineInput keyOutput key and resourceRequired columnsWrite mode
load_iot_machinesmachinesiot_machine Entityid and entity attributesUpsert
load_iot_reads_fromsensor_machine_linksiot_reads_from Relationid, iot_sensor_id, iot_machine_id, installed_atUpsert
Maintenance event loadmaintenance_eventsiot_maintenance_event Entityid and entity attributesUpsert
Machine-event link loadTeam-defined input keyiot_triggers Relationid, iot_machine_id, iot_maintenance_event_idUpsert

Also record types, nullability, the Code run arguments, and returned keys. After a pipeline change, inspect both run success and the target Data tab.

Use the actual permission roles

Portal's resource roles are Owner, Editor, and Viewer in the UI. Their internal permission names are owner, writer, and reader.

  • ModelerEditor on ontology resources and loading pipelines they change
  • EngineerEditor on input datasets and loading pipelines, Viewer on ontology resources they inspect
  • AnalystViewer on the collection and graph resources they query
  • Permission administratorOwner on collections whose membership and permissions they manage

Collection permission provides the basis for child-resource access. Grant only the minimum role required, and add a higher direct role only on a specific child when responsibility requires it.

Record the change

Use History on an entity or relation for its resource history. Also record intent, affected pipelines, verification Cypher, and rollback procedure in the team's change-management tool. Sidebar Recents is not a security audit log.

Course completion check

  • Entities and relations use valid lowercase system names.
  • Identity Keys and Display Column are configured.
  • Entity and Relation rows were Upserted through real Batch pipelines.
  • Results were verified in Data and Graph Explorer.
  • Additive edits are distinguished from recreate migrations.
  • Analysts and engineers can receive a reproducible contract.

You can now define a model, load its data, verify its graph, and hand off changes as one workflow.