Changed the way descriptions & schemas are found.

Instead of using an heuristic to find them in the current directory or in
the modules or in the application or..., it now uses absolute URIs and
catalogs.
This commit is contained in:
eraviart 2004-06-11 15:17:37 +00:00
parent 0d5569d462
commit 9a13c2d3fe
63 changed files with 308 additions and 135 deletions

View File

@ -11,11 +11,8 @@
-->
<item name="css" src="/usr/local/share/expression/css"/>
<item name="descriptions" src="/usr/local/share/expression/descriptions"/>
<item name="images" src="/usr/local/share/expression/images"/>
<item name="javascript" src="/usr/local/share/expression/javascript"/>
<item name="schemas" src="/usr/local/share/expression/schemas"/>
<item name="xslt" src="/usr/local/share/expression/xslt"/>
<module name="expression.modules.emails"/>
<module name="expression.modules.groups"/>

View File

@ -6,3 +6,6 @@ root-and-package;system;http://www.w3.org/TR/xhtml1/DTD/xhtml-;/usr/share/xml/en
local;xml/schema/catalog.xml;/usr/share/xml/schema/expression/catalog.xml
root-and-package;public;-//W3C//DTD XHTML 1.0 ;/usr/share/xml/schema/expression/catalog.xml
root-and-package;system;http://www.w3.org/TR/xhtml1/DTD/xhtml1-;/usr/share/xml/schema/expression/catalog.xml
root-and-package;system;http://www.entrouvert.org/expression/schemas/;/usr/share/xml/schema/expression/catalog.xml
local;xml/misc/catalog.xml;/usr/share/xml/misc/expression/catalog.xml
root-and-package;system;http://www.entrouvert.org/expression/descriptions/;/usr/share/xml/misc/expression/catalog.xml

View File

@ -50,5 +50,6 @@ class BallotBox(directories.Directory):
elements.registerElement(
namespaces.yep.uri, "ballotBox", BallotBox, "schemas/Directory.xsd",
"descriptions/Directory.xml")
namespaces.yep.uri, "ballotBox", BallotBox,
"http://www.entrouvert.org/expression/schemas/Directory.xsd",
"http://www.entrouvert.org/expression/descriptions/Directory.xml")

View File

@ -45,5 +45,6 @@ class FicheLiaison(things.Thing):
elements.registerElement(
namespaces.yep.uri, "ficheLiaison", FicheLiaison, "schemas/FicheLiaison.xsd",
"descriptions/FicheLiaison.xml")
namespaces.yep.uri, "ficheLiaison", FicheLiaison,
"http://www.entrouvert.org/expression/schemas/FicheLiaison.xsd",
"http://www.entrouvert.org/expression/descriptions/FicheLiaison.xml")

View File

@ -377,5 +377,6 @@ class InscriptionHolder(dataholders.XmlHolder):
elements.registerElement(
namespaces.yep.uri, "inscription", Inscription, "schemas/Inscription.xsd",
"descriptions/Inscription.xml", InscriptionHolder)
namespaces.yep.uri, "inscription", Inscription,
"http://www.entrouvert.org/expression/schemas/Inscription.xsd",
"http://www.entrouvert.org/expression/descriptions/Inscription.xml", InscriptionHolder)

View File

@ -221,5 +221,6 @@ class PageSequence(things.Thing):
elements.registerElement(
namespaces.yep.uri, "pageSequence", PageSequence, "schemas/PageSequence.xsd",
"descriptions/PageSequence.xml")
namespaces.yep.uri, "pageSequence", PageSequence,
"http://www.entrouvert.org/expression/schemas/PageSequence.xsd",
"http://www.entrouvert.org/expression/descriptions/PageSequence.xml")

View File

@ -157,6 +157,7 @@ class Questionnaires(directories.Directory):
elements.registerElement(namespaces.yep.uri, "myQuestionnaire", MyQuestionnaire)
elements.registerElement(
namespaces.yep.uri, "questionnaire", Questionnaire, "schemas/Questionnaire.xsd",
"descriptions/Questionnaire.xml")
namespaces.yep.uri, "questionnaire", Questionnaire,
"http://www.entrouvert.org/expression/schemas/Questionnaire.xsd",
"http://www.entrouvert.org/expression/descriptions/Questionnaire.xml")
elements.registerElement(namespaces.yep.uri, "questionnaires", Questionnaires)

