XBRL Infoset
Public Working Draft, dated 2007-11-28
Copyright © 2005, 2006, 2007 XBRL International Inc., All Rights Reserved

This document:
XIS-PWD-2007-11-28.rtf

is NORMATIVE. All other formats and versions are NON-NORMATIVE.
Authors	
Name	Contact	Affiliation	
Ignacio Hernández-Ros	ignacio@hernandez-ros.com	Reporting Estandar S.L.	
Contributors
Name	Contact	Affiliation	
			
Abstract
This document is not an XBRL specification because it does not define validation rules, relationships or whatever kind of syntax for anything. This document is a formal description of the content of a DTS (Instance documents excluded) without any reference to the syntax used to represent it on files.
This document was created with the aim to be used as reference documentation by other XBRL specifications and software consuming XBRL taxonomies or processing information in a DTS.
The scope of this document is limited to a Taxonomy schema and linkbases. Infoset objects that belongs to XBRL Instance documents are not currently defined in this document. Extending the Infoset to contain the information that exists in an Instance Document could be done in a further step when this document gets acceptance within the XBRL community.
Status	
This is a Public Working Draft whose circulation is unrestricted.  Comments should be directed to the editor and/or contributors by e-mail.  Recipients of this draft are invited to submit, with their comments, notification of any relevant patent rights of which they are aware and to provide supporting documentation.  

Table of Contents
1	Introduction
1.1	Background
1.2	Relationship to other work
1.3	Terminology
1.4	Document conventions
1.5	Namespaces
1.6	XPath
2	XBRL Infoset
2.1	Definitions
2.2	The Information Items
2.2.1	The DTS Information Item:
2.2.2	The XBRL Document Information Item:
2.2.3	The XBRL Taxonomy Information Item:
2.2.4	The Imported XBRL Taxonomy Information Item:
2.2.5	The Role Type Information Item:
2.2.6	The Arcrole Type Information Item:
2.2.7	The Used On Information Item:
2.2.8	The XBRL Concept Information Item:
2.2.9	The XBRL Item Information Item:
2.2.10	The XBRL Tuple Information Item:
2.2.11	The XBRL Linkbase Information Item:
2.2.12	The Extended link Information Item
2.2.13	The Documentation Information Item:
2.2.14	The Relationship Information Item:
2.2.15	The Resource Information Item:
A	References
B	Intellectual Property Status
C	Acknowledgements
D	Document History
 
Table of Definitions
[Def, 1]  A XBRL taxonomy document is an instance of an XML Schema document [SCHEMA-1].	3
[Def, 2]  A valid XBRL taxonomy document is an XBRL taxonomy document that is also according to the limits established in the [XBRL] XBRL 2.1 specification.	3
[Def, 3]  A XBRL linkbase is an XML fragment or instance of an XML document whose root element is the link:linkbase element defined in the section 3.5.2 of the [XBRL] XBRL 2.1 specification.	3
[Def, 4]  A valid XBRL linkbase document is a XBRL linkbase that is a valid instance of an XML document or fragment against the schemas that defines its content and the validation rules defined in the [XBRL] XBRL 2.1 specification.	3
[Def, 5]  A XBRL instance is an XML document or XML fragment whose root element is the xbrli:xbrl element as defined in section 4.1 of the [XBRL] XBRL 2.1 specification.	3
[Def, 6]  A valid XBRL instance document is a XBRL instance that is valid according to the validation rules defined in the [XBRL] XBRL 2.1 specification.	3
[Def, 7]  A XBRL document is a XBRL taxonomy document, a XBRL linkbase or a XBRL instance.	3
[Def, 8]  A valid XBRL document is a valid XBRL taxonomy document, a valid XBRL Linkbase document or a valid XBRL instance document.	3
[Def, 9]  A DTS starting point for the purposes of this document is either a valid XBRL taxonomy document or a valid XBRL linkbase document.	3

