This appendix collects the external resources that a FundsXML practitioner is most likely to need. It is organised by category rather than alphabetically, so that a reader looking for a specific kind of resource can find the right section quickly. URLs are current as of early 2026; if a link has moved by the time you read this, the organisation name and resource description should give you enough context to find the new location.
The FundsXML association is the non-profit body that stewards the standard. Its website is the authoritative source for governance information, membership details, working-group schedules, and announcements.
https://github.com/fundsxml/schema/releases/download/{version}/FundsXML.xsd gives direct access to any version (see §4.7.2).FundsXML4.xsd for the optional ds:Signature element. Available from https://www.w3.org/TR/xmldsig-core/ and typically bundled with the FundsXML schema distribution.?xpath=/FundsXML4/ControlData to the URL, for example, opens the documentation for the ControlData node directly. The documentation shows each element's type, cardinality, child elements, and annotations. This is the quickest way to look up a specific node without opening the XSD in an editor. Throughout this book, element names in the running text link directly to the corresponding page in this documentation. Table E.1 below lists the most important entry points.The five FinDatEx regulatory templates embedded in FundsXML are published and maintained by FinDatEx, not by the FundsXML association. Each template has its own specification document, field-by-field definition, and version history.
FreeXmlToolkit is the open-source desktop application covered in Chapter 11. It provides an integrated environment for editing, validating, transforming, and signing FundsXML files.
xmllint --schema FundsXML4.xsd file.xml --noout.lxml.isoschematron module. Used in the Chapter 10 and Chapter 12 code examples.The four languages covered in Chapter 12 each have standard XML libraries suitable for FundsXML work:
lxml.etree module is the recommended library for FundsXML work in Python.xml2js for a more DOM-like API.The regulatory frameworks that drive FundsXML's content — particularly the FinDatEx template content — are published by the European Commission and by ESMA. The primary references are:
ISOCurrencyCodeType.ISOCountryCodeType.The following files accompany this book and are available for download from the book's repository. They are designed to be used together: the sample FundsXML file provides the input, and the XSLT stylesheets and programming-language scripts process it. Readers are encouraged to download all files, run the examples, and adapt them to their own FundsXML data.
| File | Description | Chapters |
|---|---|---|
europa_growth_fund.xml | Complete, schema-valid FundsXML 4.2.2 document for the fictional Europa Growth Fund. Contains ControlData, fund static data (domicile, entities), three share classes with prices and NAVs, fifteen portfolio positions (equities, bonds, FX forward, cash), and asset master data for all referenced instruments. This is the single input file for all examples below. | 4–8, 12 |
FundsXML.xsd | The FundsXML 4.2.2 schema definition file, for offline validation. Validate the sample file with: xmllint --noout --schema FundsXML.xsd europa_growth_fund.xml | 2, 10 |
All stylesheets are XSLT 1.0 and can be run with xsltproc (bundled with libxml2 on Linux and macOS), with Saxon, or with any XSLT-capable library (Python lxml, Java javax.xml.transform, .NET System.Xml.Xsl).
| File | Description | Chapter |
|---|---|---|
examples/xslt/shareclass_csv.xsl | Extracts a multi-column CSV of share-class data (fund name, LEI, ISIN, share-class name, currency, NAV date). Run: xsltproc examples/xslt/shareclass_csv.xsl europa_growth_fund.xml | §2.12.2 |
examples/xslt/factsheet_simple.xsl | Produces a self-contained HTML fact sheet with fund metadata table (LEI, currency, NAV, dates) and a share-class listing. | §2.12.3 |
examples/xslt/dq_nav_check.xsl | Data-quality check: verifies that portfolio position values sum to the fund's total net asset value, with rounding tolerance. | §2.12.4 |
examples/xslt/factsheet.xsl | Produces a self-contained HTML fact sheet with a table showing LEI, currency, NAV, NAV date, and content date. | §12.3.7 |
examples/xslt/positions_csv.xsl | Exports all portfolio positions as a CSV file, joining position data with asset master data via the UniqueID/IDREF mechanism. | §12.3.7 |
Each script reads or processes europa_growth_fund.xml. Run instructions and dependency notes are included as comments at the top of each file.
Python (requires lxml; install with pip install lxml)
| File | Description | Chapter |
|---|---|---|
examples/python/read_fund.py | Reads a FundsXML file and prints the fund name, LEI, and total NAV. | §12.3.2 |
examples/python/import_fund.py | Parses a FundsXML file and imports fund data and portfolio positions into PostgreSQL. Requires psycopg. | §12.5.1 |
examples/python/export_fund.py | Queries fund data from PostgreSQL and reconstructs a FundsXML fragment. Requires psycopg. | §12.5.1 |
Java (JDK 17+; external libraries noted per file)
| File | Description | Chapter |
|---|---|---|
examples/java/ReadFund.java | Reads a FundsXML file with JAXP and XPath (no external dependencies). | §12.3.3 |
examples/java/FundsXmlToMongo.java | Imports a FundsXML file into MongoDB. Requires mongodb-driver-sync. | §12.5.2 |
examples/java/MongoToFundsXml.java | Exports fund data from MongoDB and builds a FundsXML fragment with JAXP DOM. Requires mongodb-driver-sync. | §12.5.2 |
examples/java/FundsXmlToBaseX.java | Imports a FundsXML file into a BaseX XML database. Requires org.basex:basex. | §12.5.3 |
examples/java/BaseXQuery.java | Queries and exports fund data from BaseX using embedded XQuery. Requires org.basex:basex. | §12.5.3 |
C# (.NET 8+)
| File | Description | Chapter |
|---|---|---|
examples/csharp/ReadFund.cs | Reads a FundsXML file with LINQ to XML (no external dependencies). | §12.3.4 |
JavaScript / Node.js (requires fast-xml-parser; install with npm install fast-xml-parser)
| File | Description | Chapter |
|---|---|---|
examples/javascript/read_fund.mjs | Reads a FundsXML file with fast-xml-parser. | §12.3.5 |
The interactive schema documentation at https://fundsxml.github.io allows direct navigation to any element via an XPath parameter in the URL. The general pattern is:
https://fundsxml.github.io/index.html?xpath=/FundsXML4/…
Table E.1 lists the most frequently needed entry points. Each URL opens the documentation page for the corresponding node, showing its type definition, cardinality, child elements, and schema annotations.
Table E.1 — Key entry points into the FundsXML Online Schema Documentation
| Schema Area | XPath | URL | Treated in |
|---|---|---|---|
| Root element | /FundsXML4 | fundsxml.github.io/…?xpath=/FundsXML4 | Chapter 3 |
| ControlData | /FundsXML4/ControlData | fundsxml.github.io/…?xpath=/FundsXML4/ControlData | Chapter 4 |
| Funds container | /FundsXML4/Funds | fundsxml.github.io/…?xpath=/FundsXML4/Funds | Chapter 5 |
| Fund element | /FundsXML4/Funds/Fund | fundsxml.github.io/…?xpath=/FundsXML4/Funds/Fund | Chapter 5 |
| FundStaticData | /FundsXML4/Funds/Fund/FundStaticData | fundsxml.github.io/…?xpath=/FundsXML4/Funds/Fund/FundStaticData | Chapter 5 |
| FundDynamicData | /FundsXML4/Funds/Fund/FundDynamicData | fundsxml.github.io/…?xpath=/FundsXML4/Funds/Fund/FundDynamicData | Chapters 5, 6 |
| Share Classes | /FundsXML4/Funds/Fund/SingleFund/ShareClasses | fundsxml.github.io/…?xpath=/FundsXML4/Funds/Fund/SingleFund/ShareClasses | Chapter 5 |
| Portfolio | /FundsXML4/Funds/Fund/FundDynamicData/Portfolios/Portfolio | fundsxml.github.io/…?xpath=/FundsXML4/…/Portfolio | Chapter 6 |
| Positions | /FundsXML4/Funds/Fund/FundDynamicData/Portfolios/Portfolio/Positions | fundsxml.github.io/…?xpath=/FundsXML4/…/Positions | Chapter 6 |
| AssetMasterData | /FundsXML4/AssetMasterData | fundsxml.github.io/…?xpath=/FundsXML4/AssetMasterData | Chapter 6 |
| Transactions (Flows) | /FundsXML4/Funds/Fund/SingleFund/ShareClasses/ShareClass/Flows | fundsxml.github.io/…?xpath=/FundsXML4/…/Flows | Chapter 7 |
| RegulatoryReportings | /FundsXML4/RegulatoryReportings | fundsxml.github.io/…?xpath=/FundsXML4/RegulatoryReportings | Chapter 8 |
| Documents | /FundsXML4/Documents | fundsxml.github.io/…?xpath=/FundsXML4/Documents | Chapter 9 |
| CountrySpecificData | /FundsXML4/CountrySpecificData | fundsxml.github.io/…?xpath=/FundsXML4/CountrySpecificData | Chapter 9 |
Readers are encouraged to bookmark the root URL and explore the schema tree interactively. The documentation is generated directly from the XSD and therefore always reflects the structure of the published schema version.