私はRestKitを学んでいます。それが提供する elementToPropertyMapping 機能に出会いました。このマッピングを xml ドキュメントに使用できるかどうか疑問に思っています。それともJSON専用ですか?
チュートリアルでは、JSON フィードを提供していることに気付きました。だから私は混乱しています。また、このマッピング機能を提供する IOS 用の他の XML パーサーはありますか。ありがとう
あなたが見つけたチュートリアルは古くなっています。elementToPropertyMappings は使用されなくなりました。RKObject または RKManagedObject から継承する代わりに、通常の Objective-C クラスを使用し、RKObjectMapping を使用してそれらにデータをマップします。
新しいドキュメントはここにあります。
しかし、そうです、RestKit のオブジェクト マッピングを XML ドキュメントに使用できます。パーサーは MIME タイプを検出し、json ではなく xml パーサーを使用する必要があります。そうでない場合は、リンクされたドキュメントに従ってxmlを使用するように明示的に指示できます。
実際、gitHub のチュートリアルは古くなっていますが、新しいチュートリアルでさえ、RestKit を使用して XML ファイルを効果的にクエリして正しいマッピングを行う方法についてのリファレンスがなく、私のような初心者にとっては非常に混乱します。
クイック リファレンスとして、XML との連携方法を示します。
次のような応答があるとします。
<?xml version="1.0" encoding="UTF-8"?>
<users type="array">
<user>
<id>1</id>
<name>Roberto</name>
<company>Apple</company>
</user>
<user>
<id>2</id>
<name>Carlos</name>
<company>Adobe</company>
</user>
</users>
Objective-C プロジェクトでユーザー クラスをマップする場合は、keyPath に特に注意する必要があります。この場合は、"users" <-最初のタグ、"user" <-2 番目のタグ、およびマップしたい「クラス」。
これには、次を使用します。
[[RKObjectManager sharedManager].mappingProvider setMapping:objectMapping forKeyPath:@"users.user"];
残りについては、このリンクのチュートリアルの最初の部分 (例によるオブジェクト マッピング) を使用すれば問題ありません。
これは、 iOS 向けの非常に優れたxml パーサーの比較です。
通常、この種のマッピングは RestKit で実行できるはずです。xml の複雑さによって異なります。名前空間とエイリアン テクノロジーに依存している場合、RestKit は難しいかもしれません。
プレーン xml の場合、Restkit は問題なく動作します。いくつかのチュートリアル/例と、最後にRestKit API docs . RKXMLParserLibXMLを探します。