5 Replies Latest reply on Feb 17, 2011 5:25 PM by alwu-Oracle

    Design question for working with a subset of a model

      This may seem like a basic question...

      I've got one big semantic model of interrelated information. Different users have different views on the data they want to work with. I call them Documents. For example, if there are 1000 individuals of type "book", one user might create himself a Document that only lists 50 of them and their properties, and another user might want to work with a Document that only has 6 of them (any of which could overlap with the first user's).

      So I want to store information about whether a triple is in a particular Document. My naive approach is to create a PK column on my semantic table, and then have a Document table that defines the Documents and a DocumentTripleAssoc table that links the Documents to the triples via foreign keys. The problem with this is I can't use the Jena adapter, since I need to keep track of the primary keys of each triple and put that into the SQL for updates. I really wanted to use Jena Adapter...

      Or should I forget about the PK column and the Document tables, and model documents as RDF resources themselves, and link the statements to the documents? Problem with that is it requires reification, which kills my performance by a factor of 400% (reification takes 4 statements to say 1 thing).