View File

@ -82,5 +82,6 @@ class Votes(things.Thing):
elements.registerElement(
namespaces.yep.uri, "vote", Vote, "schemas/Vote.xsd", "descriptions/Vote.xml", VoteHolder)
namespaces.yep.uri, "vote", Vote, "http://www.entrouvert.org/expression/schemas/Vote.xsd",
"http://www.entrouvert.org/expression/descriptions/Vote.xml", VoteHolder)
elements.registerElement(namespaces.yep.uri, "votes", Votes)

View File

@ -28,3 +28,12 @@ update-xmlcatalog --add --root --package expression --type system --id "http://w
# Next: XHTML 1.0 DTDs.
update-xmlcatalog --add --root --package expression --type public --id "-//W3C//DTD XHTML 1.0 "
update-xmlcatalog --add --root --package expression --type system --id "http://www.w3.org/TR/xhtml1/DTD/xhtml1-"
# Add Expression XML descriptions to package catalog (/etc/xml/expression.xml).
update-xmlcatalog --add --package expression --type system --id "http://www.entrouvert.org/expression/descriptions/" --local /usr/local/share/xml/misc/expression/catalog.xml
# Add Expression XML schemas to package catalog (/etc/xml/expression.xml).
update-xmlcatalog --add --package expression --type system --id "http://www.entrouvert.org/expression/schemas/" --local /usr/local/share/xml/schema/expression/catalog.xml
# Add Expression package catalog to root XML catalog (/etc/xml/catalog).
update-xmlcatalog --add --root --package expression --type system --id "http://www.entrouvert.org/expression/"

View File

@ -49,23 +49,27 @@ Topic :: Internet :: WWW/HTTP :: HTTP Servers
docLines = __doc__.split("\n")
# Check for Python >= 2.3
if sys.version_info < (2, 3, 0, '', 0):
sys.exit("Error: Python 2.3 or newer is required. Current version is %s"
% ".".join([str(x) for x in sys.version_info]))
def data_file_tree(destdir, sourcedir):
r=[]
r = []
for root, dirs, files in os.walk(sourcedir):
l = []
for file in files:
l.append(root + '/' + file)
if file.endswith('~'):
continue
l.append(os.path.join(root, file))
tuple = root.replace(sourcedir, destdir, 1), l
r.append(tuple)
if 'CVS' in dirs:
dirs.remove('CVS')
return r
# Check for Python >= 2.3
if sys.version_info < (2, 3, 0, '', 0):
sys.exit("Error: Python 2.3 or newer is required. Current version is %s"
% ".".join([str(x) for x in sys.version_info]))
setup(name = "Expression",
version = "0.0.1",
maintainer = "Entr'ouvert",
@ -88,19 +92,12 @@ setup(name = "Expression",
],
scripts = ["expression-server"],
data_files = [
("share/xml/entities/expression", [
"xml/entities/catalog.xml",
"xml/entities/xhtml-lat1.ent",
"xml/entities/xhtml-special.ent",
"xml/entities/xhtml-symbol.ent"]),
("share/xml/schema/expression", [
"xml/schema/catalog.xml",
"xml/schema/xhtml1-frameset.dtd",
"xml/schema/xhtml1-strict.dtd",
"xml/schema/xhtml1-transitional.dtd"]),
#('/etc/expression', ['config.xml']),
#('/etc/init.d', ['initscripts/expression']),
]
+ data_file_tree("share/xml/entities/expression", "xml/entities")
+ data_file_tree("share/xml/schema/expression", "xml/schema")
+ data_file_tree("share/xml/misc/expression", "xml/misc")
+ data_file_tree("share/expression/css", "vhosts/system/css")
+ data_file_tree("share/expression/descriptions", "vhosts/system/descriptions")
+ data_file_tree("share/expression/images", "vhosts/system/images")

View File

@ -390,5 +390,6 @@ Unknown file name extension = "%s", length = %d, for file "%s" at "%s".\
elements.registerElement(
namespaces.yep.uri, "directory", Directory, "schemas/Directory.xsd",
"descriptions/Directory.xml", DirectoryHolder)
namespaces.yep.uri, "directory", Directory,
"http://www.entrouvert.org/expression/schemas/Directory.xsd",
"http://www.entrouvert.org/expression/descriptions/Directory.xml", DirectoryHolder)

