LibreOffice: XDocumentRepository Interface Reference

LibreOffice LibreOffice 26.2 SDK API Reference

Loading...
Searching...
No Matches
XDocumentRepository Interface Reference

extends XRepository with document-specific functionality. More...

`import "XDocumentRepository.idl";`

Inheritance diagram for XDocumentRepository:

## Public Member Functions
void | setStatementRDFa ([in] XResource Subject, [in] sequence< XURI > Predicates, [in] XMetadatable Object, [in] string RDFaContent, [in] XURI RDFaDatatype) raises ( com::sun::star::lang::IllegalArgumentException, RepositoryException )
| update the RDFa statement(s) that correspond to an ODF element in the repository.
void | removeStatementRDFa ([in] XMetadatable Element) raises ( com::sun::star::lang::IllegalArgumentException, RepositoryException )
| remove the RDFa statement(s) that correspond to an ODF element from the repository.
com::sun::star::beans::Pair< sequence< Statement >, boolean > | getStatementRDFa ([in] XMetadatable Element) raises ( com::sun::star::lang::IllegalArgumentException, RepositoryException )
| find the RDFa statement(s) associated with an ODF element.
com::sun::star::container::XEnumeration | getStatementsRDFa ([in] XResource Subject, [in] XURI Predicate, [in] XNode Object) raises ( RepositoryException )
| gets matching RDFa statements from the repository.
Public Member Functions inherited from XRepository
XBlankNode | createBlankNode ()
| creates a fresh unique blank node.
XNamedGraph | importGraph ([in] short Format, [in] com::sun::star::io::XInputStream InStream, [in] XURI GraphName, [in] XURI BaseURI) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::datatransfer::UnsupportedFlavorException, com::sun::star::container::ElementExistException, ParseException, RepositoryException, com::sun::star::io::IOException )
| imports a named graph into the repository.
void | exportGraph ([in] short Format, [in] com::sun::star::io::XOutputStream OutStream, [in] XURI GraphName, [in] XURI BaseURI) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::datatransfer::UnsupportedFlavorException, com::sun::star::container::NoSuchElementException, RepositoryException, com::sun::star::io::IOException )
| exports a named graph from the repository.
sequence< XURI > | getGraphNames () raises ( RepositoryException )
| gets the names of all the graphs in the repository.
XNamedGraph | getGraph ([in] XURI GraphName) raises ( com::sun::star::lang::IllegalArgumentException, RepositoryException )
| gets a graph by its name.
XNamedGraph | createGraph ([in] XURI GraphName) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::container::ElementExistException, RepositoryException )
| creates a graph with the given name.
void | destroyGraph ([in] XURI GraphName) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::container::NoSuchElementException, RepositoryException )
| destroys the graph with the given name, and removes it from the repository.
com::sun::star::container::XEnumeration | getStatements ([in] XResource Subject, [in] XURI Predicate, [in] XNode Object) raises ( RepositoryException )
| gets matching RDF statements from the repository.
XQuerySelectResult | querySelect ([in] string Query) raises ( QueryException, RepositoryException )
| executes a SPARQL "SELECT" query.
com::sun::star::container::XEnumeration | queryConstruct ([in] string Query) raises ( QueryException, RepositoryException )
| executes a SPARQL "CONSTRUCT" query.
boolean | queryAsk ([in] string Query) raises ( QueryException, RepositoryException )
| executes a SPARQL "ASK" query.

## Detailed Description

extends XRepository with document-specific functionality.

This subclass of XRepository provides some methods which only make sense for repositories that are attached to a document. For example, the methods allow for manipulating in-content metadata, which is stored as RDFa.

Since
  OOo 3.2

See also
  XRepositorySupplier
  XDocumentMetadataAccess

## Member Function Documentation

## ◆ getStatementRDFa()

com::sun::star::beans::Pair< sequence< Statement >, boolean > getStatementRDFa | ( | [in] XMetadatable | Element | ) |
raises | ( | com::sun::star::lang::IllegalArgumentException,
|  | RepositoryException ) |  |  |

find the RDFa statement(s) associated with an ODF element.

