public interface Store
extends java.io.Serializable
Modifier and Type | Method and Description |
---|---|
void |
augmentNetworkForFragment(Fragment fragment,
Network network)
This method is recursive.
|
void |
augmentNetworksForFragment(Fragment fragment,
java.lang.String arcrole,
Networks networks)
This method is recursive.
|
void |
clearFilteringURIs()
Specify that the data store is not to filter query results to only come
from a specified set of URIs.
|
void |
close()
Close the data store.
|
void |
delete()
Close and then delete the data store.
|
void |
deleteDocument(java.net.URI uri)
This deletion method does not ensure that all other documents that
link to the document being deleted are also deleted.
|
void |
deleteRelatedDocuments(java.net.URI uri)
This deletion method ensures that all related documents
are also deleted from the data store.
|
java.util.Set<java.lang.String> |
getAllFactIndices() |
java.util.List<Fact> |
getAllFacts() |
java.util.List<Fact> |
getAllFacts(java.net.URI uri) |
Analyser |
getAnalyser() |
java.util.Set<java.lang.String> |
getArcIndicesWithArcrole(java.lang.String arcrole) |
java.util.Set<java.lang.String> |
getArcIndicesWithLinkIndex(java.lang.String linkIndex) |
java.util.Set<java.lang.String> |
getArcroles() |
java.util.Set<java.lang.String> |
getArcroles(java.lang.String linkRole) |
java.util.List<ArcroleType> |
getArcroleTypes() |
java.util.List<ArcroleType> |
getArcroleTypes(java.lang.String uri) |
java.util.List<Arc> |
getArcs(java.lang.String linkIndex) |
java.util.List<Arc> |
getArcs(java.net.URI arcrole,
java.lang.String linkIndex) |
<F extends Fragment> |
getChildFragments(java.lang.Class<?> childClass,
java.lang.String parentIndex) |
<F extends Fragment> |
getChildFragments(java.lang.String interfaceName,
java.lang.String parentIndex)
Deprecated.
|
org.w3c.dom.Document |
getCompositeDocument()
Get all data in the store as a single XML DOM object including
the annotations used in the
XBRLComposer project.
|
Concept |
getConcept(java.lang.String namespace,
java.lang.String name) |
org.w3c.dom.Element |
getDocumentAsDOM(java.net.URI uri)
Get a single document in the store as a DOM.
|
java.util.List<java.net.URI> |
getDocumentsToDiscover() |
java.util.Set<java.net.URI> |
getDocumentURIs()
Get a list of the URIs that have been stored.
|
java.util.Set<java.lang.String> |
getExtendedLinkIndices(java.lang.String linkRole) |
java.util.List<ExtendedLink> |
getExtendedLinks(java.lang.String linkrole) |
java.util.Set<java.lang.String> |
getFactIndices() |
java.util.List<Fact> |
getFacts() |
java.util.List<Fact> |
getFacts(Concept concept) |
java.util.List<Fact> |
getFacts(java.lang.String namespace,
java.lang.String localname) |
java.util.List<Fact> |
getFacts(java.net.URI uri) |
java.util.Set<java.net.URI> |
getFilteringURIs() |
java.util.Set<java.lang.String> |
getFragmentIndices(java.lang.String interfaceName) |
java.util.Set<java.lang.String> |
getFragmentIndicesFromDocument(java.net.URI uri) |
java.util.Set<java.lang.String> |
getFragmentIndicesFromDocument(java.net.URI uri,
java.lang.String interfaceName) |
<F extends Fragment> |
getFragmentsFromDocument(java.net.URI uri,
java.lang.Class<?> fragmentClass) |
<F extends Fragment> |
getFragmentsFromDocument(java.net.URI uri,
java.lang.String interfaceName)
Utility method to return a list of fragments in a data store
that have a type corresponding to the specified fragment interface name and
that are in the document with the specified URI.
|
<D extends SchemaDeclaration> |
getGlobalDeclaration(java.lang.String namespace,
java.lang.String name) |
java.lang.String |
getId(java.lang.String input) |
java.util.List<Item> |
getItems() |
java.util.List<Item> |
getItems(java.net.URI uri) |
java.util.List<LabelResource> |
getLabels(java.lang.String fragment)
Implemented by
getLabels(String,String,String,String) . |
java.util.List<LabelResource> |
getLabels(java.lang.String fragment,
java.lang.String resourceRole,
java.lang.String language)
Implemented by
getLabels(String,String,String,String) . |
java.util.List<LabelResource> |
getLabels(java.lang.String fragment,
java.lang.String linkRole,
java.lang.String resourceRole,
java.lang.String language)
If using persisted relationships then the set of relationships used to
generate the results can be modified by appropriate choice of
|
java.util.List<LabelResource> |
getLabelsWithLanguage(java.lang.String fragment,
java.lang.String language)
Implemented by
getLabels(String,String,String,String) . |
java.util.List<LabelResource> |
getLabelsWithResourceRole(java.lang.String fragment,
java.lang.String resourceRole)
Implemented by
getLabels(String,String,String,String) . |
Language |
getLanguage(java.lang.String encoding,
java.lang.String code) |
java.util.Map<java.lang.String,Language> |
getLanguageMap(java.lang.String code) |
java.util.List<Language> |
getLanguages(java.lang.String code) |
java.util.Set<java.lang.String> |
getLinkRoles() |
java.util.Set<java.lang.String> |
getLinkRoles(java.lang.String arcrole) |
Matcher |
getMatcher() |
Network |
getMinimalNetwork(java.util.Set<Fragment> fragments,
java.lang.String linkRole,
java.lang.String arcrole) |
Networks |
getMinimalNetworksWithArcrole(Fragment fragment,
java.lang.String arcrole)
Convenience method for a single fragment.
|
Networks |
getMinimalNetworksWithArcrole(java.util.Set<Fragment> fragments,
java.lang.String arcrole)
Get the networks that, at a minimum, contain the relationships
from each of the given fragments working back through ancestor relationships
as far as possible.
|
java.util.Set<java.net.URI> |
getMinimumDocumentSet(java.util.Collection<java.net.URI> starters) |
java.util.Set<java.net.URI> |
getMinimumDocumentSet(java.net.URI uri)
This is just a convenience method.
|
java.util.Set<java.net.URI> |
getMissingDocumentURIs() |
<F extends Fragment> |
getNetworkRoots(java.lang.String linkRole,
java.lang.String arcrole)
This implementation is not as strict as the XBRL 2.1 specification
requires but it is generally faster and delivers sensible results.
|
Networks |
getNetworks()
Note that this can massively overload resources if the
data store is large because much of the information in the
store will be reflected in -in-memory objects.
|
Networks |
getNetworks(java.lang.String arcrole) |
Networks |
getNetworks(java.lang.String linkRole,
java.lang.String arcrole) |
Networks |
getNetworksFrom(java.lang.String sourceIndex)
Implemented by
getNetworksFrom(String,String,String) . |
Networks |
getNetworksFrom(java.lang.String sourceIndex,
java.lang.String arcrole)
Implemented by
getNetworksFrom(String,String,String) . |
Networks |
getNetworksFrom(java.lang.String sourceIndex,
java.lang.String linkRole,
java.lang.String arcrole) |
Networks |
getNetworksTo(java.lang.String targetIndex)
Implemented by
getNetworksTo(String,String,String) . |
Networks |
getNetworksTo(java.lang.String targetIndex,
java.lang.String arcrole)
Implemented by
getNetworksTo(String,String,String) . |
Networks |
getNetworksTo(java.lang.String targetIndex,
java.lang.String linkRole,
java.lang.String arcrole)
If using persisted relationships then the set of relationships used to
generate the results can be modified by appropriate choice of
|
long |
getNumberOfXMLResources(java.lang.Class<?> specifiedClass) |
java.util.Set<java.net.URI> |
getReferencedDocuments(java.net.URI uri)
Override this method in a data store implementation if the data store
implementation supports XQuery (rather than XPath).
|
java.util.List<ReferenceResource> |
getReferences(java.lang.String fragment)
Implemented by
getReferences(String,String,String,String) . |
java.util.List<ReferenceResource> |
getReferences(java.lang.String fragment,
java.lang.String resourceRole,
java.lang.String language)
Implemented by
getReferences(String,String,String,String) . |
java.util.List<ReferenceResource> |
getReferences(java.lang.String fragment,
java.lang.String linkRole,
java.lang.String resourceRole,
java.lang.String language)
If using persisted relationships then the set of relationships used to
generate the results can be modified by appropriate choice of
|
java.util.List<ReferenceResource> |
getReferencesWithLanguage(java.lang.String fragment,
java.lang.String language)
Implemented by
getReferences(String,String,String,String) . |
java.util.List<ReferenceResource> |
getReferencesWithResourceRole(java.lang.String fragment,
java.lang.String resourceRole)
Implemented by
getReferences(String,String,String,String) . |
java.util.List<java.net.URI> |
getReferencingDocuments(java.net.URI uri) |
java.util.List<Fragment> |
getReferencingFragments(java.net.URI uri) |
java.util.SortedSet<Relationship> |
getRelationshipsFrom(java.lang.String sourceIndex,
java.lang.String linkRole,
java.lang.String arcrole)
If using persisted relationships then the set of relationships used to
generate the results can be modified by appropriate choice of
|
java.util.SortedSet<Relationship> |
getRelationshipsTo(java.lang.String targetIndex,
java.lang.String linkRole,
java.lang.String arcrole) |
java.util.List<java.lang.String> |
getResourceRoles() |
java.util.List<RoleType> |
getRoleTypes() |
java.util.List<RoleType> |
getRoleTypes(java.lang.String uri) |
<F extends Fragment> |
getRootFragmentForDocument(java.net.URI uri) |
java.util.Set<java.lang.String> |
getRootFragmentIndices(java.lang.String interfaceName) |
<F extends Fragment> |
getRootFragments() |
<F extends Fragment> |
getRootFragments(java.lang.String type) |
Schema |
getSchema(java.lang.String targetNamespace) |
<F extends SchemaContent> |
getSchemaContent(java.lang.String namespace,
java.lang.String name) |
int |
getSize() |
java.util.Set<java.lang.String> |
getSourceIndices(java.lang.String targetIndex,
java.lang.String linkRole,
java.lang.String arcrole) |
<F extends Fragment> |
getSources(java.lang.String targetIndex,
java.lang.String linkRole,
java.lang.String arcrole) |
org.w3c.dom.Document |
getStoreAsDOM()
Get all data in the store as a single XML DOM object.
|
java.util.List<Stub> |
getStubs() |
java.util.List<Stub> |
getStubs(java.net.URI uri) |
org.w3c.dom.Element |
getSubtree(Fragment f)
Returns the root element of the subtree starting with the
fragment with the specified index.
|
<F extends Fragment> |
getTargets(java.lang.String sourceIndex,
java.lang.String linkRole,
java.lang.String arcrole) |
java.util.List<Tuple> |
getTuples() |
java.util.List<Tuple> |
getTuples(java.net.URI uri) |
<F extends XML> |
getXMLResource(java.lang.String index)
Retrieves an XML Resource from a data store.
|
<F extends XML> |
getXMLResources(java.lang.Class<?> specifiedClass)
Return a list of XML resources in a data store
that have a type corresponding to the specified XML resource interface name.
|
<F extends XML> |
getXMLResources(java.lang.String interfaceName)
Return a list of XML resources in a data store
that have a type corresponding to the specified XML resource interface name.
|
boolean |
hasAllRelationships(java.net.URI document) |
boolean |
hasDocument(java.net.URI uri)
Test if a particular URI is already in the data store.
|
boolean |
hasXMLResource(java.lang.String index)
Test if a store contains a specific fragment, as identified by
its index.
|
boolean |
isFilteringByURIs() |
boolean |
isLoading() |
boolean |
isPersistingRelationships() |
void |
persist(XML xml)
Store a fragment.
|
void |
persistLoaderState(java.util.Map<java.net.URI,java.lang.String> documents)
Stores the state of the document discovery process.
|
void |
persistStub(java.net.URI document,
java.lang.String reason) |
long |
queryCount(java.lang.String query)
This method must be synchronised
|
java.util.Set<java.lang.String> |
queryForIndices(java.lang.String query)
Run a query against the collection of all fragments in the store.
|
java.lang.String |
queryForString(java.lang.String query)
Run a query that is required to return a single string.
|
java.util.Set<java.lang.String> |
queryForStrings(java.lang.String query)
Run a query that is required to return a sequence of strings.
|
<F extends XML> |
queryForXMLResources(java.lang.String query)
Run a query against the collection of all fragments in the store.
|
void |
recindLoadingRightsFor(Loader loader,
java.net.URI document)
Loaders need to call this method to indicate that they are recinding
responsibility for loading the document.
|
void |
remove(java.lang.String index)
Remove a fragment from the underlying data structure.
|
void |
remove(XML xml)
Remove a XML resource from the underlying data structure.
|
void |
removeNamespaceBinding(java.lang.String prefix)
This should not need to be called but is available if the number of mappings
in the namepace mapping table grows innefficiently large.
|
void |
removeStub(Stub stub) |
boolean |
requestLoadingRightsFor(Loader loader,
java.net.URI document)
Loaders need to call this method to indicate that they are going to take
responsibility for loading the document.
|
void |
saveDocuments(java.io.File destination)
Serializes the individual documents in the data store,
saving them into a directory structure that is placed into
the specified directory.
|
void |
saveDocuments(java.io.File destination,
java.lang.String uriPrefix)
Serializes those documents in the data store with a URI that
begins with the specified URI prefix.
|
void |
saveStoreAsSingleDocument(java.io.File file)
Creates a single DOM structure from all documents in the
data store and saves this single XML structure in the
specified file.
|
java.lang.String |
serialize(org.w3c.dom.Element what)
Serialize the specified XML DOM node.
|
void |
serialize(org.w3c.dom.Element what,
java.io.File destination)
Serialize the specified XML DOM to the specified destination.
|
void |
serialize(org.w3c.dom.Element what,
java.io.OutputStream destination)
Serialize the specified XML DOM to the specified destination.
|
void |
setAnalyser(Analyser analyser) |
void |
setFilteringURIs(java.util.Set<java.net.URI> uris) |
void |
setMatcher(Matcher matcher)
Sets the matcher for the store to use.
|
void |
setNamespaceBinding(java.lang.String namespace,
java.lang.String prefix) |
void |
startLoading(Loader loader) |
void |
stopLoading(Loader loader) |
void |
sync()
Flush all database updates to the data store.
|
void close() throws XBRLException
XBRLException
void persist(XML xml) throws XBRLException
xml
- The fragment to be added to the store.XBRLException
- if the fragment cannot be added to the store.boolean hasXMLResource(java.lang.String index) throws XBRLException
index
- The index of the fragment to test for.XBRLException
- If the test cannot be conducted.<F extends XML> F getXMLResource(java.lang.String index) throws XBRLException
index
- The index of the XML resource.XBRLException
- if the XML resource cannot be retrieved.void remove(java.lang.String index) throws XBRLException
index
- The index of the fragment to be removed from the DTS store.XBRLException
- if the fragment cannot be removed from the store.void remove(XML xml) throws XBRLException
xml
- The XML resource to remove.XBRLException
- if the XML resource cannot be removed from the store.void setNamespaceBinding(java.lang.String namespace, java.lang.String prefix) throws XBRLException
namespace
- The namespace to bind a prefix to for queryingprefix
- The prefix to bind to the namespace for queryingXBRLException
- if either argument is null.void removeNamespaceBinding(java.lang.String prefix) throws XBRLException
prefix
- the prefix to remove the namespace binding forXBRLException
void deleteDocument(java.net.URI uri) throws XBRLException
uri
- The URI of the document to delete from the data store.XBRLException
void deleteRelatedDocuments(java.net.URI uri) throws XBRLException
uri
- The URI of the document to delete.XBRLException
<F extends XML> java.util.List<F> queryForXMLResources(java.lang.String query) throws XBRLException
query
- The XQuery query to run against the set of fragments.
Any occurrences of the string #roots# in a query will be deemed to
be a marker for the root elements of the fragments in an XML database collection
and it will be substituted with the necessary
expression to identify those roots in the data store.XBRLException
- if the query cannot be executed.java.util.Set<java.lang.String> queryForIndices(java.lang.String query) throws XBRLException
query
- The XQuery query to run against the set of fragments.
Any occurrences of the string #roots# in a query will be deemed to
be a marker for the root elements of the fragments in an XML database collection
and it will be substituted with the necessary
expression to identify those roots in the data store.
The query MUST return a sequence of XML resource metadata root elements
matching the query. Otherwise, results from the query will be unpredictable.XBRLException
- if the query cannot be executed.long queryCount(java.lang.String query) throws XBRLException
query
- The XQuery to run.
Any occurrences of the string #roots# in a query will be deemed to
be a marker for the root elements of the fragments in an XML database collection
and it will be substituted with the necessary
expression to identify those roots in the data store.XBRLException
- if the query cannot be executed.java.util.Set<java.lang.String> queryForStrings(java.lang.String query) throws XBRLException
query
- The XQuery query to run against the set of fragments.
Any occurrences of the string #roots# in a query will be deemed to
be a marker for the root elements of the fragments in an XML database collection
and it will be substituted with the necessary
expression to identify those roots in the data store.XBRLException
- if the query cannot be executed or if the
query results are not strings.java.lang.String queryForString(java.lang.String query) throws XBRLException
query
- The XQuery query to run against the set of fragments.
Any occurrences of the string #roots# in a query will be deemed to
be a marker for the root elements of the fragments in an XML database collection
and it will be substituted with the necessary
expression to identify those roots in the data store.XBRLException
- if the query cannot be executed or if the
query result is not a single string.void serialize(org.w3c.dom.Element what, java.io.OutputStream destination) throws XBRLException
what
- the root element of the DOM to be serialised.destination
- The destination output stream to be serialised to.XBRLException
- if the DOM cannot be serialised
because the destination cannot be written to or some other
different problem occurs during serialisation.void serialize(org.w3c.dom.Element what, java.io.File destination) throws XBRLException
what
- the root element of the DOM to be serialised.destination
- The destination file to be serialised to.XBRLException
- if the DOM cannot be serialised
because the destination cannot be written to or some other
different problem occurs during serialisation.java.lang.String serialize(org.w3c.dom.Element what) throws XBRLException
what
- the root element of the DOM to be serialised.XBRLException
org.w3c.dom.Element getDocumentAsDOM(java.net.URI uri) throws XBRLException
uri
- The URI of the document to be retrieved.XBRLException
- if the document cannot be constructed as a DOM.void saveDocuments(java.io.File destination) throws XBRLException
destination
- The folder in which the directory structure and
the documents in the data store are to be saved.XBRLException
- If the root folder does not exist or
is not a directory or if the documents in the store cannot
be saved to the local file system.void saveDocuments(java.io.File destination, java.lang.String uriPrefix) throws XBRLException
destination
- The folder in which the directory structure and
the documents in the data store are to be saved.uriPrefix
- All documents in the data store with a URI that begins
with the string specified by uriPrefix will be saved to the local
file system.XBRLException
- If the root folder does not exist or
is not a directory or if the documents in the store cannot
be saved to the local file system.void saveStoreAsSingleDocument(java.io.File file) throws XBRLException
file
- The file to save the Store content to.XBRLException
- if the documents in the store cannot be
saved to the single file.org.w3c.dom.Element getSubtree(Fragment f) throws XBRLException
f
- The fragment at the root of the subtree.XBRLException
- if the subtree cannot be constructed.org.w3c.dom.Document getStoreAsDOM() throws XBRLException
XBRLException
- if the DOM cannot be constructed.org.w3c.dom.Document getCompositeDocument() throws XBRLException
XBRLException
- if the composed data store cannot be constructed.java.util.Set<java.net.URI> getDocumentURIs() throws XBRLException
XBRLException
- if the list cannot be constructed.boolean hasDocument(java.net.URI uri) throws XBRLException
uri
- the string representation of the URI to be tested for.XBRLException.
XBRLException
void persistLoaderState(java.util.Map<java.net.URI,java.lang.String> documents) throws XBRLException
documents
- The map from URIs of the documents
remaining to be discovered to the textual reason why
the document has not yet been discovered.XBRLException
int getSize() throws XBRLException
XBRLException
- if the number of fragments cannot be determined.java.util.List<java.net.URI> getDocumentsToDiscover() throws XBRLException
XBRLException
- if any of the document URIs are malformed.java.util.List<Stub> getStubs() throws XBRLException
XBRLException
java.util.List<Stub> getStubs(java.net.URI uri) throws XBRLException
uri
- The string value of the URI of the document to get the stub for.XBRLException
void persistStub(java.net.URI document, java.lang.String reason) throws XBRLException
document
- The document to store a stub for.reason
- The reason the document has not been stored.XBRLException
void removeStub(Stub stub) throws XBRLException
stub
- The stub to be removed from the data store.XBRLException
<F extends XML> java.util.List<F> getXMLResources(java.lang.String interfaceName) throws XBRLException
interfaceName
- The name of the interface. EG: If a list of
org.xbrlapi.impl.ReferenceArcImpl fragments is required then
this parameter would have a value of "ReferenceArc".
Note that if the parameter contains full stops, then it is used directly
as the value for the fragment type, enabling fragment extensions to exploit this
method without placing fragment implementations in the org.xbrlapi package.XBRLException
<F extends XML> java.util.List<F> getXMLResources(java.lang.Class<?> specifiedClass) throws XBRLException
specifiedClass
- The class of XML resources to retrieve.XBRLException
long getNumberOfXMLResources(java.lang.Class<?> specifiedClass) throws XBRLException
specifiedClass
- The class of XML resource to count.XBRLException
<F extends Fragment> java.util.List<F> getChildFragments(java.lang.String interfaceName, java.lang.String parentIndex) throws XBRLException
interfaceName
- The name of the interface. EG: If a list of
org.xbrlapi.impl.ReferenceArcImpl fragments is required then
this parameter would have a value of "ReferenceArc".
Note that this method does not yet recognise fragment subtypes so
a request for an Arc would not return all ReferenceArcs as well as other
types of arcs.parentIndex
- The index of the parent fragment.XBRLException
Networks getNetworks(java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
linkRole
- The linkrole of the networks.arcrole
- The arcrole of the networks.XBRLException
Networks getNetworks(java.lang.String arcrole) throws XBRLException
arcrole
- The XLink arcrole value.XBRLException
Networks getNetworks() throws XBRLException
XBRLException
<F extends Fragment> java.util.List<F> getTargets(java.lang.String sourceIndex, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
F
- The type of fragment.sourceIndex
- The index of the source fragment.linkRole
- The XLink link role.arcrole
- The XLink arcrole.XBRLException
<F extends Fragment> java.util.List<F> getSources(java.lang.String targetIndex, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
F
- The type of fragment.targetIndex
- The index of the target fragment.linkRole
- The XLink link role.arcrole
- The XLink arcrole.XBRLException
java.util.Set<java.lang.String> getSourceIndices(java.lang.String targetIndex, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
targetIndex
- The index of the target fragment.linkRole
- The XLink link role.arcrole
- The XLink arcrole.XBRLException
void setAnalyser(Analyser analyser)
analyser
- The persisted network analyser
to use for network analysis when building the
aspect model. Set to null if you do not want to
build the aspect model using persisted network information.Analyser getAnalyser()
boolean isPersistingRelationships()
Analyser
<F extends Fragment> java.util.List<F> getFragmentsFromDocument(java.net.URI uri, java.lang.String interfaceName) throws XBRLException
uri
- The URI of the document to get the fragments from.interfaceName
- The name of the interface. EG: If a list of
fragments is required then
this parameter would have a value of "ReferenceArc".
Note that this method does not yet recognise fragment subtypes so
a request for an Arc would not return all ReferenceArcs as well as other
types of arcs.XBRLException
<F extends Fragment> java.util.List<F> getFragmentsFromDocument(java.net.URI uri, java.lang.Class<?> fragmentClass) throws XBRLException
uri
- The URI of the document to get the fragments from.fragmentClass
- The class of fragment being sought.XBRLException
getFragmentsFromDocument(URI, String)
java.util.Set<java.lang.String> getFragmentIndices(java.lang.String interfaceName) throws XBRLException
interfaceName
- The name of the interface. EG: If a list of
Concept fragments is required then this parameter would have a value of "Concept".
Note that this method does not yet recognise fragment subtypes so
a request for an ElementDeclaration would not return all concepts as well as
other XML Schema element declarations.XBRLException
java.util.Set<java.lang.String> getRootFragmentIndices(java.lang.String interfaceName) throws XBRLException
interfaceName
- The name of the interface. EG: If a list of
Concept fragments is required then this parameter would have a value of "Concept".
Note that this method does not yet recognise fragment subtypes so
a request for an ElementDeclaration would not return all concepts as well as
other XML Schema element declarations.XBRLException
java.util.Set<java.lang.String> getFragmentIndicesFromDocument(java.net.URI uri, java.lang.String interfaceName) throws XBRLException
uri
- The URI of the document to get the fragments from.interfaceName
- The name of the interface. EG: If a list of
concept fragments is required then
this parameter would have a value of "Concept".
Note that this method does not yet recognise fragment subtypes so
a request for an ElementDeclaration would not return all concepts as well as
other XML Schema element declarations.XBRLException
java.util.Set<java.lang.String> getFragmentIndicesFromDocument(java.net.URI uri) throws XBRLException
uri
- The URI of the document to get the fragments from.XBRLException
<F extends Fragment> F getRootFragmentForDocument(java.net.URI uri) throws XBRLException
F
- The fragment extension classuri
- The URI of the document to get the root fragment for.XBRLException
- if more than one root fragment is found in the data store.<F extends Fragment> java.util.List<F> getRootFragments() throws XBRLException
F
- The fragment extension classXBRLException
- if more than one root fragment is found in the data store.<F extends Fragment> java.util.List<F> getRootFragments(java.lang.String type) throws XBRLException
F
- The fragment extension classtype
- The type of fragment to select by.
getXMLResources(String)
gives details on how the type
parameter is to be used.XBRLException
void delete() throws XBRLException
XBRLException
- if the data store cannot be deleted.java.lang.String getId(java.lang.String input) throws XBRLException
input
- The string that may be used to generate the id.XBRLException
Language getLanguage(java.lang.String encoding, java.lang.String code) throws XBRLException
encoding
- The code identifying the language that the name of the
language is expressed in.code
- The code that identifies the language being named.XBRLException
- if either parameter equals null.java.util.List<Language> getLanguages(java.lang.String code) throws XBRLException
code
- The language code to get the language fragments for. The code
is converted to upper case before processing.XBRLException
- if the language code is null.java.util.Map<java.lang.String,Language> getLanguageMap(java.lang.String code) throws XBRLException
code
- The language code to get a map of language fragments for.XBRLException
void setMatcher(Matcher matcher) throws XBRLException
matcher
- the matcher to use to identify identical resources.XBRLException
- if the matcher is null;Matcher getMatcher()
java.util.List<java.net.URI> getReferencingDocuments(java.net.URI uri) throws XBRLException
uri
- The URI of the referenced document.XBRLException
- if the list of referencing documents cannot be populated.java.util.List<Fragment> getReferencingFragments(java.net.URI uri) throws XBRLException
uri
- The URI of the referenced document.XBRLException.
XBRLException
java.util.Set<java.net.URI> getReferencedDocuments(java.net.URI uri) throws XBRLException
uri
- The URI of the referencing document.XBRLException
- if the set of referenced documents cannot be populated.void setFilteringURIs(java.util.Set<java.net.URI> uris)
uris
- The set of URIs to restrict query results to coming from.
The set of URIs is set to the empty set if this parameter is null.java.util.Set<java.net.URI> getFilteringURIs()
void clearFilteringURIs()
boolean isFilteringByURIs()
void sync() throws XBRLException
XBRLException
- if the sync operation fails.java.util.List<Fact> getFacts() throws XBRLException
XBRLException
getFacts()
,
getAllFacts()
java.util.Set<java.lang.String> getFactIndices() throws XBRLException
XBRLException
java.util.Set<java.lang.String> getAllFactIndices() throws XBRLException
XBRLException
java.util.List<Item> getItems() throws XBRLException
XBRLException
java.util.List<Tuple> getTuples() throws XBRLException
XBRLException
Schema getSchema(java.lang.String targetNamespace) throws XBRLException
targetNamespace
- The target namespace of the schema.XBRLException
- if there is more than one schema with the
given target namespace or if the target namespace is null.java.util.List<Fact> getFacts(java.net.URI uri) throws XBRLException
uri
- The URI of the document to get the facts from.XBRLException
java.util.List<Fact> getAllFacts(java.net.URI uri) throws XBRLException
uri
- The URI of the document to get the facts from.XBRLException
java.util.List<Fact> getAllFacts() throws XBRLException
XBRLException
java.util.List<Item> getItems(java.net.URI uri) throws XBRLException
uri
- The URI of the document to get the items from.XBRLException
java.util.List<Tuple> getTuples(java.net.URI uri) throws XBRLException
uri
- The URI of the document to get the facts from.XBRLException
<F extends Fragment> java.util.Set<F> getNetworkRoots(java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
linkRole
- the role on the extended links that contain the network arcs.arcrole
- the arcrole on the arcs describing the network.XBRLException
Concept getConcept(java.lang.String namespace, java.lang.String name) throws XBRLException
namespace
- The namespace for the concept.name
- The local name for the concept.XBRLException
- if more than one matching concept is found in the data store
or if no matching concepts are found in the data store.<D extends SchemaDeclaration> D getGlobalDeclaration(java.lang.String namespace, java.lang.String name) throws XBRLException
namespace
- The target namespace for the schema containing the global declaration.name
- The local name for the global declaration.XBRLException
- if more than one matching declaration is found in the data store
or if no matching declarations are found in the data store.java.util.List<ArcroleType> getArcroleTypes() throws XBRLException
XBRLException
java.util.List<ArcroleType> getArcroleTypes(java.lang.String uri) throws XBRLException
XBRLException
java.util.List<RoleType> getRoleTypes() throws XBRLException
XBRLException
java.util.List<RoleType> getRoleTypes(java.lang.String uri) throws XBRLException
XBRLException
java.util.List<java.lang.String> getResourceRoles() throws XBRLException
XBRLException
java.util.Set<java.net.URI> getMinimumDocumentSet(java.util.Collection<java.net.URI> starters) throws XBRLException
starters
- The collection of URIs of the documents to use as
starting points for analysis.XBRLException
- if some of the referenced documents are not in
the data store.java.util.Set<java.net.URI> getMinimumDocumentSet(java.net.URI uri) throws XBRLException
uri
- The single document URI to use as
starting points for analysis.XBRLException
- if some of the referenced documents are not in
the data store.java.util.List<ExtendedLink> getExtendedLinks(java.lang.String linkrole) throws XBRLException
linkrole
- The required linkrole value.XBRLException
java.util.Set<java.lang.String> getExtendedLinkIndices(java.lang.String linkRole) throws XBRLException
linkRole
- The link role to use to identify the extended links to retrieve.XBRLException
java.util.List<Arc> getArcs(java.net.URI arcrole, java.lang.String linkIndex) throws XBRLException
arcrole
- The arcrole to use to identify the arcs to retrieve.linkIndex
- The index of the extended link containing the arcs to retrieve.XBRLException
XBRLException
java.util.Set<java.lang.String> getArcIndicesWithLinkIndex(java.lang.String linkIndex) throws XBRLException
linkIndex
- The index of the extended link containing the arcs to retrieve.XBRLException
java.util.Set<java.lang.String> getArcIndicesWithArcrole(java.lang.String arcrole) throws XBRLException
arcrole
- The arcrole to use to identify the arcs to retrieve.XBRLException
java.util.List<Arc> getArcs(java.lang.String linkIndex) throws XBRLException
linkIndex
- The index of the extended link containing the arcs to retrieve.XBRLException
XBRLException
Networks getMinimalNetworksWithArcrole(java.util.Set<Fragment> fragments, java.lang.String arcrole) throws XBRLException
fragments
- The fragments to analyse.arcrole
- The required arcrole.XBRLException
Networks getMinimalNetworksWithArcrole(Fragment fragment, java.lang.String arcrole) throws XBRLException
XBRLException
getMinimalNetworksWithArcrole(Set,String)
Network getMinimalNetwork(java.util.Set<Fragment> fragments, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
fragments
- The set of target node fragments in the network.linkRole
- The network link role value.arcrole
- The network arcrole value.XBRLException
void augmentNetworkForFragment(Fragment fragment, Network network) throws XBRLException
fragment
- The fragment to use as the target for the relationships to be added to the networks.network
- The network that is to be augmented.XBRLException
void augmentNetworksForFragment(Fragment fragment, java.lang.String arcrole, Networks networks) throws XBRLException
fragment
- The fragment to use as the target for the relationships to be added to the networks.arcrole
- The arcrole for the networks to augment.networks
- The networks to augment.XBRLException
java.util.Set<java.lang.String> getArcroles() throws XBRLException
XBRLException
java.util.Set<java.lang.String> getArcroles(java.lang.String linkRole) throws XBRLException
linkRole
- the specified linkrole to use in selecting arcroles.XBRLException
- if any of the arcroles is not a valid URI.java.util.Set<java.lang.String> getLinkRoles() throws XBRLException
XBRLException
java.util.Set<java.lang.String> getLinkRoles(java.lang.String arcrole) throws XBRLException
arcrole
- The arcrole determining the extended links that are to be examined for
linkroles that are used on links containing arcs with the required arcrole.XBRLException
Networks getNetworksFrom(java.lang.String sourceIndex, java.lang.String arcrole) throws XBRLException
getNetworksFrom(String,String,String)
.sourceIndex
- The source fragment indexarcrole
- The XLink arcroleXBRLException
Networks getNetworksFrom(java.lang.String sourceIndex) throws XBRLException
getNetworksFrom(String,String,String)
.sourceIndex
- The source fragment indexXBRLException
Networks getNetworksFrom(java.lang.String sourceIndex, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
sourceIndex
- The source fragment indexlinkRole
- The XLink link rolearcrole
- The XLink arcroleXBRLException
Networks getNetworksTo(java.lang.String targetIndex, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
targetIndex
- The target fragment indexlinkRole
- The XLink link role or null if networks for
all link roles are soughtarcrole
- The XLink arcrole or null if networks for
all arcroles are soughtXBRLException
Networks getNetworksTo(java.lang.String targetIndex, java.lang.String arcrole) throws XBRLException
getNetworksTo(String,String,String)
.targetIndex
- The target fragment indexarcrole
- The XLink arcroleXBRLException
Networks getNetworksTo(java.lang.String targetIndex) throws XBRLException
getNetworksTo(String,String,String)
.targetIndex
- The target fragment indexXBRLException
java.util.SortedSet<Relationship> getRelationshipsFrom(java.lang.String sourceIndex, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
sourceIndex
- The source fragment indexlinkRole
- The XLink link rolearcrole
- The XLink arcroleXBRLException
boolean hasAllRelationships(java.net.URI document) throws XBRLException
document
- The document URI.XBRLException
java.util.SortedSet<Relationship> getRelationshipsTo(java.lang.String targetIndex, java.lang.String linkRole, java.lang.String arcrole) throws XBRLException
targetIndex
- The target fragment indexlinkRole
- The XLink link rolearcrole
- The XLink arcroleXBRLException
java.util.List<LabelResource> getLabels(java.lang.String fragment, java.lang.String linkRole, java.lang.String resourceRole, java.lang.String language) throws XBRLException
fragment
- the index of the fragment that we are getting labels forlinkRole
- The required link role or null if not used.resourceRole
- The required resource role or null if not used.language
- The required language code or null if not used.XBRLException
java.util.List<LabelResource> getLabels(java.lang.String fragment, java.lang.String resourceRole, java.lang.String language) throws XBRLException
getLabels(String,String,String,String)
.fragment
- the index of the fragment that we are getting labels forresourceRole
- The required resource role or null if not used.language
- The required language code or null if not used.XBRLException
java.util.List<LabelResource> getLabelsWithLanguage(java.lang.String fragment, java.lang.String language) throws XBRLException
getLabels(String,String,String,String)
.fragment
- the index of the fragment that we are getting labels forlanguage
- The required language code or null if not used.XBRLException
java.util.List<LabelResource> getLabels(java.lang.String fragment) throws XBRLException
getLabels(String,String,String,String)
.fragment
- the index of the fragment that we are getting labels forXBRLException
java.util.List<LabelResource> getLabelsWithResourceRole(java.lang.String fragment, java.lang.String resourceRole) throws XBRLException
getLabels(String,String,String,String)
.fragment
- the index of the fragment that we are getting labels forresourceRole
- The required resource role or null if not used.XBRLException
java.util.List<ReferenceResource> getReferences(java.lang.String fragment, java.lang.String linkRole, java.lang.String resourceRole, java.lang.String language) throws XBRLException
fragment
- the index of the fragment that we are getting references forlinkRole
- The required link role or null if not used.resourceRole
- The required resource role or null if not used.language
- The required language code or null if not used.XBRLException
java.util.List<ReferenceResource> getReferences(java.lang.String fragment, java.lang.String resourceRole, java.lang.String language) throws XBRLException
getReferences(String,String,String,String)
.fragment
- the index of the fragment that we are getting references forresourceRole
- The required resource role or null if not used.language
- The required language code or null if not used.XBRLException
java.util.List<ReferenceResource> getReferencesWithLanguage(java.lang.String fragment, java.lang.String language) throws XBRLException
getReferences(String,String,String,String)
.fragment
- the index of the fragment that we are getting references forlanguage
- The required language code or null if not used.XBRLException
java.util.List<ReferenceResource> getReferences(java.lang.String fragment) throws XBRLException
getReferences(String,String,String,String)
.fragment
- the index of the fragment that we are getting references forXBRLException
java.util.List<ReferenceResource> getReferencesWithResourceRole(java.lang.String fragment, java.lang.String resourceRole) throws XBRLException
getReferences(String,String,String,String)
.fragment
- the index of the fragment that we are getting references forresourceRole
- The required resource role or null if not used.XBRLException
java.util.Set<java.net.URI> getMissingDocumentURIs() throws XBRLException
XBRLException
boolean requestLoadingRightsFor(Loader loader, java.net.URI document) throws XBRLException
loader
- The loader claiming loading rights.document
- The URI of the document that a loader is about
to start loading.XBRLException
void recindLoadingRightsFor(Loader loader, java.net.URI document)
loader
- The loader recinding loading rights.document
- The URI of the document whose loading rights are being recinded.void startLoading(Loader loader)
loader
- The loader that has started to use
this store for data loading.void stopLoading(Loader loader)
loader
- The loader that has stopped using
this store for data loading.boolean isLoading()
<F extends SchemaContent> F getSchemaContent(java.lang.String namespace, java.lang.String name) throws XBRLException
namespace
- The target namespace of the schema with the desired content.name
- The name given to the schema component.XBRLException
<F extends Fragment> java.util.List<F> getChildFragments(java.lang.Class<?> childClass, java.lang.String parentIndex) throws XBRLException
childClass
- The class of child fragment.parentIndex
- The index of the parent fragment.XBRLException
java.util.List<Fact> getFacts(java.lang.String namespace, java.lang.String localname) throws XBRLException
namespace
- The namespace of the facts to select.localname
- The local name of the facts to select.XBRLException
- if either parameter is null.java.util.List<Fact> getFacts(Concept concept) throws XBRLException
concept
- The concept to get the facts for.XBRLException
- if the parameter is null.