<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://reportingstandard.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Agil</id>
	<title>XBRLWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://reportingstandard.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Agil"/>
	<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php/Special:Contributions/Agil"/>
	<updated>2026-05-13T09:01:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.0</generator>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRL_API_related_discussions&amp;diff=697</id>
		<title>XBRL API related discussions</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRL_API_related_discussions&amp;diff=697"/>
		<updated>2019-01-28T11:58:59Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==XBRL 2.1 Reporting Standard API==&lt;br /&gt;
&lt;br /&gt;
===Product page===&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/xbrl-2-1-integration-api/?lang=en XBRL API product page]&lt;br /&gt;
&lt;br /&gt;
===Descripcion===&lt;br /&gt;
&lt;br /&gt;
The XBRL API is an object model created on top of the XBRL Specification. The XBRL API has been designed to facilitate the development of user friendly applications or applications that works with XBRL information without having to worry about the complexities of the XBRL syntax and related specifications like XML Schema, XLINK, XPointer etc. Using the XBRL API the user interact with the content of a DTS (XBRL Reports and related metadata in taxonomies and linkbases) using just objects and methods defined in the objects.&lt;br /&gt;
&lt;br /&gt;
Current version of the XBRL API is 2.6.7 and there is ongoing work on version 2.6.8. Changes in the API occurs from time to time in order to add new functionality or reimplement things in order to accelerate execution. The public part of the API is stable and has not suffered any changes in the last year or so.&lt;br /&gt;
&lt;br /&gt;
All Tools from Reporting Standard have been build using Reporting Standard XBRL API.&lt;br /&gt;
&lt;br /&gt;
The API provides access to several components from other libraries like XML Schema aware XPath processing from Saxonica XML processor (License included in Reporting Standard license) or Storage capabilities in relational databases.&lt;br /&gt;
&lt;br /&gt;
===Quick start guide===&lt;br /&gt;
&lt;br /&gt;
This section is a walkthrough describing the required steps in order to start using Reporting Standard XBRL API in your own code. The section is divided in two sub sections; one for Java and another one for .NET development environments&lt;br /&gt;
&lt;br /&gt;
====Java====&lt;br /&gt;
&lt;br /&gt;
The Java version requires Java 1.6 installed and 4Gb of RAM are recommended 2Gb of RAM minimun. A single CPU processor of 1.4 Ghz is minimun but, in order to be able to handle large taxonomies a dual CPU at GHz or more is recommended.&lt;br /&gt;
&lt;br /&gt;
# Download the latest version of Reporting Standard tools from the [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
# Install the tools on your computer&lt;br /&gt;
# Install the license files in the lib folder as indicated in the documentation&lt;br /&gt;
# Create a new Java project and add the following jar libraries to it:&lt;br /&gt;
## The XBRL API in the '''xbrljlib-2.0.jar''' file&lt;br /&gt;
## The dependencies are: '''jdom.jar''', '''commons-logging-1.0.4.jar''', '''log4j-1.2.11.jar''', '''saxon9ee.jar''', '''saxon9-jdom.jar''' and '''resolver.jar'''&lt;br /&gt;
## Reporting Standard license file ('''XBRLlicense.lic''') MUST be available in the classpath of the JVM&lt;br /&gt;
# Take a look at the section describing the environment variables in order to understand how they can be configured in your organization&lt;br /&gt;
# Start coding&lt;br /&gt;
&lt;br /&gt;
====.NET====&lt;br /&gt;
&lt;br /&gt;
# Download the latest version of Reporting Standard tools from the [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
# Install the tools on your computer&lt;br /&gt;
# Install the license files in the lib folder as indicated in the documentation&lt;br /&gt;
# Download the .NET version of the libraries (ask support at reportingstandard dot com for the download URL)&lt;br /&gt;
# Read the section about the environment variables and set them according to your settings. Note there is no Classpath in .NET so the XBRLLIBRARYPATH environment variable is of high importance in .NET environments.&lt;br /&gt;
# Create a new project in, for example, Visual Basic .NET&lt;br /&gt;
# add references to the following DLL files: '''xbrljlib-2.0.dll''', '''IKVM.OpenJDK.Core.dll''', '''IKVM.OpenJDK.Util.dll''', '''IKVM.OpenJDK.XML.API.dll''', '''IKVM.OpenJDK.XML:Parse.dll''', '''IKVM.AWT.WinForms.dll''' and '''IKVM.Runtime.dll'''&lt;br /&gt;
# Please note, other DLLs may be required depending on the application you are using. All of them are in the same directory.&lt;br /&gt;
# Start coding&lt;br /&gt;
&lt;br /&gt;
===Architecture===&lt;br /&gt;
&lt;br /&gt;
The API is organized in logical layers. The lowest layer is considered the syntactical layer of the XML files that are the source of the information. One intermediate layer is the object model that represents the DTS content after resolving relationship prohibitions. A higher layer on top of the previous layer is the output of the XBRL validation rules that operated with the input of the previous later. Each one of the layers are able to detect XBRL errors or errors related to the specific layer, for example, the XML parser will detect and raise errors found on the syntax of the XML files. The XML Schema validation layer will raise XML Schema errors and so on. Information can flow between the layers, for example when you load a DTS from files, the information flows from bottom to top, but when you create an XBRL report programatically and later you call de &amp;lt;tt&amp;gt;save&amp;lt;/tt&amp;gt; method, the information flows from top bottom layers.&lt;br /&gt;
&lt;br /&gt;
===Environment Variables and Java Variables ===&lt;br /&gt;
&lt;br /&gt;
Reporting Standard XBRL API can be configured using environment variables and Java Variables in order to set the location of common components such as the license file and taxonomy catalog files. The following environment variables and java variables are recognized by the XBRL API:&lt;br /&gt;
&lt;br /&gt;
* '''XBRLCATALOGPATH''' This environment variable points to a ; separated list of directories where files with the name '''XBRLCatalog.xml''' exist. Those files must be according to the OASIS XML Catalog syntax convention. For this reason, it is recommended (but not required) that they reference the Catalog.xsd schema. The variable has effect in Windows and Unix, Java and .NET environments. The Windows installer already sets the environment variable and the right value pointing to the directory where the installer has installed the Taxonomy Catalog.&lt;br /&gt;
&lt;br /&gt;
* '''XBRLRSHOME''' This environment variable points to a directory that will be used as the home directory where Reporting Standard applications store user properties that are used to share information across multiple applications (like the information to connect to the XBRL Repository). The Windows installer does not set this environment variable and the API defaults to the user's home directory. The value is used in Windows and Unix, Java and .NET environments. &lt;br /&gt;
&lt;br /&gt;
* '''xbrl.rs.home''' If this java system property exist, it shall point to a directory that will be used instead of the '''XBRLRSHOME''' enviroment variable.&lt;br /&gt;
&lt;br /&gt;
* '''XBRLLIBRARYPATH''' This environment variable points to the directory where Reporting Standard libraries are installed on the system.&lt;br /&gt;
&lt;br /&gt;
Note: the next directory after the directory pointed to by this variables must have a fixed name '''ReportingStandardXBRLTools'''.&lt;br /&gt;
&lt;br /&gt;
There is more information about how the API obtains the path for a user file on the [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/util/RSStaticAndUser.html RSStaticAndUser java class documentation]&lt;br /&gt;
&lt;br /&gt;
===Objects overview===&lt;br /&gt;
&lt;br /&gt;
The starting point for almost anything you want to do with Reporting Standard API requires the creation of a DTSContainer object. See the [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/om/DTSContainer.html  DTSContainer javadoc page] this object will be used for loading a DTS or for creating a new DTS from scratch, performing XBRL validation, etc. &lt;br /&gt;
&lt;br /&gt;
* [[DTSContainer]] wiki page&lt;br /&gt;
&lt;br /&gt;
XBRL Document related objects&lt;br /&gt;
&lt;br /&gt;
* [[XBRLTaxonomy]] wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLLinkbase]] wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLInstance]] wiki page&lt;br /&gt;
&lt;br /&gt;
Simple API Services&lt;br /&gt;
&lt;br /&gt;
* XBRL 2.1 validation [[XBRLCoreProcessor]]&lt;br /&gt;
&lt;br /&gt;
* XBRL Dimensions processor [[XDTProcessor]]&lt;br /&gt;
&lt;br /&gt;
* XBRL Formulas processor [[XBRLFormulaProcessor]]&lt;br /&gt;
&lt;br /&gt;
* XBRL UTR (Universal Type Registry) processor [[XBRLUTR]]&lt;br /&gt;
&lt;br /&gt;
* XBRL Edgar (US SEC Validator) [[EDGAR Validator]]&lt;br /&gt;
&lt;br /&gt;
* Traversing networks of relationships [[DTSExplorer]]&lt;br /&gt;
&lt;br /&gt;
* Exploring the content of XBRL reports [[InstanceExplorer]]&lt;br /&gt;
&lt;br /&gt;
* Getting concept labels [[LabelsProvider]]&lt;br /&gt;
&lt;br /&gt;
* Getting available languages [[LangsProvider]]&lt;br /&gt;
&lt;br /&gt;
Extending the validation engine&lt;br /&gt;
&lt;br /&gt;
* [[The basis of all validation engines]]&lt;br /&gt;
&lt;br /&gt;
* [[XBRLPlugInProcessor]] wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLProcessorFactory]] interface wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLProcessorFactoryBase]] abstract class that implements the [[XBRLProcessorFactory]] interface&lt;br /&gt;
&lt;br /&gt;
=== Related documentation===&lt;br /&gt;
&lt;br /&gt;
[[http://www.xbrl.org/Specification/Infoset/PWD-2009-02-04/infoset-PWD-2009-02-04.html The XBRL Infoset Specification document]] - Created by Reporting Standard S.L.&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XhBtRmL_HTML_Templates&amp;diff=696</id>
		<title>XhBtRmL HTML Templates</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XhBtRmL_HTML_Templates&amp;diff=696"/>
		<updated>2019-01-09T10:09:07Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;XhBtRmL templates are used to generate the final HTML report from the content of XBRL files.&lt;br /&gt;
&lt;br /&gt;
An XhBtRmL template is an xhtml file augmented with some specific elements that are understandable to the processor.&lt;br /&gt;
&lt;br /&gt;
An XhBtRmL template is validated against a DTD (Document Type Definition) that is an extension of the official XHTML DTD. This means that all elements that exist in XHTML documents and the structure of XHTML documents are part of XhBtRmL templates as well.&lt;br /&gt;
&lt;br /&gt;
==Sample template==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE template PUBLIC &lt;br /&gt;
  &amp;quot;-//Reporting Estandar S.L.//DTD XHTML 1.0 Transitional + XBRL Transformation Tags//EN&amp;quot;&lt;br /&gt;
  &amp;quot;http://www.reportingstandard.com/taxonomies/transform/HTMLTransformation.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;template&amp;gt;&lt;br /&gt;
	&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;head&amp;gt;&lt;br /&gt;
			&amp;lt;title&amp;gt;Reportingstandard Investor Relations - Demo of Transformation tool&amp;lt;/title&amp;gt;&lt;br /&gt;
			&amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=utf-8&amp;quot; /&amp;gt;&lt;br /&gt;
			&amp;lt;link href=&amp;quot;http://investor.google.com/google_ir.css&amp;quot; rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot; /&amp;gt;&lt;br /&gt;
			&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
		&amp;lt;/style&amp;gt;&lt;br /&gt;
		&amp;lt;/head&amp;gt;&lt;br /&gt;
		&amp;lt;body&amp;gt;&lt;br /&gt;
			&amp;lt;table cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;tr&amp;gt;&lt;br /&gt;
					&amp;lt;td&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;&lt;br /&gt;
					&amp;lt;td valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
						&amp;lt;XBRLTemplate template=&amp;quot;google-body.xhtml&amp;quot;/&amp;gt;&lt;br /&gt;
					&amp;lt;/td&amp;gt;&lt;br /&gt;
				&amp;lt;/tr&amp;gt;&lt;br /&gt;
			&amp;lt;/table&amp;gt;&lt;br /&gt;
		&amp;lt;/body&amp;gt;&lt;br /&gt;
	&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;/template&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Document type==&lt;br /&gt;
&lt;br /&gt;
The document type of a template is: '''-//Reporting Estandar S.L.//DTD XHTML 1.0 Transitional + XBRL Transformation Tags//EN'''&lt;br /&gt;
&lt;br /&gt;
==System ID==&lt;br /&gt;
&lt;br /&gt;
The DTD for the document type is defined at: '''&amp;lt;nowiki&amp;gt;http://www.reportingstandard.com/taxonomies/transform/HTMLTransformation.dtd&amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
==Document content==&lt;br /&gt;
&lt;br /&gt;
===The root element===&lt;br /&gt;
The root element for a template is always a '''&amp;lt;tempalte&amp;gt;''' element. The template element is the container of elements defined in the xhtml namespace including the root xhtml element or any other sub element.&lt;br /&gt;
&lt;br /&gt;
===Other elements used for template definition===&lt;br /&gt;
The set of elements specifically defined for creating XhBtRmL templates are:&lt;br /&gt;
* the '''XBRLTemplate''' element; used for sub templates combined with iterators&lt;br /&gt;
* the '''XBRLIf''' element; used in combination with XPath expressions in order to drive template content&lt;br /&gt;
* the '''XBRLEval''' element; used in combination with XPath expressions in order to include calculated or evaluated content&lt;br /&gt;
&lt;br /&gt;
The rest of the document content are just XML nodes that will be copied to the resulting output with some exceptions in order to allow calculated content and variables to be substituted with the right values.&lt;br /&gt;
&lt;br /&gt;
===Variable substitution===&lt;br /&gt;
&lt;br /&gt;
During the execution of the templates some variables will be created and the variable values will be updated. The user can refer to the variable values within XPath expressions and in text nodes inside the template content.&lt;br /&gt;
&lt;br /&gt;
In the following code example, a template is defined to put in bold the content of the '''XBRL_CurrentDateStep''' variable.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;template&amp;gt;&lt;br /&gt;
	&amp;lt;b class=&amp;quot;navactive&amp;quot;&amp;gt;$XBRL_CurrentDateStep&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/template&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the following code example, an XPath expression is using the values of several variables&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
&amp;lt;XBRLIf expression=&amp;quot;$XBRL_TreeCurrentNode_IsAbstract and $XBRL_DepthLevel = 1 and $XBRL_ChildNumber &amp;gt; 0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;XBRLThen&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
&amp;lt;/XBRLThen&amp;gt;&lt;br /&gt;
&amp;lt;/XBRLIf&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===All available variables===&lt;br /&gt;
This is the list of all available variables and a short description for each one of them. The rest of the documentation will indicate when the variable values will be updated:&lt;br /&gt;
* '''XBRL_Node'''; this represents an XML node, updated every cycle over an iterator of type '''Select'''. The variable $XBRL_Node can be used in further XPath expressions and the value will be the XML node in the sequence of nodes.&lt;br /&gt;
* '''XBRL_CurrentDateStep'''; this is the value of the particular column updated during every cycle of the iterator of type '''Dates''' and during every cycle of the iterator of type '''Facts'''. Example values are ''2009'' if the value of the '''dateStep''' attribute is &amp;quot;Years&amp;quot;.&lt;br /&gt;
* '''XBRL_TreeRootNode'''; This variable holds the label of the root node in a '''Link''' iterator.&lt;br /&gt;
* '''XBRL_TreeParentNode'''; This variable holds the label of the parent node in a '''Link''' iterator and is updated during a '''Children''' iterator.&lt;br /&gt;
* '''XBRL_TreeCurrentNode'''; This variable holds the label of the current node in a '''Link''' iterator and is updated during a '''Children''' iterator.&lt;br /&gt;
* '''XBRL_DepthLevel'''; This variable holds a numeric value indicating the number of ancestors in the hierarchy tree up to the root node. It is updated during the iteration of '''Children''' iterators.&lt;br /&gt;
* '''XBRL_ChildNumber'''; This variable holds a numeric value indicating the child number of the '''XBRL_TreeCurentNode''' in the total number of children elements having the same '''XBRL_TreeParentNode'''. It is updated during the '''Children''' iterator.&lt;br /&gt;
* '''XBRL_FactValue'''; This variable holds the converted fact value that can be represented in the template. It is updated every iteration on the '''Facts''' cycle.&lt;br /&gt;
* '''XBRL_TreeCurrentDimNode'''; This variable is updated with the XBRL label of the dimension member of the current member during a '''DimMember''' iterator.&lt;br /&gt;
* '''XBRL_NoteNumber'''; This variable holds a number indicating the number of the footnote. It is updated every cycle of the '''Facts''' iterator.&lt;br /&gt;
* '''XBRL_NoteContent'''; This variable holds the text of the footnote. It is updated every cycle of the '''Footnotes''' iterator.&lt;br /&gt;
* '''XBRL_HasNext'''; This is a boolean variable updated on every step in an iterator cycle. The value is ''true()'' if there is another value in the sequence after the current value.&lt;br /&gt;
* '''XBRL_TreeCurrentNode_IsAbstract'''; This is a boolean value that indicated if the concept definition indicated in '''XBRL_TreeCurrentNode''' is abstract or not.&lt;br /&gt;
* '''XBRL_HasDimensions'''; This is a boolean value that indicates if the concept definition indicated in '''XBRL_TreeCurrentNode''' is a dimensional concept definition or not.&lt;br /&gt;
* '''XBRL_FactQName'''; This variable holds the QName of the current fact value. It is updated for every iteration of the '''Facts''' iterator.&lt;br /&gt;
* '''XBRL_NumberOfYears'''; This variable holds the number of year columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfHalves'''; This variable holds the number of semester columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfQuarters'''; This variable holds the number of quarter columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfMonths'''; This variable holds the number of month columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfWeeks'''; This variable holds the number of week columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfDays'''; This variable holds the number of day columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfHours'''; This variable holds the number of hour columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfMinutes'''; This variable holds the number of minute columns in the report. It is updated once per report.&lt;br /&gt;
* '''XBRL_NumberOfSeconds'''; This variable holds the number of second columns in the report. It is updated once per report.&lt;br /&gt;
&lt;br /&gt;
==The XBRLTemplate element==&lt;br /&gt;
&lt;br /&gt;
The '''XBRLTemplate''' element is used in order to call another template one time or many times according to an iterator. &lt;br /&gt;
&lt;br /&gt;
In the previous example, a call to a template one time without any iterator was defined here:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;td valign=&amp;quot;middle&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;XBRLTemplate template=&amp;quot;google-body.xhtml&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Other examples of calls to templates are:&lt;br /&gt;
&lt;br /&gt;
Iterator through years in the report&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
    &amp;lt;XBRLTemplate template=&amp;quot;google-year.xhtml&amp;quot; iterator=&amp;quot;Dates&amp;quot; dateStep=&amp;quot;Years&amp;quot; /&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Iterator through facts in the report according to current concept and ordered according to the content of dateStep&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
    &amp;lt;XBRLTemplate template=&amp;quot;google-fact-data.xhtml&amp;quot; iterator=&amp;quot;Facts&amp;quot; dateStep=&amp;quot;Years&amp;quot;/&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Iterators are normally nested one inside another; in the most common case there will be one '''Link''' iterator that will contain nested '''Children''' iterators and nested '''Facts''' iterators.&lt;br /&gt;
&lt;br /&gt;
An '''XBRLTemplate''' element may have a combination of the following attributes:&lt;br /&gt;
&lt;br /&gt;
===The template attribute===&lt;br /&gt;
&lt;br /&gt;
This attribute is always required and contains the absolute or relative URL or a file that contains the template content.&lt;br /&gt;
&lt;br /&gt;
===The iterator attribute===&lt;br /&gt;
&lt;br /&gt;
This attribute is optional, if it exist the value can be one of the following:&lt;br /&gt;
* '''Select'''; Indicates that the iterator will iterate through the nodes returned by the XPath expression indicated in the '''expression''' attribute. If the value of the '''iterator''' is '''Select''' then a value on the '''expression''' attribute is required. For each loop iteration, the variable '''XBRL_Node''' will be updated to contain the returned node from the sequence of nodes in the XPath expression. That variable name can be used in other XPath expressions or text nodes in nested templates and the value will be automatically substituted by the processor. Other variables updated '''XBRL_HasNext'''.&lt;br /&gt;
* '''Dates'''; Indicates that the iterator will iterate through the values of the instance document by columns (a column may contain more than one XBRL context). The column length will be indicated by the value of the '''dateStep''' attribute. If the value of the '''iterator''' is '''Dates''' then a value on the '''dateStep''' attribute is required. Each cycle will update the value of the '''XBRL_CurrentDateStep''' variable so templates using that variable on XPath expressions or texts nodes can use the variable value for presentation purposes. Other variables updated '''XBRL_HasNext'''.&lt;br /&gt;
* '''Link'''; Indicates that the iterator will iterate through the nodes in a hierarchy defined by relationships in the DTS. If the value of the '''iterator''' is '''Link''' then a value on the '''linkType''' attribute and a value on the '''role''' attribute are required. This iterator is used to traverse trees in the presentation linkbase but can be used to traverse any tree on any linkbase type. The '''Link''' iterator updates the following variables: '''XBRL_TreeRootNode''', '''XBRL_TreeParentNode''', '''XBRL_TreeCurrentNode''', '''XBRL_TreeCurrentNode_IsAbstract''', '''XBRL_HasDimensions''', '''XBRL_HasNext'''.&lt;br /&gt;
* '''Children'''; Indicates that the iterator will iterate through the nodes that are children of the current node. This iterator can only exist inside a '''Link''' iterator. The '''Children''' iterator updates the following variables: '''XBRL_DepthLevel''', '''XBRL_TreeParentNode''', '''XBRL_TreeCurrentNode''', '''XBRL_ChildNumber''', '''XBRL_TreeCurrentNode_IsAbstract''', '''XBRL_HasDimensions''', '''XBRL_HasNext'''.&lt;br /&gt;
* '''Facts'''; Indicates that the iterator will iterate through the fact items in the instance that corresponds to the current concept. If the value of the iterator is '''Facts''' then a value on the '''dateStep''' attribute is required in order to return the facts in the right order. A '''Facts''' iterator requires the existence of an '''XBRL_TreeCurrentNode''' so it can only exist inside a '''Children''' or a '''Link''' iterator. A '''Facts''' iterator updates the following variables: '''XBRL_CurrentDateStep''', '''XBRL_FactValue''', '''XBRL_NoteNumber''', '''XBRL_FactQName''', '''XBRL_HasNext'''.&lt;br /&gt;
* '''DimMembers'''; Indicates that the iterator will iterate through dimension members of the current node. This iterator updates the variable called '''XBRL_TreeCurrentDimNode''' that contains the label of the dimension member.&lt;br /&gt;
* '''Footnotes'''; Indicates that the iterator will iterate through footnotes in the report. Updates the variables '''XBRL_NoteNumber''' and '''XBRL_NoteContent'''.&lt;br /&gt;
&lt;br /&gt;
===The role attribute===&lt;br /&gt;
&lt;br /&gt;
Is used to indicate the link role where relationships will be taken on '''Link''' iterators. The value must be an URI that corresponds to the role of the extended link. Normally this is the role on the presentationLink element from which presentationArc elements will be used in order to represent the presentation hierarchy. The user can use different hierarchies as XhBtRmL is not limited to presentation trees.&lt;br /&gt;
&lt;br /&gt;
===The expression attribute===&lt;br /&gt;
&lt;br /&gt;
Is used to indicate an XPath expression that will be used in '''Select''' iterators and the evaluation of XBRLIf expressions or XBRLEval statement.&lt;br /&gt;
&lt;br /&gt;
During the evaluation of the XPath expression a context node can be configured according to the content of the '''contextNode''' attribute.&lt;br /&gt;
&lt;br /&gt;
===The contextNode attribute===&lt;br /&gt;
&lt;br /&gt;
Is used to indicate the XPath context node for evaluation of the XPath expression that can be indicated in the '''expression''' attribute. Possible values of this attribute are:&lt;br /&gt;
* '''Instance'''; The context node will be set to the instance document.&lt;br /&gt;
* '''Fact'''; The context node will be set to the current Fact.&lt;br /&gt;
* '''This'''; The context node will be set to the node on the template.&lt;br /&gt;
&lt;br /&gt;
===The dateStep attribute===&lt;br /&gt;
&lt;br /&gt;
Is used to indicate the period length for column widths. The value is one of the following constants:&lt;br /&gt;
* '''Years'''&lt;br /&gt;
* '''Semesters'''&lt;br /&gt;
* '''Quarters'''&lt;br /&gt;
* '''Months'''&lt;br /&gt;
* '''Weeks'''&lt;br /&gt;
* '''Days'''&lt;br /&gt;
* '''Hours'''&lt;br /&gt;
* '''Minutes'''&lt;br /&gt;
* '''Seconds'''&lt;br /&gt;
&lt;br /&gt;
===The depth attribute===&lt;br /&gt;
&lt;br /&gt;
Is used during the execution of '''Link''' iterators in order to set a maximum depth limit while traversing a hierarchy&lt;br /&gt;
&lt;br /&gt;
===The skipEmptyLines attribute===&lt;br /&gt;
&lt;br /&gt;
Is used on '''Link''' and '''Children''' iterators in order to avoid representation of lines that contains no fact items in the instance document. The attribute is optional, the default value is ''false''. The possible values for this attribute are ''true'' or ''false''.&lt;br /&gt;
&lt;br /&gt;
===The linkType attribute===&lt;br /&gt;
&lt;br /&gt;
This attribute is used for '''Link''' iterators. The value is a QName representing the container element for relationships. Possible values are, for example: link:presentationLink, link:calculationLink, link:genericLink, or a QName of your own custom extended link type.&lt;br /&gt;
&lt;br /&gt;
===The startingNode attribute===&lt;br /&gt;
&lt;br /&gt;
This attribute is optional and can be used on '''Link''' iterators in order to define the node from which the navigation will start. All previous nodes in the hierarchy will be ignored.&lt;br /&gt;
&lt;br /&gt;
===The dimensionFilterScenario attribute===&lt;br /&gt;
&lt;br /&gt;
This attribute is used on '''DimMembers''' iterators in order to set the dimension name whose members will be iterated if the dimension is found in the scenario container.&lt;br /&gt;
&lt;br /&gt;
===The dimensionFilterSegment attribute===&lt;br /&gt;
&lt;br /&gt;
This attribute is used on '''DimMembers''' iterators in order to set the dimension name whose members will be iterated if the dimension is found in the segment container.&lt;br /&gt;
&lt;br /&gt;
==The XBRLIf element==&lt;br /&gt;
&lt;br /&gt;
The XBRLIf statement can be used to drive execution flow and select the content to be represented according to an evaluated criteria. The evaluated criteria is an XPath expression. The evaluation is subject to the existence of a '''contextNode''' attribute.&lt;br /&gt;
&lt;br /&gt;
The following piece of code is part of a template that shows the fact value:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE template PUBLIC &amp;quot;-//Reporting Estandar S.L.//DTD XHTML 1.0 Transitional + XBRL Transformation Tags//EN&amp;quot; &amp;quot;http://www.reportingstandard.com/taxonomies/transform/HTMLTransformation.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;template&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;$XBRL_FactValue&amp;lt;XBRLIf expression=&amp;quot;$XBRL_NoteNumber &amp;gt; 0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;XBRLThen&amp;gt;&lt;br /&gt;
      &amp;lt;sup&amp;gt;&lt;br /&gt;
        &amp;lt;font size=&amp;quot;-2&amp;quot;&amp;gt;$XBRL_NoteNumber&amp;lt;/font&amp;gt;&lt;br /&gt;
      &amp;lt;/sup&amp;gt;&lt;br /&gt;
    &amp;lt;/XBRLThen&amp;gt;&lt;br /&gt;
    &amp;lt;/XBRLIf&amp;gt;&lt;br /&gt;
  &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/template&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The output of that template is something like 1.000&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; in a table with 1 being the number of a footnote (the value of the '''XBRL_NoteNumber''' variable, and 1.000 being the value of the '''XBRL_FactValue''' variable.&lt;br /&gt;
&lt;br /&gt;
'''XBRLIf''' statements must have an XPath expression in the expression attribute that evaluates to a boolean value. If the result is ''true()'' the execution continues including the content of the '''XBRLThen''' statement. If the result is ''false()'' then tha execution continues including the content of the '''XBRLElse''' statement or nothing if the '''XBRLElse''' statement is missing.&lt;br /&gt;
&lt;br /&gt;
This example contains an '''XBRLElse''' statement:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;XBRLIf expression=&amp;quot;$XBRL_HasDimensions&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;XBRLThen&amp;gt;&lt;br /&gt;
      &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td class=&amp;quot;category&amp;quot;&amp;gt;$XBRL_TreeCurrentNode&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;td class=&amp;quot;label&amp;quot; colspan=&amp;quot;$XBRL_NumberOfYears&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;&lt;br /&gt;
      &amp;lt;/tr&amp;gt;&lt;br /&gt;
      &amp;lt;XBRLTemplate template=&amp;quot;google-fact-data-dim.xhtml&amp;quot; &lt;br /&gt;
                  iterator=&amp;quot;DimMembers&amp;quot; &lt;br /&gt;
                  dimensionFilterScenario=&amp;quot;tx:BasicDilutedDimension&amp;quot;&lt;br /&gt;
                  xmlns:tx=&amp;quot;http ://www.reportingstandard.com/samples/transformerTaxonomy&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/XBRLThen&amp;gt;&lt;br /&gt;
    &amp;lt;XBRLElse&amp;gt;&lt;br /&gt;
      &amp;lt;tr&amp;gt;&lt;br /&gt;
        &amp;lt;td class=&amp;quot;category&amp;quot;&amp;gt;$XBRL_TreeCurrentNode&amp;lt;/td&amp;gt;&lt;br /&gt;
        &amp;lt;XBRLTemplate template=&amp;quot;google-fact-data.xhtml&amp;quot;&lt;br /&gt;
                  iterator=&amp;quot;Facts&amp;quot;&lt;br /&gt;
                  dateStep=&amp;quot;Years&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;/XBRLElse&amp;gt;&lt;br /&gt;
  &amp;lt;/XBRLIf&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==The XBRLEval element==&lt;br /&gt;
&lt;br /&gt;
The '''XBRLEval''' statement can be used to evaluate a dynamically generated XPath expression. It can be used when the output of an XPath expression includes XBRL variable names that requires substitution by the processor.&lt;br /&gt;
&lt;br /&gt;
==Navigation==&lt;br /&gt;
[[Main Page]] | [[XhBtRmL]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Main_Page&amp;diff=695</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Main_Page&amp;diff=695"/>
		<updated>2019-01-08T15:14:52Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Reporting Standadrd XBRL WIKI.===&lt;br /&gt;
&lt;br /&gt;
This WIKI web site is organized in the following sections:&lt;br /&gt;
&lt;br /&gt;
* Reporting Standard S.L. - Product specific discussions, including new feature requests&lt;br /&gt;
** Products WITH user interface&lt;br /&gt;
*** [[XBRLview]]&lt;br /&gt;
*** [[XBRLvalid]]&lt;br /&gt;
*** [[XBRLizer]]&lt;br /&gt;
*** [[XBRLmapper]]&lt;br /&gt;
*** [[Taxonomy Builder]]&lt;br /&gt;
** Components without user interface&lt;br /&gt;
*** [[XBRL API related discussions]]&lt;br /&gt;
*** [[XBRL Database]]&lt;br /&gt;
*** [[XBRL Validation Service]]&lt;br /&gt;
*** [[XBRL Storage Service]]&lt;br /&gt;
*** [[XhBtRmL]]&lt;br /&gt;
*** [[XBRLmapper as a service]]&lt;br /&gt;
** Other products and components&lt;br /&gt;
*** [[Excel XBRL functions library]]&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
&lt;br /&gt;
* Requirements&lt;br /&gt;
** [[Software requirements]]&lt;br /&gt;
** [[Hardware requirements]]&lt;br /&gt;
&lt;br /&gt;
=== Installation ===&lt;br /&gt;
* Installation&lt;br /&gt;
** [[Installation on Windows]]&lt;br /&gt;
** [[Installation on UNIX (Linux, Solaris, AIX, Mac OS X)]]&lt;br /&gt;
&lt;br /&gt;
=== Configuration ===&lt;br /&gt;
* [[Taxonomy Catalogs Overview]]&lt;br /&gt;
** [[Reporting Standard Taxonomy Catalog]]&lt;br /&gt;
** [[XBRL International Taxonomy Packages]]&lt;br /&gt;
** [[Oasis Taxonomy Catalogs]]&lt;br /&gt;
** [[Custom Taxonomy Catalogs such as Reporting Standard XBRL Database]]&lt;br /&gt;
&lt;br /&gt;
==== Other optional installation steps ====&lt;br /&gt;
&lt;br /&gt;
* [[Installing the XBRL Database]]&lt;br /&gt;
&lt;br /&gt;
=== Useful links and frequently asked questions (FAQ) ===&lt;br /&gt;
&lt;br /&gt;
# [[Where is the license file stored and how can I backup it?]]&lt;br /&gt;
# [[The XBRL Taxonomy Catalog]]&lt;br /&gt;
# [[java.security.SignatureException: invalid encoding for signature]]&lt;br /&gt;
# [[java.security.SignatureException: invalid encoding for signature (Español)]]&lt;br /&gt;
# [[This license will not work on this computer]]&lt;br /&gt;
# [[Esta licencia no funcionará en este computador]]&lt;br /&gt;
# [[Adding taxonomies to the ZIP Catalog]]&lt;br /&gt;
# [[Walkthrough downloading Reporting Standard XBRL tools set]]&lt;br /&gt;
# [[Walkthrough requesting evaluation license]]&lt;br /&gt;
# [[Walkthrough load and store XBRL taxonomies]]&lt;br /&gt;
# [[Detailed explanation about Excel mapping process from XBRLizer]]&lt;br /&gt;
# [https://www.supersociedades.gov.co/delegatura_aec/informes_empresariales/Paginas/sirfin_videos.aspx Vídeos respecto a la instalación y funcionamiento de las herramientas de licenciamiento XBRL para la Superintendencia de Sociedades de Colombia]&lt;br /&gt;
&lt;br /&gt;
=== Other unrelated ===&lt;br /&gt;
* XBRL Specifications and related discussions&lt;br /&gt;
** [[XBRL 2.1]]&lt;br /&gt;
*** [[Comments about the Call for review the proposed edit recommendation made on 2011/05/27]]&lt;br /&gt;
** [[XDT 1.0 Dimensions Specification]]&lt;br /&gt;
** [[XQuery Formula Specification (Minimun XML based and more XQuery based)]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Walkthrough_downloading_Reporting_Standard_XBRL_tools_set&amp;diff=694</id>
		<title>Walkthrough downloading Reporting Standard XBRL tools set</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Walkthrough_downloading_Reporting_Standard_XBRL_tools_set&amp;diff=694"/>
		<updated>2019-01-08T15:06:06Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Reporting standard tools set is not just one installer, it is rather a set of installers that let our users to install a complete framework to work with XBRL taxonomies and reports.&lt;br /&gt;
&lt;br /&gt;
Installer file names are created automatically from our development system and are updated according to well known rules. You can always obtain different versions of the software and different software components using the rules indicated here.&lt;br /&gt;
&lt;br /&gt;
= The file name to download =&lt;br /&gt;
&lt;br /&gt;
The installer file name is a concatenation of several parts using the underscore character '''_''' as separator&lt;br /&gt;
# The prefix: All installers start with '''RS_XBRL''' as prefix.&lt;br /&gt;
# The package name: see below&lt;br /&gt;
# The version number: see below&lt;br /&gt;
# The architecture: see below&lt;br /&gt;
# The file extension: it is always '''.msi'''&lt;br /&gt;
&lt;br /&gt;
== Packages names ==&lt;br /&gt;
&lt;br /&gt;
* '''Setup''': contains the basic library and software tools&lt;br /&gt;
* '''Mapper''': contains additional tools to work with data transferring to/from XBRL&lt;br /&gt;
* '''Database''': contains additional tools to work with databases and store instances/taxonomies into relational databases&lt;br /&gt;
&lt;br /&gt;
== Language code ==&lt;br /&gt;
&lt;br /&gt;
Starting from version 2.8.5, there are installers in English and Spanish. The installer is differentiated adding the language code to the installer file. The installer codes are:&lt;br /&gt;
&lt;br /&gt;
* '''es''' for Spanish&lt;br /&gt;
* '''en''' for English&lt;br /&gt;
&lt;br /&gt;
== Version number ==&lt;br /&gt;
&lt;br /&gt;
The version number are just tree digits separated by dots. '''X.Y.Z'''&lt;br /&gt;
&lt;br /&gt;
The '''official''' version is the one publicly available in the  [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
&lt;br /&gt;
We also publish the latest development version that should be available by adding one to the Z number.&lt;br /&gt;
&lt;br /&gt;
== The architecture ==&lt;br /&gt;
The architecture is either '''x64''' for 64 bit and '''x86''' for the old 32 bit operating systems.&lt;br /&gt;
&lt;br /&gt;
= Examples =&lt;br /&gt;
If, for example, the current version is 2.8.5, then the following files exists and can be downloaded for en English version:&lt;br /&gt;
&lt;br /&gt;
* RS_XBRL_Setup_en-2.8.5-x64.msi&lt;br /&gt;
* RS_XBRL_Setup_en-2.8.5-x86.msi&lt;br /&gt;
* RS_XBRL_Database_en-2.8.5-x64.msi&lt;br /&gt;
* RS_XBRL_Database_en-2.8.5-x86.msi&lt;br /&gt;
* RS_XBRL_Mapper_en-2.8.5-x64.msi&lt;br /&gt;
* RS_XBRL_Mapper_en-2.8.5-x86.msi&lt;br /&gt;
&lt;br /&gt;
= Out of simply package names =&lt;br /&gt;
&lt;br /&gt;
There are two additional files we prepare for each version. &lt;br /&gt;
&lt;br /&gt;
* The unix installer '''RS-XBRLProcessor-VX.Y.Z-UNIX.zip'''. Is a ZIP file. If you are familiar with development environment you can download this tools set and use the libraries folder directly on any other architectures.&lt;br /&gt;
&lt;br /&gt;
* The .NET libraries '''RS_XBRL_API_in_DotNET_2.8.5.zip'''. Is also a ZIP file that contains the latest versions of the .NET DLLs&lt;br /&gt;
&lt;br /&gt;
= The server URL =&lt;br /&gt;
&lt;br /&gt;
We publish the installers on two different servers:&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;http://www.reportingstandard.org/{installerpackagename}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;http://www.reportingstandard.net/{installerpackagename}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Normally, the server at .org should be faster than the server at .net this is because .org is hosted at AWS using cloudfront but at the cost of delaying updates by 8 hours. The server at .net has no delay in the publication of files but is hosted in Europe at 1and1&lt;br /&gt;
&lt;br /&gt;
= Feedback =&lt;br /&gt;
Send us feedback about this information to: [mailto:support@reportingstandard.com Support at ReportingStandard dot com]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Walkthrough_load_and_store_XBRL_taxonomies&amp;diff=693</id>
		<title>Walkthrough load and store XBRL taxonomies</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Walkthrough_load_and_store_XBRL_taxonomies&amp;diff=693"/>
		<updated>2019-01-08T15:05:49Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This document describes how to:&lt;br /&gt;
&lt;br /&gt;
# Install Reporting Standard software related with this walkthrough in a new computer&lt;br /&gt;
# Request an evaluation license suitable for all required packages&lt;br /&gt;
# Manually installing xbrl-packages into the local taxonomy catalog&lt;br /&gt;
# Open and Store all the information into a relational database&lt;br /&gt;
# Understanding the table model and how to query the information stored&lt;br /&gt;
&lt;br /&gt;
== Install Reporting Standard software related with this walkthrough in a new computer ==&lt;br /&gt;
&lt;br /&gt;
In order to run this walkthrough you need to install two packages:&lt;br /&gt;
* the regular Setup package that contains the main tools set&lt;br /&gt;
* the Database package that provide additional tools to work directly with the database&lt;br /&gt;
&lt;br /&gt;
Visit the [[Walkthrough downloading Reporting Standard XBRL tools set]] page in order to find the download URLs for the packages that are not publicly available in the [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
&lt;br /&gt;
Visit also the [[Hardware requirements]] and [[Software requirements]] pages and check your environment meets them.&lt;br /&gt;
&lt;br /&gt;
* ''Step 1'': Download the latest version of the tools set '''RS_XBRL_Setup_X.Y.Z-xAR.msi''' package. Change the X, Y, Z and AR to met the latest version and your operating system architecture.&lt;br /&gt;
* ''Step 2'': Download the latest version of the database tools '''RS_XBRL_Database_X.Y.Z-xAR.msi''' package.&lt;br /&gt;
* ''Step 3'': Install the Setup package. Resist the temptation of executing any of the installed tools until Step 4 is finished. If you have already executed any of the installed tools and the software is requesting you to enter a license key, jump to the next section ''Request an evaluation license suitable for all required packages'' before doing step 4. The license is needed to run any of the tools installed on the setup package or the database package.&lt;br /&gt;
* ''Step 4'': Install the database package&lt;br /&gt;
&lt;br /&gt;
== Request an evaluation license suitable for all required packages ==&lt;br /&gt;
&lt;br /&gt;
Find the &amp;quot;License Manager&amp;quot; tool (the icon is a gold key) and request an evaluation license. There is more information on the [[Walkthrough requesting evaluation license]] page. The same dialog will pop-up if you start any other tool that requires a license and the license is not installed. Licenses are delivered to the email address you provide during the process. If you have questions please ask via email to info at reportingstandard dot com. You need a license with access to the regular tools set and also the XBRL Database tools set.&lt;br /&gt;
&lt;br /&gt;
== Installing required XBRL packages into the local taxonomy catalog ==&lt;br /&gt;
&lt;br /&gt;
Starting with version 2.8.5 of Reporting Standard tools set we incorporated support for the [https://www.xbrl.org/Specification/taxonomy-package/PWD-2014-01-15/taxonomy-package-PWD-2014-01-15.html Taxonomy Package 1.0 Public Working Draft 15 January 2014] in addition to that taxonomy catalog.&lt;br /&gt;
&lt;br /&gt;
In order to speed up taxonomy loading process it is worth installing local copies of the remote official files. Installation of taxonomy packages is a simple straight forward step.&lt;br /&gt;
&lt;br /&gt;
# Open XBRLizer or any other similar tool such as the Instance Document Viewer&lt;br /&gt;
# Select Options -&amp;gt; Catalog -&amp;gt; Remote Catalog&lt;br /&gt;
# From the list of taxonomies available, install the following ones: ''Asset Encumbrance 2014-03 (1.0.0)'', ''COmmon REPorting 2014-03 (2.0.2)'', ''EBA CRR Dictionary and FINancial REPorting 2014-03 (2.1.0)''&lt;br /&gt;
&lt;br /&gt;
for installing a taxonomy package. Click on the line with the taxonomy name and click on the ''Install'' button below.&lt;br /&gt;
&lt;br /&gt;
== Prepare the database to store XBRL information ==&lt;br /&gt;
&lt;br /&gt;
Follow the instructions indicated on the [[Installing the XBRL Database]] pages in order to install and set up the table models. For this test we are using Microsoft SQL Server Express 2008, but the database can be installed on Oracle, IBM DB2 or PostgreSQL. Then come back to this page and continue with the next steps.&lt;br /&gt;
&lt;br /&gt;
== Store a taxonomy into the database ==&lt;br /&gt;
&lt;br /&gt;
Storing an XBRL report can be done form XBRLizer, the XBRL Viewer and most of the generic XBRL tools. Storing an XBRL report will store all files in the DTS too. Note the database is optimized and no information is stored twice so the files stored in one DTS will be reused for the next XBRL report referencing the same files at their corresponding official locations.&lt;br /&gt;
&lt;br /&gt;
Storing a taxonomy can only be executed from the '''StoreXBRL.exe''' tool that is installed with the database package.&lt;br /&gt;
&lt;br /&gt;
# Double click on the StoreXBRL.exe icon and launch the StoreXBRL tool.&lt;br /&gt;
# Select File -&amp;gt; Open and Save menu&lt;br /&gt;
# On the Open dialog window, click on the ''Add Cat...'' button to select an entry point form the taxonomy catalog&lt;br /&gt;
# Find the line for the ''FINancial REPorting 2014-03 (2.1.0)'' taxonomy (you should have it installed from previous steps)&lt;br /&gt;
# once you click on that line, two entry points appear below. Select the one that says ''Financial Reporting, Consolidated (Prudential scope) IFRS'' and click on OK.&lt;br /&gt;
# The official URL(s) for the selected entry point gets copied to the Open dialog and you can click on OK to start the loading and storing process&lt;br /&gt;
&lt;br /&gt;
The complete process may take a couple of minutes. Loading the DTS in memory may require up to 6 Gb of RAM.&lt;br /&gt;
&lt;br /&gt;
Now is time to get a cold coke from the fridge&lt;br /&gt;
&lt;br /&gt;
== Doing some queries on the database model ==&lt;br /&gt;
&lt;br /&gt;
The database table model is a normalized relational model composed of different layers. At the top is there is the Documents layer, that contains a physical copy of the files that compose the DTS. At the bottom there is the XML layer that contains several tables to define an XML Fragment composed by XML Nodes (every attribute is a node, every element is a fragment, the element value is a node too) and every node is a pair of a qualified name and qualified value. &lt;br /&gt;
&lt;br /&gt;
The model contains two structures that are related one to the other. The table structure represents the database tables, indexes, and foreign keys between the tables. The entity structure contains the XBRL object model that is serialized to the database. The complete documentation about those two models is [https://www.reportingstandard.com/pojo/documentation/entities/index.html on this web page]&lt;br /&gt;
&lt;br /&gt;
The model is extensible. Users can define additional entities and tables and the add the user model to the XBRL model. During the DTS Storage process the user defined objects that are populated and related with the XBRL model will be written to the database too. This feature requires some knowledge about the technologies used to document the entity model so they will not be covered by this documentation. Please contact us if you want more information in this regard.&lt;br /&gt;
&lt;br /&gt;
In order to do some queries we will use another tool that gets installed with the Database package. This is the '''RetrieveXBRL.exe''' tool. That tool contains several tabs. Each one of the tabs can be used to see what is in the database. The first tab, called HQL allows users to write their own query expressions. HQL is a query language for Java persistance it is based on SQL but is more powerful because it can handle the entities directly so there is no need to go down to the tables and relationships between the tables.&lt;br /&gt;
&lt;br /&gt;
Let's run our first query:&lt;br /&gt;
# open RetrieveXBRL.exe (There shall be no need to define the database connection parameters. The connection parameters is shared across all tools using the XBRL database&lt;br /&gt;
# on the HQL Expression text box at the HQL tab, write the following expression: '''select conceptName from XBRLConcept''' and hit enter or press the '''Exec''' button&lt;br /&gt;
&lt;br /&gt;
The result is just one column that contains the name of all concepts defined in all taxonomies stored into the database.&lt;br /&gt;
&lt;br /&gt;
Let's run another query: '''select q.name from XBRLResource r, QName q where r.value = q''' on this example we are going to retrieve the name column from the QName table for all resources stored into the database. Note we are joining two tables here using the entities ''XBRLResource'' and ''QName'' and not the tables where the information is stored. The query shall return 61767 results if you are following all steps in this tutorial.&lt;br /&gt;
&lt;br /&gt;
Another example: '''select c.parent.namespace, c.conceptName from XBRLConcept c where c.conceptName like 'x6'''' here we are selecting the XBRLConcept entity and filtering all them whose concept name is just '''x6'''. in our example, there are 24 definitions of this concept name in 24 different taxonomy schemas. In order to know the schema namespare where the concept is defined, we are going to include the taxonomy (the parent property of a concept) and from the taxonomy we will access the namespace definition (that is in another entity called Namespace). Now you can see how useful and powerful the dot notation is in obtaining information related to an entity that is stored in another related entity.&lt;br /&gt;
&lt;br /&gt;
The last examples are using the XBRLRelationship table to select specific relationships and then exploring the from and to sides of them.&lt;br /&gt;
&lt;br /&gt;
Obtain element labels from labels text: '''select r.to.value.name from XBRLRelationship r where r.arcrole.uri like '%element-label' and r.to.value.name like '%Assets%''''. This query obtains element labels that contains the word '''Assets''' anywhere in the label text.&lt;br /&gt;
&lt;br /&gt;
This query obtains the element name for rows returned in the previous query '''select r.from.name.name from XBRLRelationship r where r.arcrole.uri like '%element-label' and r.to.value.name like '%Assets%''''&lt;br /&gt;
&lt;br /&gt;
This screen capture merges the output of the previous two queries:&lt;br /&gt;
[[File:hql-sample-element-and-label.png]]&lt;br /&gt;
&lt;br /&gt;
This query obtains concept labels from concept names: '''select r.to.value.name from XBRLRelationship r where r.arcrole.uri = '&amp;lt;nowiki&amp;gt;http://www.xbrl.org/2003/arcrole/concept-label&amp;lt;/nowiki&amp;gt;' and r.from.conceptName = 'x6'''' this one obtains the labels defined for concepts where the concept name is x6. The query traverses the XBRLRelationship entity and filter those who has an specific arc role (concept-label) and, at the from part of the relationship, there is a concept where the concept name is 'x6'. You can now feel the power of the dot hehe. Once the relationships are selected, we will obtain the to side of the relationship and from that point we will go further to the 'value' (which is the XBRLResource) and from there to the 'name' which is the local part of the QName.&lt;br /&gt;
&lt;br /&gt;
[[File:hql-sample-query.png]]&lt;br /&gt;
&lt;br /&gt;
= Feedback =&lt;br /&gt;
Send us feedback about this information to: [mailto:support@reportingstandard.com Support at ReportingStandard dot com]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Walkthrough_load_and_store_XBRL_taxonomies&amp;diff=692</id>
		<title>Walkthrough load and store XBRL taxonomies</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Walkthrough_load_and_store_XBRL_taxonomies&amp;diff=692"/>
		<updated>2019-01-08T15:05:03Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This document describes how to:&lt;br /&gt;
&lt;br /&gt;
# Install Reporting Standard software related with this walkthrough in a new computer&lt;br /&gt;
# Request an evaluation license suitable for all required packages&lt;br /&gt;
# Manually installing xbrl-packages into the local taxonomy catalog&lt;br /&gt;
# Open and Store all the information into a relational database&lt;br /&gt;
# Understanding the table model and how to query the information stored&lt;br /&gt;
&lt;br /&gt;
== Install Reporting Standard software related with this walkthrough in a new computer ==&lt;br /&gt;
&lt;br /&gt;
In order to run this walkthrough you need to install two packages:&lt;br /&gt;
* the regular Setup package that contains the main tools set&lt;br /&gt;
* the Database package that provide additional tools to work directly with the database&lt;br /&gt;
&lt;br /&gt;
Visit the [[Walkthrough downloading Reporting Standard XBRL tools set]] page in order to find the download URLs for the packages that are not publicly available in the [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
&lt;br /&gt;
Visit also the [[Hardware requirements]] and [[Software requirements]] pages and check your environment meets them.&lt;br /&gt;
&lt;br /&gt;
* ''Step 1'': Download the latest version of the tools set '''RS_XBRL_Setup_X.Y.Z-xAR.msi''' package. Change the X, Y, Z and AR to met the latest version and your operating system architecture.&lt;br /&gt;
* ''Step 2'': Download the latest version of the database tools '''RS_XBRL_Database_X.Y.Z-xAR.msi''' package.&lt;br /&gt;
* ''Step 3'': Install the Setup package. Resist the temptation of executing any of the installed tools until Step 4 is finished. If you have already executed any of the installed tools and the software is requesting you to enter a license key, jump to the next section ''Request an evaluation license suitable for all required packages'' before doing step 4. The license is needed to run any of the tools installed on the setup package or the database package.&lt;br /&gt;
* ''Step 4'': Install the database package&lt;br /&gt;
&lt;br /&gt;
== Request an evaluation license suitable for all required packages ==&lt;br /&gt;
&lt;br /&gt;
Find the &amp;quot;License Manager&amp;quot; tool (the icon is a gold key) and request an evaluation license. There is more information on the [[Walkthrough requesting evaluation license]] page. The same dialog will pop-up if you start any other tool that requires a license and the license is not installed. Licenses are delivered to the email address you provide during the process. If you have questions please ask via email to info at reportingstandard dot com. You need a license with access to the regular tools set and also the XBRL Database tools set.&lt;br /&gt;
&lt;br /&gt;
== Installing required XBRL packages into the local taxonomy catalog ==&lt;br /&gt;
&lt;br /&gt;
Starting with version 2.8.5 of Reporting Standard tools set we incorporated support for the [https://www.xbrl.org/Specification/taxonomy-package/PWD-2014-01-15/taxonomy-package-PWD-2014-01-15.html Taxonomy Package 1.0 Public Working Draft 15 January 2014] in addition to that taxonomy catalog.&lt;br /&gt;
&lt;br /&gt;
In order to speed up taxonomy loading process it is worth installing local copies of the remote official files. Installation of taxonomy packages is a simple straight forward step.&lt;br /&gt;
&lt;br /&gt;
# Open XBRLizer or any other similar tool such as the Instance Document Viewer&lt;br /&gt;
# Select Options -&amp;gt; Catalog -&amp;gt; Remote Catalog&lt;br /&gt;
# From the list of taxonomies available, install the following ones: ''Asset Encumbrance 2014-03 (1.0.0)'', ''COmmon REPorting 2014-03 (2.0.2)'', ''EBA CRR Dictionary and FINancial REPorting 2014-03 (2.1.0)''&lt;br /&gt;
&lt;br /&gt;
for installing a taxonomy package. Click on the line with the taxonomy name and click on the ''Install'' button below.&lt;br /&gt;
&lt;br /&gt;
== Prepare the database to store XBRL information ==&lt;br /&gt;
&lt;br /&gt;
Follow the instructions indicated on the [[Installing the XBRL Database]] pages in order to install and set up the table models. For this test we are using Microsoft SQL Server Express 2008, but the database can be installed on Oracle, IBM DB2 or PostgreSQL. Then come back to this page and continue with the next steps.&lt;br /&gt;
&lt;br /&gt;
== Store a taxonomy into the database ==&lt;br /&gt;
&lt;br /&gt;
Storing an XBRL report can be done form XBRLizer, the XBRL Viewer and most of the generic XBRL tools. Storing an XBRL report will store all files in the DTS too. Note the database is optimized and no information is stored twice so the files stored in one DTS will be reused for the next XBRL report referencing the same files at their corresponding official locations.&lt;br /&gt;
&lt;br /&gt;
Storing a taxonomy can only be executed from the '''StoreXBRL.exe''' tool that is installed with the database package.&lt;br /&gt;
&lt;br /&gt;
# Double click on the StoreXBRL.exe icon and launch the StoreXBRL tool.&lt;br /&gt;
# Select File -&amp;gt; Open and Save menu&lt;br /&gt;
# On the Open dialog window, click on the ''Add Cat...'' button to select an entry point form the taxonomy catalog&lt;br /&gt;
# Find the line for the ''FINancial REPorting 2014-03 (2.1.0)'' taxonomy (you should have it installed from previous steps)&lt;br /&gt;
# once you click on that line, two entry points appear below. Select the one that says ''Financial Reporting, Consolidated (Prudential scope) IFRS'' and click on OK.&lt;br /&gt;
# The official URL(s) for the selected entry point gets copied to the Open dialog and you can click on OK to start the loading and storing process&lt;br /&gt;
&lt;br /&gt;
The complete process may take a couple of minutes. Loading the DTS in memory may require up to 6 Gb of RAM.&lt;br /&gt;
&lt;br /&gt;
Now is time to get a cold coke from the fridge&lt;br /&gt;
&lt;br /&gt;
== Doing some queries on the database model ==&lt;br /&gt;
&lt;br /&gt;
The database table model is a normalized relational model composed of different layers. At the top is there is the Documents layer, that contains a physical copy of the files that compose the DTS. At the bottom there is the XML layer that contains several tables to define an XML Fragment composed by XML Nodes (every attribute is a node, every element is a fragment, the element value is a node too) and every node is a pair of a qualified name and qualified value. &lt;br /&gt;
&lt;br /&gt;
The model contains two structures that are related one to the other. The table structure represents the database tables, indexes, and foreign keys between the tables. The entity structure contains the XBRL object model that is serialized to the database. The complete documentation about those two models is [https://www.reportingstandard.com/pojo/documentation/entities/index.html on this web page]&lt;br /&gt;
&lt;br /&gt;
The model is extensible. Users can define additional entities and tables and the add the user model to the XBRL model. During the DTS Storage process the user defined objects that are populated and related with the XBRL model will be written to the database too. This feature requires some knowledge about the technologies used to document the entity model so they will not be covered by this documentation. Please contact us if you want more information in this regard.&lt;br /&gt;
&lt;br /&gt;
In order to do some queries we will use another tool that gets installed with the Database package. This is the '''RetrieveXBRL.exe''' tool. That tool contains several tabs. Each one of the tabs can be used to see what is in the database. The first tab, called HQL allows users to write their own query expressions. HQL is a query language for Java persistance it is based on SQL but is more powerful because it can handle the entities directly so there is no need to go down to the tables and relationships between the tables.&lt;br /&gt;
&lt;br /&gt;
Let's run our first query:&lt;br /&gt;
# open RetrieveXBRL.exe (There shall be no need to define the database connection parameters. The connection parameters is shared across all tools using the XBRL database&lt;br /&gt;
# on the HQL Expression text box at the HQL tab, write the following expression: '''select conceptName from XBRLConcept''' and hit enter or press the '''Exec''' button&lt;br /&gt;
&lt;br /&gt;
The result is just one column that contains the name of all concepts defined in all taxonomies stored into the database.&lt;br /&gt;
&lt;br /&gt;
Let's run another query: '''select q.name from XBRLResource r, QName q where r.value = q''' on this example we are going to retrieve the name column from the QName table for all resources stored into the database. Note we are joining two tables here using the entities ''XBRLResource'' and ''QName'' and not the tables where the information is stored. The query shall return 61767 results if you are following all steps in this tutorial.&lt;br /&gt;
&lt;br /&gt;
Another example: '''select c.parent.namespace, c.conceptName from XBRLConcept c where c.conceptName like 'x6'''' here we are selecting the XBRLConcept entity and filtering all them whose concept name is just '''x6'''. in our example, there are 24 definitions of this concept name in 24 different taxonomy schemas. In order to know the schema namespare where the concept is defined, we are going to include the taxonomy (the parent property of a concept) and from the taxonomy we will access the namespace definition (that is in another entity called Namespace). Now you can see how useful and powerful the dot notation is in obtaining information related to an entity that is stored in another related entity.&lt;br /&gt;
&lt;br /&gt;
The last examples are using the XBRLRelationship table to select specific relationships and then exploring the from and to sides of them.&lt;br /&gt;
&lt;br /&gt;
Obtain element labels from labels text: '''select r.to.value.name from XBRLRelationship r where r.arcrole.uri like '%element-label' and r.to.value.name like '%Assets%''''. This query obtains element labels that contains the word '''Assets''' anywhere in the label text.&lt;br /&gt;
&lt;br /&gt;
This query obtains the element name for rows returned in the previous query '''select r.from.name.name from XBRLRelationship r where r.arcrole.uri like '%element-label' and r.to.value.name like '%Assets%''''&lt;br /&gt;
&lt;br /&gt;
This screen capture merges the output of the previous two queries:&lt;br /&gt;
[[File:hql-sample-element-and-label.png]]&lt;br /&gt;
&lt;br /&gt;
This query obtains concept labels from concept names: '''select r.to.value.name from XBRLRelationship r where r.arcrole.uri = '&amp;lt;nowiki&amp;gt;http://www.xbrl.org/2003/arcrole/concept-label&amp;lt;/nowiki&amp;gt;' and r.from.conceptName = 'x6'''' this one obtains the labels defined for concepts where the concept name is x6. The query traverses the XBRLRelationship entity and filter those who has an specific arc role (concept-label) and, at the from part of the relationship, there is a concept where the concept name is 'x6'. You can now feel the power of the dot hehe. Once the relationships are selected, we will obtain the to side of the relationship and from that point we will go further to the 'value' (which is the XBRLResource) and from there to the 'name' which is the local part of the QName.&lt;br /&gt;
&lt;br /&gt;
[[File:hql-sample-query.png]]&lt;br /&gt;
&lt;br /&gt;
= Feedback =&lt;br /&gt;
Send us feedback about this information to: [mailto:support@reportingstandard.com Support at ReportingStandard dot com]&lt;br /&gt;
&lt;br /&gt;
=Navigate=&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Walkthrough_downloading_Reporting_Standard_XBRL_tools_set&amp;diff=691</id>
		<title>Walkthrough downloading Reporting Standard XBRL tools set</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Walkthrough_downloading_Reporting_Standard_XBRL_tools_set&amp;diff=691"/>
		<updated>2019-01-08T15:01:50Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Reporting standard tools set is not just one installer, it is rather a set of installers that let our users to install a complete framework to work with XBRL taxonomies and reports.&lt;br /&gt;
&lt;br /&gt;
Installer file names are created automatically from our development system and are updated according to well known rules. You can always obtain different versions of the software and different software components using the rules indicated here.&lt;br /&gt;
&lt;br /&gt;
= The file name to download =&lt;br /&gt;
&lt;br /&gt;
The installer file name is a concatenation of several parts using the underscore character '''_''' as separator&lt;br /&gt;
# The prefix: All installers start with '''RS_XBRL''' as prefix.&lt;br /&gt;
# The package name: see below&lt;br /&gt;
# The version number: see below&lt;br /&gt;
# The architecture: see below&lt;br /&gt;
# The file extension: it is always '''.msi'''&lt;br /&gt;
&lt;br /&gt;
== Packages names ==&lt;br /&gt;
&lt;br /&gt;
* '''Setup''': contains the basic library and software tools&lt;br /&gt;
* '''Mapper''': contains additional tools to work with data transferring to/from XBRL&lt;br /&gt;
* '''Database''': contains additional tools to work with databases and store instances/taxonomies into relational databases&lt;br /&gt;
&lt;br /&gt;
== Language code ==&lt;br /&gt;
&lt;br /&gt;
Starting from version 2.8.5, there are installers in English and Spanish. The installer is differentiated adding the language code to the installer file. The installer codes are:&lt;br /&gt;
&lt;br /&gt;
* '''es''' for Spanish&lt;br /&gt;
* '''en''' for English&lt;br /&gt;
&lt;br /&gt;
== Version number ==&lt;br /&gt;
&lt;br /&gt;
The version number are just tree digits separated by dots. '''X.Y.Z'''&lt;br /&gt;
&lt;br /&gt;
The '''official''' version is the one publicly available in the  [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
&lt;br /&gt;
We also publish the latest development version that should be available by adding one to the Z number.&lt;br /&gt;
&lt;br /&gt;
== The architecture ==&lt;br /&gt;
The architecture is either '''x64''' for 64 bit and '''x86''' for the old 32 bit operating systems.&lt;br /&gt;
&lt;br /&gt;
= Examples =&lt;br /&gt;
If, for example, the current version is 2.8.5, then the following files exists and can be downloaded for en English version:&lt;br /&gt;
&lt;br /&gt;
* RS_XBRL_Setup_en-2.8.5-x64.msi&lt;br /&gt;
* RS_XBRL_Setup_en-2.8.5-x86.msi&lt;br /&gt;
* RS_XBRL_Database_en-2.8.5-x64.msi&lt;br /&gt;
* RS_XBRL_Database_en-2.8.5-x86.msi&lt;br /&gt;
* RS_XBRL_Mapper_en-2.8.5-x64.msi&lt;br /&gt;
* RS_XBRL_Mapper_en-2.8.5-x86.msi&lt;br /&gt;
&lt;br /&gt;
= Out of simply package names =&lt;br /&gt;
&lt;br /&gt;
There are two additional files we prepare for each version. &lt;br /&gt;
&lt;br /&gt;
* The unix installer '''RS-XBRLProcessor-VX.Y.Z-UNIX.zip'''. Is a ZIP file. If you are familiar with development environment you can download this tools set and use the libraries folder directly on any other architectures.&lt;br /&gt;
&lt;br /&gt;
* The .NET libraries '''RS_XBRL_API_in_DotNET_2.8.5.zip'''. Is also a ZIP file that contains the latest versions of the .NET DLLs&lt;br /&gt;
&lt;br /&gt;
= The server URL =&lt;br /&gt;
&lt;br /&gt;
We publish the installers on two different servers:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;http://www.reportingstandard.org/{installerpackagename}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;http://www.reportingstandard.net/{installerpackagename}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Normally, the server at .org should be faster than the server at .net this is because .org is hosted at AWS using cloudfront but at the cost of delaying updates by 8 hours. The server at .net has no delay in the publication of files but is hosted in Europe at 1and1&lt;br /&gt;
&lt;br /&gt;
= Feedback =&lt;br /&gt;
Send us feedback about this information to: [mailto:support@reportingstandard.com Support at ReportingStandard dot com]&lt;br /&gt;
&lt;br /&gt;
=Navigate=&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Comments_about_the_Call_for_review_the_proposed_edit_recommendation_made_on_2011/05/27&amp;diff=690</id>
		<title>Comments about the Call for review the proposed edit recommendation made on 2011/05/27</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Comments_about_the_Call_for_review_the_proposed_edit_recommendation_made_on_2011/05/27&amp;diff=690"/>
		<updated>2019-01-08T14:59:06Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The email from the Technical Director of the XBRL International Consortium ==&lt;br /&gt;
&lt;br /&gt;
On May 27th 2011,&lt;br /&gt;
&lt;br /&gt;
The Base Specification and Maintenance Working Group has published a Proposed Edited version of the XBRL 2.1 Specification to address issues related to decimals and precision.&lt;br /&gt;
&lt;br /&gt;
Since the changes proposed are of type 3 as defined in section 7.7.2 of the processes document and, if implemented, would necessitate software vendors to make changes to their products, it is essential that there be full public review and opportunity for commentary before any decision is taken whether or not to modify the specification as proposed.&lt;br /&gt;
&lt;br /&gt;
The materials, including a version of the conformance suite that reflects the proposed changes, are available in https://www.xbrl.org&lt;br /&gt;
&lt;br /&gt;
Please provide feedback to spec@xbrl.org&lt;br /&gt;
&lt;br /&gt;
Further reminders and announcements will be made and a deadline date for comments announced in due course&lt;br /&gt;
&lt;br /&gt;
Thanks&lt;br /&gt;
&lt;br /&gt;
Hugh&lt;br /&gt;
&lt;br /&gt;
== The experience of Reporting Standard on this topic ==&lt;br /&gt;
&lt;br /&gt;
The topic was first commented to the XBRL-DEV list around July 2007. Here is one of the emails where we explained the issue.&lt;br /&gt;
&lt;br /&gt;
Hello,&lt;br /&gt;
 &lt;br /&gt;
Attached is a very simple test case:&lt;br /&gt;
 &lt;br /&gt;
The taxonomy has three elements and a very simple rule defined.&lt;br /&gt;
A = B + C&lt;br /&gt;
 &lt;br /&gt;
The instance contains:&lt;br /&gt;
 &lt;br /&gt;
A = 0 with decimals 0&lt;br /&gt;
C = 4 with decimals 0&lt;br /&gt;
 &lt;br /&gt;
I would like to discuss with you if there is any mistake in the XBRL 2.1 spec because.&lt;br /&gt;
 &lt;br /&gt;
1)      NOT AL SOFTWARE VENDORS HAVE IMPLEMENTED THIS RULE CONSISTENLY IN THEIR PRODUCTS (some raise calculation inconsistencies some not)&lt;br /&gt;
2)      THE CONDITION THAT IS BEING TESTED HERE IS NOT IN THE CURRENT CUT OF THE XBRL 2.1 CONFORMANCE SUITE&lt;br /&gt;
 &lt;br /&gt;
Explanation:&lt;br /&gt;
 &lt;br /&gt;
A = 0 with decimals 0. This is represented as A = 0d(0) &lt;br /&gt;
 &lt;br /&gt;
According to the XBRL 2.1 spec, an XBRL processor must infer the value of the precision for this number. &lt;br /&gt;
http://www.xbrl.org/Specification/XBRL-RECOMMENDATION-2003-12-31+Corrected-Errata-2008-07-02.htm#_4.6.6&lt;br /&gt;
 &lt;br /&gt;
If I’m correct, This turns the number into A = 0p(0) (A with value 0 and precision=0) (I’ve also highlighted the reason in bold blue)&lt;br /&gt;
“Given the value of the decimals attribute, the precision of a numeric item is equal to n, where n is equal to the maximum of 0 and the result of the following calculation:&lt;br /&gt;
if there are non-zero digits to the left of the decimal point or implied decimal point if absent then the number of digits excluding any leading zeros to the left of the decimal point (or implied decimal point if absent) in the lexical representation of the numerical fact&lt;br /&gt;
otherwise if there are non-zero digits to the right of the decimal point, the negative of the number of zeros between the decimal point and the first non-zero digit in the lexical representation of the numerical fact&lt;br /&gt;
otherwise zero&lt;br /&gt;
plus &lt;br /&gt;
&lt;br /&gt;
the value of the exponent in the lexical representation of the numerical fact (if present) &lt;br /&gt;
plus &lt;br /&gt;
&lt;br /&gt;
the number of decimal places to which the numeric fact is known to be correct.&lt;br /&gt;
”&lt;br /&gt;
 &lt;br /&gt;
Now, the processor must follow the rules in section 5.2.5.2 of the XBRL spec in regard to the calculation of the total.&lt;br /&gt;
 &lt;br /&gt;
http://www.xbrl.org/Specification/XBRL-RECOMMENDATION-2003-12-31+Corrected-Errata-2008-07-02.htm#_5.2.5.2&lt;br /&gt;
 &lt;br /&gt;
“The total of a binding calculation is defined to be the sum of the rounded values of the contributing numeric items in the binding, each multiplied by the value of the weight attribute on the item's associated calculationArc. This multiplication takes place after any necessary rounding is performed. The rounded value of a numeric item is the result of rounding the value of the numeric item to its precision or inferred precision (see Section 4.6.6 and ). A binding calculation is defined to be consistent if the rounded value of the summation item is equal to the total rounded to the precision or inferred precision of the summation item.”&lt;br /&gt;
 &lt;br /&gt;
So C = 4d(0) is first converted into C = 4p(1) (4 with precision = 1 following the same rules indicated in section 4.6.6). Then, the total is 4 (just a number without indication about precision)&lt;br /&gt;
 &lt;br /&gt;
Following the rule, “rounded to the precision or inferred precision of the summation item.” 4 must be rounded to p(0) so this is 4p(0).&lt;br /&gt;
 &lt;br /&gt;
The rounded value of 4p(0) is 0… so &lt;br /&gt;
 &lt;br /&gt;
A = B + C&lt;br /&gt;
0d(0) = + 4d(0)&lt;br /&gt;
0p(0) = 4&lt;br /&gt;
0p(0) = 4p(0)&lt;br /&gt;
 &lt;br /&gt;
And this is TRUE because 4p(0) is 0&lt;br /&gt;
 &lt;br /&gt;
Can other software vendors confirm this or different interpretations?&lt;br /&gt;
 &lt;br /&gt;
Regards,&lt;br /&gt;
Ignacio&lt;br /&gt;
&lt;br /&gt;
== The proposed solution ==&lt;br /&gt;
&lt;br /&gt;
The Specification working group has published a new specification (rather than a simple errata correction).&lt;br /&gt;
&lt;br /&gt;
== How you can test the consequences of the proposed solution ==&lt;br /&gt;
&lt;br /&gt;
Our processor implements the capacity to set configuration options. &lt;br /&gt;
&lt;br /&gt;
Starting with release 2.7.1, the configuration options are available directily in the user interface.&lt;br /&gt;
&lt;br /&gt;
If you have a license of Reporting Standard S.L. XBRL Personal Validation, you can activate validation under the new proposed wording by doing:&lt;br /&gt;
&lt;br /&gt;
# Open &amp;quot;XBRL Personal Validation&amp;quot;&lt;br /&gt;
# Click on browse and select the file(s) to validate. (all files selected will compose a single DTS)&lt;br /&gt;
# Click on the Options button&lt;br /&gt;
# Make sure you have the XBRL_EXPERIMENTAL_BUG_368 option selected&lt;br /&gt;
# Click the RUN button&lt;br /&gt;
&lt;br /&gt;
[[File:Options-Processor-version.png]]&lt;br /&gt;
&lt;br /&gt;
The same processor can operate differently depending on the configuration options the user decides to set.&lt;br /&gt;
&lt;br /&gt;
== Our conclusion ==&lt;br /&gt;
&lt;br /&gt;
* We think the text on the proposed edited recommendation exceeds the limits of the real problem as it is documented on this test case, in consequence:&lt;br /&gt;
** The error detected in the specification (comparison with a number with precision 0) does not justify a change to infer decimals from precision.&lt;br /&gt;
** The error detected could be easily fixed adding a new warning to the XBRL 2.1 specification in section 5.2.5.2 and section 4.6.6 keep current calculations based on precision as they are. More information in the next section of this document.&lt;br /&gt;
* In fact, inferring decimals from precision or precision form decimals is unrelated with the problem detected.&lt;br /&gt;
** There is no business requirement for a change of this nature.&lt;br /&gt;
** during a period of time (maybe forever) there would be implementations according with the old wording and implementations according with the new wording.&lt;br /&gt;
** There is a high risk of creating inconsistent implementations of XBRL, &amp;quot;after the inferring precision from decimals era&amp;quot; and &amp;quot;before the inferring precision from decimals era&amp;quot;. This change would create inconsistent processors during a large period of time. It is also possible that some projects require old specification versions and some project require new specification versions. (even if the XBRL consortium don't want to call this a new &amp;quot;version&amp;quot;, due to the reason the old conformance suite is no longer valid with the new wording, this is, in fact, a new version)&lt;br /&gt;
&lt;br /&gt;
== Our proposal ==&lt;br /&gt;
&lt;br /&gt;
* We propose a simple errata correction in order to add a new warning in case a number is compared with another number using precision=0 or inferred precision=0&lt;br /&gt;
* We DO NOT endorse a specification change and a conformance suite change at this stage.&lt;br /&gt;
* CONCRETE PROPOSAL: if the conversion of 0 decimals 0 into 0 with precision 0 is a problem because a number with precision zero is equal to whatever other number. The XBRL 2.1 specification should add the following two rules:&lt;br /&gt;
** 0 decimals 0 shall be converted into 0 with precision 1 (on section 4.6.6)&lt;br /&gt;
** if the rounded value of the summation item is 0 with inferred or stated precision 0, then a warning should be raised by an XBRL processor. (on section 5.2.5.2)&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XhBtRmL&amp;diff=689</id>
		<title>XhBtRmL</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XhBtRmL&amp;diff=689"/>
		<updated>2019-01-08T14:37:37Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Product page==&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/transformation-engine-from-xbrl-to-html/?lang=en XhBtRmL XBRL to HTML Template language]&lt;br /&gt;
&lt;br /&gt;
[[File:XBRLMapperIcon.png|none|left|XhBtRmL template language to produce HTML representation of XBRL reports]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
XhBtRmL is a simple language designed to create templates that produce HTML representation of the content of XBRL reports. It can be used for multiple purposes as, for example, to produce a nice web page directly from the content of an XBRL report or for transforming the XBRL report into another XML document, for example; an iXBRL report or an XML-FO (for the production of PDF) etc.&lt;br /&gt;
&lt;br /&gt;
The idea regarding the architecture behind XhBtRmL is the same as in XSLT. There is an Infoset (Information and structure of information) and a transformation language that is able to provide access to the information that exist on the Infoset and produce an output document. The reason why XSLT is not the right solution for working with XBRL is because XSLT was designed to work with the limited infoset of XML nodes (elements, attributes, namespaces, values, ...) while the XBRL Infoset is much richer that just elements and attributes. It contains concept definitions with specific XBRL properties, labels in multiple languages, presentation, calculation and reference relationships, definition relationships with other concept definitions etc. All this information may be diseminated in multiple files composing a complex DTS. This is certainly not an efficient scenario for XSLT or the production of XSLT pages.&lt;br /&gt;
&lt;br /&gt;
==Testing XhBtRmL==&lt;br /&gt;
&lt;br /&gt;
The best way to test XhBtRmL is creating your own templates or modifying the content of existing templates. The first thing the user needs is a testing environment in which the user can start submit a web page and see the result. This walkthrough will guide the user step by step about the following topics:&lt;br /&gt;
# Installation instructions of the testing environment&lt;br /&gt;
# Understanding the testing environment&lt;br /&gt;
# Reference documentation&lt;br /&gt;
&lt;br /&gt;
===Installation instructions of the testing environment===&lt;br /&gt;
&lt;br /&gt;
The testing environment can be installed under the Java platform using the Tomcat Application Server or it can be installed using the .NET platform on windows.&lt;br /&gt;
&lt;br /&gt;
====Installation under Windows .NET====&lt;br /&gt;
&lt;br /&gt;
# Download and install the latest version of Reporting Standard tools [https://www.reportingstandard.com/downloads/?lang=en Direct access to the downloads Page].&lt;br /&gt;
# Install the required licenses in order to be able to run Reporting Standard code in your computer. [https://www.reportingstandard.com/free-license/?lang=en Direct link to request evaluation licenses form]. &lt;br /&gt;
# Download the .NET version of the XBRL Libraries from this link: [http://www.reportingstandard.org/RS_XBRL_API_in_DotNET_3.3.1.zip RS_XBRL_API_in_DotNET.zip]. The zip file contains a directory with 7 DLLs. The DLLs will be used later as references from .NET code. The user can install the DLLs in the GAC or in a folder. During this walkthrough we will assume the user has extracted the DLLs into a directory called '''RS_XBRL_API_in_DotNET'''. Note: Starting with version 2.6.9 of Reporting Standard Tools, if you have already installed the Excel Mapper Plug-in you already have the DotNet library on your hard drive in a directory called &amp;quot;Excel Mapper lib&amp;quot;. So there is no need to download anything additional. Starting with version 2.6.11, the DotNet library will always be installed on a directory called &amp;quot;Excel Mapper lib&amp;quot; regardless the Excel Mapper Plug-In is installed or not.&lt;br /&gt;
# Download the sample project from this link: [[http://www.reportingstandard.net/XhBtRmL_DotNET.zip XhBtRmL_DotNET.zip]]. Now uncompress the content somewhere in your hard drive.&lt;br /&gt;
# The XhBtRmL solution contains a web project also called XhBtRmL. Depending on the user's operating system version he'll have to configure different things in the IIS web server in order to start serving .aspx pages. Under Windows XP Proffessional edition this requires installing IIS 5.1 and Windows .NET framework 2.0 (3.5 is recommended for working with the XBRL API). After that, it is necessary giving read permissions to the ASPNET user to the following directories:&lt;br /&gt;
## The '''lib''' directory where Reporting Standard License files and library files are installed.&lt;br /&gt;
## The '''XhBtRmL''' directory where the project source code is located (this is, for example, the directory where the file AssemblyInfo.cs is located).&lt;br /&gt;
## and write permissions to the '''temp''' directory under the '''XhBtRmL''' directory. This is because the web server will write downloaded files here.&lt;br /&gt;
# Under Windows Vista, similar work will be necessary regarding the permissions of the users running the web server process.&lt;br /&gt;
# Open the project with you C# IDE (Visual Studio or Sharp Develop)&lt;br /&gt;
# Now resolve the unresolved references. There may be unresolved references to the following files: IKVM.AWT.WinForms, IKVM.OpenJDK.ClassLibrary, IKVM.Runtime, IKVM.Runtime.JNI, xbrljlib-2.0, xbrlmap and xbrlpojolib. The user will find that all required DLLs in order to resolve the references are located in the '''RS_XBRL_API_in_DotNET''' directory.&lt;br /&gt;
# Compile the project&lt;br /&gt;
# If you have not already do so, configure your web server to serve web pages under the directory where the Default.aspx file exist use the directory name '''XhBtRmL''' as the name of the virtual directory.&lt;br /&gt;
# Start the web server and point your browser to the root page &amp;lt;nowiki&amp;gt;http://localhost/XhBtRmL/Default.aspx&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
# After some seconds (the application takes some time to start) the user would see a simple web form to submit a sample XBRL report followed by an OK button on the next row&lt;br /&gt;
# Press the '''Browse''' button and search for the sampleInstance.xbrl document that is located in the project directory '''XhBtRmL'''&lt;br /&gt;
# Press the '''OK''' button and submit that file for processing. The process will take more time the first time it is executed because the templates are not compiled. The compiled templates are stored in memory in order to accelerate further executions.&lt;br /&gt;
# Read the Reference Documentation section in order to know how the process works and how to create new templates adapted for other taxonomies.&lt;br /&gt;
&lt;br /&gt;
====Installation under Java platform====&lt;br /&gt;
&lt;br /&gt;
# Download the Java sample project from this link: [[http://www.reportingstandard.net/XhBtRmL_Java.zip XhBtRmL_Java.zip]]&lt;br /&gt;
# Use Eclipse or your favorite IDE in order to set-up the project. The project contains a simple form in a web page called default.html and JSP page called process.jsp that contains all required code in order to produce an HTML representation of the sample XBRL report. There is also a static class called Config that is used from the JSP page and from a Servlet called InicializationServlet. The only purpose of the Initialization Servlet is to create an instance of the transformer object using the configuration file. The Transformer will be reused between  calls and it is thread safe so the reated instance will be stored in the Config object for later use.&lt;br /&gt;
# Review the content of the web.xml file and deploy the application according to your application server settings.&lt;br /&gt;
# Start the web server and point your browser to the root page &amp;lt;nowiki&amp;gt;http://localhost/XhBtRmL/Default.html&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
# After some seconds (the application takes some time to start) the user would see a simple web form to submit a sample XBRL report followed by an OK button on the next row&lt;br /&gt;
# Press the '''Browse''' button and search for the sampleInstance.xbrl document that is located in the project directory '''XhBtRmL'''&lt;br /&gt;
# Press the '''OK''' button and submit that file for processing. The process will take more time the first time it is executed because the templates are not compiled. The compiled templates are stored in memory in order to accelerate further executions.&lt;br /&gt;
# Read the Reference Documentation section in order to know how the process works and how to create new templates adapted for other taxonomies.&lt;br /&gt;
&lt;br /&gt;
===Understanding the testing environment===&lt;br /&gt;
&lt;br /&gt;
The testing environment consist of the following components:&lt;br /&gt;
&lt;br /&gt;
# A sample ''XBRL Taxonomy''. This taxonomy is local (not officially published, used only for this prototype and is not stored in Reporting Standard Taxonomy Catalog). The taxonomy schema can be located in the project directory '''config/samples/taxonomies/sample/sampleTaxonomy.xsd'''.&lt;br /&gt;
# A sample ''XBRL Report''. The report is in a file called '''sampleInstance.xbrl''' that is valid according to the sampleTaxonomy.xsd. In order to validate the instance document the user may need to store the instance document in the '''temp''' directory.&lt;br /&gt;
# A ''Web form'' called '''Default.aspx''' in the .NET windows platform or '''process.jsp''' in the Java platform that receives the xbrl file and send it to the [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/transform/TransformProcessor.html TransformProcessor] instance for transformation from XBRL format to HTML format. The [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/transform/TransformProcessor.html TransformProcessor] is initialized with a configuration file when the application is started.&lt;br /&gt;
# A ''Configuration file'' for the [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/transform/TransformProcessor.html TransformProcessor]. With information about the DTS, the templates etc. &lt;br /&gt;
# A set of ''Templates'' that defines the final user interface&lt;br /&gt;
&lt;br /&gt;
====The .NET Windows project====&lt;br /&gt;
&lt;br /&gt;
The Web.config file contains the following project properties:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
    &amp;lt;appSettings&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
	&amp;lt;add key=&amp;quot;tpConfig&amp;quot; &lt;br /&gt;
 	     value=&amp;quot;config/transformationParameters.xml&amp;quot;&lt;br /&gt;
 	/&amp;gt;&lt;br /&gt;
	&amp;lt;add key=&amp;quot;tempFolder&amp;quot;&lt;br /&gt;
		 value=&amp;quot;temp&amp;quot;&lt;br /&gt;
	/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;/appSettings&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The file '''Global.asax.cs''' contains the following code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
	protected void Application_Start(Object sender, EventArgs e)&lt;br /&gt;
	{&lt;br /&gt;
		// Initialization of the TransformProcessor&lt;br /&gt;
		GetTransformProcessorInstance();&lt;br /&gt;
	}&lt;br /&gt;
		&lt;br /&gt;
	public string GetTempFolderInstance() {&lt;br /&gt;
		if (incomingFolder == null) {&lt;br /&gt;
			incomingFolder = Server.MapPath(&amp;quot;~/&amp;quot;)+ConfigurationSettings.AppSettings[&amp;quot;tempFolder&amp;quot;];			&lt;br /&gt;
		}&lt;br /&gt;
		return incomingFolder;&lt;br /&gt;
	}&lt;br /&gt;
		&lt;br /&gt;
	public TransformProcessor GetTransformProcessorInstance() {&lt;br /&gt;
		if (tp == null) {&lt;br /&gt;
			string tpConfig = Server.MapPath(&amp;quot;~/&amp;quot;)+ConfigurationSettings.AppSettings[&amp;quot;tpConfig&amp;quot;];&lt;br /&gt;
			File tpf = new File(tpConfig);&lt;br /&gt;
			try {&lt;br /&gt;
				// Initialization of the XBRL library&lt;br /&gt;
				InitDotNet.Initialize();&lt;br /&gt;
		&lt;br /&gt;
				initializationError = null;&lt;br /&gt;
				tp = new TransformProcessor(tpf.toURI());&lt;br /&gt;
				Properties props = new Properties();&lt;br /&gt;
				props.put(OutputKeys.METHOD,&amp;quot;xhtml&amp;quot;);&lt;br /&gt;
				props.put(OutputKeys.DOCTYPE_PUBLIC,&amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;);&lt;br /&gt;
				props.put(OutputKeys.DOCTYPE_SYSTEM, &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;);&lt;br /&gt;
				props.put(OutputKeys.OMIT_XML_DECLARATION, &amp;quot;no&amp;quot;);&lt;br /&gt;
				props.put(OutputKeys.ENCODING,&amp;quot;ISO8859-1&amp;quot;);&lt;br /&gt;
				props.put(OutputKeys.VERSION,&amp;quot;1.0&amp;quot;);&lt;br /&gt;
				tp.setOutputProperties(props);			&lt;br /&gt;
			} catch (Exception ex) {&lt;br /&gt;
				tp = null;&lt;br /&gt;
				initializationError = ex;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		return tp;&lt;br /&gt;
	}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====The Java project====&lt;br /&gt;
&lt;br /&gt;
The web.xml file contains the following information:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
    &amp;lt;env-entry&amp;gt;&lt;br /&gt;
	&amp;lt;description&amp;gt;TransformProcessor config file&amp;lt;/description&amp;gt;&lt;br /&gt;
	&amp;lt;env-entry-name&amp;gt;tpConfig&amp;lt;/env-entry-name&amp;gt;&lt;br /&gt;
	&amp;lt;env-entry-type&amp;gt;java.lang.String&amp;lt;/env-entry-type&amp;gt;&lt;br /&gt;
	&amp;lt;env-entry-value&amp;gt;config/transformationParameters.xml&amp;lt;/env-entry-value&amp;gt;&lt;br /&gt;
    &amp;lt;/env-entry&amp;gt;&lt;br /&gt;
    &amp;lt;env-entry&amp;gt;&lt;br /&gt;
	&amp;lt;description&amp;gt;Incoming instance documents will be downloaded here&amp;lt;/description&amp;gt;&lt;br /&gt;
	&amp;lt;env-entry-name&amp;gt;tempFolder&amp;lt;/env-entry-name&amp;gt;&lt;br /&gt;
	&amp;lt;env-entry-type&amp;gt;java.lang.String&amp;lt;/env-entry-type&amp;gt;&lt;br /&gt;
	&amp;lt;env-entry-value&amp;gt;temp&amp;lt;/env-entry-value&amp;gt;&lt;br /&gt;
    &amp;lt;/env-entry&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The '''Config.java''' class contains the following method&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public static synchronized void init(ServletContext application) {&lt;br /&gt;
	if (bInitialized)&lt;br /&gt;
		return;&lt;br /&gt;
	bInitialized = true;&lt;br /&gt;
	&lt;br /&gt;
	try {&lt;br /&gt;
		String tempFolder = null;&lt;br /&gt;
		Context ctx = new javax.naming.InitialContext();&lt;br /&gt;
		Context env = (Context)ctx.lookup(&amp;quot;java:comp/env&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
		tempFolder = (String)env.lookup(&amp;quot;tempFolder&amp;quot;);&lt;br /&gt;
		incomingFolder = application.getRealPath(tempFolder);&lt;br /&gt;
			&lt;br /&gt;
		String tpConfig = (String)env.lookup(&amp;quot;tpConfig&amp;quot;);&lt;br /&gt;
		String tpReal = application.getRealPath(tpConfig);&lt;br /&gt;
		File tpf = new File(tpReal);&lt;br /&gt;
		tp = new TransformProcessor(tpf.toURI());&lt;br /&gt;
		Properties props = new Properties();&lt;br /&gt;
		props.put(OutputKeys.METHOD,&amp;quot;xhtml&amp;quot;);&lt;br /&gt;
		props.put(OutputKeys.DOCTYPE_PUBLIC,&amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;);&lt;br /&gt;
		props.put(OutputKeys.DOCTYPE_SYSTEM, &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;);&lt;br /&gt;
		props.put(OutputKeys.OMIT_XML_DECLARATION, &amp;quot;no&amp;quot;);&lt;br /&gt;
		props.put(OutputKeys.ENCODING,&amp;quot;ISO8859-1&amp;quot;);&lt;br /&gt;
		props.put(OutputKeys.VERSION,&amp;quot;1.0&amp;quot;);&lt;br /&gt;
		tp.setOutputProperties(props);&lt;br /&gt;
	} catch (NamingException e) {&lt;br /&gt;
		bInitialized = false;&lt;br /&gt;
		e.printStackTrace();&lt;br /&gt;
	} catch (TransformConfigurationFileException e) {&lt;br /&gt;
		bInitialized = false;&lt;br /&gt;
		e.printStackTrace();&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Information about the global properties====&lt;br /&gt;
&lt;br /&gt;
The '''tempFolder''' property will be used in order to store downloaded files. DTS resolution should use either absolute files or relative files that will be resolved using this directory as the base directory for relative resolution if there is no xml:base or any other indication inside the file according to the XML and XBRL specifications.&lt;br /&gt;
&lt;br /&gt;
The '''tpConfig''' property is used to indicate the name of the configuration file for the initialization of the [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/transform/TransformProcessor.html TransformProcessor]. Refer to the section [[XhBtRmL Configuration file]] for more information about the syntax and configuration file content.&lt;br /&gt;
&lt;br /&gt;
==Reference documentation==&lt;br /&gt;
&lt;br /&gt;
* The [[XhBtRmL Configuration file]]&lt;br /&gt;
* The [[XhBtRmL HTMLReportHandler Configuration file]]&lt;br /&gt;
* The [[XhBtRmL HTML Templates]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRL_Database&amp;diff=688</id>
		<title>XBRL Database</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRL_Database&amp;diff=688"/>
		<updated>2019-01-08T14:23:22Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Product page==&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/the-xbrl-database/?lang=en XBRL Database]&lt;br /&gt;
&lt;br /&gt;
[[File:XBRLDBIcon.png|none|left|XhBtRmL template language to produce HTML representation of XBRL reports]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
The XBRL Database is a permament repository system implemented using relational databases and the most advanced technologies in order to allow the storage of document level information like XBRL reports, XBRL Taxonomies and XBRL Linkbases along with granular level information as XBRL Fact items, XBRL concept definitions, XBRL Labels, XBRL Resources, XBRL Relationships.&lt;br /&gt;
&lt;br /&gt;
* The storage system allows the storage of everything that is valid XBRL 2.1&lt;br /&gt;
* The storage repository accepts information for any existing or new XBRL 2.1 taxonomy&lt;br /&gt;
* The storage system allows users to develop complex cross instance document and cross taxonomy information systems&lt;br /&gt;
&lt;br /&gt;
There is a live demo of the XBRL Database that store all the information published by the SEC here [http://www.xbrl4.org/regulators/ExploreXBRL.html ExploreXBRL direct link].&lt;br /&gt;
&lt;br /&gt;
For more information about the XBRL Database please contact reporting standard directly by sending an email to info at reportingstandard.com&lt;br /&gt;
&lt;br /&gt;
Starting with version 2.6.12 of Reporting Standard S.L. tools, the XBRL Database functionality has been incorporated into XBRLizer and XBRLViewer. Also, a new software component has been created in order to access to information stored in the XBRL Database from Excel formulas.&lt;br /&gt;
&lt;br /&gt;
Now, the XBRL Database can receive XBRL reports from:&lt;br /&gt;
&lt;br /&gt;
* The XBRL Validation component (server mode) after XBRL 2.1 validation is finished with no errors.&lt;br /&gt;
* The XBRL Grab daemon that periodically search for new reports published (We currently support the SEC RSS feed)&lt;br /&gt;
* XBRLizer and XBRLViewer, using the File -&amp;gt; XBRL Database -&amp;gt; Store document into the XBRL Database.&lt;br /&gt;
* All the components above relays on a API component in the library for storing a DTS into the XBRL Database. That API is available from other applications to use.&lt;br /&gt;
&lt;br /&gt;
The XBRL Database can be used from:&lt;br /&gt;
&lt;br /&gt;
* XBRLizer, XBRLviewer and any other API component the File -&amp;gt; Open component has a button to open data from the XBRL Database. The XBRL Database can be used as a proxy for official documents based on the absolute document URI.&lt;br /&gt;
* The Excel functions that access information in XBRL reports using filters.&lt;br /&gt;
* Any other application trying to load information from SQL to another BI (Business Intelligence) system.&lt;br /&gt;
&lt;br /&gt;
==Standard entity model==&lt;br /&gt;
The standard entity model is documented [https://www.reportingstandard.com/pojo/documentation/entities/index.html here].&lt;br /&gt;
&lt;br /&gt;
==User data model==&lt;br /&gt;
The XBRL Database API provides a mechanism to extend the XBRL data model. This allows developers using Reporting Standard XBRL API to create their own data model and tables on top of the XBRL data model and use them as any other tables in the model.&lt;br /&gt;
&lt;br /&gt;
There is more information in the [[How to add classes to the XBRL Database model]] wiki page.&lt;br /&gt;
&lt;br /&gt;
==Navigate==&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRL_API_related_discussions&amp;diff=687</id>
		<title>XBRL API related discussions</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRL_API_related_discussions&amp;diff=687"/>
		<updated>2019-01-08T14:20:12Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==XBRL 2.1 Reporting Standard API==&lt;br /&gt;
&lt;br /&gt;
===Product page===&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/xbrl-2-1-integration-api/?lang=en XBRL API product page]&lt;br /&gt;
&lt;br /&gt;
===Descripcion===&lt;br /&gt;
&lt;br /&gt;
The XBRL API is an object model created on top of the XBRL Specification. The XBRL API has been designed to facilitate the development of user friendly applications or applications that works with XBRL information without having to worry about the complexities of the XBRL syntax and related specifications like XML Schema, XLINK, XPointer etc. Using the XBRL API the user interact with the content of a DTS (XBRL Reports and related metadata in taxonomies and linkbases) using just objects and methods defined in the objects.&lt;br /&gt;
&lt;br /&gt;
Current version of the XBRL API is 2.6.7 and there is ongoing work on version 2.6.8. Changes in the API occurs from time to time in order to add new functionality or reimplement things in order to accelerate execution. The public part of the API is stable and has not suffered any changes in the last year or so.&lt;br /&gt;
&lt;br /&gt;
All Tools from Reporting Standard have been build using Reporting Standard XBRL API.&lt;br /&gt;
&lt;br /&gt;
The API provides access to several components from other libraries like XML Schema aware XPath processing from Saxonica XML processor (License included in Reporting Standard license) or Storage capabilities in relational databases.&lt;br /&gt;
&lt;br /&gt;
===Quick start guide===&lt;br /&gt;
&lt;br /&gt;
This section is a walkthrough describing the required steps in order to start using Reporting Standard XBRL API in your own code. The section is divided in two sub sections; one for Java and another one for .NET development environments&lt;br /&gt;
&lt;br /&gt;
====Java====&lt;br /&gt;
&lt;br /&gt;
The Java version requires Java 1.6 installed and 4Gb of RAM are recommended 2Gb of RAM minimun. A single CPU processor of 1.4 Ghz is minimun but, in order to be able to handle large taxonomies a dual CPU at GHz or more is recommended.&lt;br /&gt;
&lt;br /&gt;
# Download the latest version of Reporting Standard tools from the [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
# Install the tools on your computer&lt;br /&gt;
# Install the license files in the lib folder as indicated in the documentation&lt;br /&gt;
# Create a new Java project and add the following jar libraries to it:&lt;br /&gt;
## The XBRL API in the '''xbrljlib-2.0.jar''' file&lt;br /&gt;
## The dependencies are: '''jdom.jar''', '''commons-logging-1.0.4.jar''', '''log4j-1.2.11.jar''', '''saxon9ee.jar''', '''saxon9-jdom.jar''' and '''resolver.jar'''&lt;br /&gt;
## Reporting Standard license file ('''XBRLlicense.lic''') MUST be available in the classpath of the JVM&lt;br /&gt;
# Take a look at the section describing the environment variables in order to understand how they can be configured in your organization&lt;br /&gt;
# Start coding&lt;br /&gt;
&lt;br /&gt;
====.NET====&lt;br /&gt;
&lt;br /&gt;
# Download the latest version of Reporting Standard tools from the [https://www.reportingstandard.com/downloads/?lang=en downloads page]&lt;br /&gt;
# Install the tools on your computer&lt;br /&gt;
# Install the license files in the lib folder as indicated in the documentation&lt;br /&gt;
# Download the .NET version of the libraries (ask support at reportingstandard dot com for the download URL)&lt;br /&gt;
# Read the section about the environment variables and set them according to your settings. Note there is no Classpath in .NET so the XBRLLIBRARYPATH environment variable is of high importance in .NET environments.&lt;br /&gt;
# Create a new project in, for example, Visual Basic .NET&lt;br /&gt;
# add references to the following DLL files: '''xbrljlib-2.0.dll''', '''IKVM.OpenJDK.Core.dll''', '''IKVM.OpenJDK.Util.dll''', '''IKVM.OpenJDK.XML.API.dll''', '''IKVM.OpenJDK.XML:Parse.dll''', '''IKVM.AWT.WinForms.dll''' and '''IKVM.Runtime.dll'''&lt;br /&gt;
# Please note, other DLLs may be required depending on the application you are using. All of them are in the same directory.&lt;br /&gt;
# Start coding&lt;br /&gt;
&lt;br /&gt;
===Architecture===&lt;br /&gt;
&lt;br /&gt;
The API is organized in logical layers. The lowest layer is considered the syntactical layer of the XML files that are the source of the information. One intermediate layer is the object model that represents the DTS content after resolving relationship prohibitions. A higher layer on top of the previous layer is the output of the XBRL validation rules that operated with the input of the previous later. Each one of the layers are able to detect XBRL errors or errors related to the specific layer, for example, the XML parser will detect and raise errors found on the syntax of the XML files. The XML Schema validation layer will raise XML Schema errors and so on. Information can flow between the layers, for example when you load a DTS from files, the information flows from bottom to top, but when you create an XBRL report programatically and later you call de &amp;lt;tt&amp;gt;save&amp;lt;/tt&amp;gt; method, the information flows from top bottom layers.&lt;br /&gt;
&lt;br /&gt;
===Environment Variables and Java Variables ===&lt;br /&gt;
&lt;br /&gt;
Reporting Standard XBRL API can be configured using environment variables and Java Variables in order to set the location of common components such as the license file and taxonomy catalog files. The following environment variables and java variables are recognized by the XBRL API:&lt;br /&gt;
&lt;br /&gt;
* '''XBRLCATALOGPATH''' This environment variable points to a ; separated list of directories where files with the name '''XBRLCatalog.xml''' exist. Those files must be according to the OASIS XML Catalog syntax convention. For this reason, it is recommended (but not required) that they reference the Catalog.xsd schema. The variable has effect in Windows and Unix, Java and .NET environments. The Windows installer already sets the environment variable and the right value pointing to the directory where the installer has installed the Taxonomy Catalog.&lt;br /&gt;
&lt;br /&gt;
* '''XBRLRSHOME''' This environment variable points to a directory that will be used as the home directory where Reporting Standard applications store user properties that are used to share information across multiple applications (like the information to connect to the XBRL Repository). The Windows installer does not set this environment variable and the API defaults to the user's home directory. The value is used in Windows and Unix, Java and .NET environments. &lt;br /&gt;
&lt;br /&gt;
* '''xbrl.rs.home''' If this java system property exist, it shall point to a directory that will be used instead of the '''XBRLRSHOME''' enviroment variable.&lt;br /&gt;
&lt;br /&gt;
* '''XBRLLIBRARYPATH''' This environment variable points to the directory where Reporting Standard libraries are installed on the system.&lt;br /&gt;
&lt;br /&gt;
Note: the next directory after the directory pointed to by this variables must have a fixed name '''ReportingStandardXBRLTools'''.&lt;br /&gt;
&lt;br /&gt;
There is more information about how the API obtains the path for a user file on the [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/util/RSStaticAndUser.html RSStaticAndUser java class documentation]&lt;br /&gt;
&lt;br /&gt;
===Objects overview===&lt;br /&gt;
&lt;br /&gt;
The starting point for almost anything you want to do with Reporting Standard API requires the creation of a DTSContainer object. See the [https://www.reportingstandard.com/apidoc/com/ihr/xbrl/om/DTSContainer.html  DTSContainer javadoc page] this object will be used for loading a DTS or for creating a new DTS from scratch, performing XBRL validation, etc. &lt;br /&gt;
&lt;br /&gt;
* [[DTSContainer]] wiki page&lt;br /&gt;
&lt;br /&gt;
XBRL Document related objects&lt;br /&gt;
&lt;br /&gt;
* [[XBRLTaxonomy]] wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLLinkbase]] wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLInstance]] wiki page&lt;br /&gt;
&lt;br /&gt;
Simple API Services&lt;br /&gt;
&lt;br /&gt;
* XBRL 2.1 validation [[XBRLCoreProcessor]]&lt;br /&gt;
&lt;br /&gt;
* XBRL Dimensions processor [[XDTProcessor]]&lt;br /&gt;
&lt;br /&gt;
* XBRL Formulas processor [[XBRLFormulaProcessor]]&lt;br /&gt;
&lt;br /&gt;
* XBRL UTR (Universal Type Registry) processor [[XBRLUTR]]&lt;br /&gt;
&lt;br /&gt;
* XBRL Edgar (US SEC Validator) [[EDGAR Validator]]&lt;br /&gt;
&lt;br /&gt;
* Traversing networks of relationships [[DTSExplorer]]&lt;br /&gt;
&lt;br /&gt;
* Exploring the content of XBRL reports [[InstanceExplorer]]&lt;br /&gt;
&lt;br /&gt;
* Getting concept labels [[LabelsProvider]]&lt;br /&gt;
&lt;br /&gt;
* Getting available languages [[LangsProvider]]&lt;br /&gt;
&lt;br /&gt;
Extending the validation engine&lt;br /&gt;
&lt;br /&gt;
* [[The basis of all validation engines]]&lt;br /&gt;
&lt;br /&gt;
* [[XBRLPlugInProcessor]] wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLProcessorFactory]] interface wiki page&lt;br /&gt;
&lt;br /&gt;
* [[XBRLProcessorFactoryBase]] abstract class that implements the [[XBRLProcessorFactory]] interface&lt;br /&gt;
&lt;br /&gt;
=== Related documentation===&lt;br /&gt;
&lt;br /&gt;
[[http://www.xbrl.org/Specification/Infoset/PWD-2009-02-04/infoset-PWD-2009-02-04.html The XBRL Infoset Specification document]] Created by Reporting Standard S.L.&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRLmapper&amp;diff=686</id>
		<title>XBRLmapper</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRLmapper&amp;diff=686"/>
		<updated>2019-01-08T14:15:25Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:XBRLMapperMain.png|thumb|right|XBRL Mapper tool main window]]&lt;br /&gt;
&lt;br /&gt;
==Product page==&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/xbrl-inout-data-mapper/?lang=en XBRL Mapper product page]&lt;br /&gt;
&lt;br /&gt;
[[File:XBRLMapperIcon.png|none|left|XBRL Mapper tool icon]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
XBRLmapper is a sophisticated tool that transfers data from information systems to XBRL reports and from XBRL reports to other systems. It supports then two different purposes:&lt;br /&gt;
&lt;br /&gt;
# Automatic generation of XBRL reports from different data sources&lt;br /&gt;
# Automatic extraction of data from XBRL reports and data loading into different repositories&lt;br /&gt;
&lt;br /&gt;
Both products share a similar architecture. Both are based on a common definition of ''data events'' connected with the XBRL side and specific ''drivers'' that attend the data events. Both sides (''definition of events'', and ''drivers'') can be configured using XML files. This architecture has multiple advantages:&lt;br /&gt;
&lt;br /&gt;
# Isolates the complexity of the XBRL technology in one part (the definition of the data events). If there are changes in the taxonomy, the user may need to change just the definition of the data events&lt;br /&gt;
# Isolates the complexity of the internal data repositories. Each of the data repositories can be accessed by an instantiation of a driver&lt;br /&gt;
# Each driver has its own configuration file&lt;br /&gt;
# Drivers are defined for the repository data format&lt;br /&gt;
# The generation of an XBRL report may involve several drivers looking at data in different repositories simultaneously&lt;br /&gt;
# The same event could be potentially attended by more than one driver if this is required&lt;br /&gt;
# Multiple drivers of the same repository type can be used concurrently&lt;br /&gt;
&lt;br /&gt;
The XBRL mapper is a software component that can be launched from a GUI or can be integrated in a workflow. The integration requires development of code (in Java or .NET) '''Starting with release 2.6.10 of XBRLizer the functionality of the XBRL mapper has been integrated in XBRLizer'''. The Mapper can still be used as a separate software component and integrated into any IT platform as a wervice without a user interface.&lt;br /&gt;
&lt;br /&gt;
==Generating XBRL (Mapper)==&lt;br /&gt;
&lt;br /&gt;
Generating XBRL reports is one of the operations for which the mapper was conceived. In this documentation Mapping is the process of obtaining data from data repositories in order to create an XBRL report.&lt;br /&gt;
&lt;br /&gt;
The XBRL Mapper product designed by Reporting Standard S.L. can be used in the most complex scenarios. The XBRL Mapper is robuts, powerful and flexible.&lt;br /&gt;
&lt;br /&gt;
* Robust because it is based on a native XBRL API that supports 100% Conformance level with XBRL Validation&lt;br /&gt;
* Powerful because it is based on an architecture that allows the users to plug-in drivers prepared to read different data sources and prepare combinations of data sources attending &amp;quot;mapping events&amp;quot;.&lt;br /&gt;
* Flexible because it allows users to easily migrate to new taxonomies by just changing the instance document template but maintaining the same &amp;quot;mapping event&amp;quot; names and driver configurations. Or to adapt the system to obtain data from different data sources while using the same target taxonomy.&lt;br /&gt;
&lt;br /&gt;
The configuration of the mapping engine requires then two steps:&lt;br /&gt;
&lt;br /&gt;
# Preparing an instance document template. This is the definition of &amp;quot;mapping events&amp;quot;&lt;br /&gt;
# Preparing the configuration file for the driver(s) attending &amp;quot;mapping events&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===The instance document template===&lt;br /&gt;
&lt;br /&gt;
The instance document template is the configuration file where the &amp;quot;mapping events&amp;quot; are defined. As the name suggest, the instance document template resembles an XBRL report but it is parameterized in order to turn each fact in a report into a &amp;quot;mapping event&amp;quot;. It is important to notice that while the instance document template may have just one fact for a concept definition in the taxonomy, the response from drivers about requesting data for one mapping event may be multiple facts and, if this is the case, the final output file will have multiple facts as a result of multiple data items for the same mapping event.&lt;br /&gt;
&lt;br /&gt;
The creation of an initial instance document template is a straight forward process that can be initiated from two different sources. The file can be adapted to cover more complex mapping scenarios later.&lt;br /&gt;
&lt;br /&gt;
The [XBRL Template File]] page on this wiki explains the format of the template files and how the user can create their own files for more complex mapping scenarios.&lt;br /&gt;
&lt;br /&gt;
====From a DTS (A set of Taxonomies and Linkbases)====&lt;br /&gt;
&lt;br /&gt;
In this case, the instance document template will be generated according to all concept definitions that exist in the DTS (all taxonomy schemas providing item and tuple definitions for the DTS). If the purpose of the instance document template is just the concepts in a specific presentation hierarchy it would be more interesting preparing a sample instance document and converting the sample report into an instance document template (See the next section).&lt;br /&gt;
&lt;br /&gt;
So, the creation of an instance document template from a complete DTS may generate a template with lots of events. The user should use this option if he is absolutely sure this is the way to go.&lt;br /&gt;
&lt;br /&gt;
Steps to produce the initial template file:&lt;br /&gt;
# Open Loader Editor tool&lt;br /&gt;
# In the &amp;quot;Mapper&amp;quot; menu, select the &amp;quot;New Template from DTS&amp;quot; option&lt;br /&gt;
# In the [[Compose DTS]] dialog, select the required files&lt;br /&gt;
# Make sure there is a template file name in the [[Simple Instance Document Template Dialog|dialog to generate a simple instance document template]]. The file name extension should be (*.xbrlt).&lt;br /&gt;
# Make sure there is one initial data source in the [[Simple Instance Document Template Dialog|dialog to generate a simple instance document template]] (more data sources can be added later).&lt;br /&gt;
# A template will be generated and loaded into the XBRLMapper main window.&lt;br /&gt;
&lt;br /&gt;
====From a sample XBRL report====&lt;br /&gt;
&lt;br /&gt;
In this case, the instance document template will be generated according to the facts that already exist in an XBRL Report. The XBRLMapper tool will take the instance document and will prepare an [[XBRL Template File]] for all facts that exist in the instance.&lt;br /&gt;
&lt;br /&gt;
This process generates a template with just the facts that exist in the instance document provided as a parameter. Hint: if the user wants to create an instance document according to the content of one single presentation linkbase, the user can use the XBRLizer tool in order to generate a sample instance document for the presentation tree and then use that file as input for the process of creating the instance document template.&lt;br /&gt;
&lt;br /&gt;
Steps to produce the initial template file:&lt;br /&gt;
# Open Loader Editor tool&lt;br /&gt;
# In the &amp;quot;Mapper&amp;quot; menu, select the &amp;quot;New Template from Instance&amp;quot; option&lt;br /&gt;
# Find the XBRL Report that must be a local file&lt;br /&gt;
# Make sure there is a template file name in the [[Simple Instance Document Template Dialog|dialog to generate a simple instance document template]]. The file name extension should be (*.xbrlt).&lt;br /&gt;
# Make sure there is one initial data source in the [[Simple Instance Document Template Dialog|dialog to generate a simple instance document template]] (more data sources can be added later).&lt;br /&gt;
# A template will be generated and loaded into the XBRLMapper main window.&lt;br /&gt;
&lt;br /&gt;
====From XBRLizer====&lt;br /&gt;
&lt;br /&gt;
The XBRLizer tool can also be used for generating instance document templates. The process is as follows:&lt;br /&gt;
&lt;br /&gt;
# Open or create a new XBRL report. You can open an existing XBRL report or create a new one directly from the taxonomy.&lt;br /&gt;
# Use the ''File -&amp;gt; Save as Template for mapping'' menu option. This will turn the XBRL report into an XBRL template for mapping.&lt;br /&gt;
&lt;br /&gt;
Optional steps:&lt;br /&gt;
# In you want to map to Excel content, export the report view to Excel as well. This will facilitate the mapping process later because the generated XBRL report will contain a document view that matches the structure of the exported Excel report.&lt;br /&gt;
# Open the generated template in the Excel AddIn for mapping and the exported Excel scheet; then, start doing the mapping process.&lt;br /&gt;
&lt;br /&gt;
In the following link you can get further info about more [[Detailed explanation about Excel mapping process from XBRLizer]].&lt;br /&gt;
&lt;br /&gt;
===Editing instance document templates===&lt;br /&gt;
&lt;br /&gt;
The [[XBRL Template File]] page on this wiki explains the format of the template files and how the user can create their own files for more complex mapping scenarios. For complex mapping scenarios the mapping file needs to be edited in an XML Editor.&lt;br /&gt;
&lt;br /&gt;
===Drivers===&lt;br /&gt;
&lt;br /&gt;
The vast majority of use cases for mapping can be implemented using one of the generic drivers already developed by Reporting Standard S.L. For special use cases it is always possible to develop specific drivers in Java or .NET programming languages&lt;br /&gt;
&lt;br /&gt;
List of available generic drivers:&lt;br /&gt;
* [[Excel data source driver]]&lt;br /&gt;
* [[Google Sheets data source driver]]&lt;br /&gt;
* [[CSV data source driver]]&lt;br /&gt;
* [[Relational database data source driver]]&lt;br /&gt;
* [[XBRL data source driver]]&lt;br /&gt;
* [[Web form data source driver]]&lt;br /&gt;
&lt;br /&gt;
===Running the template===&lt;br /&gt;
&lt;br /&gt;
The [[Mapper engine|Mapper engine wiki page]] contains an explanation about the two modes of operation:&lt;br /&gt;
* as a software component, or&lt;br /&gt;
* called from the XBRLmapper GUI&lt;br /&gt;
&lt;br /&gt;
At this stage we assume the user has already finished the creation of an [[XBRL Template File]] as explained in the previous chapters. In general, the process requires following steps:&lt;br /&gt;
&lt;br /&gt;
# Creating a simple instance document template&lt;br /&gt;
# Create some raw data in Excel and map it&lt;br /&gt;
# Use the XBRLMapper GUI or XBRLizer in order to produce an XBRL report&lt;br /&gt;
&lt;br /&gt;
The process may look hard if it is the first time you do it but remember you are preparing templates and the idea is to reuse the same templates multiple times in the future once the templates and the mapping configuration files are there, the process of producing a new report is much simpler than the first time you go through it.&lt;br /&gt;
&lt;br /&gt;
We continue now with the missing chapters but we are going to link with the relevant chapters also in the specific pages for the drivers.&lt;br /&gt;
&lt;br /&gt;
====Create some raw data in Excel and map====&lt;br /&gt;
&lt;br /&gt;
If you want to see how other drivers works find the explanation in the specific driver page.&lt;br /&gt;
&lt;br /&gt;
First thing you need is the excel XBRL mapping plug-in. This plug-in is able to read the content of an [[XBRL Template File]] and show the user all events suitable to be used from Excel. For installation instruction of the plug-in please contact Reporting Standard.&lt;br /&gt;
&lt;br /&gt;
Press the Load... button and open the [[XBRL Template File]]. Then, open the excel spreadsheet you want to map to XBRL. The mapping can be implemented in two ways:&lt;br /&gt;
* Using excel names for cells (and forcing the creation of names if names do not exists)&lt;br /&gt;
* Using excel cell address of the type Sheet1!C3&lt;br /&gt;
&lt;br /&gt;
Once you have both things open, just select on the right the event to map and drag &amp;amp; drop the name to the cell with the data. The mapping will be stored in the Excel driver configuration file. If you have forced the creation of cell names, at the end of the work you'll have to save both, the excel file and the driver configuration files. If the user has not modified excel because mapping has been created only to cell addresses then the user should just save the configuration file for the mapper.&lt;br /&gt;
&lt;br /&gt;
The advantage of not storing information in the excel spreadsheet is that the same mapping configuration file can be used with new excel spreadsheets without having to do anything else with the excel file. The excel could be generated by an external tool automatically.&lt;br /&gt;
&lt;br /&gt;
The advantage of mapping to cell names rather than cell addresses is that after mapping is finished the user can still add rows and columns to the excel spreadsheet. The mapping will continue working as usual.&lt;br /&gt;
&lt;br /&gt;
====Use the XBRLMapper GUI in order to produce an XBRL report====&lt;br /&gt;
&lt;br /&gt;
This process is explained in the [[Mapper engine|mapper engine wiki page]].&lt;br /&gt;
&lt;br /&gt;
====Using XBRLizer GUI in order to produce an XBRL report====&lt;br /&gt;
&lt;br /&gt;
Open XBRLizer and select the ''File -&amp;gt; Create new XBRL report automatically'' menu option. XBRLizer will ask you for the template to use and will start processing the template. Once the template processing is finished XBRLizer will ask you for data for each one of the drivers in use (Excel files are the source for Excel drivers). Once the information is supplied (Excel data for the Excel drivers) the template will be executed and the new report will appear in the report pane.&lt;br /&gt;
&lt;br /&gt;
There is more information at the [[process of creating an XBRL report from a template]] page&lt;br /&gt;
&lt;br /&gt;
==Moving XBRL data (Loader)==&lt;br /&gt;
&lt;br /&gt;
Reporting Standard offers two alternative ways to store XBRL information.&lt;br /&gt;
* The data loader (described here)&lt;br /&gt;
* The [[XBRL Database]]&lt;br /&gt;
&lt;br /&gt;
The data loader is useful in the following scenarios:&lt;br /&gt;
* The user already has a repository of information and for him, XBRL is just a transitory format to exchange information.&lt;br /&gt;
* The user is not interested in storing all the information that is transmitted in an XBRL report but only in some elements.&lt;br /&gt;
&lt;br /&gt;
===The definition of the loading events===&lt;br /&gt;
&lt;br /&gt;
The XBRL Data loader works using the concept of a data loading event. A data loading event consist of a filter definition that operates on the incoming XBRL report. The user can define the different facets of the filter. Facts that pass the filtering conditions will be automatically send to the apropriate drivers.&lt;br /&gt;
&lt;br /&gt;
===Drivers===&lt;br /&gt;
&lt;br /&gt;
Drivers are responsible of dealing with the storing format. They receive the event from the loading event layer and work with the target format in order to make the data persistent.&lt;br /&gt;
&lt;br /&gt;
An Excel driver, for example, is able to open/create a new excel workbook. Locate the target cell and put the fact value in the destication cell. An SQL Driver is able to write an SQL INSERT statement and populate a table with the incoming data.&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRLmapper&amp;diff=685</id>
		<title>XBRLmapper</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRLmapper&amp;diff=685"/>
		<updated>2019-01-08T14:13:27Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:XBRLMapperMain.png|thumb|right|XBRL Mapper tool main window]]&lt;br /&gt;
&lt;br /&gt;
==Product page==&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/xbrl-inout-data-mapper/?lang=en XBRL Mapper product page]&lt;br /&gt;
&lt;br /&gt;
[[File:XBRLMapperIcon.png|none|left|XBRL Mapper tool icon]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
XBRLmapper is a sophisticated tool that transfers data from information systems to XBRL reports and from XBRL reports to other systems. It supports then two different purposes:&lt;br /&gt;
&lt;br /&gt;
# Automatic generation of XBRL reports from different data sources&lt;br /&gt;
# Automatic extraction of data from XBRL reports and data loading into different repositories&lt;br /&gt;
&lt;br /&gt;
Both products share a similar architecture. Both are based on a common definition of ''data events'' connected with the XBRL side and specific ''drivers'' that attend the data events. Both sides (''definition of events'', and ''drivers'') can be configured using XML files. This architecture has multiple advantages:&lt;br /&gt;
&lt;br /&gt;
# Isolates the complexity of the XBRL technology in one part (the definition of the data events). If there are changes in the taxonomy, the user may need to change just the definition of the data events&lt;br /&gt;
# Isolates the complexity of the internal data repositories. Each of the data repositories can be accessed by an instantiation of a driver&lt;br /&gt;
# Each driver has its own configuration file&lt;br /&gt;
# Drivers are defined for the repository data format&lt;br /&gt;
# The generation of an XBRL report may involve several drivers looking at data in different repositories simultaneously&lt;br /&gt;
# The same event could be potentially attended by more than one driver if this is required&lt;br /&gt;
# Multiple drivers of the same repository type can be used concurrently&lt;br /&gt;
&lt;br /&gt;
The XBRL mapper is a software component that can be launched from a GUI or can be integrated in a workflow. The integration requires development of code (in Java or .NET) '''Starting with release 2.6.10 of XBRLizer the functionality of the XBRL mapper has been integrated in XBRLizer'''. The Mapper can still be used as a separate software component and integrated into any IT platform as a wervice without a user interface.&lt;br /&gt;
&lt;br /&gt;
==Generating XBRL (Mapper)==&lt;br /&gt;
&lt;br /&gt;
Generating XBRL reports is one of the operations for which the mapper was conceived. In this documentation Mapping is the process of obtaining data from data repositories in order to create an XBRL report.&lt;br /&gt;
&lt;br /&gt;
The XBRL Mapper product designed by Reporting Standard S.L. can be used in the most complex scenarios. The XBRL Mapper is robuts, powerful and flexible.&lt;br /&gt;
&lt;br /&gt;
* Robust because it is based on a native XBRL API that supports 100% Conformance level with XBRL Validation&lt;br /&gt;
* Powerful because it is based on an architecture that allows the users to plug-in drivers prepared to read different data sources and prepare combinations of data sources attending &amp;quot;mapping events&amp;quot;.&lt;br /&gt;
* Flexible because it allows users to easily migrate to new taxonomies by just changing the instance document template but maintaining the same &amp;quot;mapping event&amp;quot; names and driver configurations. Or to adapt the system to obtain data from different data sources while using the same target taxonomy.&lt;br /&gt;
&lt;br /&gt;
The configuration of the mapping engine requires then two steps:&lt;br /&gt;
&lt;br /&gt;
# Preparing an instance document template. This is the definition of &amp;quot;mapping events&amp;quot;&lt;br /&gt;
# Preparing the configuration file for the driver(s) attending &amp;quot;mapping events&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===The instance document template===&lt;br /&gt;
&lt;br /&gt;
The instance document template is the configuration file where the &amp;quot;mapping events&amp;quot; are defined. As the name suggest, the instance document template resembles an XBRL report but it is parameterized in order to turn each fact in a report into a &amp;quot;mapping event&amp;quot;. It is important to notice that while the instance document template may have just one fact for a concept definition in the taxonomy, the response from drivers about requesting data for one mapping event may be multiple facts and, if this is the case, the final output file will have multiple facts as a result of multiple data items for the same mapping event.&lt;br /&gt;
&lt;br /&gt;
The creation of an initial instance document template is a straight forward process that can be initiated from two different sources. The file can be adapted to cover more complex mapping scenarios later.&lt;br /&gt;
&lt;br /&gt;
The [XBRL Template File] page on this wiki explains the format of the template files and how the user can create their own files for more complex mapping scenarios.&lt;br /&gt;
&lt;br /&gt;
====From a DTS (A set of Taxonomies and Linkbases)====&lt;br /&gt;
&lt;br /&gt;
In this case, the instance document template will be generated according to all concept definitions that exist in the DTS (all taxonomy schemas providing item and tuple definitions for the DTS). If the purpose of the instance document template is just the concepts in a specific presentation hierarchy it would be more interesting preparing a sample instance document and converting the sample report into an instance document template (See the next section).&lt;br /&gt;
&lt;br /&gt;
So, the creation of an instance document template from a complete DTS may generate a template with lots of events. The user should use this option if he is absolutely sure this is the way to go.&lt;br /&gt;
&lt;br /&gt;
Steps to produce the initial template file:&lt;br /&gt;
# Open Loader Editor tool&lt;br /&gt;
# In the &amp;quot;Mapper&amp;quot; menu, select the &amp;quot;New Template from DTS&amp;quot; option&lt;br /&gt;
# In the [Compose DTS] dialog, select the required files&lt;br /&gt;
# Make sure there is a template file name in the [Simple Instance Document Template Dialog|dialog to generate a simple instance document template]. The file name extension should be (*.xbrlt).&lt;br /&gt;
# Make sure there is one initial data source in the [Simple Instance Document Template Dialog|dialog to generate a simple instance document template] (more data sources can be added later).&lt;br /&gt;
# A template will be generated and loaded into the XBRLMapper main window.&lt;br /&gt;
&lt;br /&gt;
====From a sample XBRL report====&lt;br /&gt;
&lt;br /&gt;
In this case, the instance document template will be generated according to the facts that already exist in an XBRL Report. The XBRLMapper tool will take the instance document and will prepare an [XBRL Template File] for all facts that exist in the instance.&lt;br /&gt;
&lt;br /&gt;
This process generates a template with just the facts that exist in the instance document provided as a parameter. Hint: if the user wants to create an instance document according to the content of one single presentation linkbase, the user can use the XBRLizer tool in order to generate a sample instance document for the presentation tree and then use that file as input for the process of creating the instance document template.&lt;br /&gt;
&lt;br /&gt;
Steps to produce the initial template file:&lt;br /&gt;
# Open Loader Editor tool&lt;br /&gt;
# In the &amp;quot;Mapper&amp;quot; menu, select the &amp;quot;New Template from Instance&amp;quot; option&lt;br /&gt;
# Find the XBRL Report that must be a local file&lt;br /&gt;
# Make sure there is a template file name in the [Simple Instance Document Template Dialog|dialog to generate a simple instance document template]. The file name extension should be (*.xbrlt).&lt;br /&gt;
# Make sure there is one initial data source in the [Simple Instance Document Template Dialog|dialog to generate a simple instance document template] (more data sources can be added later).&lt;br /&gt;
# A template will be generated and loaded into the XBRLMapper main window.&lt;br /&gt;
&lt;br /&gt;
====From XBRLizer====&lt;br /&gt;
&lt;br /&gt;
The XBRLizer tool can also be used for generating instance document templates. The process is as follows:&lt;br /&gt;
&lt;br /&gt;
# Open or create a new XBRL report. You can open an existing XBRL report or create a new one directly from the taxonomy.&lt;br /&gt;
# Use the ''File -&amp;gt; Save as Template for mapping'' menu option. This will turn the XBRL report into an XBRL template for mapping.&lt;br /&gt;
&lt;br /&gt;
Optional steps:&lt;br /&gt;
# In you want to map to Excel content, export the report view to Excel as well. This will facilitate the mapping process later because the generated XBRL report will contain a document view that matches the structure of the exported Excel report.&lt;br /&gt;
# Open the generated template in the Excel AddIn for mapping and the exported Excel scheet; then, start doing the mapping process.&lt;br /&gt;
&lt;br /&gt;
In the following link you can get further info about more [Detailed explanation about Excel mapping process from XBRLizer].&lt;br /&gt;
&lt;br /&gt;
===Editing instance document templates===&lt;br /&gt;
&lt;br /&gt;
The [XBRL Template File] page on this wiki explains the format of the template files and how the user can create their own files for more complex mapping scenarios. For complex mapping scenarios the mapping file needs to be edited in an XML Editor.&lt;br /&gt;
&lt;br /&gt;
===Drivers===&lt;br /&gt;
&lt;br /&gt;
The vast majority of use cases for mapping can be implemented using one of the generic drivers already developed by Reporting Standard S.L. For special use cases it is always possible to develop specific drivers in Java or .NET programming languages&lt;br /&gt;
&lt;br /&gt;
List of available generic drivers:&lt;br /&gt;
* [Excel data source driver]&lt;br /&gt;
* [Google Sheets data source driver]&lt;br /&gt;
* [CSV data source driver]&lt;br /&gt;
* [Relational database data source driver]&lt;br /&gt;
* [XBRL data source driver]&lt;br /&gt;
* [Web form data source driver]&lt;br /&gt;
&lt;br /&gt;
===Running the template===&lt;br /&gt;
&lt;br /&gt;
The [Mapper engine|Mapper engine wiki page] contains an explanation about the two modes of operation:&lt;br /&gt;
* as a software component, or&lt;br /&gt;
* called from the XBRLmapper GUI&lt;br /&gt;
&lt;br /&gt;
At this stage we assume the user has already finished the creation of an [XBRL Template File] as explained in the previous chapters. In general, the process requires following steps:&lt;br /&gt;
&lt;br /&gt;
# Creating a simple instance document template&lt;br /&gt;
# Create some raw data in Excel and map it&lt;br /&gt;
# Use the XBRLMapper GUI or XBRLizer in order to produce an XBRL report&lt;br /&gt;
&lt;br /&gt;
The process may look hard if it is the first time you do it but remember you are preparing templates and the idea is to reuse the same templates multiple times in the future once the templates and the mapping configuration files are there, the process of producing a new report is much simpler than the first time you go through it.&lt;br /&gt;
&lt;br /&gt;
We continue now with the missing chapters but we are going to link with the relevant chapters also in the specific pages for the drivers.&lt;br /&gt;
&lt;br /&gt;
====Create some raw data in Excel and map====&lt;br /&gt;
&lt;br /&gt;
If you want to see how other drivers works find the explanation in the specific driver page.&lt;br /&gt;
&lt;br /&gt;
First thing you need is the excel XBRL mapping plug-in. This plug-in is able to read the content of an [XBRL Template File] and show the user all events suitable to be used from Excel. For installation instruction of the plug-in please contact Reporting Standard.&lt;br /&gt;
&lt;br /&gt;
Press the Load... button and open the [XBRL Template File]. Then, open the excel spreadsheet you want to map to XBRL. The mapping can be implemented in two ways:&lt;br /&gt;
* Using excel names for cells (and forcing the creation of names if names do not exists)&lt;br /&gt;
* Using excel cell address of the type Sheet1!C3&lt;br /&gt;
&lt;br /&gt;
Once you have both things open, just select on the right the event to map and drag &amp;amp; drop the name to the cell with the data. The mapping will be stored in the Excel driver configuration file. If you have forced the creation of cell names, at the end of the work you'll have to save both, the excel file and the driver configuration files. If the user has not modified excel because mapping has been created only to cell addresses then the user should just save the configuration file for the mapper.&lt;br /&gt;
&lt;br /&gt;
The advantage of not storing information in the excel spreadsheet is that the same mapping configuration file can be used with new excel spreadsheets without having to do anything else with the excel file. The excel could be generated by an external tool automatically.&lt;br /&gt;
&lt;br /&gt;
The advantage of mapping to cell names rather than cell addresses is that after mapping is finished the user can still add rows and columns to the excel spreadsheet. The mapping will continue working as usual.&lt;br /&gt;
&lt;br /&gt;
====Use the XBRLMapper GUI in order to produce an XBRL report====&lt;br /&gt;
&lt;br /&gt;
This process is explained in the [Mapper engine|mapper engine wiki page].&lt;br /&gt;
&lt;br /&gt;
====Using XBRLizer GUI in order to produce an XBRL report====&lt;br /&gt;
&lt;br /&gt;
Open XBRLizer and select the ''File -&amp;gt; Create new XBRL report automatically'' menu option. XBRLizer will ask you for the template to use and will start processing the template. Once the template processing is finished XBRLizer will ask you for data for each one of the drivers in use (Excel files are the source for Excel drivers). Once the information is supplied (Excel data for the Excel drivers) the template will be executed and the new report will appear in the report pane.&lt;br /&gt;
&lt;br /&gt;
There is more information at the [process of creating an XBRL report from a template] page&lt;br /&gt;
&lt;br /&gt;
==Moving XBRL data (Loader)==&lt;br /&gt;
&lt;br /&gt;
Reporting Standard offers two alternative ways to store XBRL information.&lt;br /&gt;
* The data loader (described here)&lt;br /&gt;
* The [XBRL Database]&lt;br /&gt;
&lt;br /&gt;
The data loader is useful in the following scenarios:&lt;br /&gt;
* The user already has a repository of information and for him, XBRL is just a transitory format to exchange information.&lt;br /&gt;
* The user is not interested in storing all the information that is transmitted in an XBRL report but only in some elements.&lt;br /&gt;
&lt;br /&gt;
===The definition of the loading events===&lt;br /&gt;
&lt;br /&gt;
The XBRL Data loader works using the concept of a data loading event. A data loading event consist of a filter definition that operates on the incoming XBRL report. The user can define the different facets of the filter. Facts that pass the filtering conditions will be automatically send to the apropriate drivers.&lt;br /&gt;
&lt;br /&gt;
===Drivers===&lt;br /&gt;
&lt;br /&gt;
Drivers are responsible of dealing with the storing format. They receive the event from the loading event layer and work with the target format in order to make the data persistent.&lt;br /&gt;
&lt;br /&gt;
An Excel driver, for example, is able to open/create a new excel workbook. Locate the target cell and put the fact value in the destication cell. An SQL Driver is able to write an SQL INSERT statement and populate a table with the incoming data.&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRLizer&amp;diff=684</id>
		<title>XBRLizer</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRLizer&amp;diff=684"/>
		<updated>2019-01-08T14:09:14Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== XBRLview WIKI ==&lt;br /&gt;
&lt;br /&gt;
===Product page===&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/xbrl-report-editor-xbrlizer/?lang=en XBRL Report Editor product page]&lt;br /&gt;
&lt;br /&gt;
===Descripcion===&lt;br /&gt;
&lt;br /&gt;
XBRLizer is a simple tool to create/edit XBRL reports and review the content of XBRL Taxonomies. &lt;br /&gt;
&lt;br /&gt;
The Report Builder XBRLizer works as a spreadsheet where, clicking on a cell, provides automatically all the necessary information, that is, company’s name, reporting period, associated dimensions, measurement units of currency. All these data can be edited and changed later manually, or the tool will be prompt the user in the case the value is not automatically detected.&lt;br /&gt;
&lt;br /&gt;
XBRLizer can also generate XBRL reports automatically from mapping files created according with the specifications described in this Wiki (Note the Excel Add-In, for example, generates the required files in order to map to the Excel format).&lt;br /&gt;
&lt;br /&gt;
=== Product dialogs ===&lt;br /&gt;
&lt;br /&gt;
* [[XBRLizer main window]]&lt;br /&gt;
* [[Compose DTS]]&lt;br /&gt;
* [[Process of creating an XBRL report from a template]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRLvalid&amp;diff=683</id>
		<title>XBRLvalid</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRLvalid&amp;diff=683"/>
		<updated>2019-01-08T13:25:48Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== XBRLvalid WIKI ==&lt;br /&gt;
&lt;br /&gt;
===Product page===&lt;br /&gt;
&lt;br /&gt;
[https://www.reportingstandard.com/xbrl-2-1-validation-engine/?lang=en XBRL validator Personal Edition product page]&lt;br /&gt;
&lt;br /&gt;
===Descripcion===&lt;br /&gt;
&lt;br /&gt;
XBRLvalid is a simple tool with user interface that executes full XBRL 2.1 validation according to the XBRL 2.1 specification and the rules defined in the XBRL Taxonomies found in the DTS.&lt;br /&gt;
&lt;br /&gt;
This is the description of the XBRL Validation component that is used inside XBRLvalid tool (The Personal Validation tool) and also used by other tools and components in the architecture of Reporting Standard XBRL reporting platform.&lt;br /&gt;
&lt;br /&gt;
Validation is the process of checking the received files (XBRL Report and optionally extensions to the root taxonomy) against the XBRL 2.1 specification. This includes all rules in the XBRL 2.1 specification and defined linkbases. Reporting Standard XBRL is [https://www.reportingstandard.com/xbrl-certified-software/?lang=en certified by XBRL International and XBRL Europe]&lt;br /&gt;
&lt;br /&gt;
Validation can be configured in two operating modes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;1&amp;lt;/nowiki&amp;gt; '''Online validation'''&lt;br /&gt;
:In online validation mode, each received file fires the validation process inmediatelly. This validation mode and can also be configured in two modes:&lt;br /&gt;
:'''1a''') ''Static validation mode''&lt;br /&gt;
::Static validation mode requires the processor to be configured so the taxonomy is loaded when the processor is started. When a new XBRL report is received the validation uses the already loaded taxonomy. Validation under static validation mode takes only tenths of a second. This is the validation mode that XBRLizer uses when a new XBRL report is being edited. &lt;br /&gt;
::Static validation mode has the following two limitations:&lt;br /&gt;
::* The DTSs cannot be extended by the Reporting Institutions (requires closed reporting environments)&lt;br /&gt;
::* All the possible DTSs must be known at the time the processor is configured.&lt;br /&gt;
::During the static validation mode, the processor first recognizes the DTS that would be loaded from the XBRL report. Then, it search for a DTS already loaded that matches the DTS defined in the XBRL report.&lt;br /&gt;
::It is possible defining only some static scenarios and one dynamic scenario. The processor will fall back to dynamic mode if none of the static scenarios matches the instance document that is going to be validated.&lt;br /&gt;
:'''1b''') ''Dynamic validation mode''&lt;br /&gt;
::In Dynamic validation mode the DTS is dynamically loaded from the XBRL report each time the report is going to be validated. Validation takes longer but in some scenarios this is the only way to perform validation. This is also the validation mode available in the Personal Validation Engine that has a GUI interface. This is the case when the Reporting Institutions have the capability of extending the root Taxonomy. If validation takes longer than 2 or 3 seconds then Offline (batch) validation mode would be the best option.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;2&amp;lt;/nowiki&amp;gt; '''Offline (batch) validation'''&lt;br /&gt;
:In offline (batch) validation, the reception subsystem just tells the user that the validation process has been started and that he will receive an email with the validation result. The validation can be configured to be started in a separate thread that will finish sending an email to the user who submitted the report to the validation process.&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRLvalid&amp;diff=682</id>
		<title>XBRLvalid</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRLvalid&amp;diff=682"/>
		<updated>2019-01-08T13:25:16Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== XBRLvalid WIKI ==&lt;br /&gt;
&lt;br /&gt;
===Product page===&lt;br /&gt;
&lt;br /&gt;
[[https://www.reportingstandard.com/xbrl-2-1-validation-engine/?lang=en XBRL validator Personal Edition product page]]&lt;br /&gt;
&lt;br /&gt;
===Descripcion===&lt;br /&gt;
&lt;br /&gt;
XBRLvalid is a simple tool with user interface that executes full XBRL 2.1 validation according to the XBRL 2.1 specification and the rules defined in the XBRL Taxonomies found in the DTS.&lt;br /&gt;
&lt;br /&gt;
This is the description of the XBRL Validation component that is used inside XBRLvalid tool (The Personal Validation tool) and also used by other tools and components in the architecture of Reporting Standard XBRL reporting platform.&lt;br /&gt;
&lt;br /&gt;
Validation is the process of checking the received files (XBRL Report and optionally extensions to the root taxonomy) against the XBRL 2.1 specification. This includes all rules in the XBRL 2.1 specification and defined linkbases. Reporting Standard XBRL is [[https://www.reportingstandard.com/xbrl-certified-software/?lang=en certified by XBRL International and XBRL Europe]]&lt;br /&gt;
&lt;br /&gt;
Validation can be configured in two operating modes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;1&amp;lt;/nowiki&amp;gt; '''Online validation'''&lt;br /&gt;
:In online validation mode, each received file fires the validation process inmediatelly. This validation mode and can also be configured in two modes:&lt;br /&gt;
:'''1a''') ''Static validation mode''&lt;br /&gt;
::Static validation mode requires the processor to be configured so the taxonomy is loaded when the processor is started. When a new XBRL report is received the validation uses the already loaded taxonomy. Validation under static validation mode takes only tenths of a second. This is the validation mode that XBRLizer uses when a new XBRL report is being edited. &lt;br /&gt;
::Static validation mode has the following two limitations:&lt;br /&gt;
::* The DTSs cannot be extended by the Reporting Institutions (requires closed reporting environments)&lt;br /&gt;
::* All the possible DTSs must be known at the time the processor is configured.&lt;br /&gt;
::During the static validation mode, the processor first recognizes the DTS that would be loaded from the XBRL report. Then, it search for a DTS already loaded that matches the DTS defined in the XBRL report.&lt;br /&gt;
::It is possible defining only some static scenarios and one dynamic scenario. The processor will fall back to dynamic mode if none of the static scenarios matches the instance document that is going to be validated.&lt;br /&gt;
:'''1b''') ''Dynamic validation mode''&lt;br /&gt;
::In Dynamic validation mode the DTS is dynamically loaded from the XBRL report each time the report is going to be validated. Validation takes longer but in some scenarios this is the only way to perform validation. This is also the validation mode available in the Personal Validation Engine that has a GUI interface. This is the case when the Reporting Institutions have the capability of extending the root Taxonomy. If validation takes longer than 2 or 3 seconds then Offline (batch) validation mode would be the best option.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;2&amp;lt;/nowiki&amp;gt; '''Offline (batch) validation'''&lt;br /&gt;
:In offline (batch) validation, the reception subsystem just tells the user that the validation process has been started and that he will receive an email with the validation result. The validation can be configured to be started in a separate thread that will finish sending an email to the user who submitted the report to the validation process.&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRLview&amp;diff=681</id>
		<title>XBRLview</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRLview&amp;diff=681"/>
		<updated>2019-01-08T13:21:55Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== XBRLview WIKI ==&lt;br /&gt;
&lt;br /&gt;
===Product page===&lt;br /&gt;
&lt;br /&gt;
[[https://www.reportingstandard.com/xbrl-report-viewer/?lang=en XBRL Instance viewer product page]]&lt;br /&gt;
&lt;br /&gt;
===Descripcion===&lt;br /&gt;
&lt;br /&gt;
XBRLview is a simple tool to access to the content of an XBRL report and metadata in the related XBRL taxonomies. &lt;br /&gt;
&lt;br /&gt;
XBRL reports are pure XML files and, despite XML files are text files, it is difficult (or impossible) trying to understand an XML report if you just look at it using XML related tools.&lt;br /&gt;
&lt;br /&gt;
Even more, The best thing about XBRL is how the technology is able to link the report content with the meta-data that can be found in the taxonomy. This metadata mainly consist on relationships with other concepts (presentacion, calculation, etc) or labels in different languages or references to normative documentation.&lt;br /&gt;
&lt;br /&gt;
XBRLview allows you represent the content of an XBRL report using the metadata available in the taxonomy. That is, the information in the presentation linkbases in order to structure the report content. The information on the fact context, in order to classify the relative dependency of a fact inside another fact. The content model of the Tuples in order to represent what is there, the labels and the user preferences regarding the languages he understand etc.&lt;br /&gt;
&lt;br /&gt;
XBRL technology was not designed as a replacement of PDF or web pages. The idea behind XBRL is to exchange data not to define an alternative format to represent data. For this reason you may find difficulties comparing a nice rendered PDF document with an XBRL report. The differene is in the usability of the information transmitted. In a PDF report the information is usable for humans who either print it or read it with his eyes. The usability of an XBRL report is computer oriented (see how XBRL reports can be stored in an XBRL Database in order to facilitate data research [[http://www.xbrl4.org/regulators/ExploreXBRL.html The XBRL Explorer]] as an example.&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=XBRLview&amp;diff=680</id>
		<title>XBRLview</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=XBRLview&amp;diff=680"/>
		<updated>2019-01-08T13:21:28Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== XBRLview WIKI ==&lt;br /&gt;
&lt;br /&gt;
===Product page===&lt;br /&gt;
&lt;br /&gt;
[[https://www.reportingstandard.com/xbrl-report-viewer/?lang=en XBRL Instance viewer product page]]&lt;br /&gt;
&lt;br /&gt;
===Descripcion===&lt;br /&gt;
&lt;br /&gt;
XBRLview is a simple tool to access to the content of an XBRL report and metadata in the related XBRL taxonomies. &lt;br /&gt;
&lt;br /&gt;
XBRL reports are pure XML files and, despite XML files are text files, it is difficult (or impossible) trying to understand an XML report if you just look at it using XML related tools.&lt;br /&gt;
&lt;br /&gt;
Even more, The best thing about XBRL is how the technology is able to link the report content with the meta-data that can be found in the taxonomy. This metadata mainly consist on relationships with other concepts (presentacion, calculation, etc) or labels in different languages or references to normative documentation.&lt;br /&gt;
&lt;br /&gt;
XBRLview allows you represent the content of an XBRL report using the metadata available in the taxonomy. That is, the information in the presentation linkbases in order to structure the report content. The information on the fact context, in order to classify the relative dependency of a fact inside another fact. The content model of the Tuples in order to represent what is there, the labels and the user preferences regarding the languages he understand etc.&lt;br /&gt;
&lt;br /&gt;
XBRL technology was not designed as a replacement of PDF or web pages. The idea behind XBRL is to exchange data not to define an alternative format to represent data. For this reason you may find difficulties comparing a nice rendered PDF document with an XBRL report. The differene is in the usability of the information transmitted. In a PDF report the information is usable for humans who either print it or read it with his eyes. The usability of an XBRL report is computer oriented (see how XBRL reports can be stored in an XBRL Database in order to facilitate data research [[http://www.xbrl4.org/regulators/ExploreXBRL.html The XBRL Explorer]] as an example.&lt;br /&gt;
&lt;br /&gt;
===Navigate===&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Taxonomy_Builder&amp;diff=679</id>
		<title>Taxonomy Builder</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Taxonomy_Builder&amp;diff=679"/>
		<updated>2019-01-08T13:09:46Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:DTSBuilderLogo.png|thumb|right|DTS Builder What it is]]&lt;br /&gt;
&lt;br /&gt;
==Product page==&lt;br /&gt;
&lt;br /&gt;
[[https://www.reportingstandard.com/xbrl-taxonomy-builder/?lang=en DTS Builder product page]]&lt;br /&gt;
&lt;br /&gt;
[[File:DTSBuilder.png|none|left|DTSBuilder tool icon]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
The DTS Builder from Excel file is a tool that converts Excel files into XBRL Taxonomies. Reporting Standard believes that Excel + the Taxonomy Definition language developed by Reporting Standard is the perfect combination for taxonomy building in all possible scenarios as has been demonstrated all around the globe in several projects in different countries.&lt;br /&gt;
&lt;br /&gt;
The following sections in the wiki are an introduction via examples to the capabilities of the DTS Definition Language and the implementation in Excel.&lt;br /&gt;
&lt;br /&gt;
These are the main characteristics of the DTS Builder:&lt;br /&gt;
# Allows users to create base taxonomies and taxonomy extensions of existing taxonomies&lt;br /&gt;
# Provides a complete isolation between the metadata that will be stored in the taxonomy (called the information model) and the taxonomy modularization. The Business and technical sides of a taxonomy development project are considered separately&lt;br /&gt;
# It is possible to gather all data for the development of the taxonomy using a business user interface (Excel base) and prepare different modularization approaches for the same meta-data without any change in the meta-data itself&lt;br /&gt;
# Supports the creation of taxonomy schemas, namespaces, prefixes, XBRL concept definitions, XBRL Tuple definitions, XML concept definitions, standard presentation linkbases, standard calculation linkbases, standard label linkbases, standard reference linkbases and standard dimensions linkbases&lt;br /&gt;
# It utilizes business views over the metadata as, for example, Data Matrix schema for the development of multidimensional information. Regular indentation for parent-child relationships in the presentation linkbases, simple Excel formulae for the calculation linkbase, labels for concept definitions to define the preferred label in the presentation linkase etc. This simplifies the development of the taxonomy by allowing non technical people to use advances XBRL features easily&lt;br /&gt;
# Provides a high level of consistency rules implemented in order to detect possible inconsistencies in the information model&lt;br /&gt;
# Provides a mechanism for error detections (true inconsistencies) found during the taxonomy development phase&lt;br /&gt;
# Reduces the risks of creating inconsistencies in the taxonomy development&lt;br /&gt;
# Reduces the amount of time required for taxonomy testing&lt;br /&gt;
# Reduces the development time&lt;br /&gt;
# Reduces the dependency of the XBRL experts during the taxonomy development&lt;br /&gt;
&lt;br /&gt;
==Benefits of using Excel rather than a general purpose Taxonomy Editor==&lt;br /&gt;
&lt;br /&gt;
Among several benefits, here are just a few of them:&lt;br /&gt;
# Excel is a flexible data container. The user is free to add documentation, colors, formulas and whatever the user considers for the purpose of better documenting and keep track of the issues during the taxonomy development phase.&lt;br /&gt;
# Excel files are understandable by XBRL experts and non XBRL experts. This means that non XBRL Experts but business experts can provide useful feedback during a Taxonomy development project.&lt;br /&gt;
# The implementation defined by Reporting Standard is based on two things: common table structures and a DTS definition language that allows technical experts to do even more things that they can do with other taxonomy editors in the markets&lt;br /&gt;
# The Excel Based Taxonomy Builder is the most simple and flexible way to develop high quality XBRL taxonomies as it allows you to be consistent in your taxonomy creation and concentrate in the important things rather than in the geeck technical details that provides no value&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
&lt;br /&gt;
# The starting point could be the presentation forms for the Primary Financial Statements (the balance sheet, profit and loss, changes in equity, etc…)&lt;br /&gt;
# Then, put them in Excel, each one in a new sheet. Preferably in column “C” (in order to add a column for numbers on the left Column “B” and some space on Column “A”, but the columns are not important as the instructions can read the required information from any other column of your choice.&lt;br /&gt;
# Document presentation structures (presentation relationships) using indentation on the text at column “C”&lt;br /&gt;
# Now go row by row, identifying if an existing concept already exist in the “parent” taxonomies. It is a good idea creating a single file called “parentDTSEntryPoint.xsd” that will load everything that is in the parent DTS (and cannot be discovered by the rules of the DTS Discovery). For example; If you just add IFRSFullEntryPoint.xsd this is fine. If you wish to add labels in another languages you would have to create a new entry point and include the full entry point and the label links for that language as the standard full entry point for IFRS only includes labels in English.&lt;br /&gt;
## Annotate the concept prefix in column “E” and the element name in column “F”. For elements that DO NOT EXIST on the parent taxonomy we will create our own concept definitions later in a concepts definition table. Just put there a prefix of your choice and an element name of your choice too. Element prefixes and names MUST satisfy the rules of XML Schema element names. It is a good practice you change the color of the elements defined in your taxonomy so it will be easier to identify all them later.&lt;br /&gt;
## Make sure the human readable text used in column “C” exactly matches with existing labels used in the parent taxonomies and included in the entry point created in point 4. The tool automatically recognizes the use of “preferred labels” but in order to do so, a label MUST already exist for the concept definition as represented in Excel. For new concept definitions, make sure there is a labels links created inside a labels linkbase before the presentation linkbase is created.&lt;br /&gt;
# Add a column for element numbers at column “B”. You can use auto numbering 10 by 10 or whatever numbers you wish.&lt;br /&gt;
# Create new concept definition table for new concepts all marked in a different color (in a different sheet or in the same sheet… it is up to you).&lt;br /&gt;
# Add the labels using a column per role right to the concept definitions.&lt;br /&gt;
# Document calculation linkbases in column “D” using either the assigned numbers or concatenating the numbers in the rows.&lt;br /&gt;
# Now add dimensions in columns G,H … one column per dimension an element may be reported with. The dimension members for a particular primary item will be documented later in a separate part of the excel spreadsheet.&lt;br /&gt;
# … depending on what your needs are, pay attention to other instructions and what other instructions input data is and require to be documented in the Excel sheets…&lt;br /&gt;
&lt;br /&gt;
At whatever moment, after point 7 in the previous list is finished, the technical team can start creating the DTS sheet content.&lt;br /&gt;
&lt;br /&gt;
# Start with a VERSION instruction. Use version 2 as this is the latest one and includes all functionality of version 1.&lt;br /&gt;
# Remember to add NOP instructions in order to create “parameters” that will be used later by another instructions. For example the output directory names etc. It is a good practice assigning a cell name to the cell with the value. Later you will use =’name’ in order to use the cell value.&lt;br /&gt;
# Use one LOAD instruction in order to load the entry point defined at point 4 after the VERSION instruction.&lt;br /&gt;
# Start creating BOT-EOT instruction blocks and inside that BOT instructions put the required BOL-EOL instruction blocks.&lt;br /&gt;
# It is a good practice start the taxonomy files in the following order:&lt;br /&gt;
## Schemas for concept definitions.&lt;br /&gt;
## Add the required linkbases to them. Labels and References should be attached to the concept definitions (experiment with embedded linkbases at this point as the labels and references will always be used)&lt;br /&gt;
# Now start defining an xsd schema for each one of the PFSs defined in different sheets. There is no need to IMPORT the concepts taxonomy as it will be added by the linkbases using concepts in that schema.&lt;br /&gt;
&lt;br /&gt;
==Tool detailed documentation==&lt;br /&gt;
&lt;br /&gt;
A copy of the PDF document is installed in your hard drive when you install the core Reporting Standard Tools.&lt;br /&gt;
&lt;br /&gt;
Reporting Standard has created a wiki page for the documentation of the [[DTS Definition Language]]. where the latest information about the instructions will be always available.&lt;br /&gt;
&lt;br /&gt;
==Navigate==&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Taxonomy_Builder&amp;diff=678</id>
		<title>Taxonomy Builder</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Taxonomy_Builder&amp;diff=678"/>
		<updated>2019-01-08T12:50:04Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:DTSBuilderLogo.png|thumb|right|DTS Builder What it is]]&lt;br /&gt;
&lt;br /&gt;
==Product page==&lt;br /&gt;
&lt;br /&gt;
[[https://www.reportingstandard.com/xbrl-taxonomy-builder/?lang=en DTS Builder product page]]&lt;br /&gt;
&lt;br /&gt;
[[File:DTSBuilder.png|none|left|DTSBuilder tool icon]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
The DTS Builder from Excel file is a tool that converts Excel files into XBRL Taxonomies. Reporting Standard believes that Excel + the Taxonomy Definition language developed by Reporting Standard is the perfect combination for taxonomy building in all possible scenarios as has been demonstrated all around the globe in several projects in different countries.&lt;br /&gt;
&lt;br /&gt;
The following sections in the wiki are an introduction via examples to the capabilities of the DTS Definition Language and the implementation in Excel.&lt;br /&gt;
&lt;br /&gt;
These are the main characteristics of the DTS Builder:&lt;br /&gt;
# Allows users to create base taxonomies and taxonomy extensions of existing taxonomies&lt;br /&gt;
# Provides a complete isolation between the metadata that will be stored in the taxonomy (called the information model) and the taxonomy modularization. The Business and technical sides of a taxonomy development project are considered separately&lt;br /&gt;
# It is possible to gather all data for the development of the taxonomy using a business user interface (Excel base) and prepare different modularization approaches for the same meta-data without any change in the meta-data itself&lt;br /&gt;
# Supports the creation of taxonomy schemas, namespaces, prefixes, XBRL concept definitions, XBRL Tuple definitions, XML concept definitions, standard presentation linkbases, standard calculation linkbases, standard label linkbases, standard reference linkbases and standard dimensions linkbases&lt;br /&gt;
# It utilizes business views over the metadata as, for example, Data Matrix schema for the development of multidimensional information. Regular indentation for parent-child relationships in the presentation linkbases, simple Excel formulae for the calculation linkbase, labels for concept definitions to define the preferred label in the presentation linkase etc. This simplifies the development of the taxonomy by allowing non technical people to use advances XBRL features easily&lt;br /&gt;
# Provides a high level of consistency rules implemented in order to detect possible inconsistencies in the information model&lt;br /&gt;
# Provides a mechanism for error detections (true inconsistencies) found during the taxonomy development phase&lt;br /&gt;
# Reduces the risks of creating inconsistencies in the taxonomy development&lt;br /&gt;
# Reduces the amount of time required for taxonomy testing&lt;br /&gt;
# Reduces the development time&lt;br /&gt;
# Reduces the dependency of the XBRL experts during the taxonomy development&lt;br /&gt;
&lt;br /&gt;
==Benefits of using Excel rather than a general purpose Taxonomy Editor==&lt;br /&gt;
&lt;br /&gt;
Among several benefits, here are just a few of them:&lt;br /&gt;
# Excel is a flexible data container. The user is free to add documentation, colors, formulas and whatever the user considers for the purpose of better documenting and keep track of the issues during the taxonomy development phase.&lt;br /&gt;
# Excel files are understandable by XBRL experts and non XBRL experts. This means that non XBRL Experts but business experts can provide useful feedback during a Taxonomy development project.&lt;br /&gt;
# The implementation defined by Reporting Standard is based on two things: common table structures and a DTS definition language that allows technical experts to do even more things that they can do with other taxonomy editors in the markets&lt;br /&gt;
# The Excel Based Taxonomy Builder is the most simple and flexible way to develop high quality XBRL taxonomies as it allows you to be consistent in your taxonomy creation and concentrate in the important things rather than in the geeck technical details that provides no value&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
&lt;br /&gt;
# The starting point could be the presentation forms for the Primary Financial Statements (the balance sheet, profit and loss, changes in equity, etc…)&lt;br /&gt;
# Then, put them in Excel, each one in a new sheet. Preferably in column “C” (in order to add a column for numbers on the left Column “B” and some space on Column “A”, but the columns are not important as the instructions can read the required information from any other column of your choice.&lt;br /&gt;
# Document presentation structures (presentation relationships) using indentation on the text at column “C”&lt;br /&gt;
# Now go row by row, identifying if an existing concept already exist in the “parent” taxonomies. It is a good idea creating a single file called “parentDTSEntryPoint.xsd” that will load everything that is in the parent DTS (and cannot be discovered by the rules of the DTS Discovery). For example; If you just add IFRSFullEntryPoint.xsd this is fine. If you wish to add labels in another languages you would have to create a new entry point and include the full entry point and the label links for that language as the standard full entry point for IFRS only includes labels in English.&lt;br /&gt;
## Annotate the concept prefix in column “E” and the element name in column “F”. For elements that DO NOT EXIST on the parent taxonomy we will create our own concept definitions later in a concepts definition table. Just put there a prefix of your choice and an element name of your choice too. Element prefixes and names MUST satisfy the rules of XML Schema element names. It is a good practice you change the color of the elements defined in your taxonomy so it will be easier to identify all them later.&lt;br /&gt;
## Make sure the human readable text used in column “C” exactly matches with existing labels used in the parent taxonomies and included in the entry point created in point 4. The tool automatically recognizes the use of “preferred labels” but in order to do so, a label MUST already exist for the concept definition as represented in Excel. For new concept definitions, make sure there is a labels links created inside a labels linkbase before the presentation linkbase is created.&lt;br /&gt;
# Add a column for element numbers at column “B”. You can use auto numbering 10 by 10 or whatever numbers you wish.&lt;br /&gt;
# Create new concept definition table for new concepts all marked in a different color (in a different sheet or in the same sheet… it is up to you).&lt;br /&gt;
# Add the labels using a column per role right to the concept definitions.&lt;br /&gt;
# Document calculation linkbases in column “D” using either the assigned numbers or concatenating the numbers in the rows.&lt;br /&gt;
# Now add dimensions in columns G,H … one column per dimension an element may be reported with. The dimension members for a particular primary item will be documented later in a separate part of the excel spreadsheet.&lt;br /&gt;
# … depending on what your needs are, pay attention to other instructions and what other instructions input data is and require to be documented in the Excel sheets…&lt;br /&gt;
&lt;br /&gt;
At whatever moment, after point 7 in the previous list is finished, the technical team can start creating the DTS sheet content.&lt;br /&gt;
&lt;br /&gt;
# Start with a VERSION instruction. Use version 2 as this is the latest one and includes all functionality of version 1.&lt;br /&gt;
# Remember to add NOP instructions in order to create “parameters” that will be used later by another instructions. For example the output directory names etc. It is a good practice assigning a cell name to the cell with the value. Later you will use =’name’ in order to use the cell value.&lt;br /&gt;
# Use one LOAD instruction in order to load the entry point defined at point 4 after the VERSION instruction.&lt;br /&gt;
# Start creating BOT-EOT instruction blocks and inside that BOT instructions put the required BOL-EOL instruction blocks.&lt;br /&gt;
# It is a good practice start the taxonomy files in the following order:&lt;br /&gt;
## Schemas for concept definitions.&lt;br /&gt;
## Add the required linkbases to them. Labels and References should be attached to the concept definitions (experiment with embedded linkbases at this point as the labels and references will always be used)&lt;br /&gt;
# Now start defining an xsd schema for each one of the PFSs defined in different sheets. There is no need to IMPORT the concepts taxonomy as it will be added by the linkbases using concepts in that schema.&lt;br /&gt;
&lt;br /&gt;
==Tool detailed documentation==&lt;br /&gt;
&lt;br /&gt;
The User's Manual can be downloaded directly from this URL:&lt;br /&gt;
[[http://www.reportingstandard.com/Taxonomy_Builder_Users_Manual_EN.pdf http://www.reportingstandard.com/Taxonomy_Builder_Users_Manual_EN.pdf]]&lt;br /&gt;
&lt;br /&gt;
A copy of the PDF document is installed in your hard drive when you install the core Reporting Standard Tools.&lt;br /&gt;
&lt;br /&gt;
Reporting Standard has created a wiki page for the documentation of the [[DTS Definition Language]]. where the latest information about the instructions will be always available.&lt;br /&gt;
&lt;br /&gt;
==Navigate==&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Taxonomy_Builder&amp;diff=677</id>
		<title>Taxonomy Builder</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Taxonomy_Builder&amp;diff=677"/>
		<updated>2019-01-08T12:45:56Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:DTSBuilderLogo.png|thumb|right|DTS Builder What it is]]&lt;br /&gt;
&lt;br /&gt;
==Product page==&lt;br /&gt;
&lt;br /&gt;
[[https://www.reportingstandard.com/xbrl-taxonomy-builder/?lang=en DTS Builder product page]]&lt;br /&gt;
&lt;br /&gt;
[[File:DTSBuilder.png|none|left|DTSBuilder tool icon]]&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
The DTS Builder from Excel file is a tool that converts Excel files into XBRL Taxonomies. Reporting Standard believes that Excel + the Taxonomy Definition language developed by Reporting Standard is the perfect combination for taxonomy building in all possible scenarios as has been demonstrated all around the globe in several projects in different countries.&lt;br /&gt;
&lt;br /&gt;
The following sections in the wiki are an introduction via examples to the capabilities of the DTS Definition Language and the implementation in Excel.&lt;br /&gt;
&lt;br /&gt;
These are the main characteristics of the DTS Builder:&lt;br /&gt;
# Allows users to create base taxonomies and taxonomy extensions of existing taxonomies&lt;br /&gt;
# Provides a complete isolation between the metadata that will be stored in the taxonomy (called the information model) and the taxonomy modularization. The Business and technical sides of a taxonomy development project are considered separately&lt;br /&gt;
# It is possible to gather all data for the development of the taxonomy using a business user interface (Excel base) and prepare different modularization approaches for the same meta-data without any change in the meta-data itself&lt;br /&gt;
# Supports the creation of taxonomy schemas, namespaces, prefixes, XBRL concept definitions, XBRL Tuple definitions, XML concept definitions, standard presentation linkbases, standard calculation linkbases, standard label linkbases, standard reference linkbases and standard dimensions linkbases&lt;br /&gt;
# It utilizes business views over the metadata as, for example, Data Matrix schema for the development of multidimensional information. Regular indentation for parent-child relationships in the presentation linkbases, simple Excel formulae for the calculation linkbase, labels for concept definitions to define the preferred label in the presentation linkase etc. This simplifies the development of the taxonomy by allowing non technical people to use advances XBRL features easily&lt;br /&gt;
# Provides a high level of consistency rules implemented in order to detect possible inconsistencies in the information model&lt;br /&gt;
# Provides a mechanism for error detections (true inconsistencies) found during the taxonomy development phase&lt;br /&gt;
# Reduces the risks of creating inconsistencies in the taxonomy development&lt;br /&gt;
# Reduces the amount of time required for taxonomy testing&lt;br /&gt;
# Reduces the development time&lt;br /&gt;
# Reduces the dependency of the XBRL experts during the taxonomy development&lt;br /&gt;
&lt;br /&gt;
==Benefits of using Excel rather than a general purpose Taxonomy Editor==&lt;br /&gt;
&lt;br /&gt;
Among several benefits, here are just a few of them:&lt;br /&gt;
# Excel is a flexible data container. The user is free to add documentation, colors, formulas and whatever the user considers for the purpose of better documenting and keep track of the issues during the taxonomy development phase.&lt;br /&gt;
# Excel files are understandable by XBRL experts and non XBRL experts. This means that non XBRL Experts but business experts can provide useful feedback during a Taxonomy development project.&lt;br /&gt;
# The implementation defined by Reporting Standard is based on two things: common table structures and a DTS definition language that allows technical experts to do even more things that they can do with other taxonomy editors in the markets&lt;br /&gt;
# The Excel Based Taxonomy Builder is the most simple and flexible way to develop high quality XBRL taxonomies as it allows you to be consistent in your taxonomy creation and concentrate in the important things rather than in the geeck technical details that provides no value&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
&lt;br /&gt;
During this on line training we are going to create a taxonomy for Google financial statemens as they are published in Google web site.&lt;br /&gt;
&lt;br /&gt;
Download the [[http://www.reportingstandard.com/GoogleExample.xls Google.xls]] Excel spreadsheet that contains the taxonomy definition.&lt;br /&gt;
&lt;br /&gt;
* The Excel document contains 4 sheets, but only 3 contains relevant data for the taxonomy building process. Excel allows the user to add additional sheets for documentation purposes. The user can also use coloring on cells and formulas in order to build the taxonomy in a consistent manner. We will see examples on this later.&lt;br /&gt;
** The Documentation sheet contains just documentation&lt;br /&gt;
** The Main sheet contains the presentation, calculation and definition (dimensions) linkbases&lt;br /&gt;
** The Concepts sheet contains a table with concept definitions that are referenced in other places like the Main sheet.&lt;br /&gt;
** The DTS sheet contains the DTS definition language.&lt;br /&gt;
* The DTS definition language is where the tool starts building the Taxonomy.&lt;br /&gt;
&lt;br /&gt;
The [[DTS Definition Language]] is a instructions based language where an instruction identifies something to do. Some instructions encapsulate other instructions as it is the case of the BOT (Beginning Of Taxonomy) - EOF (End of Taxonomy) instructions. Some instruction have parameters and the instruction and the parameters gives the user the possibility of structuring the Excel content in the way the user wants (there is no need to have a Concepts sheet or a Main sheet on every taxonomy definition, the example contains those sheets because the DTS sheet refers to them)&lt;br /&gt;
&lt;br /&gt;
==Methodology==&lt;br /&gt;
&lt;br /&gt;
# The starting point could be the presentation forms for the Primary Financial Statements (the balance sheet, profit and loss, changes in equity, etc…)&lt;br /&gt;
# Then, put them in Excel, each one in a new sheet. Preferably in column “C” (in order to add a column for numbers on the left Column “B” and some space on Column “A”, but the columns are not important as the instructions can read the required information from any other column of your choice.&lt;br /&gt;
# Document presentation structures (presentation relationships) using indentation on the text at column “C”&lt;br /&gt;
# Now go row by row, identifying if an existing concept already exist in the “parent” taxonomies. It is a good idea creating a single file called “parentDTSEntryPoint.xsd” that will load everything that is in the parent DTS (and cannot be discovered by the rules of the DTS Discovery). For example; If you just add IFRSFullEntryPoint.xsd this is fine. If you wish to add labels in another languages you would have to create a new entry point and include the full entry point and the label links for that language as the standard full entry point for IFRS only includes labels in English.&lt;br /&gt;
## Annotate the concept prefix in column “E” and the element name in column “F”. For elements that DO NOT EXIST on the parent taxonomy we will create our own concept definitions later in a concepts definition table. Just put there a prefix of your choice and an element name of your choice too. Element prefixes and names MUST satisfy the rules of XML Schema element names. It is a good practice you change the color of the elements defined in your taxonomy so it will be easier to identify all them later.&lt;br /&gt;
## Make sure the human readable text used in column “C” exactly matches with existing labels used in the parent taxonomies and included in the entry point created in point 4. The tool automatically recognizes the use of “preferred labels” but in order to do so, a label MUST already exist for the concept definition as represented in Excel. For new concept definitions, make sure there is a labels links created inside a labels linkbase before the presentation linkbase is created.&lt;br /&gt;
# Add a column for element numbers at column “B”. You can use auto numbering 10 by 10 or whatever numbers you wish.&lt;br /&gt;
# Create new concept definition table for new concepts all marked in a different color (in a different sheet or in the same sheet… it is up to you).&lt;br /&gt;
# Add the labels using a column per role right to the concept definitions.&lt;br /&gt;
# Document calculation linkbases in column “D” using either the assigned numbers or concatenating the numbers in the rows.&lt;br /&gt;
# Now add dimensions in columns G,H … one column per dimension an element may be reported with. The dimension members for a particular primary item will be documented later in a separate part of the excel spreadsheet.&lt;br /&gt;
# … depending on what your needs are, pay attention to other instructions and what other instructions input data is and require to be documented in the Excel sheets…&lt;br /&gt;
&lt;br /&gt;
At whatever moment, after point 7 in the previous list is finished, the technical team can start creating the DTS sheet content.&lt;br /&gt;
&lt;br /&gt;
# Start with a VERSION instruction. Use version 2 as this is the latest one and includes all functionality of version 1.&lt;br /&gt;
# Remember to add NOP instructions in order to create “parameters” that will be used later by another instructions. For example the output directory names etc. It is a good practice assigning a cell name to the cell with the value. Later you will use =’name’ in order to use the cell value.&lt;br /&gt;
# Use one LOAD instruction in order to load the entry point defined at point 4 after the VERSION instruction.&lt;br /&gt;
# Start creating BOT-EOT instruction blocks and inside that BOT instructions put the required BOL-EOL instruction blocks.&lt;br /&gt;
# It is a good practice start the taxonomy files in the following order:&lt;br /&gt;
## Schemas for concept definitions.&lt;br /&gt;
## Add the required linkbases to them. Labels and References should be attached to the concept definitions (experiment with embedded linkbases at this point as the labels and references will always be used)&lt;br /&gt;
# Now start defining an xsd schema for each one of the PFSs defined in different sheets. There is no need to IMPORT the concepts taxonomy as it will be added by the linkbases using concepts in that schema.&lt;br /&gt;
&lt;br /&gt;
==Tool detailed documentation==&lt;br /&gt;
&lt;br /&gt;
The User's Manual can be downloaded directly from this URL:&lt;br /&gt;
[[http://www.reportingstandard.com/Taxonomy_Builder_Users_Manual_EN.pdf http://www.reportingstandard.com/Taxonomy_Builder_Users_Manual_EN.pdf]]&lt;br /&gt;
&lt;br /&gt;
A copy of the PDF document is installed in your hard drive when you install the core Reporting Standard Tools.&lt;br /&gt;
&lt;br /&gt;
Reporting Standard has created a wiki page for the documentation of the [[DTS Definition Language]]. where the latest information about the instructions will be always available.&lt;br /&gt;
&lt;br /&gt;
==Navigate==&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
	<entry>
		<id>https://reportingstandard.com/wiki/index.php?title=Main_Page&amp;diff=676</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://reportingstandard.com/wiki/index.php?title=Main_Page&amp;diff=676"/>
		<updated>2018-12-28T12:09:15Z</updated>

		<summary type="html">&lt;p&gt;Agil: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Reporting Standadrd XBRL WIKI.===&lt;br /&gt;
&lt;br /&gt;
This WIKI web site is organized in the following sections:&lt;br /&gt;
&lt;br /&gt;
* Reporting Standard S.L. - Product specific discussions, including new feature requests&lt;br /&gt;
** Products WITH user interface&lt;br /&gt;
*** [[XBRLview]]&lt;br /&gt;
*** [[XBRLvalid]]&lt;br /&gt;
*** [[XBRLizer]]&lt;br /&gt;
*** [[XBRLmapper]]&lt;br /&gt;
*** [[Taxonomy Builder]]&lt;br /&gt;
** Components without user interface&lt;br /&gt;
*** [[XBRL API related discussions]]&lt;br /&gt;
*** [[XBRL Database]]&lt;br /&gt;
*** [[XBRL Validation Service]]&lt;br /&gt;
*** [[XBRL Storage Service]]&lt;br /&gt;
*** [[XhBtRmL]]&lt;br /&gt;
*** [[XBRLmapper as a service]]&lt;br /&gt;
** Other products and components&lt;br /&gt;
*** [[Excel XBRL functions library]]&lt;br /&gt;
&lt;br /&gt;
=== Requirements ===&lt;br /&gt;
&lt;br /&gt;
* Requirements&lt;br /&gt;
** [[Software requirements]]&lt;br /&gt;
** [[Hardware requirements]]&lt;br /&gt;
&lt;br /&gt;
=== Installation ===&lt;br /&gt;
* Installation&lt;br /&gt;
** [[Installation on Windows]]&lt;br /&gt;
** [[Installation on UNIX (Linux, Solaris, AIX, Mac OS X)]]&lt;br /&gt;
&lt;br /&gt;
=== Configuration ===&lt;br /&gt;
* [[Taxonomy Catalogs Overview]]&lt;br /&gt;
** [[Reporting Standard Taxonomy Catalog]]&lt;br /&gt;
** [[XBRL International Taxonomy Packages]]&lt;br /&gt;
** [[Oasis Taxonomy Catalogs]]&lt;br /&gt;
** [[Custom Taxonomy Catalogs such as Reporting Standard XBRL Database]]&lt;br /&gt;
&lt;br /&gt;
==== Other optional installation steps ====&lt;br /&gt;
&lt;br /&gt;
* [[Installing the XBRL Database]]&lt;br /&gt;
&lt;br /&gt;
=== Useful links and frequently asked questions (FAQ) ===&lt;br /&gt;
&lt;br /&gt;
# [[Where is the license file stored and how can I backup it?]]&lt;br /&gt;
# [[The XBRL Taxonomy Catalog]]&lt;br /&gt;
# [[java.security.SignatureException: invalid encoding for signature]]&lt;br /&gt;
# [[java.security.SignatureException: invalid encoding for signature (Español)]]&lt;br /&gt;
# [[This license will not work on this computer]]&lt;br /&gt;
# [[Esta licencia no funcionará en este computador]]&lt;br /&gt;
# [[Adding taxonomies to the ZIP Catalog]]&lt;br /&gt;
# [[Walkthrough downloading Reporting Standard XBRL tools set]]&lt;br /&gt;
# [[Walkthrough requesting evaluation license]]&lt;br /&gt;
# [[Walkthrough load and store XBRL taxonomies]]&lt;br /&gt;
# [[Detailed explanation about Excel mapping process from XBRLizer]]&lt;br /&gt;
# [http://www.supersociedades.gov.co/servicios/software-para-el-diligenciamiento/Paginas/NIIF-Videos-de-CapacitaciOn.aspx Vídeos respecto a la instalación y funcionamiento de las herramientas de licenciamiento XBRL para la Superintendencia de Sociedades de Colombia]&lt;br /&gt;
&lt;br /&gt;
=== Other unrelated ===&lt;br /&gt;
* XBRL Specifications and related discussions&lt;br /&gt;
** [[XBRL 2.1]]&lt;br /&gt;
*** [[Comments about the Call for review the proposed edit recommendation made on 2011/05/27]]&lt;br /&gt;
** [[XDT 1.0 Dimensions Specification]]&lt;br /&gt;
** [[XQuery Formula Specification (Minimun XML based and more XQuery based)]]&lt;/div&gt;</summary>
		<author><name>Agil</name></author>
	</entry>
</feed>