public abstract class XBRLExtendedLink extends XLinkElement implements java.io.Serializable, XBRLDTSDocument, XBRLAllowsDocumentation, XBRLValidation
XMLFragment.NodeNameIterator<T extends XMLFragment>, XMLFragment.NodeTypeIterator<T extends XMLFragment>
XBRLValidation.Direction
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
standard_role_URI
The standard role URI http://www.xbrl.org/2003/role/link
|
actuate, ARC, arcrole, ETITLE, EXTENDED, from, href, label, LOCATOR, RESOURCE, role, show, SIMPLE, title, to, type, X_ACTUATE, X_ARCROLE, X_FROM, X_HREF, X_LABEL, X_ROLE, X_SHOW, X_TITLE, X_TO, X_TYPE, XLINKPREFIX
ADD_NAMESPACE_INHERIT, baseQName, CONCEPT_LABEL, CONCEPT_QNAME, EASY_TO_READ, ELEMENT_LABEL, EMPTYRELATIONSHIPSITERATORINSTANCE, EMPTYXMLFRAGMENTITERATORINSTANCE, FACT_CONCEPT_DATATYPE, FACT_CONCEPT_LABEL, FACT_QNAME, FACT_VALUE, HIDE_COMMON_ACCURACY, idQName, langQName, nil, NO_POSITION, OrderComparator, OrderComparator2, OrderComparatorReverse, PERIOD_BOP, PERIOD_TYPE, PERIOD_VALUE, RELATIONSHIP_TYPE, RESOURCE_TYPE, SHORT_TEXT, SOURCE_DOCUMENT, XPATH, XPOINTER
Modifier and Type | Method and Description |
---|---|
void |
addDocumentation(XBRLDocumentation doc)
Adds the documentation.
|
boolean |
addRelationship(XBRLRelationship relationship)
Adds the relationship.
|
void |
addResource(XBRLResource resource)
This method adds a XBRLResource to the Extended Link container.
|
void |
checkCountOfRelationships(java.lang.Integer arcrole)
When the method to read arcroles on this extended link is called
it explores relationships and declared arcroleRefs.
|
static boolean |
checkValidArcroleOnLink(XBRLArcroleType arcrole,
javax.xml.namespace.QName baseType)
This method checks if the arcrole can be used on the specified linkbase type according with
the rules in the XBRL 2.1 specification.
|
void |
clear()
Clear.
|
void |
clearCaches()
Used to clear memory used during the DTS loading process.
|
static XBRLExtendedLink |
createExtendedLink(XBRLDocument parent,
DTSBase base)
Creates the extended link.
|
static XBRLExtendedLink |
createExtendedLink(XBRLDocument parent,
net.sf.saxon.om.NodeInfo ni)
Creates the extended link.
|
static XBRLExtendedLink |
createExtendedLink(XBRLDocument parent,
javax.xml.namespace.QName rootElementName,
XBRLRoleType role)
Creates the extended link.
|
void |
discoverDTS(XBRLDTSDocument parent)
Discover DTS.
|
boolean |
equals(java.lang.Object other)
Equals.
|
XBRLExtendedLink |
generateNode()
Generate node.
|
java.util.Iterator<XBRLArcroleType> |
getArcroles()
Access to all used arcroles.
|
XBRLArcroleType |
getArcroleType(java.lang.String arcrole)
Returns the arcroleType of an arc on this extended link resolved using the corresponding arcroleRef
element or the static definition in the specifications.
|
java.util.Iterator<XMLFragment> |
getArcs()
Return an Iterator object over all arcs in the extended link.
|
java.util.List<XBRLArc> |
getArcsByArcrole(java.lang.Integer arcrole)
Gets the arcs by arcrole.
|
java.util.Iterator<XBRLAttribute> |
getAttributes()
Access to the [Attributes] property.
|
java.util.Iterator<XBRLDocumentation> |
getDocumentation()
Access to the [Documentation] property.
|
DTSBase |
getDTSBase()
Gets the DTS base.
|
java.lang.Integer |
getDTSKey()
Gets the DTS key.
|
java.util.Iterator<XMLFragment> |
getElements()
Gets the elements.
|
abstract java.lang.String |
getExtendedLinkTypeName()
Returns a localized constant string indicating the extended link type
|
net.sf.saxon.tree.linked.NodeImpl |
getFirstChild() |
java.lang.String |
getFriendlyName()
Gets the friendly name.
|
net.sf.saxon.tree.linked.NodeImpl |
getLastChild() |
javax.xml.namespace.QName |
getLinkbaseType()
Access to the [linkbaseType] property
This is the QName of the extended link element which is the root
ot this extended link.
|
java.util.Iterator<XBRLLocator> |
getLocators()
Access to all locators in an extended link.
|
int |
getNumberOfChildren() |
int |
getNumberOfResources()
Returns how many resources exists in this extended link.
|
XBRLDocument |
getParentDocument()
Access to the [Parent] property.
|
java.util.Iterator<XBRLRelationship> |
getRelationships()
Access to the [Relationships] information item.
|
XBRLResource |
getResource(java.lang.Integer resourceCode)
Gets the resource.
|
abstract java.lang.Class<? extends XBRLResource> |
getResourceClass(net.sf.saxon.om.NodeInfo ni)
Obtains a class that can be used to create a resource instance from the
NodeInfo passed in the ni parameter.
|
java.util.Iterator<XBRLResource> |
getResources()
Return an iterator over all resources that exist on this extended link.
|
XBRLRoleType |
getRoleType()
Access to the [Role Type] property of this object
Validates this extended link QName in on the used on list of the roleType.
|
abstract java.util.Collection<java.lang.String> |
getStandardDefinedRolesOnResources()
Returns a collection of role URIs that the XBRL 2.1 standard defines to be used on resources
on this extended link
|
abstract java.util.Collection<javax.xml.namespace.QName> |
getStandardResourceNodeNames()
Returns a collection of resource node names that are allowed to exist on this extended link.
|
abstract javax.xml.namespace.QName |
getStaticLinkbaseType()
This function MUST be implemented by classes derived from this class.
|
XBRLValidationReport |
getValidationReport()
Gets the validation report.
|
boolean |
hasChildNodes() |
int |
hashCode()
Hash code.
|
void |
invalidate()
Invalidate.
|
boolean |
invalidate(XBRLValidation.Direction dir)
Invalidate.
|
boolean |
isHashDependsOnAtribute(javax.xml.namespace.QName attributeName)
Checks if is hash depends on atribute.
|
boolean |
isOnValidation()
Checks if is on validation.
|
abstract boolean |
isStandardExtendedLink()
Returns true if the extended link belongs to the XBRL 2.1 specification.
|
void |
removeDocumentation(XBRLDocumentation doc)
Removes the documentation.
|
boolean |
removeRelationship(XBRLRelationship relationship)
Removes the relationship.
|
void |
removeResource(XBRLResource resource)
This method removes a XBRLResource to the Extended Link container
This method should not be used but the
XBRLResource.setRawParentXBRL(XMLFragment) instead
with null parameter that in turn calls this method when needed. |
void |
resetHash()
Reset hash.
|
void |
setArcrolesMapCount(java.util.Map<java.lang.Integer,java.lang.Integer> arcroles)
This method is used during SAX paring phase to speedup reading the infoset later.
|
void |
setDTSBase(DTSBase base)
Sets the DTS base.
|
void |
setLocatorsByLabel(java.util.HashMap<java.lang.String,java.util.List<XBRLLocator>> cacheLocators)
This method is used by the SAX parser to add collected locators indexed by xlink:label.
|
void |
setRelationshipsByArcrole(java.util.Map<java.lang.String,java.util.List<XBRLArc>> relationshipsByArcroleMap)
This method is used by the SAX parser to add collected relationships indexed by arcrole.
|
void |
setResources(java.util.LinkedHashMap<java.lang.Integer,XBRLResource> resources)
This method is used by the SAX parser to add collected resources.
|
void |
setResourcesCache(java.util.HashMap<java.lang.String,java.util.List<XBRLResource>> cacheResources)
This method is used by the SAX parser to add collected resources indexed by xlink:label.
|
void |
setRole(java.lang.String newRole)
Sets the role.
|
void |
setRoleType(XBRLRoleType newRoleType)
Sets the role type on the extended link.
|
void |
setRoleTypeCode(int code)
This method sets the role type using the role code.
|
XBRLValidationReport |
validate(XBRLPlugInProcessor proc)
Validate.
|
boolean |
wouldBeDuplicateArc(XBRLRelationship rel)
Checks wether or not the relationship in the parameter
will be a duplicate relationship in this extended link.
|
getActuate, getArcrole, getFromTxt, getHRef, getHRefDocument, getHRefDocumentResolved, getHRefResolved, getLabel, getRawHRef, getReference, getRole, getShow, getStaticLabel, getSType, getTitle, getToTxt, isRequiredAttribute, isValidAttribute, setActuate, setArcrole, setFrom, setHRef, setLabel, setShow, setSType, setTitle, setTo, validateXPointer
addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addAttribute, addChild, addChildArray, addChildAt, addChildNode, addChildNodeArray, addChildNodeAt, addChildNodeInBatch, addComment, addFromRelationship, addNamespace, addNamespace, addPropertyChangeListener, addToRelationship, changeBase, checkBase, childExists, clone, clone, commitBatch, copy, createComment, delAttribute, delAttribute, delete, equalXdmValues, findFirstNodeOfClass, findPosition, firePropertyChangeEvent, generateId, generateLocatorToNode, generatePrefix, getAllAttributes, getAttribute, getAttributeAtomicValue, getAttributeBooleanValue, getAttributeGroundedValue, getAttributeQNameValue, getAttributeValue, getBase, getBase, getBooleanValue, getChildren, getChildStringValue, getConfiguration, getContainer, getContainerDocumentURI, getDocument, getElement, getElement, getFirstChildNoComment, getFragment, getFriendlyName, getFriendlyName, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getId, getInScopeNamespaces, getLang, getLastChildNoComment, getNamePool, getNamespaceBinding, getNamespaceURI, getNextSiblingNoComment, getNodeName, getNthElement, getNumberOfElements, getNumberOfFromRelationships, getNumberOfToRelationships, getOrGenerateId, getParentXBRL, getPrefix, getPrefixes, getPropertyChangeListeners, getQNameValue, getRelationshipsBases, getRelationshipsChain, getRelationshipTypes, getStaticNamespace, getStringValue, getToolTipText, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getValue, getXPath, getXPathFromXPointer, getXPathNamespaceContext, getXPathToRoot, getXPointerElementScheme, getXPointerElementScheme, getXPointerShorthandScheme, getXPointerXPath2Scheme, initialise, internalToString, isAttribute, isChangeHashEnabled, isDead, isEmpty, isNamespaceDefined, isNil, moveNamespacesUp, objEquals, objHashCode, reindex, removeChild, removeChildNode, removeFromRelationship, removeNamespace, removePropertyChangeListener, removeToRelationship, replace, replaceChild, replaceStringValue, resetElements, resolveHRef, s_equal2_xp2, s_equal2_xp2, s_equal2, s_equal2, s_equal2, s_equal2, setAttributeList, setAttributes, setBase, setChildrenClone, setDirty, setElements, setId, setLang, setModified, setNamespaceDeclarations, setNamespaces, setNil, setNodeName, setRawParentXBRL, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, toString, valueEquals, xEqual
addAttribute, addNamespace, generateId, getAttributeList, getAttributeValue, getAttributeValue, getBaseURI, getColumnNumber, getDeclaredNamespaces, getDocumentRoot, getLineNumber, getNameCode, getNamespaceList, getNodeKind, getRoot, getSchemaType, getSystemId, getTypeAnnotation, getURIForPrefix, gsetAttributeCollection, isId, isInScopeNamespace, isNilled, iteratePrefixes, removeAttribute, removeTypeAnnotation, rename, setLocation, setNameCode, setNamespaceList, setSystemId, setTypeAnnotation
atomize, compareOrder, comparePosition, getDisplayName, getDocumentNumber, getFingerprint, getLocalPart, getNextInDocument, getNextSibling, getParent, getPhysicalRoot, getPrefix, getPreviousInDocument, getPreviousSibling, getPublicId, getSiblingPosition, getSuccessorElement, getURI, head, insertSiblings, isDeleted, isIdref, isSameNodeInfo, iterate, iterateAxis, iterateAxis, newBuilder, replace
getContainer
getContainer
public static final java.lang.String standard_role_URI
public java.lang.Integer getDTSKey()
getDTSKey
in interface XBRLDTSDocument
public void clear() throws java.lang.Throwable
clear
in interface XBRLDTSDocument
clear
in class XLinkElement
java.lang.Throwable
- the throwablepublic XBRLDocument getParentDocument()
getParentDocument
in class XMLFragment
public void setDTSBase(DTSBase base) throws XBRLInconsistentDTSException
base
- the new DTS baseXBRLInconsistentDTSException
- the XBRL inconsistent dts exceptionpublic DTSBase getDTSBase()
public boolean equals(java.lang.Object other)
equals
in interface net.sf.saxon.om.NodeInfo
equals
in class XLinkElement
other
- the otherpublic int hashCode()
hashCode
in interface net.sf.saxon.om.NodeInfo
hashCode
in class XLinkElement
public boolean isHashDependsOnAtribute(javax.xml.namespace.QName attributeName)
isHashDependsOnAtribute
in class XLinkElement
attributeName
- the attribute namepublic void resetHash()
public static XBRLExtendedLink createExtendedLink(XBRLDocument parent, DTSBase base) throws XBRLInconsistentDTSException
parent
- XBRLDocumentbase
- DTSBaseXBRLInconsistentDTSException
- the XBRL inconsistent dts exceptionpublic static XBRLExtendedLink createExtendedLink(XBRLDocument parent, javax.xml.namespace.QName rootElementName, XBRLRoleType role) throws XBRLInconsistentDTSException
parent
- the parentrootElementName
- the root element namerole
- the roleXBRLInconsistentDTSException
- the XBRL inconsistent dts exceptionpublic static XBRLExtendedLink createExtendedLink(XBRLDocument parent, net.sf.saxon.om.NodeInfo ni)
parent
- the parentni
- the nipublic abstract java.lang.Class<? extends XBRLResource> getResourceClass(net.sf.saxon.om.NodeInfo ni)
This method is internally used by the API
ni
- the NodeInfo that is the source of the resource in the documentpublic void discoverDTS(XBRLDTSDocument parent) throws DTSDiscoveryException, com.rs.lic.LicenseVerificationException
discoverDTS
in interface XBRLDTSDocument
parent
- the parentDTSDiscoveryException
- the DTS discovery exceptioncom.rs.lic.LicenseVerificationException
- the license verification exceptionpublic abstract javax.xml.namespace.QName getStaticLinkbaseType()
public abstract java.lang.String getExtendedLinkTypeName()
public javax.xml.namespace.QName getLinkbaseType()
public java.util.Iterator<XBRLDocumentation> getDocumentation()
public void addDocumentation(XBRLDocumentation doc)
addDocumentation
in interface XBRLAllowsDocumentation
doc
- the docpublic void removeDocumentation(XBRLDocumentation doc)
removeDocumentation
in interface XBRLAllowsDocumentation
doc
- the docpublic java.util.Iterator<XBRLAttribute> getAttributes()
getAttributes
in class XLinkElement
XMLFragment.getAllAttributes()
public XBRLRoleType getRoleType()
XBRLRuntimeException
- encapsulating XBRLValidationException if the role type is not in the
target schema referenced by the content of the xlink:href attributepublic void setRoleType(XBRLRoleType newRoleType)
newRoleType
- the new role typepublic void setRoleTypeCode(int code)
code
- the new role type codepublic void setRole(java.lang.String newRole)
setRole
in class XLinkElement
newRole
- the new rolepublic void setLocatorsByLabel(java.util.HashMap<java.lang.String,java.util.List<XBRLLocator>> cacheLocators)
cacheLocators
- the cache locatorspublic void setResourcesCache(java.util.HashMap<java.lang.String,java.util.List<XBRLResource>> cacheResources)
cacheResources
- the cache resourcespublic void setRelationshipsByArcrole(java.util.Map<java.lang.String,java.util.List<XBRLArc>> relationshipsByArcroleMap)
relationshipsByArcroleMap
- the relationships by arcrole mappublic java.util.List<XBRLArc> getArcsByArcrole(java.lang.Integer arcrole)
arcrole
- the arcrolepublic void setResources(java.util.LinkedHashMap<java.lang.Integer,XBRLResource> resources)
resources
- the resourcespublic boolean addRelationship(XBRLRelationship relationship) throws XBRLInconsistentDTSException
relationship
- the relationshipXBRLInconsistentDTSException
- the XBRL inconsistent dts exceptionpublic abstract boolean isStandardExtendedLink()
public boolean removeRelationship(XBRLRelationship relationship) throws XBRLInconsistentDTSException
relationship
- the relationshipXBRLInconsistentDTSException
- the XBRL inconsistent dts exceptionpublic java.lang.String getFriendlyName()
getFriendlyName
in class XMLFragment
public java.util.Iterator<XBRLArcroleType> getArcroles()
public void setArcrolesMapCount(java.util.Map<java.lang.Integer,java.lang.Integer> arcroles)
arcroles
- the arcrolespublic XBRLArcroleType getArcroleType(java.lang.String arcrole)
arcrole
- the arcrolepublic java.util.Iterator<XBRLRelationship> getRelationships()
public abstract java.util.Collection<javax.xml.namespace.QName> getStandardResourceNodeNames()
public abstract java.util.Collection<java.lang.String> getStandardDefinedRolesOnResources()
public XBRLExtendedLink generateNode() throws XBRLSerializationException
generateNode
in class XLinkElement
XBRLSerializationException
- the XBRL serialization exceptionpublic boolean wouldBeDuplicateArc(XBRLRelationship rel) throws XBRLValidationException
rel
- the relationship that is not in this link and will be testedXBRLValidationException
- the XBRL validation exceptionpublic java.util.Iterator<XMLFragment> getArcs() throws XBRLValidationException
XBRLValidationException
- If there are unrecoverable XBRL errors in the arcpublic java.util.Iterator<XBRLResource> getResources()
public int getNumberOfResources()
public void addResource(XBRLResource resource) throws XBRLDuplicateException
This method should not be used but the XBRLResource.setRawParentXBRL(XMLFragment)
instead
that in turn calls this method when needed
resource
- the resourceXBRLDuplicateException
- the XBRL duplicate exceptionpublic void removeResource(XBRLResource resource)
This method should not be used but the XBRLResource.setRawParentXBRL(XMLFragment)
instead
with null parameter that in turn calls this method when needed.
resource
- the resourcepublic java.util.Iterator<XBRLLocator> getLocators()
public java.util.Iterator<XMLFragment> getElements()
getElements
in class XMLFragment
public void clearCaches()
For internal purposes only
public XBRLValidationReport getValidationReport()
getValidationReport
in interface XBRLValidation
public void invalidate()
invalidate
in interface XBRLValidation
public boolean invalidate(XBRLValidation.Direction dir)
invalidate
in interface XBRLValidation
dir
- the dirpublic XBRLValidationReport validate(XBRLPlugInProcessor proc)
validate
in interface XBRLValidation
proc
- the procpublic boolean isOnValidation()
isOnValidation
in interface XBRLValidation
public static boolean checkValidArcroleOnLink(XBRLArcroleType arcrole, javax.xml.namespace.QName baseType)
This method only checks for static information defined in the XBRL 2.1 specification.
arcrole
- the arcrolebaseType
- the base typepublic void checkCountOfRelationships(java.lang.Integer arcrole)
arcrole
- the arcrolepublic XBRLResource getResource(java.lang.Integer resourceCode)
resourceCode
- the resource codepublic final boolean hasChildNodes()
hasChildNodes
in interface net.sf.saxon.om.NodeInfo
hasChildNodes
in class net.sf.saxon.tree.linked.NodeImpl
public final int getNumberOfChildren()
public final net.sf.saxon.tree.linked.NodeImpl getFirstChild()
getFirstChild
in interface net.sf.saxon.tree.util.SteppingNode<net.sf.saxon.tree.linked.NodeImpl>
getFirstChild
in class net.sf.saxon.tree.linked.NodeImpl
public final net.sf.saxon.tree.linked.NodeImpl getLastChild()
getLastChild
in class net.sf.saxon.tree.linked.NodeImpl
Copyright 2006-2015 Reporting Standard S.L., C/ Torrecilla del Puerto 1, 28043, Madrid, Espaņa