private void initialiseMetaConcepts ( TransactionOLTP tx ) { VertexElement type = tx . addTypeVertex ( Schema . MetaSchema . THING . getId ( ) , Schema . MetaSchema . THING . getLabel ( ) , Schema . BaseType . TYPE ) ; VertexElement entityType = tx . addTypeVertex ( Schema . MetaSchema . ENTITY . getId ( ) , Schema . MetaSchema . ENTITY . getLabel ( ) , Schema . BaseType . ENTITY_TYPE ) ; VertexElement relationType = tx . addTypeVertex ( Schema . MetaSchema . RELATION . getId ( ) , Schema . MetaSchema . RELATION . getLabel ( ) , Schema . BaseType . RELATION_TYPE ) ; VertexElement resourceType = tx . addTypeVertex ( Schema . MetaSchema . ATTRIBUTE . getId ( ) , Schema . MetaSchema . ATTRIBUTE . getLabel ( ) , Schema . BaseType . ATTRIBUTE_TYPE ) ; tx . addTypeVertex ( Schema . MetaSchema . ROLE . getId ( ) , Schema . MetaSchema . ROLE . getLabel ( ) , Schema . BaseType . ROLE ) ; tx . addTypeVertex ( Schema . MetaSchema . RULE . getId ( ) , Schema . MetaSchema . RULE . getLabel ( ) , Schema . BaseType . RULE ) ; relationType . property ( Schema . VertexProperty . IS_ABSTRACT , true ) ; resourceType . property ( Schema . VertexProperty . IS_ABSTRACT , true ) ; entityType . property ( Schema . VertexProperty . IS_ABSTRACT , true ) ; relationType . addEdge ( type , Schema . EdgeLabel . SUB ) ; resourceType . addEdge ( type , Schema . EdgeLabel . SUB ) ; entityType . addEdge ( type , Schema . EdgeLabel . SUB ) ; }
This creates the first meta schema in an empty keyspace which has not been initialised yet