abas & XML Part 1: Architecture, EDP-XML Interface, and Internal Schema Rules
In Part 1 of our 4-part series, we explore the internal XML data model of abas ERP, how the EDP-XML interface works, UTF-8 encoding and syntax rules, and common implementation pitfalls.
In the digital supply chain landscape of mid-sized enterprises running abas ERP, XML (Extensible Markup Language) has become just as critical as traditional fixed-format EDIFACT. Whether connecting to modern cloud B2B procurement networks via cXML, processing international purchase orders in UBL, or fulfilling mandatory statutory electronic invoicing mandates (such as Peppol BIS Billing or regional tax authority portals), XML forms the backbone of enterprise interoperability. In this four-part series, we examine the inner workings of the abas ERP XML engine, the EDP-XML interface, XSLT transformations, and the best practices required for rock-solid production deployments.
This first article establishes the technical fundamentals: how abas represents business documents in XML, how the bidirectional EDP-XML exchange operates, key schema and syntactic rules, and common configuration pitfalls to avoid from day one.
Why XML in an abas ERP Landscape?
While traditional EDIFACT relies on rigid segment tags and positional element separators, XML is self-describing and hierarchical. This maps naturally to the object-oriented architecture of abas ERP (Vartab):
- Human- and Machine-Readable Tags: Instead of deciphering compact EDI codes (such as
BGM+220), payloads use descriptive tags (such as<OrderNumber>and<DeliveryDate>). - Nested Hierarchies: Document header attributes, line item tables, shipping locations, and multi-level packaging units fit cleanly into nested XML parent-child trees.
- Strong Schema Validation (XSD): Document integrity, required fields, and data types (ISO dates, numeric formats, enumeration lists) can be verified automatically via XML Schema Definitions (XSD) before entering core ERP business logic.
- Universal Transformation (XSLT): Internal abas XML schemas can be converted into any customer-specific or standard format (cXML, UBL 2.1, custom partner schemas) using standard XSLT stylesheets without compiled code modifications.
The abas Internal XML Model: Header and Table Architecture
Every business object in abas ERP (sales orders, purchase orders, packing slips, invoices) and master data entity (customers, vendors, parts) is divided into two structural planes: Header fields (Head) and tabular line item rows (Table). A standard abas raw order export reflects this structure:
<?xml version="1.0" encoding="UTF-8"?>
<abasDocument type="SalesOrder" version="2026.1">
<head>
<id>(184,0,0)</id>
<nummer>SO-2026-0842</nummer>
<such>ORDER-842</such>
<kunde>70012</kunde>
<ygln>5990000000108</ygln>
<bestellnr>PO-EXT-9912</bestellnr>
<vom>2026-10-21</vom>
<wtermin>2026-10-28</wtermin>
<waehrung>EUR</waehrung>
</head>
<table>
<row n="1">
<artikel>A-40210</artikel>
<such>BRACKET-40</such>
<yean>5991234004023</yean>
<mge>150.00</mge>
<he>PCE</he>
<preis>11.50</preis>
<ttermin>2026-10-28</ttermin>
</row>
</table>
</abasDocument>
Naming Conventions in abas XML Payloads
XML elements derived from the abas Vartab follow two essential architectural conventions:
- Dual Language Support: Fields in abas have both German technical names (e.g.,
kunde,artikel,mge) and English equivalents (e.g.,customer,product,qty). Consistency across export configurations is vital to prevent transformation breakage. - Custom User Fields (
y...Prefix): Enterprise-specific attributes not found in the standard abas schema (such as partner GLNs:ygln, GTINs:yean, or EDI status flags:yedistat) are defined in Vartab with ayprefix and export natively into the XML payload.
How the EDP-XML Interface Works
The abas EDP (Electronic Data Processing) interface is the native, high-performance middleware gateway built directly into the abas server core. In XML mode, EDP reads and writes structured XML messages seamlessly:
| Flow Direction | Trigger Mechanism | Processing Behavior |
|---|---|---|
| Outbound (Export) | FOP/EFOP event handler on document release or scheduled Infosystem batch | Serializes the abas object into native XML and writes it to a file system queue or dispatches it to a REST endpoint. |
| Inbound (Import) | EDP listener / EDI directory spooler | Parses incoming XML, opens the target business mask in a headless background thread, and runs full Vartab field validation rules. |
The defining advantage of EDP-XML import over direct database inserts is that EDP enforces 100% of the ERP's business logic: credit limits are checked, tax classifications verified, pricing algorithms executed, and internal numbering sequences correctly incremented.
Syntactic Rules and Character Encoding Standards
1. UTF-8 Encoding Without BOM
The abas XML layer requires standard UTF-8 encoding (<?xml version="1.0" encoding="UTF-8"?>). This guarantees accurate transmission of Central European diacritics and global symbols. Ensure middleware components do not attach a Byte Order Mark (BOM) to UTF-8 files, as leading non-printable bytes cause standard XML parsers to abort with fatal syntax errors.
2. Reserved XML Character Escaping & CDATA
All special XML control characters within free-text fields (such as item descriptions or delivery notes) must be properly escaped:
&→&<→<>→>"→"'→'
For long unformatted remarks or raw payload blocks, wrapping content in <![CDATA[ ... ]]> sections prevents parser failures.
Overview of This 4-Part abas XML Series
| Part | Focus & Business Process | Key Technical Topics |
|---|---|---|
| Part 1 | Architecture, EDP-XML, and Schema Rules | Vartab XML model, EDP mechanics, encoding standards, and syntax validation |
| Part 2 | Purchasing & Orders (cXML, UBL, Inbound Import) | cXML/UBL mapping, XSLT transformations, headless EDP import, price validation |
| Part 3 | Outbound Logistics, WMS, and Carrier Integration | Despatch advice XML, handling unit hierarchy, carrier APIs, tracking status loopback |
| Part 4 | E-Invoicing (Peppol, UBL, Tax Portals) & Operations | Statutory e-invoices, XSD + Schematron checks, error logging, and operational checklist |
Common Pitfalls in Initial Setup
- Empty Element vs. Omitted Element: In abas EDP-XML import,
<wtermin/>(empty tag) has a completely different meaning than leaving out the tag entirely. An empty tag can wipe an auto-calculated default value, whereas omitting the tag lets abas apply its standard defaulting logic. - Localized Numeric Formats: Exporting numbers with a comma as the decimal separator (e.g.,
12,50) breaks XML data typing. Standard XML decimal fields require a period (.). - Skipping Pre-Flight XSD Schema Validation: Feeding unvalidated XML directly into EDP shifts error detection into deep ERP application scripts. Validating against an XSD schema upfront isolates malformed payloads at the perimeter.
- UTF-8 Byte Order Marks (BOM): Windows-based utilities occasionally save UTF-8 with a three-byte BOM preamble, triggering "Content is not allowed in prolog" exceptions in abas XML parsers.
Summary
abas ERP provides a robust, future-proof XML integration framework through its native EDP engine. Achieving frictionless interoperability requires structured Vartab modeling, strict UTF-8 discipline, and automated XSD schema verification.
In Part 2 of this series, we dive into inbound order automation: converting external cXML and UBL purchase orders into abas EDP-XML sales orders using XSLT transformations.
Ready to streamline your abas ERP XML and B2B data exchanges? Request an expert consultation or validate your EDI and XML payloads with our developer tools!