public Iterable<Statement> serialize( final EntityDescriptor entityDescriptor ) { Graph graph = new GraphImpl(); ValueFactory values = graph.getValueFactory(); URI entityTypeUri = values.createURI( Classes.toURI( first( entityDescriptor.types() ) ) ); graph.add( entityTypeUri, Rdfs.TYPE, Rdfs.CLASS ); graph.add( entityTypeUri, Rdfs.TYPE, OWL.CLASS ); graph.add( entityTypeUri, Qi4jEntityType.TYPE, values.createLiteral( first( entityDescriptor.types() ).toString() ) ); graph.add( entityTypeUri, Qi4jEntityType.QUERYABLE, values.createLiteral( entityDescriptor.queryable() ) ); serializeMixinTypes( entityDescriptor, graph, entityTypeUri ); serializePropertyTypes( entityDescriptor, graph, entityTypeUri ); serializeAssociationTypes( entityDescriptor, graph, entityTypeUri ); serializeManyAssociationTypes( entityDescriptor, graph, entityTypeUri ); return graph; }
private void indexEntityType( final EntityDescriptor entityType, final RepositoryConnection connection ) throws RepositoryException { if( entityType.queryable() ) { final URI compositeURI = getValueFactory().createURI( Classes.toURI(first( entityType.types() )) ); // remove composite type if already present connection.clear( compositeURI ); Iterable<Statement> statements = typeSerializer.serialize( entityType ); connection.add( statements, compositeURI ); } }
Class<?> type = first( descriptor.types() ); rows.add( new TableRow( 2, nameRow, type.getSimpleName() ) ); rows.add( new TableRow( 2, classRow, type.getName() ) );
public void serialize( final EntityState entityState, final boolean includeNonQueryable, final Graph graph ) { ValueFactory values = graph.getValueFactory(); EntityReference identity = entityState.identity(); URI entityUri = createEntityURI( values, identity ); graph.add( entityUri, Rdfs.TYPE, values.createURI( Classes.toURI( first( entityState.entityDescriptor().types() ) ) ) ); serializeProperties( entityState, graph, entityUri, entityState.entityDescriptor(), includeNonQueryable ); serializeAssociations( entityState, graph, entityUri, entityState.entityDescriptor().state().associations(), includeNonQueryable ); serializeManyAssociations( entityState, graph, entityUri, entityState.entityDescriptor().state().manyAssociations(), includeNonQueryable ); }
compositeUri = context.createCompositeUri( moduleUri, first( entityDescriptor.types() ) ); context.addType( compositeUri, Qi4jRdf.TYPE_ENTITY ); context.addRelationship( moduleUri, Qi4jRdf.RELATIONSHIP_ENTITY, compositeUri );