| LibreOffice
    LibreOffice 25.2 SDK API Reference | 
extends XRepository with document-specific functionality. More...
import "XDocumentRepository.idl";
 
  
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.
| 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.
| Element | the ODF element for which RDFa statements should be found | 
| 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. | 
| 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) 
| Subject | the subject of the RDF triple. | 
| Predicate | the predicate of the RDF triple. | 
| Object | the object of the RDF triple. | 
| RepositoryException | if an error occurs when accessing 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.
RDFa statements are handled specially because they are not logically part of any graph.
| Element | the element whose RDFa statement(s) should be removed | 
| 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. | 
| 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:
Subject Predicate
              XLiteral(Object->getText()^^RDFaDatatype) 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)?
| 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:contentattribute (may be the empty string). | 
| RDFaDatatype | the rdfa:datatypeattribute (may be NULL) | 
| 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. |