1	Introduction 
The XBRL Infoset (Information Set) is an abstraction layer on top of the syntax layer in which XBRL taxonomies and XBRL linkbases (in a DTS) defines concepts, resources and its relationships. 
1.1	Background 
There are multiple examples that show how the information on a DTS can be written in one or many different files without any impact on applications using the DTS. To highlight just one:
o	A taxonomy schema "A.xsd" for the namespace http://foo defining two concepts tx:One and tx:Two may contain one presentation linkbase with one parent-child arc in the http://www.xbrl.org/2003/role connecting the two concepts as of tx:One is the parent of tx:Two.
o	A different taxonomy schema "B.xsd" for the same namespace http://foo and defining the same concepts (tx:One and tx:Two), may have two embedded presentation linkbases in the same http://www.xbrl.org/2003/role role one saying that tx:Two is the parent of tx:One and the other prohibiting the previous relationship and creating another one saying that tx:One is the parent of tx:Two.
Both taxonomies are equivalent from consuming applications because regardless taxonomy "B.xsd" may be seen as more complex or hard to maintain than "A.xsd", both taxonomies defines the same concepts and the same relationships between the concepts. Both are equivalent taxonomies because both define the same information set.
1.2	Relationship to other work 
This document pertains to XBRL as defined in the XBRL Specification [XBRL]. 
Parts of this document may reiterate for expository clarity certain semantic restrictions imposed by XBRL, but this document does not modify XBRL. In the event of any conflicts between this document and XBRL, XBRL prevails.
1.3	Terminology 
Terminology used in XBRL frequently overlaps with terminology from other fields.
The following terms are used as described in the table below:
Term	Meaning 	
Arc, arcroleRef, base set, child, concept, context, duplicate item, descendant, DTS (discoverable taxonomy set), element, entity, fact, instance, item, linkbase, linkbaseRef, p‑equal, roleRef, taxonomy, taxonomy schema, u‑equal, XBRL instance.	As defined by XBRL [XBRL].	
Relationship	An arc defines a relationship between its source concepts and target concepts that is determined by its xlink:arcrole and other attributes.	
Source [concept(s)]	The concepts identified by the URI content of the href attributes of the locator-type elements in the same extended-type link element, which have the same label attribute content as the content of the “from” attribute of an arc.	
Target [concept(s)]	The concepts identified by the URI content of the href attributes of the locator-type elements in the same extended-type link element, which have the same label attribute content as the content of the “to” attribute of an arc.	
must, must not, required, shall, shall not, should, should not, may, optional
	See [RFC2119] for definitions of these and other terms. These include, in particular:
should: Conforming documents and applications are encouraged to behave as described.
must: Conformant documents and consuming applications are required to behave as described; otherwise they are in error.	
XBRL	Extensible Business Reporting Language (XBRL) 2.1 Recommendation [XBRL].	

1.4	Document conventions 
The following highlighting is used to present normative technical material in this document:
	
The following formatting is used for non-normative examples in this document:

The following formatting is used for non-normative counterexamples (examples of poor, discouraged or disallowed usage) in this document:

Non-normative editorial comments are denoted as follows and removed from final recommendations:

