XSLT转换类型在XS中声明:导入架构



我需要将代表Java DTO的XSD转换为HTML。主要目标是即使常规输入失败,也允许在生产中填充对象。(即,它不需要漂亮(

我找到了https://github.com/michielcm/xsd2html2xml,它应该完全做我想要的,但不幸的是没有。

我的问题是:如果我有这样的源模式:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
       xmlns:c="http://www.trivia/commonTypes/v1_0"
       targetNamespace="http://www.trivia/v1_0" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:import schemaLocation="comm.xsd" namespace="http://www.trivia/commonTypes/v1_0" />
<xs:element name="common" type="c:typeAddress"/>
<xs:element name="local" type="typeAddress"/>
<xs:element name="simple" type="xs:string"/>
<xs:complexType name="typeAddress">
    <xs:sequence>
        <xs:element name="city" minOccurs="0">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:maxLength value="40" />
                </xs:restriction>
            </xs:simpleType>
        </xs:element>
    </xs:sequence>
</xs:complexType>

简单和本地元素按预期进行了转换,但共同元素不是。为了示例,Comm.xsd包含一个键入的副本。

问题是如何引用XSL转换中用导入语句声明的类型?

执行从源XSD文档开始的任何类型的处理是一项艰巨的任务,因为有很多表达内容的方法:您需要处理命名属性群体或模型组,以便例子?XS:重新定义呢?您始终可以扩展一些类似的软件来处理另一种情况,但是您正在上坡自动扶梯上:在完成之前,总会有很多事情要做。我的建议是,不要这样做。使用可让您访问模式处理器构建的内部模式组件模型的API。Xerces处理器通过Java API揭露了此信息,Saxon处理器将其视为XML文档(称为SCM文件(。无论哪种方式

最新更新