## Uses of Class
org.eclipse.rdf4j.common.annotation.Experimental

- Packages that use Experimental
  Package | Description
  --- | ---
  org.eclipse.rdf4j.common.exception |
  org.eclipse.rdf4j.federated.write |
  org.eclipse.rdf4j.http.client.shacl |
  org.eclipse.rdf4j.http.server.readonly |
  org.eclipse.rdf4j.model | The RDF Model API
  org.eclipse.rdf4j.model.util | Helper classes for working with RDF models.
  org.eclipse.rdf4j.query | Interfaces and classes for handling queries and query results.
  org.eclipse.rdf4j.query.algebra | Abstract Query Algebra model.
  org.eclipse.rdf4j.query.algebra.evaluation |
  org.eclipse.rdf4j.query.algebra.helpers |
  org.eclipse.rdf4j.query.explanation |
  org.eclipse.rdf4j.query.resultio |
  org.eclipse.rdf4j.query.resultio.sparqlxml | Parsers and writers for the SPARQL Query Results XML Format
  org.eclipse.rdf4j.queryrender.sparql.experimental | This package contains classes for rendering RDF4J query objects as SPARQL queries.
  org.eclipse.rdf4j.sail | RDF Storage And Inference Layer (RDF Sail): a set of interfaces defining an SPI for RDF databases.
  org.eclipse.rdf4j.sail.elasticsearchstore | Elasticsearch store for string triples
  org.eclipse.rdf4j.sail.extensiblestore | Elasticsearch store for string triples
  org.eclipse.rdf4j.sail.extensiblestore.evaluationstatistics |
  org.eclipse.rdf4j.sail.shacl | A Sail implementation for SHACL constraint checking.
  org.eclipse.rdf4j.sail.shacl.config |
  org.eclipse.rdf4j.spring.support.query |

- Packages with annotations of type Experimental
  Package | Description
  --- | ---
  org.eclipse.rdf4j.queryrender.sparql.experimental | This package contains classes for rendering RDF4J query objects as SPARQL queries.
  org.eclipse.rdf4j.sail.extensiblestore | Elasticsearch store for string triples

