2016-04-08 36 views
5

mlcpを使用してMarkLogicに分割して取り込むJSONの「集約」ファイルがあります。marklogic mlcpカスタム変換分割ファイルを複数のファイルに分割

私はtransform the content during ingestion using javascriptになりたいです。

私のJSONファイルは、次のようなものになります。

{ 
 
    "type": "FeatureCollection", 
 
    "features": [ 
 
    {blobA}, {blobB}, {blobC} ...... 
 
    ] 
 
}

を...と私は、各文書が配列内のアイテムが含まれるようにMLCPて、このファイルを実行したいです。

つまり、1つのドキュメントには{blobA}が含まれ、別のドキュメントには{blobB}が含まれ、別のドキュメントには{blobC} ....などが含まれます。

カスタム.sjsトランスフォームモジュールを作成するにはどうすればよいですか?またための期待される出力形式です

{ uri: string, 
 
    value: node 
 
}

答えて

1

チェックアウトここでは例:元の入力文書は次の形式であることが期待されて http://docs.marklogic.com/guide/mlcp/import#id_26044

各文書。また、mlcpが分割してJSON文書として取り込むようにしたいので、戻り値をdocument-node型にしたいと思うでしょう。

だから、あなたの.sjsはカスタム余談として....モジュールは次のようになります

function splitFeatures(doc) { 
 
    const features = doc.value.toObject().features; 
 
    return xdmp.arrayValues(
 
    features.map(function(feature) { 
 
     return { 
 
     uri: '/path/itemhere-' + xdmp.random() + '.json', 
 
     value: xdmp.toJSON(feature) 
 
     } 
 
    }) 
 
); 
 
} 
 

 
exports.transform = splitFeatures;

変換、これはuseful resource when working with JSON in MarkLogicです。

関連する問題