1.5	Namespaces
This table contains all the prefixes used within the text and XPath 2.0 expressions and the correspondent namespace URI:
Prefix	Namespace URI	
xml	http://www.w3.org/XML/1998/namespace 	
xbrli	http://www.xbrl.org/2003/instance	
xs	http://www.w3.org/2001/XMLSchema	
xlink	http://www.w3.org/1999/xlink	
link	http://www.xbrl.org/2003/linkbase	
xl	http://www.xbrl.org/2003/XLink	
The Prefix column in the table above is non normative. The Namespace URI column is normative.
1.6	XPath
XPath expressions that appear in this document are XPath 2.0 [XPATH] expressions executed in a schema aware processor. Refer to the [XPATH] 2.0 specification for more information.
The prefixes used in the XPath expressions are indicated in section 1.5 above.
2	
XBRL Infoset
2.1	Definitions
[Def, 1]	 A XBRL taxonomy document is an instance of an XML Schema document [SCHEMA-1].
[Def, 2]	 A valid XBRL taxonomy document is an XBRL taxonomy document that is also according to the limits established in the [XBRL] XBRL 2.1 specification.
[Def, 3]	 A XBRL linkbase is an XML fragment or instance of an XML document whose root element is the link:linkbase element defined in the section 3.5.2 of the [XBRL] XBRL 2.1 specification. Note that root element may be the root of the fragment or the root of the document depending on the linkbase is embedded in the XML schema or stored externally as an XML document.
[Def, 4]	 A valid XBRL linkbase document is a XBRL linkbase that is a valid instance of an XML document or fragment against the schemas that defines its content and the validation rules defined in the [XBRL] XBRL 2.1 specification.
[Def, 5]	 A XBRL instance is an XML document or XML fragment whose root element is the xbrli:xbrl element as defined in section 4.1 of the [XBRL] XBRL 2.1 specification.
[Def, 6]	 A valid XBRL instance document is a XBRL instance that is valid according to the validation rules defined in the [XBRL] XBRL 2.1 specification.
[Def, 7]	 A XBRL document is a XBRL taxonomy document, a XBRL linkbase or a XBRL instance.
[Def, 8]	 A valid XBRL document is a valid XBRL taxonomy document, a valid XBRL Linkbase document or a valid XBRL instance document.
[Def, 9]	 A DTS starting point for the purposes of this document is either a valid XBRL taxonomy document or a valid XBRL linkbase document. 
2.2	The Information Items
This document defines an abstract data set called the XBRL Information set (XBRL Infoset) that is subject of this document.  The XBRL Infoset defined in this document is build on top of the XSD Infoset and the XML Infoset [XINFOSET] and in certain parts this document refers to them.
Although the XML Infoset specification [XINFOSET] says it is not exhaustive the XBRL Infoset described in this document is complete at XBRL level to perform XBRL validation even if it is not exhaustive at XML level.
Some properties of XBRL Information Items refer to other properties defined in a generic XSD Infoset. The XBRL Infoset is independent on any specific XSD Infoset. XBRL vendors are free to choose the XSD data model they want or to implement their own XSD Information set.
An XBRL Information set can be created for a valid XBRL document.
The XBRL Infoset consists of a number of XBRL Information Items. The XBRL Information set for a DTS will contain all the Information Items found in all discovered XBRL documents according to the rules described in section 3.2 of the [XBRL] XBRL 2.1 specification. The XBRL Information Item is an abstract description of some parts of one or many XBRL documents. Not all Information Items in the XML Information Item [XINFOSET] are part of the XBRL Information Item. The XBRL information Item excludes from the XML information set items or properties that adds no semantics as a result of XBRL processing operations like resolving equivalent relationships specified in section 3.5.3.9.7.4 and rules of prohibiting and overriding relationships described in section 3.5.3.9.7.5 of the [XBRL] XBRL 2.1 specification.
2.2.1	The DTS Information Item:
#	Property	Description	Type	
1.		[Root] 	The URL of a file that is an XBRL Taxonomy Schema or a XBRL Linkbase that can be used as the file to start the DTS discovery process defined in section 3.2 of the XBRL specification. Note that according to section 3.2 of the XBRL spec an XBRL Instance document may also be used as the starting point of DTS discovery. For the purposes of this document the DTS starting point MUST be an XBRL Taxonomy Schema or an XBRL linkbase. 	URI	
2.		[Concepts]	Unordered list of all XBRL Concept Information Items [2.2.8].	Object List	
3.		[Resources]	Unordered list of all XBRL Resource Information Items [2.2.15].	Object List	
2.2.2	The XBRL Document Information Item:
#	Property	Description	Type	
1.		[Parents] 	An unordered list of the XBRL Document Information Items [2.2.2] that causes this document to be included in the DTS.	Object List	
2.		[URI] 	This is the absolute document URI of this Document Information Item. The value of the [URI] property can be obtained by the XPath 2.0 expression document-uri(root())	URI	
3.		[Additional properties] 	Defined below depending of the XBRL document is an XBRL Taxonomy Information Item [2.2.3] or an XBRL Linkbase Information Item [2.2.11].	Derived Class	
4.		[The Document Information Item] 	As defined in section 2.1 of the XML Infoset Specification [XINFOSET]. Note: the Document Information Item contains almost everything that appears in the source XML file. Fragments of this Document Information Item define the content of different XBRL Information Items. When possible, the XBRL Information Items has been identified using XPath 2.0 sentences operating using the XBRL Document Information Item as the context for evaluation. The content of this Information Item could be obtained as a result of the doc([Document URL]) XPath 2.0 function.	Not in Infoset	
2.2.3	The XBRL Taxonomy Information Item:
#	Property	Description	Type	
1.		[Parent] 	The XBRL Document Information Item [2.2.2] where the namespace property of this Taxonomy Information Item is declared.	Parent Class	
2.		[Namespace] 	A URI that is the content of the targetNamespace attribute of the schema element. See http://www.w3.org/TR/xmlschema-1/#element-schema. If the taxonomy does not define any specific namespace the content of this property may be the empty URI. It can be located in the XBRL Document Information Item among the node identified by the XPath 2.0 expression "@targetNamespace". This is a common property of the XSD Infoset.	URI	
3.		[Roles] 	Unordered list of Role Type Information Items [2.2.5] defined in this taxonomy schema. They can be located in the XBRL Document Information Item among the set of nodes identified by the XPath 2.0 expression "xs:annotation/xs:appinfo/link:roleType". 	Object List	
4.		[Arcroles] 	Unordered list of Arcrole Type Information Items [2.2.6] defined in this taxonomy schema. They can be located in the XBRL Document Information Item among the set of nodes identified by the XPath 2.0 expression "xs:annotation/xs:appinfo/link:arcroleType".	Object List	
5.		[Linkbases]	Unordered list of XBRL Document Information Items [2.2.2] representing XBRL Linkbases Information Items [2.2.11]. They can be located in the XBRL Document Information Item among the set of nodes identified by the XPath 2.0 expression "xs:annotation/xs:appinfo/link:linkbaseRef" for external linkbases and "xs:annotation/xs:appinfo/link:linkbase" for embedded linkbases.	Object List	
6.		[Imports] 	The Imported XBRL Taxonomy Information Items [2.2.4] referenced as imported taxonomies using XML Schema imports. They can be located in the XBRL Document Information Item among the set of nodes identified by the XPath 2.0 expression "xs:import". This is a common property of the XSD Infoset.	Object List	
7.		[Concepts]	The XBRL Concept Information Items [2.2.8] defined in this schema. This is normally a subset of the element declarations property of the XSD Infoset. See http://www.w3.org/TR/xmlschema-1/#element_declarations	Object List	
Note: The included schemas using the XML Schema Include mechanism modify the content of the current XBRL Taxonomy Information Item. The Schema referenced in the Include statement MUST be merged with the current Schema before the XBRL Item Information Item declarations and XBRL Tuple Information Item declarations are processed.
Element definitions, Simple type definitions, Complex type definitions, Attributes, Attribute groups and any other XML Schema element in the XSD Infoset that are not used by [XBRL Items] or [XBRL Tuples] directly or indirectly are not part of the XBRL Infoset. Taxonomy editors could locate those element definitions using the [Document Information Property] of the XBRL Document Information Item [2.2.2]
2.2.4	The Imported XBRL Taxonomy Information Item:
Note that the namespace and schemaLocation attributes of the import element are not part of the XBRL Infoset because the content of the imported schema is part of the Infoset.
#	Property	Description	Type	
1.		[Parent] 	This is the XBRL Taxonomy Information Item [2.2.3] where the import statement appears.	Object	
2.		[Content] 	The Document Information Item [2.2.2] of the imported schema. The content can be obtained by processing the nodes returned by the XPath 2.0 expression doc([@schemaLocation]).
This property may not exist if the imported document is one of the standard documents defined in XBRL specification or additional modules.	Object	
3.		[Attributes] 	An unordered set of XML Attribute Information Items as defined in section 2.3 of the [XINFOSET] specification. Only attributes on the http://www.w3.org/XML/1998/namespace namespace are allowed. The sequence of attributes could be obtained by the following XPath 2.0 expression:
@*[node-name(.) != QName("","namespace") and node-name(.) != QName("","schemaLocation")]	xml: Attribute List	
2.2.5	The Role Type Information Item:
Note that the ID is not part of the XBRL Infoset; the [Uses] property contains the usages of this Role Type instead.
All Role Types defined in the XBRL 2.1 specification are static definitions with the empty sequence as the value of the [Parent] property. All Role Types created because of the existence of unreferenced URIs in custom Linkbases or custom resources will be declared as virtual Role Types. Virtual Role Types do not have a parent, are unique within the DTS and can be used everywhere.
#	Property	Description	Type	
1.		[Parent] 	Taxonomy Information Item [2.2.3] where this role type is defined.	Object	
2.		[Definition] 	Optional, text string with human readable information about the role type definition. The content of the definition string can be obtained with the XPath 2.0 expression link:definition/text()	String	
3.		[UsedOn] 	Unordered list of Used On Information items [2.2.7]. The content of the Used On XBRL Information Items can be obtained processing the nodes returned by the XPath 2.0 expression link:usedOn	Object List	
4.		[URI] 	The URI of the defined role. The role URI can be obtained with the XPath 2.0 expression @roleURI	URI	
5.		[Uses] 	Unordered list of Extended Link Information Item [2.2.12] or Resource Information Item [2.2.15] where this Role Type is used.	Object List	
2.2.6	The Arcrole Type Information Item:
All Arcrole Types defined in the XBRL 2.1 specification are static definitions with the empty sequence as the value of the [Parent] property.
All Arcrole Types found in custom arcs in custom Linkbases without an explicit reference to a role type via a roleRef element as described in sections 4.5 and 3.5.2.5 of the XBRL 2.1 specification will result into a definition of a virtual Arcrole Type. Virtual Arcrole Types do not have a parent, can be used on any arc type without restrictions and any cycles are allowed.
#	Property	Description	Type	
1.		[Parent] 	Taxonomy Information Item [2.2.3] where this arcrole type is defined.	Object	
2.		[Definition] 	Optional, text string with human readable information about the arcrole type definition. The content of the definition string can be obtained with the XPath 2.0 expression link:definition/text()	String	
3.		[UsedOn] 	Unordered list of Used On Information items [2.2.7]. The content of the Used On XBRL Information Items can be obtained processing the nodes returned by the XPath 2.0 expression link:usedOn	Object List	
4.		[URI] 	The URI of the defined arcrole. The arcrole URI can be obtained with the XPath 2.0 expression @arcroleURI	URI	
5.		[Cycles] 	The value of the Cycles Allowed can be "any", "undirected" or "none". The value of the [Cycles] property can be obtained with the XPath 2.0 expression xs:token(@cyclesAllowed)	NMToken	
6.		[Uses] 	Unordered list of Relationship Information Items [2.2.14] where this Arcrole Type is used.	Object List	
2.2.7	The Used On Information Item:
Note: [in-scope namespaces] as defined in the XML Element Information Item in section 2.2 of the [XINFOSET] specification is not a property of this element. The QName property is evaluated by using the in-scope namespaces of this element. 
#	Property	Description	Type	
1.		[Parent] 	Role Type Information Item [2.2.5] or Arcrole Type Information Item [2.2.6] where this element is used.	Object	
2.		[Target] 	The QName of an XML element Information Item. It can be obtained by evaluating the following XPath 2.0 expression "resolve-QName(text(),.)" using the link:usedOn element as the context for evaluation.	QName	
2.2.8	The XBRL Concept Information Item:
This object represents a concept defined in a taxonomy. A concept can be an Item or a Tuple. Both have properties in common and the XBRL Concept Information Item represents the properties in common between Items and Tuples.
Note that element declarations that are not XBRL Item declarations or XBRL Tuple declarations are not part of the DTS.
#	Property	Description	Type	
1.		[Parent] 	The XBRL Taxonomy Information Item [2.2.3] where this concept is defined.	Object	
2.		[Name] 	The Item name. This is a common property of any XSD Infoset.	NCName	
3.		[Type] 	The Item type definition. This could be a simple type or a complex type. This is a common property of the XSD Infoset.
The object model of the type definition is application dependant.	XSDType	
4.		[Substitution Group] 	The element substitution group. This is a common property of the XSD Infoset. 	QName	
5.		[Nillable] 	Boolean value that is true if xsi:nil="true" is valid in an instance document. This is a common property of the XSD Infoset.	Boolean	
6.		[Abstract] 	Boolean value that is true if the concept will never be instantiated. This is a common property of the XSD Infoset.	Boolean	
7.		[Block] 	Valid values are "#all", "extension", "restriction" and "substitution" or the empty sequence. This is a common property of the XSD Infoset.	NMToken	
8.		[Fixed] 	The fixed value. If there is no a fixed attribute in the element definition the [Fixed] property also has no value. This is a common property of the XSD Infoset.	String	
9.		[Final] 	Valid values are "#all", "extension", "restriction" or the empty sequence. This is a common property of the XSD Infoset.	NMToken	
10.		[From] 	Unordered list of Relationship Information Items [2.2.14] in which this element participates as the source element of the relationship.	Object List	
11.		[To] 	Unordered list of Relationship Information Items [2.2.14] in which this element participates as the target element of the relationship.	Object List	
12.		[Attributes] 	An unordered set of XML Attribute Information Items as defined in section 2.3 of the [XINFOSET] specification except the id attribute that is explicitly excluded from this property and all attributes in the xbrli namespace (periodType and balance).	XML Attribute List	
13.		[Children] 	As defined in point 4 of the Section 2.2 of the XML Infoset [XINFOSET] Specification. The value of the [Children] attribute excludes the type definition because it is included in the [Type] property.	Multiple XML Objects	
2.2.9	The XBRL Item Information Item:
Note that the element ID is not part of the XBRL Infoset, the relationships in which this element is used is part of the XBRL Infoset.
#	Property	Description	Type	
1.		[Parent] 	The XBRL Concept Information Item [2.2.8] this Item is based on.	Parent Class	
2.		[Period Type] 	The Item period type declaration. The value of the [Period Type] property can be obtained with the XPath 2.0 expression xs:token(@xbrli:periodType)	NMToken	
3.		[Balance]	The Item balance type declaration. This is an optional attribute in the item declaration. Possible values are (), credit or debit. The value of the [Balance] property can be obtained with the XPath 2.0 expression xs:token(@xbrli:balance)	NMToken	
4.		[Default] 	The element default value. If there is no a default attribute in the element definition the [Default] property also has no value. This is a common property of the XSD Infoset.	String	
2.2.10	The XBRL Tuple Information Item:
Tuples usually are containers of other XBRL Concept Information Items [2.2.8]. The tuple content is defined in the tuple content model. The tuple content model is captured in the [Type] property of the XBRL Concept Information item and the Type property is expressed using the W3C XML Schema specification. In order to avoid duplication of information, this document does not include additional properties about what concepts are inside a Tuple definition. Applications should process the content of the [Type] property in order to obtain that information.
#	Property	Description	Type	
1.		[Parent] 	The XBRL Concept Information Item [2.2.8] this Tuple is based on.	Object	
2.2.11	The XBRL Linkbase Information Item:
Note that this element also contains the properties of a XBRL Document Information Item.
#	Property	Description	Type	
1.		[Parent] 	The XBRL Document Information Item [2.2.2] where the XBRL Linkbase is serialized. This could be a XBRL Taxonomy if this is an embedded linkbase or a XBRL Linkbase if the linkbase is in a separate file. 	Parent Class	
2.		[Documentation] 	List of link:documentation elements as Documentation Information Items [2.2.13] in document order. The value of the [Documentation] property can be obtained processing the nodes returned by the XPath 2.0 expression link:documentation	Object List	
3.		[Links] 	Unordered list of Extended Link Information Items [2.2.12] declared in this linkbase. The [Extended link Information Items] property can be obtained processing the nodes returned by the XPath 2.0 expression schema-element(xl:extended)	Object List	
4.		[Attributes] 	An unordered set of XML Attribute Information Items as defined in section 2.3 of the [XINFOSET] specification. Only attributes on the http://www.w3.org/XML/1998/namespace namespace are allowed. The value of the [Attributes] property can be obtained by the XPath 2.0 expression @xml:*	xml: Attribute List	
2.2.12	The Extended link Information Item
The content of the xlink:title attribute has been removed because the spec says it has no XBRL semantics. Extended link Information items are part of XBRL Linkbase Information Items.
#	Property	Description	Type	
1.		[Parent] 	The XBRL Linkbase Information Item [2.2.11] where this Extended Link Information Item exist.	Object	
2.		[Type] 	The Extended Link type obtained from the element QName. The value of the [Linkbase type] property can be obtained by the XPath 2.0 expression node-name(.). Different custom links are identified by the element node name. 	QName	
3.		[Role] 	The Role Type Information Item [2.2.5] where the role is defined. Note this is not the role URI as it appears in the xlink:role attribute of the extended link element but a reference to the Role Type Information Item resolved via a link:roleRef element to the Role Type or the static role Type definition. The serialization of the XBRL Extended link Information Item would put the [Role URI] property of the Role Type Information Item in the xlink:role attribute. For the role types defined in the XBRL 2.1 specification the [Role Type] property points to a static Role Type definition. For role types used in custom extended links that are not referenced via link:roleRef elements to any role type definition a Virtual Role Type should be returned. 	Object	
4.		[Documentation] 	List of link:documentation elements as Documentation Information Items [2.2.13] in document order. The value of the [Documentation] property can be obtained processing the nodes returned by the XPath 2.0 expression link:documentation	Object List	
5.		[Relationships] 	Unordered list of Relationship Information Items [2.2.14] that exist in this linkbase. The [Relationships Information Items] can be obtained processing the nodes returned by the XPath 2.0 expression schema-element(xl:arc) executed in all Extended link Information items in the DTS that contains the same value in the [Linkbase type] property and [Role Type] property and after resolving all equivalent relationships according to the section 3.5.3.9.7.4 of the [XBRL] 2.1 Specification and expanding to the Cartesian product of elements pointed to in the source and target of the arc.	Object List	
6.		[Attributes] 	An unordered set of XML Attribute Information Items as defined in section 2.3 of the [XINFOSET] specification. Only attributes on the http://www.w3.org/XML/1998/namespace namespace are allowed. The value of the [Attributes] property can be obtained by the XPath 2.0 expression @xml:*	xml: Attribute List	
2.2.13	The Documentation Information Item:
#	Property	Description	Type	
1.		[Parent] 	The Extended Link Information Item [2.2.12] or Linkbase Information Item [2.2.11] where this Documentation Information Item exist.	Object	
2.		[text] 	The content of the link:documentation element. The value of the [text] property can be obtained by the XPath 2.0 expression text()	String	
3.		[Attributes] 	An unordered set of XML Attribute Information Items as defined in section 2.3 of the [XINFOSET] specification. The value of the [Attributes] property can be obtained by the XPath 2.0 expression @*	XML Attribute List	
2.2.14	The Relationship Information Item:
A relationship is the result of resolving all equivalent relationships according to section 3.5.3.9.7.4 of the [XBRL] 2.1 Specification. Therefore, the XBRL Infoset includes the value of the use and priority attributes on the arc with highest priority among the equivalent arcs.
An arc in an extended link may connect n objects in its source to m objects in its target. An XBRL Relationship Information Item represents the connection between just one source element and one target element. One arc represents n*m relationships. XBRL APIs are free to optimize the number of arcs in an extended link.
#	Property	Description	Type	
1.		[Parent] 	The Extended Link Information Item [2.2.12] where this relationship exist.	Object	
2.		[Type]	The relationship type is the QName of the container element. The value of the [Type] property can be obtained by the XPath 2.0 expression node-name(.). Different relationship types are identified by different element node names.	QName	
3.		[From] 	The object that is the source of this relationship. The object type can be one of the following:
One XBRL Resource Information Item [2.2.15], or
one XBRL Concept Information Item [2.2.8], or
one XML Fragment.	Object	
4.		[To] 	The object that is the target of this relationship. The object type can be one of the following:
One XBRL Resource Information Item [2.2.15], or
one XBRL Concept Information Item [2.2.8], or
one XML Fragment.	Object	
5.		[Arcrole] 	The Arcrole Type Information Item [2.2.6] where this arc role is defined. Note this is not the role URI as it appears in the xlink:arcrole attribute of the arc element but a reference to the Arcrole Type Information Item resolved via a link:arcroleRef element to the Arcrole Type or the static arc role Type definition. The serialization of the Relationship Information Item would put the [Arcrole] property of the Arcrole Type Information Item in the xlink:arcrole attribute. For the arc role types defined in the XBRL 2.1 specification the [Arcrole] property points to a static Arcrole Type definition. For arc role types used relationships in custom Linkbases that are not referenced via link:arcroleRef elements to any Arc role type definition a Virtual Arcrole Type is returned.	Object	
6.		[Order] 	The value of the order attribute on arcs or the default value if there is no value indicated. Refer to section 3.5.3.9.5 of the [XBRL] 2.1 Specification.	Decimal	
7.		[Use] 	The value of the use attribute on the arc with highest priority. The value can be obtained by the XPath 2.0 expression if (@use) then xs:token(@use) else ()	NMToken	
8.		[Priority] 	The value of the priority attribute on the arc with highest priority. The value can be obtained by the XPath 2.0 expression if (@priority) then xs:decimal(@priority) else ()	Decimal	
9.		[Attributes] 	An unordered set of XML Attribute Information Items as defined in section 2.3 of the [XINFOSET] specification excluding attributes order, use, priority and xlink:*. The value of the [Attributes] property can be obtained by the XPath 2.0 expression @*[node-name(.) != QName("","use") and node-name(.) != QName("","order") and node-name(.) != QName("","priority") and not(namespace-uri-from-QName(.) eq " http://www.w3.org/1999/xlink")]. 	XML Attribute List	
2.2.15	The Resource Information Item:
#	Property	Description	Type	
1.		[Parent] 	The Extended Link Information Item [2.2.12] where this Resource Information Item exists.	Parent Class	
2.		[Type]	The resource type is the QName of the container element. The value of the [Type] property can be obtained by the XPath 2.0 expression node-name(.). Different resource types are identified by different element node names.	QName	
3.		[Role]	The Role Type Information Item [2.2.5] where the role is defined. Note this is not the role URI as it appears in the xlink:role attribute of the resource element but a reference to the Role Type Information Item resolved via a link:roleRef element to the Role Type or the static role Type definition. The serialization of the Resource Information Item would put the [Role URI] property of the Role Type Information Item in the xlink:role attribute. For the role types defined in the XBRL 2.1 specification the [Role Type] property points to a static Role Type definition. For role types used in custom extended links that are not referenced via link:roleRef elements to any role type definition a Virtual Role Type should be returned. 	Object	
4.		[Element] 	The content of the Element Information Item as defined in the Section 2.2 of the [XINFOSET] Specification of this resource. The value of the [Element Information Item] property can be obtained by the XPath 2.0 expression *	Multiple XML Objects	
5.		[From] 	Unordered list of Relationship Information Items in which this element participates as the source element of the relationship.	Object List	
6.		[To] 	Unordered list of Relationship Information Items in which this element participates as the target element of the relationship.	Object List	
7.		[Attributes]	An unordered set of XML Attribute Information Items as defined in section 2.3 of the [XINFOSET] specification excluding the id attribute and xlink:*. The value of the [Attributes] property can be obtained by the XPath 2.0 expression @*[node-name(.) != QName("","id") and not(namespace-uri-from-QName(.) eq " http://www.w3.org/1999/xlink")].	XML Attribute List	
8.		[Value]	The content of the resources when they are XSD simple Types	Multiple	
A	References 
[RFC2119]	Scott Bradner	
	Key words for use in RFCs to Indicate Requirement Levels, March 1997	
	http://www.ietf.org/rfc/rfc2119.txt	
		