View File

@ -645,24 +645,37 @@ def registerElement(namespaceUri, elementName, elementClass = None, schemaLocati
# The locations are relative to Python data. Convert them to absolute paths
schemaAbsolutePath = None
if schemaLocation:
assert not schemaLocation.startswith('/')
for path in ('/usr/local/share/expression', '/usr/share/expression'):
schemaAbsolutePath = os.path.normpath(os.path.join(path, schemaLocation))
if os.access(schemaAbsolutePath, os.R_OK):
break
if schemaLocation.startswith('http://') or schemaLocation.startswith('https://'):
# Location is an absolute URL. Use it as a system identifier in XML catalog.
schemaFileUri = libxml2.catalogResolveSystem(schemaLocation)
if schemaFileUri is None:
logs.debug('Missing schema file "%s".' % schemaLocation)
else:
schemaAbsolutePath = schemaFileUri[len('file://'):]
else:
logs.debug('Missing schema file "%s".' % schemaLocation)
schemaAbsolutePath = None
assert not schemaLocation.startswith('/')
for path in ('/usr/local/share/expression', '/usr/share/expression'):
schemaAbsolutePath = os.path.normpath(os.path.join(path, schemaLocation))
if os.access(schemaAbsolutePath, os.R_OK):
break
else:
logs.debug('Missing schema file "%s".' % schemaLocation)
schemaAbsolutePath = None
descriptionAbsolutePath = None
if descriptionLocation:
assert not descriptionLocation.startswith('/')
for path in ('/usr/local/share/expression', '/usr/share/expression'):
descriptionAbsolutePath = os.path.normpath(os.path.join(path, descriptionLocation))
if os.access(descriptionAbsolutePath, os.R_OK):
break
if descriptionLocation.startswith('http://') or descriptionLocation.startswith('https://'):
# Location is an absolute URL. Use it as a system identifier in XML catalog.
descriptionFileUri = libxml2.catalogResolveSystem(descriptionLocation)
descriptionAbsolutePath = descriptionFileUri[len('file://'):]
else:
logs.debug('Missing description file "%s".' % descriptionLocation)
descriptionAbsolutePath = None
assert not descriptionLocation.startswith('/')
for path in ('/usr/local/share/expression', '/usr/share/expression'):
descriptionAbsolutePath = os.path.normpath(os.path.join(path, descriptionLocation))
if os.access(descriptionAbsolutePath, os.R_OK):
break
else:
logs.debug('Missing description file "%s".' % descriptionLocation)
descriptionAbsolutePath = None
elementFeature = ElementFeature(
namespaceUri, elementName, elementClass, schemaAbsolutePath, descriptionAbsolutePath,
holderClass, holderConstructor)

View File

@ -191,16 +191,30 @@ class Http500(AbstractHttpStatus):
elements.registerElement(
namespaces.yep.uri, "http201", Http201, "schemas/HttpStatus.xsd", "descriptions/Http201.xml")
namespaces.yep.uri, "http201", Http201,
"http://www.entrouvert.org/expression/schemas/HttpStatus.xsd",
"http://www.entrouvert.org/expression/descriptions/Http201.xml")
elements.registerElement(
namespaces.yep.uri, "http302", Http302, "schemas/HttpStatus.xsd", "descriptions/Http302.xml")
namespaces.yep.uri, "http302", Http302,
"http://www.entrouvert.org/expression/schemas/HttpStatus.xsd",
"http://www.entrouvert.org/expression/descriptions/Http302.xml")
elements.registerElement(
namespaces.yep.uri, "http400", Http400, "schemas/HttpStatus.xsd", "descriptions/Http400.xml")
namespaces.yep.uri, "http400", Http400,
"http://www.entrouvert.org/expression/schemas/HttpStatus.xsd",
"http://www.entrouvert.org/expression/descriptions/Http400.xml")
elements.registerElement(
namespaces.yep.uri, "http401", Http401, "schemas/HttpStatus.xsd", "descriptions/Http401.xml")
namespaces.yep.uri, "http401", Http401,
"http://www.entrouvert.org/expression/schemas/HttpStatus.xsd",
"http://www.entrouvert.org/expression/descriptions/Http401.xml")
elements.registerElement(
namespaces.yep.uri, "http403", Http403, "schemas/HttpStatus.xsd", "descriptions/Http403.xml")
namespaces.yep.uri, "http403", Http403,
"http://www.entrouvert.org/expression/schemas/HttpStatus.xsd",
"http://www.entrouvert.org/expression/descriptions/Http403.xml")
elements.registerElement(
namespaces.yep.uri, "http404", Http404, "schemas/HttpStatus.xsd", "descriptions/Http404.xml")
namespaces.yep.uri, "http404", Http404,
"http://www.entrouvert.org/expression/schemas/HttpStatus.xsd",
"http://www.entrouvert.org/expression/descriptions/Http404.xml")
elements.registerElement(
namespaces.yep.uri, "http500", Http500, "schemas/HttpStatus.xsd", "descriptions/Http500.xml")
namespaces.yep.uri, "http500", Http500,
"http://www.entrouvert.org/expression/schemas/HttpStatus.xsd",
"http://www.entrouvert.org/expression/descriptions/Http500.xml")

