SPIN Preferences

Represent SPARQL variables as can be used for low-level tuning of how queries are represented in the SPARQL RDF Syntax. The default option is to create a new blank node for each variable per query. The other option may lead to smaller files because URI nodes can be reused to store variables. However, this means that the SPIN RDF resource trees will share resources, making it more difficult to delete orphan nodes after editing.

Also generate sp:text representation of queries can be used if you want to take control over how sp:text is used. The property sp:text is an optional part of the SPIN RDF syntax, that can be used to associate a string representation with a query. By default, this property is not used when you enter new queries in TopBraid. However, if switched to "verbatim", then TopBraid will remember exactly how the query has been entered, including any formatting or inline comments that would otherwise be lost by the default rendering of queries. In the "verbatim only" mode, the system will no longer create SPIN RDF syntax triples at all, and only the sp:text. Note that while inside of TopBraid, the SPIN RDF triples mode is recommended because some features will work better if those triples are there. The other two options are only useful if you want to parse the SPIN queries with tools that do not have support for walking the SPIN RDF Syntax. The menu Model > SPIN RDF Syntax Conversion has menu items that help you convert between those syntaxes for existing files.

Add spin:ConstraintViolations to inferences can be switched on to have the system create inferred triples if constraint violations are found. The class spin:ConstraintViolation is used to represent each constraint violation, with additional details pointing to the source and description of the problem. Having those as triples makes it possible run other RDF machinery over them, e.g. to transform the violations into a report.

Strict argument checking can be activated as a testing and debugging aid of SPIN functions. In this mode, the SPIN engine will validate all provided arguments against the definitions of spl:Arguments in the corresponding SPIN function. It will flag missing non-optional arguments and also values of mismatching datatypes. Errors will be reported as warnings in the Error Log.