for a multilingual application I need to specify the lang attribute for many elements. To do this I want to import the xml:lang attribute in the schema, which poses a problem for me. Here is the verbose description of the problem:
The typical procedure for defining xml-predefined attributes is to use import in the xsd/tsd:
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
The elements in the XSD are then defined with the additional attribute xml:lang by:
Afterwards I should be able to use elements with the xml:lang attribute, for example
I understand that I need to specify the xml.xsd and safe it within Tamino (in this case we run Tamino 8.0 ) because Tamino does not resolve the namespace as such from the URL. But when I define a simple xsd
<?xml version = "1.0" encoding = "UTF-8"?> <xs:schema targetNamespace = "http://www.w3.org/XML/199 /namespace" elementFormDefault = "qualified" xmlns:tsd = "http://namespaces.softwareag.com/tamino/TaminoSchemaDefinition" xmlns:xs = "http://www.w3.org/2001/XMLSchema"> <xs:annotation> <xs:appinfo> <tsd:schemaInfo name = ""> <tsd:collection name = ""></tsd:collection> </tsd:schemaInfo> </xs:appinfo> </xs:annotation> <xs:attribute name = "lang"></xs:attribute> </xs:schema>
I receive an error when validating it against Tamino (from within the Tamino Schema-Editor)
[1:300] invalid prefix bound to URI 'http://www.w3.org/XML/1998/namespace' only 'xml' allowed.<INOXDE7703,INOXDE7786>
Needless to say that the Oxygen-XML editor tells me that the schema and the imported schema are valid, the instance as well. And the 1:300 (first line column 300 does not even exist) does not help either.
I seem to remember to have seen and used a solution to this problem.
Any ideas are appreciated. Maybe someone knows the reference in the documentation; I seem to overlook it, though I am positive to having seen a solution before.