Parameters

  Element | the ODF element for which RDFa statements should be found

Returns
  - if the element has no RDFa meta-data attributes: the empty sequence.
  - if the element has RDFa meta-data attributes:
    - a sequence with the RDFa-statements corresponding to the attributes.
    - a flag indicating whether there is a xhtml:content attribute.

Exceptions

  com::sun::star::lang::IllegalArgumentException | if the given Element is NULL, or of a type that can not have RDFa metadata attached.
  RepositoryException | if an error occurs when accessing the repository.

See also
  Statement

## ◆ getStatementsRDFa()

com::sun::star::container::XEnumeration getStatementsRDFa | ( | [in] XResource | Subject,
|  | [in] XURI | Predicate,
|  | [in] XNode | Object )
raises | ( | RepositoryException ) |  |  |

gets matching RDFa statements from the repository.

This method exists because RDFa statements are not part of any named graph, and thus they cannot be enumerated with XNamedGraph::getStatements().

Any parameter may be NULL, which acts as a wildcard. For example, to get all statements about myURI: `getStatementsRDFa(myURI, null, null)`

Parameters

  Subject | the subject of the RDF triple.
  Predicate | the predicate of the RDF triple.
  Object | the object of the RDF triple.

Returns
  an iterator over all RDFa statements in the repository that match the parameters, represented as an enumeration of Statement

Exceptions

  RepositoryException | if an error occurs when accessing the repository.

See also
  Statement
  XRepository::getStatements
  XNamedGraph::getStatements

## ◆ removeStatementRDFa()

void removeStatementRDFa | ( | [in] XMetadatable | Element | ) |
raises | ( | com::sun::star::lang::IllegalArgumentException,
|  | RepositoryException ) |  |  |

remove the RDFa statement(s) that correspond to an ODF element from the repository.

RDFa statements are handled specially because they are not logically part of any graph.

Parameters

  Element | the element whose RDFa statement(s) should be removed

Exceptions

  com::sun::star::lang::IllegalArgumentException | if the given Element is NULL, or of a type that can not have RDFa metadata attached.
  RepositoryException | if an error occurs when accessing the repository.

## ◆ setStatementRDFa()

void setStatementRDFa | ( | [in] XResource | Subject,
|  | [in] sequence< XURI > | Predicates,
|  | [in] XMetadatable | Object,
|  | [in] string | RDFaContent,
|  | [in] XURI | RDFaDatatype )
raises | ( | com::sun::star::lang::IllegalArgumentException,
|  | RepositoryException ) |  |  |

update the RDFa statement(s) that correspond to an ODF element in the repository.

This method will do the following steps:

1. Remove all previously set RDFa statements for the Object parameter from the repository
2. If the RDFaContent parameter is the empty string, for every Predicate in the given list of Predicates, add the following RDF statement to an unspecified named graph:
   - `Subject Predicate XLiteral(Object->getText()^^RDFaDatatype)`
3. If the RDFaContent parameter is not the empty string, for every Predicate in the given list of Predicates, add the following RDF statement to an unspecified named graph:
   - `Subject Predicate XLiteral(RDFaContent^^RDFaDatatype)`

RDFa statements are handled specially because they are not logically part of any named graph in the repository. Also, they have rather unusual semantics; just using XNamedGraph::addStatement() would be ambiguous: if the object is a XMetadatable, do we insert the object itself (URI) or its literal content (RDFa)?

Parameters

  Subject | the subject of the RDF triple(s).
  Predicates | the predicates of the RDF triple(s).
  Object | the object of the RDF triple(s) is the text content of this parameter.
  RDFaContent | the `rdfa:content` attribute (may be the empty string).
  RDFaDatatype | the `rdfa:datatype` attribute (may be NULL)

Exceptions

  com::sun::star::lang::IllegalArgumentException | if any parameter is NULL, Predicates is empty, or Object is of a type that can not have RDFa metadata attached.
  RepositoryException | if an error occurs when accessing the repository.

The documentation for this interface was generated from the following file:

- com/sun/star/rdf/XDocumentRepository.idl