Skip to main content

XML data exchange with patent management systems

Converting data into XML for OLF2.0

Start your project with an in-depth analysis of the XML structure produced by your application. Then set up detailed rules on which data system must be mapped to which OLF2.0 data.

  • Use the XML element list for OLF2.0 contained in the annex to this document.
  • Note that important data is also stored in the attributes, so use the XML attribute lists also for the specific procedure.
  • Insert a new column and enter the corresponding element (or attribute) names from your PMS in the table.
  • Refer to the DTDs to define the structure of the XML documents. Note that each procedure uses different DTDs.
  • The mandatory and optional XML and PDF files for each procedure are listed at the beginning of each section. These are the files you need to produce using your PMS data (except for those files marked as OLF system files).
  • Rename your user-specific PDF attachments to the OLF2.0 standard file names. Note that all documents and drawings must be Annex F-compliant.
  • Write and set up your own conversion tool to convert your PMS data into XML for OLF2.0.

Preparing the package for import

Each procedure in Online Filing 2.0 requires a specific set of XML and PDF files packed in a ZIP archive file. If you import single applications manually in OLF2.0, the files may also be prepared in a specific folder *. ZIP is the recommended possibility, however.

For example, Online Filing 2.0 expects the following XML files for an application in procedure EP1001:

XML file nameDTDDescription
package-data.xmlpackage-data.dtdReferences attached documents, including those already referenced in application-body.xml file.
application-body.xmlep-application-body-v1-7.dtd(a)References attached documents as part of patent specification (technical documents or translations of technical documents into EPO language). (b)Contains complete text (or its translation into EPO language) of patent specification with referenced files for drawings.

In a standard EP1001 application, the technical documents and their translations may be attached as single or multiple PDF files. The pages are referenced in the application-body.xml file with a specific element for each section of the technical documents: <description>, <claims>, <abstract> and <drawings>. A <doc-type> child element contains more information on each section in the following attributes: id, type, file, page count. The id attribute and file attribute must match the EPO document codes and EPO system file names defined by the OLF2.0 system.

Importing XML into OLF2.0

You can use one of the following methods to import XML data into Online Filing 2.0:

  1. Importing applications using the GUI of the OLF2.0 application
  2. Importing applications using the corresponding endpoint of the OLF2.0 B2B API

Online Filing 2.0 allows you to import individual applications from a patent management system (PMS) or from the EPO's Online Filing software as .zip files. You can perform an import in both the production and demo environments of OLF2.0. Note that, to use the import function, you need appropriate procedural access rights in Online Filing 2.0, i.e. your user account rights should include the procedural form used in the application to be imported.

A .zip file must meet the same requirements in Online Filing 2.0 as it does in the EPO's Online Filing software, i.e.:

  • It should be valid .zip (archive) file
  • It should contain:
    • .xml files containing data that is otherwise entered manually, usually accompanied by relevant documents.
    • a form supported by OLF2.0 supplied as an xml file
    • all the required*.xml files (please refer to section “Structure of XML files for…” specific to the form being filed, e.g.: Form EP1001 - Structure of XML files for EP1001).
  • The zip archive must contain all necessary files directly in the root directory, not within an enclosing folder (i.e. do not zip a folder that contains all the files, select all files and add them to a zip archive)

Each *.xml file references a *.dtd file and must meet the validation requirements laid down in that *.dtd file.

Each form requires a separate set of *.xml files. If one or more of the optional files is present but fails the *.dtd validation, it will be ignored during the import. The names of the *.xml files are not important, as long as the *.dtd file referenced from the *.xml file matches a *.dtd file for the relevant procedure.

Importing package from the OLF2.0 GUI

Once you have ensured that your .zip file meets all the requirements, you can import it into Online Filing 2.0.

  • Convert the XML data exported (from your system or create it from scratch) into XML data for OLF2.0.
  • Prepare the package with all XML and PDF files to be imported (either a folder or a ZIP archive).
  • On the OLF2.0 application, go to Administration in the navigation bar and select Submissions Import.
  • Select the button Import Submission.
  • Select Drag and drop here the file you want to upload or Select a file, as right
  • Select Import

Online Filing 2.0 automatically detects the type of form that is imported. You can check the import status in the import overview.

Note that the Online Filing 2.0 GUI only allows for importing submissions as drafts (which must be digitally signed at a later stage). When using the above method, OLF2.0 will automatically put the imported form into Draft status, even if the provided package is already signed.

Importing package using B2B import API

As an alternative to the manual procedures using the web interface, Online Filing 2.0 provides a public REST API exposing operations for EPO users to import, export and manage their submissions.

Additionally, the B2B API also supports the importation of signed submission packages directly into “Ready to send” status, which is a functionality not supported in the OLF2.0 UI.

Please refer to the public Swagger page for OLF2.0's B2B Service API, which contains more details onhow to request access and use the API, as well as the full list of all available endpoints and the request/response format for each of them. This page is currently available at: