--- ECHO_content/ECHO_helpers.py 2008/12/17 12:02:53 1.95
+++ ECHO_content/ECHO_helpers.py 2009/04/17 13:58:40 1.99
@@ -19,6 +19,7 @@ import bz2
import xmlrpclib
import sys
import logging
+import amara
#erstzt logging
def logger(txt,method,txt2):
@@ -91,18 +92,20 @@ class ECHO_basis:
# Managment for the PID
def setPID(self,pid):
"""set the pid"""
+ logging.debug(self.getID()+" PID set to "+pid)
self.pid=pid
return True
def getPID(self):
"""get the pid"""
+
pid =getattr(self,'pid',None)
- # teste ob dieses pid wirklich die des objektes und nich vererbt wurde
- if pid == self.getParentPID():
- return None
- else:
- return pid
+ if pid == self.getParentPID():
+ return None
+ else:
+ return pid
+
def getParentPID(self):
"""get the PID of the parent"""
@@ -140,24 +143,25 @@ class ECHO_basis:
def showRDF(self):
"""showrdf"""
self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml')
- ret="""\n\n"""
+ ret="""\n\n"""
ret+=self.getRDF(urn="echo:collectionroot")+"\n"
- ret+=""""""
+ ret+=""""""
return ret
def RDF(self):
"""showrdf"""
self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml')
- ret="""\n\n"""
+ ret="""\n\n"""
ret+=self.getRDF(urn=self.absolute_url())+"\n"
- ret+=""""""
+ ret+=""""""
return ret
@@ -167,10 +171,10 @@ class ECHO_basis:
urn=self.absolute_url()
ret=""
- rettemp="""\n"""%urn
+ rettemp="""\n"""%urn
flag=0
- li="""\n"""
+ li="""\n"""
if not ('' in self.getFullTextXML(noredirect='Yes')):
nurn=self.absolute_url()+'/getFullTextXML'
rettemp+=li%nurn
@@ -186,7 +190,7 @@ class ECHO_basis:
rettemp+=li%nurn
flag=1
- rettemp+=""
+ rettemp+=""
if flag==1:
ret+=rettemp
@@ -203,8 +207,8 @@ class ECHO_basis:
nurn=self.absolute_url()+'/showMetaDataXML'
ret+=getRDFDescription(self,self.absolute_url()+'/showMetaDataXML',urn=nurn,nameDef="Metadata",typeName="ECHO_metaData")
+
return ret
-
def content_html_XMLRpc(self):
"""xml_rpc_version"""
return encodeRPC(self.content_html())
@@ -650,7 +654,17 @@ def readFieldFromXML(meta_url,parent,fie
return getText(field[0].childNodes)
-
+def readFieldFromXML_xpath(meta_url,xpath):
+ """xpath auf meta_url"""
+ #logging.debug("try to parse:"+meta_url)
+ #logging.debug("Xtry to parse xpath:"+xpath)
+ doc = amara.parse(meta_url)
+ #logging.debug("have:"+doc.xml())
+ node= doc.xml_xpath(xpath)
+ if node is None:
+ return None
+
+ return unicode(node[0])
def urlopen(url):
"""urlopen mit timeout"""
@@ -819,17 +833,24 @@ def reloadMetaDataFromStorage(self,RESPO
return ret
-def getRDFDescription(self,linkURL,urn=None,nameDef=None,typeName=None):
+def getRDFDescription(self,linkURL,urn=None,nameDef=None,typeName=None,ap=""):
"""rdf"""
ret=""
- about=""""""
- name="""%s"""
- link="""%s"""
- clickable="""%s"""
- #link=""""""
- type="""%s"""
- #xlink=""""""
+ about=""""""
+ name="""%s"""
+ link="""%s"""
+ clickable="""%s"""
+ #link=""""""
+ type="""%s"""
+
+ #xlink=""""""
+
+ if ap=="":
+ ap2=""
+ else:
+ ap2 = """%s"""%ap
+
if not urn:
#urn="urn:"+re.sub('/',':',self.absolute_url())
urn=self.absolute_url()
@@ -856,8 +877,9 @@ def getRDFDescription(self,linkURL,urn=N
else:
type2=type%typeName
- #ret=about2+"\n"+name2+"\n"+link2+"\n"+type2+"\n"+clickable2+"\n"
- ret=about2+"\n"+name2+"\n"+type2+"\n"+clickable2+"\n"
+
+ #ret=about2+"\n"+name2+"\n"+link2+"\n"+type2+"\n"+clickable2+"\n"
+ ret=about2+"\n"+name2+"\n"+type2+"\n"+clickable2+"\n"+ap2+"\n"
return ret
def getCopyrightsFromForm(self,argv):