diff --git a/core/registrar.py b/core/registrar.py index ec7571974acd58fffa03576ab0234e1153791332..d6e4de5d99be9a291d8d8c81e3763a666f1eef58 100644 --- a/core/registrar.py +++ b/core/registrar.py @@ -35,6 +35,7 @@ import argparse import textwrap import logging import traceback +from xml.sax.saxutils import escape import redis import lxml.etree @@ -265,7 +266,7 @@ def registrar( xmlns="http://www.telespazio.com/CSCDA/CDD/PDAS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <identifier>{identifier}</identifier> - <BROWSE_AVAILABILITY_DATETIME{availability_time}</BROWSE_AVAILABILITY_DATETIME> + <BROWSE_AVAILABILITY_DATETIME>{availability_time}</BROWSE_AVAILABILITY_DATETIME> <URL> <Service>WCS</Service> <URL>{wms_capabilities_url}</URL> @@ -276,13 +277,13 @@ def registrar( </URL> </DataAccessItem> """.format( - identifier=product.identifier, - availability_time=isoformat(product.inserted), - wcs_capabilities_url=( + identifier=escape(product.identifier), + availability_time=escape(isoformat(product.inserted)), + wcs_capabilities_url=escape( '%s/ows?service=wcs&request=GetCapabilities&cql=identifier="%s"' % (service_url, product.identifier) ), - wms_capabilities_url=( + wms_capabilities_url=escape( '%s/ows?service=wms&request=GetCapabilities&cql=identifier="%s"' % (service_url, product.identifier) ),