View File

@ -259,7 +259,9 @@ def newSessionHolder(directoryHolder, uriPathFragment = None, temporary = False)
elements.registerElement(
namespaces.yep.uri, "session", Session, "schemas/Session.xsd", "descriptions/Session.xml",
namespaces.yep.uri, "session", Session,
"http://www.entrouvert.org/expression/schemas/Session.xsd",
"http://www.entrouvert.org/expression/descriptions/Session.xml",
SessionHolder, newSessionHolder)
# SessionsHolder.register()

View File

@ -29,6 +29,7 @@ import os
import types
import urllib
import libxml2
import libxslt
import environs
@ -199,13 +200,29 @@ class AbstractStation(object):
return os.path.normpath(os.path.join(
self.getConfigAbsolutePath("yep:base", default = "/"), baseRelativePath))
def convertNodesToAbsolutePath(self, nodes, nodesOwner, xpath, default = "none"):
def convertRelativeLocationToAbsolutePath(self, location):
if not location:
return None
if location.startswith('http://') or location.startswith('https://'):
# Location is an absolute URL. Use it as a system identifier in XML catalog.
fileUri = libxml2.catalogResolveSystem(location)
absolutePath = fileUri[len('file://'):]
return absolutePath
elif location.startswith('-//'):
# Location is a public URI. Use it as a public identifier in XML catalog.
fileUri = libxml2.catalogResolvePublic(location)
absolutePath = fileUri[len('file://'):]
return absolutePath
else:
return self.convertPathToAbsolute(location)
def convertNodesToAbsolutePath(self, nodes, nodesOwner, xpath, default = 'none'):
if not nodes:
if default == "none":
if default == 'none':
raise KeyError(xpath)
return default
path = nodes[0].content.strip()
return nodesOwner.convertPathToAbsolute(path)
location = nodes[0].content.strip()
return nodesOwner.convertRelativeLocationToAbsolutePath(location)
def convertNodesToPythonClass(self, nodes, nodesOwner, xpath, default = "none"):
if not nodes:

View File

