0

私は XML と StaX にかなり慣れていません。StaX を使用して、次の XML 名前空間を生成する必要があります。

<?xml version="1.0" encoding="UTF-8"?>
<a xmlns="urn:blah blah"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="urn:blah blah.xsd">
     <other tags go here.../>
</a>

Namespace オブジェクト、QName オブジェクト、eventFactory.createStartElement の使用など、さまざまなことを試しましたが、「xsi:schemaLocation」行が機能しません。

私がこれまでに持っているものは...

    ArrayList<Namespace> nameSpaces = new ArrayList<>();

    Namespace nameSpace2 = eventFactory.createNamespace("xsi",
            "http://www.w3.org/2001/XMLSchema-instance");
    Namespace nameSpace3 = eventFactory.createNamespace("xsi:schemaLocation",
            "urn:blah.xsd");
    Namespace nameSpace1 = eventFactory.createNamespace("urn:blah");

    nameSpaces.add(nameSpace1);
    nameSpaces.add(nameSpace2);
    nameSpaces.add(nameSpace3);

    StartElement startElement = eventFactory.createStartElement(new QName(
            "a"), nameSpaces.iterator(), null);

    eventWriter.add(startElement);
    eventWriter.add(eventFactory.createDTD("\n"));

どんな助けでも大歓迎です...

ありがとう

ラス

4

1 に答える 1