#ifndef ARABICA_XERCES_PROPERTYNAMES_H #define ARABICA_XERCES_PROPERTYNAMES_H /* * $Id$ */ #include #include namespace Arabica { namespace SAX { template > struct XercesPropertyNames : public PropertyNames { /** \name Xerces properties. * @{ */ /** Used to set and get a fixed schema location for the * parser. * * The syntax is the same as for schemaLocation attributes in * instance documents: e.g, "http://www.example.com * file_name.xsd". The user can specify more than one * XML Schema in the list. * * The XML Schema Recommendation explicitly states that the * inclusion of schemaLocation/ noNamespaceSchemaLocation * attributes in the instance document is only a hint; it does * not mandate that these attributes must be used to locate * schemas. Similar situation happens to element in * schema documents. This property allows the user to specify * a list of schemas to use. If the targetNamespace of a * schema specified using this method matches the * targetNamespace of a schema occurring in the instance * document in schemaLocation attribute, or if the * targetNamespace matches the namespace attribute of * element, the schema specified by the user using this * property will be used (i.e., the schemaLocation attribute * in the instance document or on the element will be * effectively ignored). */ const string_type externalSchemaLocation; /** Used to set and get a fixed no-namespace schema location * for the parser. * * The syntax is the same as for the noNamespaceSchemaLocation * attribute that may occur in an instance document: * e.g."file_name.xsd". * * The XML Schema Recommendation explicitly states that the * inclusion of schemaLocation/ noNamespaceSchemaLocation * attributes in the instance document is only a hint; it does * not mandate that these attributes must be used to locate * schemas. This property allows the user to specify the no * target namespace XML Schema Location externally. If * specified, the instance document's * noNamespaceSchemaLocation attribute will be effectively * ignored. */ const string_type externalNoNamespaceSchemaLocation; /** @} */ XercesPropertyNames() : externalSchemaLocation(string_adaptor_type::construct_from_utf8( "http://apache.org/xml/properties/schema/external-schemaLocation")), externalNoNamespaceSchemaLocation(string_adaptor_type::construct_from_utf8( "http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation")) { } // XercesPropertyNames() }; // class XercesPropertyNames } // namespace SAX } // namespace Arabica #endif // end of file