@ -30,6 +30,7 @@ import libxml2
import dataholders
import elements
import environs
import filesystems
import html
import locations
import logs
@ -115,11 +116,16 @@ class Schema(elements.Element):
if self.includeLocations is None:
self.loadIncludes()
if self.includeLocations:
for includeLocation in self.includeLocations:
includeSchemaHolder = self.walkToLocation(includeLocation)
includeSchema = includeSchemaHolder.getRootElement()
elementNode = includeSchema.getGlobalElementNode(
name, scannedSchemas = scannedSchemas)
for schemaLocation in self.includeLocations:
schemaAbsolutePath = self.convertRelativeLocationToAbsolutePath(schemaLocation)
if schemaAbsolutePath is None:
logs.debug('Missing schema file "%s".' % schemaLocation)
continue
schemaHolder = dataholders.DataHolder(
pathFragment = schemaAbsolutePath, mimeType = "text/xml", isRootElder = True,
containedFileSystem = filesystems.PartialFileSystem(schemaAbsolutePath))
schema = schemaHolder.getRootElement()
elementNode = schema.getGlobalElementNode(name, scannedSchemas = scannedSchemas)
if elementNode is not None:
return elementNode
return None
@ -159,11 +165,16 @@ class Schema(elements.Element):
if self.includeLocations is None:
self.loadIncludes()
if self.includeLocations:
for includeLocation in self.includeLocations:
includeSchemaHolder = self.walkToLocation(includeLocation)
includeSchema = includeSchemaHolder.getRootElement()
globalType = includeSchema.getGlobalType(
value, name, scannedSchemas = scannedSchemas)
for schemaLocation in self.includeLocations:
schemaAbsolutePath = self.convertRelativeLocationToAbsolutePath(schemaLocation)
if schemaAbsolutePath is None:
logs.debug('Missing schema file "%s".' % schemaLocation)
continue
schemaHolder = dataholders.DataHolder(
pathFragment = schemaAbsolutePath, mimeType = "text/xml", isRootElder = True,
containedFileSystem = filesystems.PartialFileSystem(schemaAbsolutePath))
schema = schemaHolder.getRootElement()
globalType = schema.getGlobalType(value, name, scannedSchemas = scannedSchemas)
if globalType is not None:
return globalType
return None
@ -489,7 +500,7 @@ class ObjectType(Type):
return u"".join([
htmlNode.decode("UTF-8")
for htmlNode in self.convertValueNodeToHtmlNodes(valueNode)])
def registerType(name, class_):
objectTypeClasses[name] = class_

View File

@ -188,4 +188,5 @@ class Members(elements.List):
elements.registerElement(
namespaces.yep.uri, "group", Group, "schemas/Group.xsd", "descriptions/Group.xml")
namespaces.yep.uri, "group", Group, "http://www.entrouvert.org/expression/schemas/Group.xsd",
"http://www.entrouvert.org/expression/descriptions/Group.xml")

View File

@ -237,9 +237,14 @@ class Identity(things.Thing):
elements.registerElement(namespaces.yep.uri, "identification", Identification)
elements.registerElement(namespaces.yep.uri, "identifications", Identifications)
elements.registerElement(
namespaces.yep.uri, "identities", Identities, "schemas/Directory.xsd",
"descriptions/Directory.xml")
namespaces.yep.uri, "identities", Identities,
"http://www.entrouvert.org/expression/schemas/Directory.xsd",
"http://www.entrouvert.org/expression/descriptions/Directory.xml")
elements.registerElement(
namespaces.yep.uri, "identity", Identity, "schemas/Identity.xsd", "descriptions/Identity.xml")
namespaces.yep.uri, "identity", Identity,
"http://www.entrouvert.org/expression/schemas/Identity.xsd",
"http://www.entrouvert.org/expression/descriptions/Identity.xml")
elements.registerElement(
namespaces.yep.uri, "user", Identity, "schemas/Identity.xsd", "descriptions/Identity.xml")
namespaces.yep.uri, "user", Identity,
"http://www.entrouvert.org/expression/schemas/Identity.xsd",
"http://www.entrouvert.org/expression/descriptions/Identity.xml")

View File

@ -472,7 +472,9 @@ You have been succesfully authenticated; click ok to go back to the service prov
elements.registerElement(
namespaces.md.uri, "EntityDescriptor", EntityDescriptor, "schemas/liberty-metadata-v1.0.xsd")
namespaces.md.uri, "EntityDescriptor", EntityDescriptor,
"http://www.entrouvert.org/expression/schemas/liberty-metadata-v1.0.xsd")
elements.registerElement(
namespaces.yep.uri, "libertyAlliance", LibertyAlliance, "schemas/Directory.xsd",
"descriptions/Directory.xml")
namespaces.yep.uri, "libertyAlliance", LibertyAlliance,
"http://www.entrouvert.org/expression/schemas/Directory.xsd",
"http://www.entrouvert.org/expression/descriptions/Directory.xml")

View File

@ -599,7 +599,9 @@ provider.\
elements.registerElement(
namespaces.md.uri, "EntityDescriptor", EntityDescriptor, "schemas/liberty-metadata-v1.0.xsd")
namespaces.md.uri, "EntityDescriptor", EntityDescriptor,
"http://www.entrouvert.org/expression/schemas/liberty-metadata-v1.0.xsd")
elements.registerElement(
namespaces.yep.uri, "libertyAlliance", LibertyAlliance, "schemas/Directory.xsd",
"descriptions/Directory.xml")
namespaces.yep.uri, "libertyAlliance", LibertyAlliance,
"http://www.entrouvert.org/expression/schemas/Directory.xsd",
"http://www.entrouvert.org/expression/descriptions/Directory.xml")

