Ubuntu 14.10を使用していますが、lubuntuデスクトップ(LXDE)を手動でインストールしています。私はGladeを使用してPythonアプリケーションのUIを設計しました。XMLファイルで属性(<attribute>
)を使用しない限り、すべてが正常に機能しています。使用する場合は、 add_from_file
を呼び出すと、次のようになります。
gi._glib.GError: <input>:18:41 <attribute> requires attribute "value"
18行目は、ファイル内で最初に出現する<attribute>
タグであり、次のようになります:<attribute name="weight">bold</attribute>
。
私のPythonバージョンは3.4.3
です。
この問題を解決するにはどうすればよいですか?
エラーメッセージにあるように、value
という名前の属性を追加する必要があります。
<attribute name="weight" value="bold" />
あなたの定義では
<attribute name="weight">bold</attribute>
name
という名前の属性は1つだけです。開始タグと終了タグの間のテキストは属性ではありません。タグ名attribute
は、タグに必要な属性とは何の関係もありません。
有効なXMLファイルの構造は、DTDファイルで定義されています。
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD XML Catalogs V1.0//EN" "file:///usr/share/xml/schema/xml-core/catalog.dtd">
この定義では、とりわけ、タグに必要な属性が定義されています。 XMLファイルがこれらの定義を満たさない場合、それは無効です。この特定のケースでは、Gladeのバグ(無効なXMLを生成する)であるか、XMLドキュメントが事前に検証されていない可能性があります。