ez projects / xmlimport
| UNIX name | Owner | Status | Version | Compatible with |
|---|---|---|---|---|
| xmlimport | *- pike | planning | 2.2 | 3.7 |
The module works for a number of datatypes, like ezuser, ezxmltext,
ezimage,
etc. Your help is needed to add support for more datatypes.
The XML structure should match the content class structure.
There are some examples in the "docs" folder. The ini file
allows you to set some defaults on the import form.
The biggest issue is the memory limit. See 'known issues' below.
XMLImport1.9 was a complete rewrite from
ImportXMLData 1.4.2 from Olivier Pierret:
------------
To import a file:
After installation, you have a import interface
in the admin module. You can select a xml file
to import there. Press import et voila.
Your XML structure should mimic the objects you are
trying to import. An example XML file would be
Where "person" is the actual class_identifier of a
existing Content Class and "person_first_name" and
"person_last_name" are actual attribute_identifiers
of existing Content Class Attributes.
In the xml, tagnames with prefix ezp_ are reserved;
hence, you can not import attributes named "ezp_bla".
This module implements one fetch, that you might use from a cli or in a
cronjob.
Read the README.
Your help is neede to implement the leftover datatypes. If you know how a
datatype works from php, it's probably very simple. Just put the
right code in place.
------------
Dependencies:
- your phpserver needs XSL sAvailableupport.
- this module includes a modified version of the PHPXPath PHP library
(, with utf-8 enabled.
-----------
Tested datatypes (ezp3.7.6):
- ezauthor,
- ezbinaryfile,
- ezinteger,
- ezimage,
- ezstring,
- eztext,
- ezemail,
- ezisbn,
- ezprice,
- ezfloat,
- ezboolean,
- ezdate,
- ezdatetime,
- ezurl,
- ezxmltext,
- ezobjectrelationbrowse
- ezuser
Untested datatypes (y.m.m.v):
- ezobjectrelation
- ezobjectrelationlist
Unimplemented datatypes (y.h.i.n.):
- ezenum
- ezinisettings
- ezkeyword
- ezmatrix
- ezmedia
- ezmultioption
- ezoption
- ezpackage
- ezrangeoption
- ezselection
- ezsubtreesubscription
- eztime
Impossible datatypes:
- ezidentifier
------------
Known issues:
- Importing objects eats memory. The more objects you import, the more
memory
is eaten per object. I have *not* been able to import more then 200
objects
at a time. I have now implemented a memorylimit that should stop
importing objects just before php would throw an out-of-memory error
at you.
However, I suggest you stay on the safe side and import only 'small'
xml files :-|
-------------
Status:
When used with caution and on small files,
this is usefull and tested in 3.7.6
Changelog
Friday 14 September 2007 11:32
*- pike