View File

@ -283,8 +283,10 @@ class PasswordAccounts(directories.Directory):
elements.registerElement(
namespaces.yep.uri, "passwordAccount", PasswordAccount, "schemas/PasswordAccount.xsd",
"descriptions/PasswordAccount.xml", PasswordAccountHolder)
namespaces.yep.uri, "passwordAccount", PasswordAccount,
"http://www.entrouvert.org/expression/schemas/PasswordAccount.xsd",
"http://www.entrouvert.org/expression/descriptions/PasswordAccount.xml", PasswordAccountHolder)
elements.registerElement(
namespaces.yep.uri, "passwordAccounts", PasswordAccounts, "schemas/Directory.xsd",
"descriptions/Directory.xml")
namespaces.yep.uri, "passwordAccounts", PasswordAccounts,
"http://www.entrouvert.org/expression/schemas/Directory.xsd",
"http://www.entrouvert.org/expression/descriptions/Directory.xml")

View File

@ -67,4 +67,6 @@ class Person(things.Thing):
elements.registerElement(
namespaces.yep.uri, "person", Person, "schemas/Person.xsd", "descriptions/Person.xml")
namespaces.yep.uri, "person", Person,
"http://www.entrouvert.org/expression/schemas/Person.xsd",
"http://www.entrouvert.org/expression/descriptions/Person.xml")

View File

@ -25,8 +25,10 @@
"""XForms Module"""
import expression.core.dataholders as dataholders
import expression.core.elements as elements
import expression.core.environs as environs
import expression.core.filesystems as filesystems
import expression.core.html as html
import expression.core.locations as locations
import expression.core.logs as logs
@ -1075,12 +1077,17 @@ class Model(WidgetElement):
context.xformsModelsById[id] = modelContext
schemaLocations = self.schemaLocations
for schemaLocation in schemaLocations:
schemaHolder = self.walkToLocation(schemaLocation)
schemaAbsolutePath = self.convertRelativeLocationToAbsolutePath(schemaLocation)
if schemaAbsolutePath is None:
logs.debug('Missing schema file "%s".' % schemaLocation)
continue
schemaHolder = dataholders.DataHolder(
pathFragment = schemaAbsolutePath, mimeType = "text/xml", isRootElder = True,
containedFileSystem = filesystems.PartialFileSystem(schemaAbsolutePath))
schema = schemaHolder.getRootElement()
if modelContext.schemas is None:
modelContext.schemas = xmlschemas.SchemasContext(
modelContext.specimen, previous = modelContext,
uriPathFragment = "schemas")
modelContext.specimen, previous = modelContext, uriPathFragment = "schemas")
schemasContext = modelContext.schemas
if schemasContext.schemas is None:
schemasContext.schemas = []

37
xml/misc/catalog.xml Normal file
View File

@ -0,0 +1,37 @@
<?xml version="1.0"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD XML Catalogs V1.0//EN"
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<system systemId="http://www.entrouvert.org/expression/descriptions/DBXMLContainer.xml"
uri="descriptions/DBXMLContainer.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Directory.xml"
uri="descriptions/Directory.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Group.xml"
uri="descriptions/Group.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Http201.xml"
uri="descriptions/Http201.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Http302.xml"
uri="descriptions/Http302.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Http400.xml"
uri="descriptions/Http400.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Http401.xml"
uri="descriptions/Http401.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Http403.xml"
uri="descriptions/Http403.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Http404.xml"
uri="descriptions/Http404.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Http500.xml"
uri="descriptions/Http500.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Identity.xml"
uri="descriptions/Identity.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/PasswordAccount.xml"
uri="descriptions/PasswordAccount.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Person.xml"
uri="descriptions/Person.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Session.xml"
uri="descriptions/Session.xml"/>
<system systemId="http://www.entrouvert.org/expression/descriptions/Thing.xml"
uri="descriptions/Thing.xml"/>
</catalog>

View File

