Skip to content

Commit 8b5efa1

Browse files
authored
respond to review suggestions
1 parent 7622650 commit 8b5efa1

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

USING_NEO4J.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,9 @@ The python neo4j library used is py2neo, available in pypi at https://pypi.org/p
2121
We would like to that the folks at JHU/APL for their implementation of [STIX2NEO4J.py](https://github.com/opencybersecurityalliance/oca-iob/tree/main/STIX2NEO4J%20Converter), which this code is based on.
2222

2323
Only the DataSink (for storing STIX data) part of the DataStore object has been implemented. The DataSource part is implemented as a stub. However, the graph database can be queried using the neo4j cypher langauge within
24-
the neo4j browser
24+
the neo4j browser.
2525

26-
The main concept behind any graphs are nodes and edges. STIX data is similar as it contains relationship objects (SROs) and node objects (SDOs, SCOs and SMOs). The division of data in STIX is a natural fit
27-
into the Neo4j model. Additional edges are provided by STIX embedded relationships, which are expressed as properties in node objects.
26+
The main concept behind any graphs is nodes and edges. STIX data is similar as it contains relationship objects (SROs) and node objects (SDOs, SCOs and SMOs). Additional edges are provided by STIX embedded relationships, which are expressed as properties in STIX node objects. This organization of data in STIX is a natural fit for graph models, such as neo4j.
2827

2928
The order in which STIX objects are added to the graph database is arbitrary. Therefore, when an SRO or embedded relationship is added via the DataStore, the nodes that it connects may not be present in the database, so the relationship is not added to the database, but remembered by the DataStore code as an unconnected relationship. Whenever a new node is
3029
added to the database, the unconnected relationships must be reviewed to determine if both nodes of a relationship can now be represented using an edge in the graph database.
@@ -35,7 +34,7 @@ How to address this issue in the implementation has not been determined.
3534

3635
## Demonstrating a neo4j database for STIX
3736

38-
Open the neo4j desktop app create a new project named STIX.
37+
Open the neo4j desktop app and create a new project named STIX.
3938

4039
Select local DBMS on your local machine.
4140

@@ -49,7 +48,7 @@ Start the database.
4948

5049
<img src="docs/diagrams/start-dbms.png" width="500" height="120">
5150

52-
python demo.py \<STIX bundle file\> is used populate a local neo4j database which can be viewed using the neo4j browser.
51+
python demo.py \<STIX bundle file\> is used populate a local neo4j database, which can be viewed using the neo4j browser.
5352
A sample bundle file bundle--21531315-283d-4604-8501-4b7166e58c84.json is provided in the docs directory.
5453

5554
Open the neo4j browser to view the database.
@@ -60,7 +59,7 @@ Query using the cypher language.
6059

6160
<img src="docs/diagrams/query-for-incident.png" width="750" height="450">
6261

63-
Clicking left on a node, gives you a choice of adding all related nodes and edges, removing the node and its edges from the display, or locking the node position.
62+
Left-clicking on a node gives you a choice of adding all related nodes and edges, removing the node and its edges from the display, or locking the node position.
6463

6564
<img src="docs/diagrams/node-actions.png" width="500" height="320">
6665

@@ -72,6 +71,6 @@ Explore the graph.
7271

7372
<img src="docs/diagrams/exploring-the-graph.png" width="750" height="400">
7473

75-
View the node properties, by mousing on any node.
74+
View the node properties, by mousing-over any node.
7675

7776
<img src="docs/diagrams/node-properties.png" width="750" height="400">

0 commit comments

Comments
 (0)