[SCHEMA-0]	World Wide Web Consortium. 	
	XML Schema Part 0: Primer.	
	http://www.w3.org/TR/xmlschema-0/	
		
[SCHEMA-1]	World Wide Web Consortium. 	
	XML Schema Part 1: Structures.	
	http://www.w3.org/TR/xmlschema-1/	
		
[SCHEMA‑2]	World Wide Web Consortium. 	
	XML Schema Part 2: Datatypes.	
	http://www.w3.org/TR/xmlschema-2/	
		
[XINFOSET]	XML Information Set (Second Edition)	
	W3C Recommendation 4 February 2004	
	http://www.w3.org/TR/xml-infoset/	
		
[XBRL]	Phillip Engel, Walter Hamscher, Geoff Shuetrim, David vun Kannon, Hugh Wallis.	
	Extensible Business Reporting Language (XBRL) 2.1 Recommendation with corrected errata to 2006-12-18	
	http://www.xbrl.org/SpecRecommendations/ 	
		
[XLINK]	Steve DeRose, Eve Maler, David Orchard	
	XML Linking Language (XLink) Version 1.0.	
	http://www.w3.org/TR/xlink/	
		
[XPATH]	Anders Berglund, Scott Boag, Don Chamberlin, Mary F. Fernández, Michael Kay, Jonathan Robie, Jérôme Siméon.	
	XML Path Language (XPath) 2.0	
	http://www.w3.org/TR/xpath20/	
		