@ -3,7 +3,7 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="articleModel" schema="/schemas/Article.xsd">
<xforms:model id="articleModel" schema="http://www.entrouvert.org/expression/schemas/Article.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="dbxmlcontainerModel" schema="/schemas/DBXMLContainer.xsd">
<xforms:model id="dbxmlcontainerModel"
schema="http://www.entrouvert.org/expression/schemas/DBXMLContainer.xsd">
<!-- <xforms:bind nodeset="yep:item" relevant="@visible != 'false'"/> -->
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="directoryModel" schema="/schemas/Directory.xsd">
<xforms:model id="directoryModel"
schema="http://www.entrouvert.org/expression/schemas/Directory.xsd">
<!-- <xforms:bind nodeset="yep:item" relevant="@visible != 'false'"/> -->
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="election1Model" schema="/schemas/Election1.xsd">
<xforms:model id="election1Model"
schema="http://www.entrouvert.org/expression/schemas/Election1.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,11 +3,13 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="modificationModel" schema="/schemas/FicheLiaison.xsd">
<xforms:model id="modificationModel"
schema="http://www.entrouvert.org/expression/schemas/FicheLiaison.xsd">
<xforms:bind nodeset="yep:referent" readonly="true()"/>
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>
<xforms:model id="transmissionModel" schema="/schemas/FicheLiaison.xsd">
<xforms:model id="transmissionModel"
schema="http://www.entrouvert.org/expression/schemas/FicheLiaison.xsd">
<xforms:bind nodeset="yep:quartier" readonly="true()"/>
<xforms:bind nodeset="yep:dateEnvoiDemande" readonly="true()"/>
<xforms:bind nodeset="yep:referent" readonly="true()"/>
@ -21,7 +23,8 @@
<xforms:bind nodeset="yep:requetes" readonly="true()"/>
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>
<xforms:model id="reponseModel" schema="/schemas/FicheLiaison.xsd">
<xforms:model id="reponseModel"
schema="http://www.entrouvert.org/expression/schemas/FicheLiaison.xsd">
<xforms:bind nodeset="yep:quartier" readonly="true()"/>
<xforms:bind nodeset="yep:dateEnvoiDemande" readonly="true()"/>
<xforms:bind nodeset="yep:referent" readonly="true()"/>

View File

@ -3,7 +3,7 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="form1Model" schema="/schemas/Form1.xsd">
<xforms:model id="form1Model" schema="http://www.entrouvert.org/expression/schemas/Form1.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,7 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="groupModel" schema="/schemas/Group.xsd">
<xforms:model id="groupModel" schema="http://www.entrouvert.org/expression/schemas/Group.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="http201Model" schema="/schemas/HttpStatus.xsd">
<xforms:model id="http201Model"
schema="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="http302Model" schema="/schemas/HttpStatus.xsd">
<xforms:model id="http302Model"
schema="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="http400Model" schema="/schemas/HttpStatus.xsd">
<xforms:model id="http400Model"
schema="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="http401Model" schema="/schemas/HttpStatus.xsd">
<xforms:model id="http401Model"
schema="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="http403Model" schema="/schemas/HttpStatus.xsd">
<xforms:model id="http403Model"
schema="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="http404Model" schema="/schemas/HttpStatus.xsd">
<xforms:model id="http404Model"
schema="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="http500Model" schema="/schemas/HttpStatus.xsd">
<xforms:model id="http500Model"
schema="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="identityModel" schema="/schemas/Identity.xsd">
<xforms:model id="identityModel"
schema="http://www.entrouvert.org/expression/schemas/Identity.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,8 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="pageSequenceModel" schema="/schemas/PageSequence.xsd">
<xforms:model id="pageSequenceModel"
schema="http://www.entrouvert.org/expression/schemas/PageSequence.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -4,7 +4,7 @@
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="passwordAccountModel"
schema="/schemas/PasswordAccount.xsd">
schema="http://www.entrouvert.org/expression/schemas/PasswordAccount.xsd">
<xforms:bind nodeset="yep:email" required="true()"/>
<xforms:bind
nodeset="yep:nextUrl" relevant="false()" type="xsd:anyURI"/>

View File

@ -4,7 +4,7 @@
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xi="http://www.w3.org/2003/XInclude">
<xforms:model id="personModel" schema="/schemas/Person.xsd">
<xforms:model id="personModel" schema="http://www.entrouvert.org/expression/schemas/Person.xsd">
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>
</xforms:model>

View File

