ECMA TR/84
6th Edition / June 2012

Common Language
Infrastructure (CLI)
Technical Report:
Information Derived
From Partition IV XML
File

Reference number
ECMA TR/12:2009© Ecma International 2009

COPYRIGHT PROTECTED DOCUMENT© Ecma International 2012

This Ecma Technical Report has been adopted by the General Assembly of June 2012.

"COPYRIGHT NOTICE© 2012 Ecma International
This document may be copied, published and distributed to others, and certain derivative works of it
may be prepared, copied, published, and distributed, in whole or in part, provided that the above
copyright notice and this Copyright License and Disclaimer are included on all such copies andderivative works. The only derivative works that are permissible under this Copyright License andDisclaimer are:(i)works which incorporate all or portion of this document for the purpose of providing commentary orexplanation (such as an annotated version of the document),(ii) works which incorporate all or portion of this document for the purpose of incorporating featuresthat provide accessibility,(iii) translations of this document into languages other than English and into different formats and(iv) works by making use of this specification in standard conformant products by implementing (e.g.
by copy and paste wholly or partly) the functionality therein.
However, the content of this document itself may not be modified in any way, including by removing thecopyright notice or references to Ecma International, except as required to translate it into languages
other than English or into a different format.
The official version of an Ecma International document is the English language version on the Ecma
International website. In the event of discrepancies between a translated version and the officialversion, the official version shall govern.
The limited permissions granted above are perpetual and will not be revoked by Ecma International orits successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and ECMAINTERNATIONAL DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGEANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR
A PARTICULAR PURPOSE."© Ecma International 2012iii

iv© Ecma International 2012

This Technical Report is intended as an aid for understanding the libraries specified in Standard ECMA-335,
Partition IV: Profiles and Libraries. This sixth edition cancels and replaces the fifth edition which has beentechnically revised. This Technical Report is fully aligned with ISO/IEC TR 23272:2011.
That Partition includes a machine-readable specification, in XML, of the types that comprise the standard libraries.
This Technical Report, in companion files, provides the following items which help to form a traceable chain fromthe normative XML specification to a portable, printable representation of its contents:
1.

Tool Source Code: A program written in the C# programming language, XML Style-sheet
Language (XSL), and using the facilities of the Microsoft .NET Framework™ and Microsoft
Office™ to convert the XML into files viewable using Microsoft Word™. This program, initiallyprovided by Intel Corporation and updated by the CLI editor for this edition, can be modified toproduce other views of the XML.

2.

Microsoft Word™ Files: These are the files produced by running the tool mentioned above on
the XML from Partition IV. The Ecma task group TC49/TG3 used similar files (produced usingearlier versions of this tool run against earlier versions of the XML) as the primary means ofreviewing the XML.

3.

PDF™ Files: These files are produced from the Microsoft Word™ files using the Adobe
Acrobat™ program. They are viewable on a wide range of computer systems and printable on arange of computer output devices. In most cases, they will appear visually identical regardless ofthe means used to render them.

Partition IV normatively specifies the format of the XML file. The tool provided here renders all parts of the XML
with exceptions for some XML nodes, as described below. For the purpose of description, XML nodes referred tohere are specified in XPath notation relative to Type nodes.
Name (this is redundant and unnecessary since the FullName of the type is rendered)

FullNameSP (this is redundant and unnecessary since the FullName of the type is rendered)

AssemblyInfo/AssemblyCulture (this is reserved for future use; currently its value is “none”)

AssemblyInfo/Attributes/Attribute/Excluded (if its value is 0, it is not rendered, but if it is 1, the library thatis necessary for inclusion is listed)TypeExcluded (as above)Interfaces/Interface/Excluded (as above)

Attributes/Attribute/Excluded (as above)

Attributes/Attribute/ExcludedTypeName (the short Name is rendered, however)

Members/Member/ReturnValue/ReturnType (the FullName of the type of the return value is not specified,
but it is implied via the member’s signature)Members/Member/Parameters/Parameter/Type (the FullName of the type of the parameter is not specified,
but it is implied via the member’s signature)

The "value_" field for enums.

Member/Member/Docs/altcompliant (used on methods/properties that have a CLSCompliant(false) attributetag, and specifies a CLS-compliant method/property that can be use as an alternative. The
remarks/description section usually specifies this anyway).

Member/Member/Docs/altmember (used on methods/properties that have equivalent alternatives that may
be used. For example, the System.String op_equality operator has the altmember element and specifies theString.Equals() method as an equivalent alternative. The remarks/description section usually specifies thisanyway).

©Ecma International 20121© Ecma International 2012