LibreOffice: XDocumentRepository Interface Reference

LibreOffice LibreOffice 7.4 SDK API Reference

Loading...
Searching...
No Matches
Public Member Functions | List of all members
XDocumentRepository Interface Reference

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

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