dart-xmlのビルドとxmlのドキュメントに情報を追加することは可能でしょうか?XmlBuilder.processingはさらに引数を受け入れることができますか?
xml、xsltを構築するには、次の両方がうまく動作します。
builder.processing('xml', 'version="1.0"');
builder.processing('xml-stylesheet', 'type="application/xml"');
XMLを使用した私は、国際化を支援するためにUTF命令を追加したいと思います。
builder.processing('xml', 'version="1.0"', 'encoding="UTF-8"');
//gives error '2 positional arguments expected, but 3 found'
XSLTにリンクしようとすると便利です。
builder.processing('xml-stylesheet', 'type="application/xml"', href="hieroglyph.xsl");
//gives 2 errors; '2 positional arguments expected, but 3 found'
//'Undefined name 'href''
私は、これはdart-xml/lib/xml/grammar.dartと処理()メソッド内で設定されていると思います。
processing() => string(OPEN_PROCESSING)
.seq(ref(nameToken))
.seq(ref(space)
.seq(any().starLazy(string(CLOSE_PROCESSING)).flatten())
.pick(1)
.optional(''))
.seq(string(CLOSE_PROCESSING))
.map((each) => createProcessing(each[1], each[2]));
qualified() => ref(nameToken).map(createQualified);
普通のXML要素は0,1または多くのargsを持つことができますが、これを行うにはどうすればよいでしょうか? 2つ以上の引数を含むようにリストを変更するか、より複雑になり、xsltの場合は 'href'、xsdの場合は他の定義を追加する必要がありますか?
こんにちはRengli、それは動作しません。なんらかの理由で、builder.processingが受け入れることができるargsには限界があります。私は上記で入力したエラーを返します。私は試し続けます。また、ダーツXMLリポジトリに関する一般的な問題を開いて、誰かがアイデアを持っているかどうかを確認したり、時間があるときに入力したりしました。 – lubi
私はこのテストを[GitHub](https://github.com/renggli/dart-xml/commit/dc2adbd3d28abac1b08acf33174c71ca2b7afe44)に追加しました。処理には2つの引数があります。最初の引数はターゲットで、2番目の引数はデータです(例では2つの属性のように見えます)。 –
私はこの仕事をするためにあなたが何をしたのか分かりました。カンマとアポストロフィを削除して、2つの引数を1つに変換してください。これにより、ターゲットとデータ文字列が残ります。 "" xml "、" version = "1.0" '、' encoding = "UTF-8" 'は' 'xml'、 'version = "1.0" encoding = "UTF-8"'になります。 。 – lubi