- - ### Uses of Experimental in org.eclipse.rdf4j.common.exception

    Classes in org.eclipse.rdf4j.common.exception with annotations of type Experimental
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `ValidationException` | MAY BE MOVED IN THE FUTURE!

  - ### Uses of Experimental in org.eclipse.rdf4j.federated.write

    Classes in org.eclipse.rdf4j.federated.write with annotations of type Experimental
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `WriteStrategy` | Interface for the `WriteStrategy` that is used for writing data to the federation.

  - ### Uses of Experimental in org.eclipse.rdf4j.http.client.shacl

    Classes in org.eclipse.rdf4j.http.client.shacl with annotations of type Experimental
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `RemoteShaclValidationException` | Experimental support for handling SHACL violations against a remote RDF4J server.

  - ### Uses of Experimental in org.eclipse.rdf4j.http.server.readonly

    Classes in org.eclipse.rdf4j.http.server.readonly with annotations of type Experimental
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `QueryResponder` |
    `class` | `ReadOnlySparqlApplication` |

  - ### Uses of Experimental in org.eclipse.rdf4j.model

    Classes in org.eclipse.rdf4j.model with annotations of type Experimental
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `Triple` | An RDF-star embedded triple.

  - ### Uses of Experimental in org.eclipse.rdf4j.model.util

    Fields in org.eclipse.rdf4j.model.util with annotations of type Experimental
    Modifier and Type | Field | Description
    --- | --- | ---
    `static Function<Triple,​Resource>` | Statements.`TRIPLE_BNODE_MAPPER` | A `Function` that maps `Triple` to `BNode` consistently.

    Methods in org.eclipse.rdf4j.model.util with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Model` | Models.`convertRDFStarToReification​(Model model)` | Converts the statements in the supplied RDF-star model to a new RDF model using reification.
    `static void` | Models.`convertRDFStarToReification​(Model model, Consumer<Statement> consumer)` | Converts the supplied RDF-star model to RDF reification statements.
    `static Model` | Models.`convertRDFStarToReification​(ValueFactory vf, Model model)` | Converts the statements in supplied RDF-star model to a new RDF model using reificiation.
    `static void` | Models.`convertRDFStarToReification​(ValueFactory vf, Model model, Consumer<Statement> consumer)` | Converts the supplied RDF-star model to RDF reification statements.
    `static Model` | Models.`convertRDFStarToReification​(ValueFactory vf, Model model, ModelFactory modelFactory)` | Converts the statements in supplied RDF-star model to a new RDF model using reificiation.
    `static void` | Statements.`convertRDFStarToReification​(Statement st, Consumer<Statement> consumer)` | Converts the supplied RDF-star statement to RDF reification statements, and sends the resultant statements to the supplied consumer.
    `static void` | Statements.`convertRDFStarToReification​(ValueFactory vf, Function<Triple,​Resource> reifiedIdMapper, Statement st, Consumer<Statement> consumer)` | Converts the supplied RDF-star statement to RDF reification statements, and sends the resultant statements to the supplied consumer.
    `static void` | Statements.`convertRDFStarToReification​(ValueFactory vf, Statement st, Consumer<Statement> consumer)` | Converts the supplied RDF-star statement to RDF reification statements, and sends the resultant statements to the supplied consumer.
    `static Model` | Models.`convertReificationToRDFStar​(Model model)` | Converts the supplied RDF reification model to a new RDF-star model.
    `static void` | Models.`convertReificationToRDFStar​(Model model, Consumer<Statement> consumer)` | Converts the supplied RDF reification model to RDF-star statements.
    `static Model` | Models.`convertReificationToRDFStar​(ValueFactory vf, Model model)` | Converts the statements in supplied RDF reification model to a new RDF-star model.
    `static void` | Models.`convertReificationToRDFStar​(ValueFactory vf, Model model, Consumer<Statement> consumer)` | Converts the supplied RDF reification model to RDF-star statements.
    `static Model` | Models.`convertReificationToRDFStar​(ValueFactory vf, Model model, ModelFactory modelFactory)` | Converts the statements in supplied RDF reification model to a new RDF-star model.
    `static boolean` | Models.`legacyIsomorphic​(Iterable<? extends Statement> model1, Iterable<? extends Statement> model2)` | Deprecated. since 3.6.0 - use `Models.isomorphic(Iterable, Iterable)` instead.

  - ### Uses of Experimental in org.eclipse.rdf4j.query

    Methods in org.eclipse.rdf4j.query with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `default Explanation` | Query.`explain​(Explanation.Level level)` | Explain how the query will be (or has been) executed/evaluated by returning an explanation of the query plan.

  - ### Uses of Experimental in org.eclipse.rdf4j.query.algebra

    Methods in org.eclipse.rdf4j.query.algebra with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `String` | BinaryTupleOperator.`getAlgorithmName()` |
    `default double` | QueryModelNode.`getCostEstimate()` |
    `default long` | QueryModelNode.`getResultSizeActual()` |
    `default double` | QueryModelNode.`getResultSizeEstimate()` | Returns the number of tuples that this QueryNode predicts will be outputted.
    `default long` | QueryModelNode.`getTotalTimeNanosActual()` |
    `void` | BinaryTupleOperator.`setAlgorithm​(Iteration<BindingSet,​QueryEvaluationException> iteration)` |
    `default void` | QueryModelNode.`setCostEstimate​(double costEstimate)` |
    `default void` | QueryModelNode.`setResultSizeActual​(long resultSizeActual)` |
    `default void` | QueryModelNode.`setResultSizeEstimate​(double rows)` |
    `default void` | QueryModelNode.`setTotalTimeNanosActual​(long totalTime)` |

  - ### Uses of Experimental in org.eclipse.rdf4j.query.algebra.evaluation

    Methods in org.eclipse.rdf4j.query.algebra.evaluation with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | EvaluationStrategy.`setTrackResultSize​(boolean trackResultSize)` | Enable or disable results size tracking for the query plan.
    `default void` | EvaluationStrategy.`setTrackTime​(boolean trackTime)` | Enable or disable time tracking for the query plan.

  - ### Uses of Experimental in org.eclipse.rdf4j.query.algebra.helpers

    Classes in org.eclipse.rdf4j.query.algebra.helpers with annotations of type Experimental
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `QueryModelTreeToGenericPlanNode` | Convert TupleExpr (QueryModelNode) to GenericPlanNode for the Query.explain(...) feature.

  - ### Uses of Experimental in org.eclipse.rdf4j.query.explanation

    Classes in org.eclipse.rdf4j.query.explanation with annotations of type Experimental
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `Explanation` | This is an experimental feature.
    `static class` | `Explanation.Level` | The different levels that the query explanation can be at.
    `class` | `ExplanationImpl` | This is an experimental feature.
    `class` | `GenericPlanNode` | This is an experimental feature.

  - ### Uses of Experimental in org.eclipse.rdf4j.query.resultio

    Fields in org.eclipse.rdf4j.query.resultio with annotations of type Experimental
    Modifier and Type | Field | Description
    --- | --- | ---
    `static TupleQueryResultFormat` | TupleQueryResultFormat.`JSON_STAR` | SPARQL-star Query Results JSON Format (like SPARQL JSON but with RDF-star support).
    `static TupleQueryResultFormat` | TupleQueryResultFormat.`SPARQL_STAR` | SPARQL-star Query Results XML Format (like SPARQL/XML but with native RDF-star support).

  - ### Uses of Experimental in org.eclipse.rdf4j.query.resultio.sparqlxml

    Classes in org.eclipse.rdf4j.query.resultio.sparqlxml with annotations of type Experimental
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SPARQLStarResultsXMLParser` | Parser for reading tuple query results formatted as SPARQL Results Documents, extended with support for RDF-star triples
    `class` | `SPARQLStarResultsXMLParserFactory` | A `TupleQueryResultParserFactory` for parsers of extended SPARQL/XML tuple query results: `TupleQueryResultFormat.SPARQL_STAR`
    `class` | `SPARQLStarResultsXMLWriter` | A `TupleQueryResultWriter` that writes tuple query results in the extended form SPARQL Query Results XML Format.
    `class` | `SPARQLStarResultsXMLWriterFactory` | A `TupleQueryResultWriterFactory` for writers of extended SPARQL/XML tuple query results: `TupleQueryResultFormat.SPARQL_STAR`

  - ### Uses of Experimental in org.eclipse.rdf4j.queryrender.sparql.experimental

    Classes in org.eclipse.rdf4j.queryrender.sparql.experimental with annotations of type Experimental
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SparqlQueryRenderer` | An alternative implementation of the SPARQL query renderer (more complete than the default `SPARQLQueryRenderer`)

  - ### Uses of Experimental in org.eclipse.rdf4j.sail

    Methods in org.eclipse.rdf4j.sail with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `default Explanation` | SailConnection.`explain​(Explanation.Level level, TupleExpr tupleExpr, Dataset dataset, BindingSet bindings, boolean includeInferred, int timeoutSeconds)` | Explain how the TupleExpr will be (or has been) executed/evaluated by returning a TupleExpr (which may or may not be the provided TupleExpr) that has gone through zero or more of the stages prior to and also including execution as specified by the provided level.

  - ### Uses of Experimental in org.eclipse.rdf4j.sail.elasticsearchstore

    Classes in org.eclipse.rdf4j.sail.elasticsearchstore with annotations of type Experimental
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ElasticsearchStore` | An RDF4J SailStore persisted to Elasticsearch.
    `class` | `ElasticsearchStoreConnection` |

  - ### Uses of Experimental in org.eclipse.rdf4j.sail.extensiblestore

    Classes in org.eclipse.rdf4j.sail.extensiblestore with annotations of type Experimental
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `DataStructureInterface` | An interface to implement a base data structure for the ExtensibleStore.
    `class` | `ExtensibleStore<T extends DataStructureInterface,​N extends NamespaceStoreInterface>` | A store where the backing storage can be implemented by the user.
    `class` | `ExtensibleStoreConnection<E extends ExtensibleStore>` |
    `class` | `FilteringIteration<E extends ExtensibleStatement,​X extends Exception>` | A wrapper for an Iteration that filters the statements against a pattern similar to getStatements(Resource subject, IRI predicate, Value object, Resource...
    `interface` | `NamespaceStoreInterface` |
    `class` | `SimpleMemoryNamespaceStore` |

  - ### Uses of Experimental in org.eclipse.rdf4j.sail.extensiblestore.evaluationstatistics

    Classes in org.eclipse.rdf4j.sail.extensiblestore.evaluationstatistics with annotations of type Experimental
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `DynamicStatistics` | Interface to support evaluation statistics that keep their own internal estimates and need to be notified of added or removed statements.
    `class` | `EvaluationStatisticsEnum` | Enum to support multiple different EvaluationStatistics implementations.
    `class` | `EvaluationStatisticsWrapper` | A wrapper around a data structure to support evaluation statistics that need to be notified of added or removed statements.
    `class` | `ExtensibleConstantEvaluationStatistics` | ExtensibleDirectEvaluationStatistics provides evaluation statistics by using the default implementation.
    `class` | `ExtensibleDirectEvaluationStatistics` | ExtensibleDirectEvaluationStatistics provides evaluation statistics by directly querying the underlying data source.
    `class` | `ExtensibleDynamicEvaluationStatistics` | ExtensibleDynamicEvaluationStatistics aims to keep an internal estimate of the cardinality of various statement patterns.
    `class` | `ExtensibleEvaluationStatistics` |

  - ### Uses of Experimental in org.eclipse.rdf4j.sail.shacl

    Classes in org.eclipse.rdf4j.sail.shacl with annotations of type Experimental
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `ShaclSail.TransactionSettings.PerformanceHint` |
    `class` | `VerySimpleRdfsBackwardsChainingConnection` | Very simple RDFS backwardschaining connection that supports type inference on hasStatement and getStatement.

    Methods in org.eclipse.rdf4j.sail.shacl with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | ShaclSail.`isDashDataShapes()` | Support for DASH Data Shapes Vocabulary Unofficial Draft (http://datashapes.org/dash).
    `boolean` | ShaclSail.`isEclipseRdf4jShaclExtensions()` | Support for Eclipse RDF4J SHACL Extensions (http://rdf4j.org/shacl-extensions#).
    `void` | ShaclSail.`setDashDataShapes​(boolean dashDataShapes)` | Support for DASH Data Shapes Vocabulary Unofficial Draft (http://datashapes.org/dash).
    `void` | ShaclSail.`setEclipseRdf4jShaclExtensions​(boolean eclipseRdf4jShaclExtensions)` | Support for Eclipse RDF4J SHACL Extensions (http://rdf4j.org/shacl-extensions#).

  - ### Uses of Experimental in org.eclipse.rdf4j.sail.shacl.config

    Methods in org.eclipse.rdf4j.sail.shacl.config with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | ShaclSailConfig.`isDashDataShapes()` |
    `boolean` | ShaclSailConfig.`isEclipseRdf4jShaclExtensions()` |
    `void` | ShaclSailConfig.`setDashDataShapes​(boolean dashDataShapes)` |
    `void` | ShaclSailConfig.`setEclipseRdf4jShaclExtensions​(boolean eclipseRdf4jShaclExtensions)` |

  - ### Uses of Experimental in org.eclipse.rdf4j.spring.support.query

    Methods in org.eclipse.rdf4j.spring.support.query with annotations of type Experimental
    Modifier and Type | Method | Description
    --- | --- | ---
    `Explanation` | DelegatingGraphQuery.`explain​(Explanation.Level level)` |
    `Explanation` | DelegatingTupleQuery.`explain​(Explanation.Level level)` |