バージョン番号 (メジャー、マイナー、パッチ) にノードを持たせるにはどうすればよいでしょうか? そんな感じ:
// Major
MERGE (M0:Semver:Major {v: 0})
MERGE (M1:Semver:Major {v: 1})
// Minor
MERGE (Mi0: Semver:Minor {v: 0 })
MERGE (Mi2: Semver:Minor {v: 2 })
MERGE (Mi10:Semver:Minor {v: 10})
// Patch
MERGE (P0:Semver:Patch {v:0})
MERGE (P2:Semver:Patch {v:2})
// Artifacts
MERGE (A1:Artifact {name:'Artifact 13afd'})
MERGE (A2:Artifact {name:'Artifact asdfk'})
MERGE (A3:Artifact {name:'Artifact 09sd2'})
MERGE (A4:Artifact {name:'Artifact skw30'})
// Versioning
MERGE (A1)-[:semver]->(M0) MERGE (A1)-[:semver]->(Mi0 ) MERGE (A1)-[:semver]->(P0)
MERGE (A2)-[:semver]->(M0) MERGE (A2)-[:semver]->(Mi0 ) MERGE (A2)-[:semver]->(P2)
MERGE (A3)-[:semver]->(M1) MERGE (A3)-[:semver]->(Mi2 ) MERGE (A3)-[:semver]->(P0)
MERGE (A4)-[:semver]->(M1) MERGE (A4)-[:semver]->(Mi10) MERGE (A4)-[:semver]->(P0)
RETURN *;

そして、目的のクエリ:
MATCH (A:Artifact)-[:semver]->(Mj:Semver:Major),
(A )-[:semver]->(Mi:Semver:Minor),
(A )-[:semver]->(Pt:Semver:Patch)
RETURN A.name, Mj.v, Mi.v, Pt.v
ORDER BY Mj.v asc, Mi.v asc, Pt.v asc