Description
Create a Statement Meta data query node and an optimizer to match such nodes. The purpose of the node is to match reified queries for statement metadata and during evaluation, issue the appropriate scan to Rya to extract the metadata. The objective here is to reduce the number of joins required to query metadata for a given statement. The reified metadata query will be reduced to a single scan where metadata properties are extracted from the value field of each serialized Rya statement. The user will have the option of specifying which metadata properties to query over in the event that some of the triples have been reified and others have not. If no statement metadata properties are specified, all properties associated with the reified blank node will be packaged into the StatementMetadataNode and only triples satisfying all of those properties will be returned (along with the values of the specified properties).