@ -3,7 +3,7 @@
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="sessionModel" schema="/schemas/Session.xsd">
<xforms:model id="sessionModel" schema="http://www.entrouvert.org/expression/schemas/Session.xsd">
<!-- <xforms:bind nodeset="." readonly="true()"/> -->
<xforms:bind nodeset="yep:user" relevant="false()"/>
<xforms:submission action="file://tmp/abracadabra-put.xml" method="put" id="submit"/>

View File

@ -2,7 +2,7 @@
<yep:description
xmlns:yep="http://www.entrouvert.org/namespaces/expression/0.0"
xmlns:xforms="http://www.w3.org/2002/xforms">
<xforms:model id="thingModel" schema="/schemas/Thing.xsd">
<xforms:model id="thingModel" schema="http://www.entrouvert.org/expression/schemas/Thing.xsd">
</xforms:model>
<yep:body>

View File

@ -26,8 +26,8 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="/schemas/Spip.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Spip.xsd"/>
<xsd:element name="article" type="Article"/>

View File

@ -26,8 +26,6 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/VirtualHost.xsd"/>
<xsd:element name="configuration" type="Configuration"/>
<xsd:complexType name="Configuration">

View File

@ -27,7 +27,7 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="dbxmlcontainer" type="DBXMLContainer"/>

View File

@ -27,7 +27,7 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="directory" type="Directory"/>

View File

@ -26,7 +26,7 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="election" type="Election"/>

View File

@ -26,8 +26,8 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Identity.xsd"/>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Identity.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="ficheLiaison" type="FicheLiaison"/>

View File

@ -26,8 +26,8 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="/schemas/Spip.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Spip.xsd"/>
<xsd:element name="vote" type="Vote"/>

View File

@ -26,8 +26,8 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Identity.xsd"/>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Identity.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="everybody" type="Everybody"/>

View File

@ -26,7 +26,7 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="http201" type="HttpStatusWithPath"/>
<xsd:element name="http302" type="HttpRedirection"/>

View File

@ -26,9 +26,9 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="/schemas/Person.xsd"/>
<xsd:include schemaLocation="/schemas/Session.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Person.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Session.xsd"/>
<xsd:element name="identity" type="Identity"/>

View File

@ -26,7 +26,7 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="pageSequence" type="PageSequence"/>

View File

@ -26,8 +26,8 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Identity.xsd"/>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Identity.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="passwordAccount" type="PasswordAccount"/>

View File

@ -26,7 +26,7 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="person" type="Person"/>

View File

@ -26,8 +26,8 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Identity.xsd"/>
<xsd:include schemaLocation="/schemas/Thing.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Identity.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Thing.xsd"/>
<xsd:element name="session" type="Session"/>

View File

@ -26,8 +26,8 @@
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="/schemas/Group.xsd"/>
<xsd:include schemaLocation="/schemas/Identity.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Group.xsd"/>
<xsd:include schemaLocation="http://www.entrouvert.org/expression/schemas/Identity.xsd"/>
<xsd:simpleType name="Id">
<xsd:restriction base="xsd:anyURI">

View File

@ -3,6 +3,8 @@
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<!-- XHTML DTDs -->
<public publicId="-//W3C//DTD XHTML 1.0 Frameset//EN"
uri="xhtml1-frameset.dtd"/>
<system systemId="http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"
@ -18,4 +20,34 @@
<system systemId="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
uri="xhtml1-transitional.dtd"/>
<!-- Expression Schemas -->
<system systemId="http://www.entrouvert.org/expression/schemas/Configuration.xsd"
uri="Configuration.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/DBXMLContainer.xsd"
uri="DBXMLContainer.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/Description.xsd"
uri="Description.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/Directory.xsd"
uri="Directory.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/Group.xsd"
uri="Group.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/HttpStatus.xsd"
uri="HttpStatus.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/Identity.xsd"
uri="Identity.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/PasswordAccount.xsd"
uri="PasswordAccount.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/Person.xsd"
uri="Person.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/Session.xsd"
uri="Session.xsd"/>
<system systemId="http://www.entrouvert.org/expression/schemas/Thing.xsd"
uri="Thing.xsd"/>
<!-- Liberty Alliance Schemas -->
<system systemId="http://www.entrouvert.org/expression/schemas/liberty-metadata-v1.0.xsd"
uri="liberty-metadata-v1.0.xsd"/>
</catalog>