code for HL7 domain interfaces - java

I found some sample code at the HL7 web site for defining the interfaces for their Common Terminology Services. It came with some parameters for using ILDJ to convert the sample code into Java, for easy importing into my app.
Can anyone show me where to find similar code samples for their Patient Administration domain? And for other HL7 domains, such as Care Provision, Scheduling, Medical Records, etc.?
At the HL7 web site, this link, I read about the javaSIG version of the V3 HL7 RIM Java API. So I googled one of the package names and found this link on the HL7 web site. But as I examine the files for the javaSIG demo zip, I found that the class files were all dated 2005, which seems completely obsolete, even though it claims to support v3 of the RIM.
I then found this link for the java version of the Everest tool set, which claims to support v3 of the RIM, but it is primarily Canadian and only has 700 downloads.
Tools like HAPI seem to only support v2 of the RIM, which is increasingly obsolete.
Can anyone show me how to find the code for the Java api, included packages such as org.hl7.rim, in a modern format that is v3 compliant? In particular, I want to make sure that I get the api for classes like Encounter, Act, Patient, etc. along with the other classes in the domains listed above. I need access to the class definition code because I need to create an underlying MySQL database to match the class definitions, and also map my current, non-standardized classes to the HL7 RIM API.
I would like to avoid having to reinvent the wheel by rolling my own Java versions of their interfaces, if possible.

similar code samples are not published in the same way for things other than CTS.
For java:
V2: Use the HAPI/MIRTH
v3: there's the Everest Project
CDA: There's MDHT
FHIR: there's java code provided.
I think you're asking about v3 ("care provision domain").
See also http://www.healthintersections.com.au/?p=2029.

Related

How to Implement ABAC Access Control using NGAC

I want to implement ABAC access control model using the Policy Machine or Next Generation Access Control(NGAC), that provide a general and unified framework to support different types of attribute-based policies with its different Components ( PEP, PDP, PAP, PIP). I'm using JAVA as language and i'm seeking for documentation or Github repositories that can help me.
If your primary requirement is to implement an ABAC model and not to specifically use
Policy Machine or NGAC, I can point you to the open source ABAC engine SAPL.
https://sapl.io
On the website you can find full documentation, and links to the github repository with the engine and a wide range of primarily Spring-based demo applications in Java. SAPL implements all the ABAC componets you are looking for (PEP, PDP, PAP, PIP). The engine is extensible and you can plug-in custom domain-specific PIPs. You can use embedded PDPs for performance or remote PDPs for central administration. Disclaimer, I am the lead developer of the engine.
Direct links to:
Engine: https://github.com/heutelbeck/sapl-policy-engine
Example Code: https://github.com/heutelbeck/sapl-demos
Documentation: https://sapl.io/sapl-reference.html
The PM-Master project linked by #c12simple began as a standalone Java project out of NIST called Harmonia.
The implementation here may have some helpful components for you in java.
https://github.com/PM-Master/Harmonia-1.6
As for documentation to help you model ABAC in NGAC, there are some heavy technical documents from the NGAC specifications that may be of some use. They can be pretty dense and dry though.
There were a number of documents that were all consolidated/replaced by INCITS 565. Below is a link to the draft that went out for public comment.
https://standards.incits.org/apps/group_public/download.php/112076/livelink
You can visit https://github.com/PM-Master
You will find out the implementation of policy machine in java as well as in golang.

securesocial.core.Identity missing from SecureSocial library?

I am looking to use OAuth2 in my Play application, and I've been having trouble looking for an entry point in coding for it. SecureSocial seems like a good library to use, but there seems to be a disconnect between SecureSocial's Getting Started guide and the classes that are actually available in their library. Specifically, the guide (here) says to stick this class in as a starting UserService. However, it refers to two classes (securesocial.core.Identity and securesocial.core.IdentityId) that are supposedly in SecureSocial's jar are inexplicably missing.
Does anyone know where I can find these classes (or find some kind of up-to-date guide or really any kind of basic, barebones way to learn OAuth with Play)?
I can't post more than two links so I did not link to the jar's page in the maven repository, but search for securesocial_2.11.
What is published -as of this writing - in Maven for Scala 2.11 is SecureSocial 3.0-M1. The published docs are for the 2.1.x version. Identity was removed and is not needed any more. The idea is that you can specify the type you want to represent users without being forced to inherit or implement any other type.
You can read the online docs to understand some concepts and then use the samples which are updated to use the new API here: https://github.com/jaliss/securesocial/tree/3.0-M1/samples.

