@@ -318,6 +318,114 @@ result = data.view(
318318display(result)
319319```
320320
321+ </TabItem >
322+ <TabItem value =" java " label =" Java " >
323+
324+ ``` java
325+ import au.csiro.pathling.library.PathlingContext ;
326+ import org.apache.spark.sql.Dataset ;
327+ import org.apache.spark.sql.Row ;
328+ import org.hl7.fhir.r4.model.Enumerations.ResourceType ;
329+ import au.csiro.pathling.library.io.source.NdjsonSource ;
330+
331+ class MyApp {
332+
333+ public static void main (String [] args ) {
334+ PathlingContext pc = PathlingContext . create();
335+ NdjsonSource data = pc. read. ndjson(" s3://somebucket/synthea/ndjson" );
336+
337+ Dataset<Row > result = data. view(ResourceType . PATIENT )
338+ .json(" {\n " +
339+ " \" resource\" : \" Patient\" ,\n " +
340+ " \" select\" : [\n " +
341+ " {\n " +
342+ " \" column\" : [\n " +
343+ " {\n " +
344+ " \" path\" : \" getResourceKey()\" ,\n " +
345+ " \" name\" : \" patient_id\"\n " +
346+ " }\n " +
347+ " ]\n " +
348+ " },\n " +
349+ " {\n " +
350+ " \" forEach\" : \" address\" ,\n " +
351+ " \" column\" : [\n " +
352+ " {\n " +
353+ " \" path\" : \" line.join('\\\\ n')\" ,\n " +
354+ " \" name\" : \" street\"\n " +
355+ " },\n " +
356+ " {\n " +
357+ " \" path\" : \" use\" ,\n " +
358+ " \" name\" : \" use\"\n " +
359+ " },\n " +
360+ " {\n " +
361+ " \" path\" : \" city\" ,\n " +
362+ " \" name\" : \" city\"\n " +
363+ " },\n " +
364+ " {\n " +
365+ " \" path\" : \" postalCode\" ,\n " +
366+ " \" name\" : \" zip\"\n " +
367+ " }\n " +
368+ " ]\n " +
369+ " }\n " +
370+ " ]\n " +
371+ " }" )
372+ .execute();
373+
374+ result. show();
375+ }
376+ }
377+ ```
378+
379+ </TabItem >
380+ <TabItem value =" scala " label =" Scala " >
381+
382+ ``` scala
383+ import au .csiro .pathling .library .PathlingContext
384+ import org .hl7 .fhir .r4 .model .Enumerations .ResourceType
385+
386+ val pc = PathlingContext .create()
387+ val data = pc.read.ndjson(" s3://somebucket/synthea/ndjson" )
388+
389+ val result = data.view(ResourceType .PATIENT )
390+ .json(""" {
391+ "resource": "Patient",
392+ "select": [
393+ {
394+ "column": [
395+ {
396+ "path": "getResourceKey()",
397+ "name": "patient_id"
398+ }
399+ ]
400+ },
401+ {
402+ "forEach": "address",
403+ "column": [
404+ {
405+ "path": "line.join('\\ n')",
406+ "name": "street"
407+ },
408+ {
409+ "path": "use",
410+ "name": "use"
411+ },
412+ {
413+ "path": "city",
414+ "name": "city"
415+ },
416+ {
417+ "path": "postalCode",
418+ "name": "zip"
419+ }
420+ ]
421+ }
422+ ]
423+ }""" )
424+ .execute()
425+
426+ display(result)
427+ ```
428+
321429</TabItem >
322430</Tabs >
323431
0 commit comments