com.batavia.xbrl.taxonomy
Interface Tuple

All Superinterfaces:
java.lang.Comparable, ComparablePart, Concept, Declaration, IdHolder, IdKeeper, RegularSchemaElement, java.io.Serializable, TaxonomyElement, org.relaxng.datatype.ValidationContext, XbrlElement, XmlElement, XmlParticle

public interface Tuple
extends Concept

While most business facts can be independently understood, some facts are dependent on each other for proper understanding, especially if multiple occurrences of that fact are being reported.

For example, in reporting the management of a company, each manager’s name has to be properly associated with the manager’s correct title. Such sets of facts (manager’s title/manager’s name) are called tuples.

Tuples have complex content and MAY contain both items and other tuples. Like the item element, the tuple element is abstract. The following rules apply to tuples: • All tuples MUST be members of the substitution group that has tuple as its head. Therefore, tuples must be declared globally, because only global elements can be in a substitution group. • All tuple syntax definitions MUST NOT include a periodType or balance attribute (See Sections 5.1.1.1 and 5.1.1.2 respectively); • All tuples MAY have an attribute with name id of type ID to enable them to be referenced from elsewhere, and any additional attributes MUST be drawn from a namespace that is not defined in this standard. • Tuples MUST NOT have mixed content, or simple content. • Tuples MUST NOT be declared abstract. • Descendant elements of a tuple MUST NOT contain any anonymous type declarations. • The restriction element of the tuple declaration MUST NOT contain elements other than sequence, choice, all, attribute, anyAttribute and element. • All element declarations within tuples MUST be references to global element declarations that are in substitution groups that have either item or tuple as their head. • Tuple content models MUST NOT include abstract elements.

Copyright 2006 J2R BV, The Netherlands.

Part of Licensed Materials.

www.batavia-xbrl.com

Author:
Ron van Ardenne

Method Summary
 Fact createFact(InstanceElement parent, Xbrl aRoot, boolean includeDefaultValues)
          create a Fact and populate it except for its value for the purpose of populating an instance
 Fact createFact(InstanceElement parent, Xbrl aRoot, boolean includeDefaultValues, java.util.List contextList, boolean includeFootnotes)
           
 Fact createMissingFactContent(Tuple tupleFact, Xbrl aRoot, boolean includeDefaultValues, java.util.List contextList, boolean includeFootnotes)
           
 Tuple createTupleNoContent(InstanceElement parent, Xbrl aRoot)
          Create a tuple for the given parent without any content
 ComplexType getComplexType()
           
 java.util.List getRefConceptNames()
          Get the list of concepts that were ref from this tuple
 java.util.List getRefsToConcept(Concept aConcept, DiscoverableTaxonomySet instanceDts)
           
 boolean hasElementsWithoutRef(java.util.List decendants)
          Determine if this tuple has restrictions without refelements in its content model.
 boolean refersToConcept(Concept aConcept, DiscoverableTaxonomySet instanceDts)
          Determine if this tuple uses the given concept in its content model.
 void setComplexType(ComplexType aPart)
          Set the complextype content for this tuple
 boolean validate(ValidationDocument msgs)
          Validate this xbrl part (of the instance and/or its supporting discoverable taxonomy set) and add messages on any problem to the given XbrlValidationMessages collection.
 
Methods inherited from interface com.batavia.xbrl.taxonomy.Concept
createExtraSibblings, createInferredFact, getAbstractAttribute, getAncestors, getBalance, getCalculationMap, getConceptType, getId, getLabel, getLabels, getMaxOccurs, getNameAttribute, getNameForTargetNamespace, getNameForTargetNamespace, getNillable, getPeriodType, getPrefLabelAndLangOnly, getReferences, getSubstitutionGroup, getType, isAbstract, isOptional, setAbstractAttribute, setBalance, setId, setMaxOccurs, setNameAttribute, setNillable, setOptional, setPeriodType, setSubstitutionGroup, setType, toString, validate
 
Methods inherited from interface com.batavia.xbrl.taxonomy.type.Declaration
createContents, getAncestor, getXmlType, isInSubstitutionGroup, isPresent, validate
 

Method Detail

setComplexType

void setComplexType(ComplexType aPart)
Set the complextype content for this tuple

Parameters:
aPart -

refersToConcept

boolean refersToConcept(Concept aConcept,
                        DiscoverableTaxonomySet instanceDts)
Determine if this tuple uses the given concept in its content model.

Parameters:
aConcept -
Returns:
true when the given concept is referred

getComplexType

ComplexType getComplexType()
Returns:
Returns the complexType.

hasElementsWithoutRef

boolean hasElementsWithoutRef(java.util.List decendants)
Determine if this tuple has restrictions without refelements in its content model.

Parameters:
decendants -
Returns:
boolean

validate

boolean validate(ValidationDocument msgs)
Validate this xbrl part (of the instance and/or its supporting discoverable taxonomy set) and add messages on any problem to the given XbrlValidationMessages collection.

Specified by:
validate in interface XmlElement
Parameters:
msgs - The messages that indicate the problems with the instance and or its supporting taxonomy set
Returns:
true if there ar no problems with this XbrlElementImpl

createFact

Fact createFact(InstanceElement parent,
                Xbrl aRoot,
                boolean includeDefaultValues)
create a Fact and populate it except for its value for the purpose of populating an instance

Parameters:
aRoot -
Returns:

createFact

Fact createFact(InstanceElement parent,
                Xbrl aRoot,
                boolean includeDefaultValues,
                java.util.List contextList,
                boolean includeFootnotes)

createTupleNoContent

Tuple createTupleNoContent(InstanceElement parent,
                           Xbrl aRoot)
Create a tuple for the given parent without any content

Parameters:
parent -
aRoot -
Returns:

getRefConceptNames

java.util.List getRefConceptNames()
Get the list of concepts that were ref from this tuple

Returns:

createMissingFactContent

Fact createMissingFactContent(Tuple tupleFact,
                              Xbrl aRoot,
                              boolean includeDefaultValues,
                              java.util.List contextList,
                              boolean includeFootnotes)

getRefsToConcept

java.util.List getRefsToConcept(Concept aConcept,
                                DiscoverableTaxonomySet instanceDts)