Converting / mapping Java code to Dart

My server is written in Java (on GAE). It includes some data classes that I share with an Android client, and would now like to also share with a Dart web client.
By 'share' I mean that I serialize them to JSON and use HTTP or GCM to sync them between client and server.
So, I'm looking for a tool that will generate Dart equivalents for the relevant Java classes, so I don't have to create them manually.
Google Cloud Endpoints does this (converts data classes from GAE languages to client languages) but Dart is not currently amongst the support languages.
I guess GCE could be used to generate js, which could then be used in Dart app, but that is not ideal. So I think this is a possible solution but not an adequate one.
The other problem with this is that the code conversion of is tightly bound to the GCE service - it can't be used independently of GCE and the only way to get GCE to convert your classes is to include them in a GCE interface.
(If they added Dart support to GCE, made the code translator more independent of GCE, and added some features such as an #Ignore attribute, I think it would be very useful!)
The "ad-hoc Java-to-Dart translator" was "written in three days" by Stefan Matthias Aust (last revised on 2014-01-03). The author notes that "there might be errors", and that "I didn't cover annotations and some esotheric[sic] generics syntax."
He provides some useful guidelines for keeping your Java code dart friendly:
"Because Dart doesn't support overloading methods, I strongly recommend to first rename (using your favorite IDE) those methods in Java. I also noticed that Dart doesn't like if types, fields, or methods have the same name. Again, I recommend to rename all such occurrences before translating. He also notes that Dart doesn't support a character type.
You can use this package to generate Dart client code for Google Cloud Endpoints http://pub.dartlang.org/packages/discovery_api_client_generator.
I also successfully used Protocol Buffers for a similar scenario
- http://pub.dartlang.org/search?q=protobuf
- http://pub.dartlang.org/packages/protobuf_builder
See also https://developers.google.com/protocol-buffers/

REST endpoint metadata in java

All
I am looking for some method to show metadata info about RESTful webservice,
e.g. operations, parameters and so on.
Do u know any ?
One popular solution is to use Atom and AtomPub
I hear HTML is popular for representing end point meta data. You have link refs, you have forms for payloads, lots of room for english text to explain things, the format is well documented with a well known processing model.
Some rest endpoints support WADL.
WADL to REST is similar as WSDL to JAX-WS (SOAP).
You can find more about wadl at: http://wadl.java.net/ (including specification link).
Jersey (http://jersey.java.net) is a Oracles JSR-311 Reference implementation and it also have some additional features, like automatic WADL generation, which was recently (version 1.9) improved - it includes XSD schema for transmitted types (that can be used for far better client code generation).
In general, if you want to use some standard, please use WADL and don't reinvent the wheel..
The jax-doclets package can generate javadoc-like documentation from your JAX-RS or JAXB annotations.
http://www.lunatech-labs.com/open-source/jax-doclets
On our projects we currently generate documentation by hand but we are beginning to evaluate this tool.

What's the most convenient way to access Amazon's SimpleDB from Java?

I found at least two libraries. The first one is "typica" (http://code.google.com/p/typica/), the second is the SDK that's provided by Amazon (http://aws.amazon.com/sdkforjava/).
In the newest typica release are two quite identical packages,
com.xerox.amazonws.sdb and com.xerox.amazonws.simpledb. They share a similar naming of classes. How do they differ?
My requirements are rather simple. Nothing fancy. I don't need a JPA mapping or so. Just to get simple data into a domain and out of it with a few lines of code.
Are there more Java APIs for Amazon SimpleDB? Which one should I use?
Just for completeness, I ended up using the SDK provided by Amazon for Java. It can be found here:
http://aws.amazon.com/sdkforjava/
All other client libraries were outdated or had missing functionality.

Categories

Resources