Language

The Free and Open Productivity Suite
Released: Apache OpenOffice 4.1.15

API

SDK

Tips ‘n’ Tricks

Miscellaneous


:: com :: sun :: star :: rdf ::

unpublished interface XDocumentRepository
Base Interfaces
XDocumentRepositoryXRepository

XRepository
(referenced interface's summary:)
provides access to a set of named RDF graphs.
Usage Restrictions
not published
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

Methods' Summary
setStatementRDFa update the RDFa statement(s) that correspond to an ODF element in the repository.  
removeStatementRDFa remove the RDFa statement(s) that correspond to an ODF element from the repository.  
getStatementRDFa find the RDFa statement(s) associated with an ODF element.  
getStatementsRDFa gets matching RDFa statements from the repository.  
Methods' Details
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 );

Description
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)?

Parameter Subject
the subject of the RDF triple(s).
Parameter Predicates
the predicates of the RDF triple(s).
Parameter Object
the object of the RDF triple(s) is the text content of this parameter.
Parameter RDFaContent
the rdfa:content attribute (may be the empty string).
Parameter RDFaDatatype
the rdfa:datatype attribute (may be NULL)
Throws
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.
Throws
RepositoryException if an error occurs when accessing the repository.
removeStatementRDFa
void
removeStatementRDFa( [in] XMetadatable  Element )
raises( ::com::sun::star::lang::IllegalArgumentException,
RepositoryException );

Description
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.

Parameter Element
the element whose RDFa statement(s) should be removed
Throws
com::sun::star::lang::IllegalArgumentException if the given Element is NULL, or of a type that can not have RDFa metadata attached.
Throws
RepositoryException if an error occurs when accessing the repository.
getStatementRDFa
::com::sun::star::beans::Pair< sequence< Statement >, boolean >
getStatementRDFa( [in] XMetadatable  Element )
raises( ::com::sun::star::lang::IllegalArgumentException,
RepositoryException );

Description
find the RDFa statement(s) associated with an ODF element.
Parameter 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.
Throws
com::sun::star::lang::IllegalArgumentException if the given Element is NULL, or of a type that can not have RDFa metadata attached.
Throws
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 );

Description
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)

Parameter Subject
the subject of the RDF triple.
Parameter Predicate
the predicate of the RDF triple.
Parameter 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
Throws
RepositoryException if an error occurs when accessing the repository.
See also
Statement, XRepository::getStatements, XNamedGraph::getStatements
Top of Page

Apache Software Foundation

Copyright & License | Privacy | Contact Us | Donate | Thanks

Apache, OpenOffice, OpenOffice.org and the seagull logo are registered trademarks of The Apache Software Foundation. The Apache feather logo is a trademark of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.