Библиотека XQuery под Python
Существует ли какой-либо существующий способ запуска XQuery под python? (не начинать самостоятельно составлять парсер) другими словами.
У меня есть тонна XQuery, которую я хочу передать в нашу новую систему, или, скорее, хочу
порт рамки, а не XQuery.
Поэтому: Есть ли библиотека, которая позволяет мне запускать XQuery под python?
Ответы
Ответ 1
Сорт...
Просматривая список реализаций W3C для XQuery, есть:
Несколько примеров Python с Zorba, от здесь
import sys
import zorba_api
def example1(zorba):
xquery = zorba.compileQuery("1+2")
print xquery.printPlanAsXML()
print xquery.execute()
return
def example2(zorba):
xquery = zorba.compileQuery("(1,2,3,4,5)")
iter = xquery.iterator()
iter.open()
item = zorba_api.Item_createEmptyItem()
while iter.next(item):
print item.getStringValue()
iter.close()
iter.destroy()
return
def example3(zorba):
try:
xquery = zorba.compileQuery("1 div 0")
print xquery.execute()
except RuntimeError, e:
print e
return
В этом списке может быть реализация C, которая может быть легко связана с Python. Надеюсь, что это поможет, я был несколько удивлен, увидев так мало реализаций. Хотя XQuery не самый желательный из инструментов XML, я полагаю.
Ответ 2
Вы можете использовать Jython для запуска кода Python - это дает вам доступ к некоторым из процессоров XQuery из мира Java. Например Saxon.
Ответ 3
Zorba 1.2 работает с python. После установки вы получите папку python под папкой zorba. Добавьте его в sys.path, также с помощью zorba\bin. После всех манипуляций импорт "zorba_api" будет работать!
Ответ 4
У меня были проблемы, подобные Теду, и пытались использовать ответ от вадима.
Однако у меня были проблемы с загрузкой zorba_api должным образом, жалуясь, что "Ошибка загрузки DLL ImportError не удалось" (не указывая, какой из них, используя% 1 как отличный псевдоним).
Наконец, я получил решение:
Окружающая среда
- WindowsXP
- Python 2.6, установленный в c:\Python26
Установка
- Zorba 1.2 или 1.4 установлен в стандартное расположение
- Путь к Zorba bin как первый элемент в
PATH
- оба файла из Zorba bin\python (
zorba_api.py
и _zorba_api.pyd
) переместились на C:\Python26\LIB\site-packages
В результате я смог запустить C:\Program Files\Zorba XQuery Processor 1.4.0\share\doc\zorba-1.4.0\python\examples\python_test.py
из любой папки на моем компьютере, даже без строки python, изменяя PATH
Примечание:
- Проблема PATH может быть связана с слишком длинной строкой.
- Process Monitor помог найти, какая DLL не может быть загружена