[XML Base]	Jonathan Marsh	
	XML Base.	
	http://www.w3.org/TR/xmlbase/	
		
[XPTR]	Paul Grosso, Eve Maler, Jonathan Marsh, and Norman Walsh, editors	
	XML Pointer Language (XPointer Framework) V1.0.	
	http://www.w3.org/TR/xptr-framework/	
B	
Intellectual Property Status 
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to XBRL International or XBRL organizations, except as required to translate it into languages other than English. Members of XBRL International agree to grant certain licenses under the XBRL International Intellectual Property Policy (www.xbrl.org/legal).
This document and the information contained herein is provided on an "AS IS" basis and XBRL INTERNATIONAL DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
The attention of users of this document is directed to the possibility that compliance with or adoption of XBRL International specifications may require use of an invention covered by patent rights. XBRL International shall not be responsible for identifying patents for which a license may be required by any XBRL International specification, or for conducting legal inquiries into the legal validity or scope of those patents that are brought to its attention. XBRL International specifications are prospective and advisory only. Prospective users are responsible for protecting themselves against liability for infringement of patents. XBRL International takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Members of XBRL International agree to grant certain licenses under the XBRL International Intellectual Property Policy (www.xbrl.org/legal).
C	Acknowledgements 
This document could not have been written without the contributions of many people such as the participants in the XBRL Specification Working Group and Versioning Working Group.
D	Document History 
Date	Editor	Summary	
2007-01-04	IHR	First skeletal draft created.	
2007-02-15	IHR	Updated Introduction and Background
Added XPath 2.0 expressions on XBRL Information Items
Added static definitions for role types defined in the XBRL 2.1 specification
Lots of clarifications and notes added to properties on the elements.	
2007-02-21	IHR	Updated properties are:
Content of a Imported XBRL Information item MAY not exist
Linkbases in a XBRL Taxonomy Information item are not ordered	
2007-03-15	IHR	Updated XPath 2.0 expressions.
Removed the XBRL Pointer of a Relationship Information Item and the XBRL Locator Information Item.
Updated the Relationship Information Item. Sources and targets of a relationship are the objects pointed and not the locators that points to the objects.	
2007-04-15	IHR	Shorter property names.
Added section 2.3 about comparing the elements in the Versioning Infoset.
The XBRL Infoset is now created on top of a generic XSD Infoset
Revised the Infoset related to an XBRL Resource	
2007-05-22	IHR	Removed the Order property in an XBRL Relationship Information Item and replaced with [Previous] and [Next] properties.	
2007-05-24	IHR	Changed [To] and [From] properties of the XBRL Relationship Information Item to contain just one element. One Arc may represent more than one relationship.	
2007-05-24	IHR	Removed section 2.3	
2007-05-24	IHR	Title changed from just the versioning Infoset to the XBRL Infoset in general. The versioning Infoset is definitively a subset of this Infoset or can be defined upon this one. This Infoset contains every piece of information that impacts XBRL validation of Taxonomies, Linkbases and Instance Documents.	
2007-05-25	IHR	Removed the [Default] property of a Tuple.	
2007-05-28	IHR	[Order] is back as a property of a relationship. The order is a determined value under all scenarios. The relationship order may be undetermined if not specified. Two relationships cannot be properly ordered if they contain the same value or the same inferred value in the order attribute.	
2007-08-07	IHR	Item Information Items and Tuple Information Items are simplified by creating a common Concept Information Item with common properties to both.
The Balance attribute on Items is added.
Attributes on the xbrli namespace are excluded from the attributes property of a Concept Information Item
Elements defining the data type are excluded from the [Children] property of a concept definition.	
2007-08-14	IHR	Text data type changed to String.
Added the empty sequence as value for the Fixed property of a Concept Information Item.
Added the list of resources item to the DTS Information Item
Changed XML to xml: where the list of allowed attributes is reduced to the xml namespace.
Added the missing type XML Attribute List to the attributes property of a resource.
Explanation about where the content of a tuple is in the Infoset.	
2007-09-27	IHR	Modified status from PWD to DRAFT-PWD during the time required for the XSB to approve it for publication.	
2007-11-28	HW	Editorial for publication as PWD