{"id":1050,"date":"2021-04-01T12:54:12","date_gmt":"2021-04-01T19:54:12","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/azure-sdk\/?p=1050"},"modified":"2021-04-01T15:11:42","modified_gmt":"2021-04-01T22:11:42","slug":"text-analytics-healthcare-batching","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/azure-sdk\/text-analytics-healthcare-batching\/","title":{"rendered":"Text Analytics for analyzing healthcare entities and multiple actions"},"content":{"rendered":"<p><!-- TIPS:\n- Use `SDK` when talking about all of the client libraries.\n- Use `Client libraries\/ry` when talking about individual libraries.\n- Make sure all links do not have Locale, i.e remove `en-us` from all links.\n- All image links need to start with `.\/images\/posts\/*.png` and need to match exact case of the file.\n- Avoid using `here` for link text. Use the title of the link\/file.\n- Please include summary at the end.\n--><\/p>\n<p>We&#8217;re pleased to announce that Text Analytics now supports healthcare analysis and multiple actions analysis in preview.<\/p>\n<ul>\n<li>\n<p><a href=\"#healthcare-entities-analysis\">Healthcare Entities Analysis<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"#multiple-actions-analysis\">Multiple Actions Analysis<\/a><\/p>\n<\/li>\n<\/ul>\n<h2>Healthcare Entities Analysis<\/h2>\n<p>Text Analytics for Healthcare is a containerized service that extracts and labels relevant medical information from unstructured texts such as doctor&#8217;s notes, discharge summaries, clinical documents, and electronic healthcare records.<\/p>\n<p>Text Analytics for Healthcare is in preview. If you are interested in trying it out, please see <a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=ner\">how to use Text Analytics for Healthcare<\/a> to <a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=ner#request-access-to-the-public-preview\">request access<\/a>. Note: Azure Active Directory (AAD) is not currently supported at this stage of the development<\/p>\n<p>Text Analytics for Healthcare supports the following features:<\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=ner#features\">Named entity recognition<\/a>: Detects words and phrases mentioned in unstructured text as entities that can be associated with semantic types in the healthcare and biomedical domain, such as diagnosis, medication name, symptoms\/signs, examinations, treatments, dosage, and route of administration. (For a full list of healthcare entity types and relationships, see the <a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/named-entity-types?tabs=health\">supported entity categories<\/a>.)<\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=entity-linking#features\">Entity data source linking<\/a>: Disambiguates distinct entities by associating named entities mentioned in text to concepts found in a predefined database of concepts including the Unified Medical Language System (UMLS). Medical concepts are also assigned preferred naming as an additional form of normalization.<\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=assertion-detection#features\">Assertion detection<\/a>: The meaning of medical content is highly affected by modifiers, such as negative or conditional assertions which can have critical implications if misrepresented. There are three categories of assertion detection we support for entities in the text:<\/p>\n<ul>\n<li>Certainty &#8211; provides information regarding the presence (present vs. absent) of the concept and how certain the text is regarding its presence (definite vs. possible).<\/li>\n<li>Conditional &#8211; provides information regarding whether the existence of a concept depends on certain conditions.<\/li>\n<li>Association &#8211; describes whether the concept is associated with the subject of the text or someone else.<\/li>\n<\/ul>\n<p>For more information about the assertion output, view <a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=assertion-detection#assertion-output\">assertion output<\/a>.<\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=relation-extraction#features\">Entities relation extraction<\/a>: Relation extraction identifies meaningful connections between concepts mentioned in text. For examples, a &#8220;time of condition&#8221; relation is found by associating a condition name with a time.<\/p>\n<\/li>\n<\/ul>\n<p>In this blog, we&#8217;ll use Java as the primary language to show the healthcare entities analysis feature. To see the complete sample, see <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-java\/blob\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/src\/samples\/java\/com\/azure\/ai\/textanalytics\/lro\/AnalyzeHealthcareEntities.java\">Java sample<\/a>. For more information about other languages, refer to <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-net\/blob\/master\/sdk\/textanalytics\/Azure.AI.TextAnalytics\/samples\/Sample_RecognizeHealthcareEntities.md\">.NET sample<\/a>, <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-js\/blob\/master\/sdk\/textanalytics\/ai-text-analytics\/samples\/v5\/javascript\/beginAnalyzeHealthcareEntities.js\">JS sample<\/a>, <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-python\/blob\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/samples\/sample_analyze_healthcare_entities.py\">Python sample<\/a>.<\/p>\n<h3>An example: Using Text Analytics for Healthcare in Java<\/h3>\n<p>To use Text Analytics for Healthcare, start with creating a Text Analytics client, and then use the client to make a request to the Text Analytics service on the healthcare documents input, which will return the analyzed output that includes the features described above.<\/p>\n<h4>Create a Text Analytics client<\/h4>\n<pre><code class=\"java\">TextAnalyticsClient client = new TextAnalyticsClientBuilder()\n                                 .credential(new AzureKeyCredential(\"{key}\"))\n                                 .endpoint(\"{endpoint}\")\n                                 .buildClient();\n<\/code><\/pre>\n<p>Please see <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-java\/blob\/azure-ai-textanalytics_5.1.0-beta.5\/sdk\/textanalytics\/azure-ai-textanalytics\/README.md#authenticate-the-client\">how to authenticate the client<\/a> for using the Text Analytics service.<\/p>\n<p>Get documents<\/p>\n<pre><code class=\"java\">List&lt;TextDocumentInput&gt; documents = Arrays.asList(\n    new TextDocumentInput(\"0\",\n        \"Woman in NAD with a h\/o CAD, DM2, asthma and HTN on ramipril for 8 years awoke from sleep around\" \n            + \" 2:30 am this morning of a sore throat and swelling of tongue. She came immediately to the ED\" \n            + \" b\/c she was having difficulty swallowing.\"),\n    new TextDocumentInput(\"1\",\n        \"Patient's brother died at the age of 64 from lung cancer. She was admitted for likely gastroparesis\"\n            + \" but remains unsure if she wants to start adjuvant hormonal therapy. Please hold lactulose \"\n            + \"if diarrhea worsen.\"));                              \n<\/code><\/pre>\n<p>Begin a &#8220;healthcare entities analysis&#8221; long-running operation, it might take a few seconds to complete. You would be able to get the operation details in <code>AnalyzeHealthcareEntitiesOperationDetail<\/code> and the final operation result in <code>AnalyzeHealthcareEntitiesResultCollection<\/code>.<\/p>\n<pre><code class=\"java\">SyncPoller&lt;AnalyzeHealthcareEntitiesOperationDetail, PagedIterable&lt;AnalyzeHealthcareEntitiesResultCollection&gt;&gt;\n    syncPoller = client.beginAnalyzeHealthcareEntities(documents, options, Context.NONE);\n\nSystem.out.printf(\"Poller status: %s.%n\", syncPoller.poll().getStatus());\n\nsyncPoller.waitForCompletion();\n<\/code><\/pre>\n<p>To view the operation details,<\/p>\n<pre><code class=\"java\">AnalyzeHealthcareEntitiesOperationDetail operationResult = syncPoller.poll().getValue();\nSystem.out.printf(\"Operation created time: %s, expiration time: %s.%n\", operationResult.getCreatedAt(),\n    operationResult.getExpiresAt());\nSystem.out.printf(\"Poller status: %s.%n\", syncPoller.poll().getStatus());\n<\/code><\/pre>\n<p>To view the final result of the long-running operation.<\/p>\n<pre><code class=\"java\">for (AnalyzeHealthcareEntitiesResultCollection healthcareEntitiesResultCollection : syncPoller.getFinalResult()) {\n    \/\/ documents result\n    for (AnalyzeHealthcareEntitiesResult healthcareEntitiesResult : healthcareEntitiesResultCollection) {\n        System.out.println(\"Document entities: \");\n        \/\/ Recognized healthcare entities\n        for (HealthcareEntity entity : healthcareEntitiesResult.getEntities()) {\n            System.out.printf(\"&bsol;tText: %s, normalized name: %s, category: %s, confidence score: %f.%n\",\n                entity.getText(), entity.getNormalizedText(), entity.getCategory(), entity.getConfidenceScore());\n            \/\/ Assertion detection\n            HealthcareEntityAssertion assertion = entity.getAssertion();\n            if (assertion != null) {\n                System.out.printf(\"&bsol;t&bsol;tEntity assertion: association=%s, certainty=%s, conditionality=%s.%n\",\n                    assertion.getAssociation(), assertion.getCertainty(), assertion.getConditionality());\n            }\n            \/\/ Entity data source linking\n            for (EntityDataSource dataSource : entity.getDataSources()) {\n                System.out.printf(\"&bsol;t&bsol;tEntity ID in data source: %s, data source: %s.%n\",\n                    dataSource.getEntityId(), dataSource.getName());\n            }\n        }\n        \/\/ Relation extraction\n        for (HealthcareEntityRelation entityRelation : healthcareEntitiesResult.getEntityRelations()) {\n            System.out.printf(\"Relation type: %s.%n\", entityRelation.getRelationType());\n            for (HealthcareEntityRelationRole role : entityRelation.getRoles()) {\n                HealthcareEntity entity = role.getEntity();\n                System.out.printf(\"&bsol;tEntity text: %s, category: %s, role: %s.%n\",\n                    entity.getText(), entity.getCategory(), role.getName());\n            }\n        }\n    }\n}\n<\/code><\/pre>\n<h2>Multiple Actions Analysis<\/h2>\n<p>One action represents one single operation that Text Analytics supports, such as the <code>Key Phrase Extraction<\/code> operation would be considered as one action. Text Analytics now provides a way to run multiple actions in one or more documents as a single long-running operation. Currently, Text Analytics for the multiple actions analytics only supports:<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-how-to-entity-linking?tabs=version-3-preview#named-entity-recognition-ner\">Named entities recognition<\/a> <\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-how-to-entity-linking?tabs=version-3-preview#personally-identifiable-information-pii\">Personally Identifiable Information(PII) entities recognition<\/a> <\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-how-to-entity-linking?tabs=version-3-preview#entity-linking\">Linked entities recognition<\/a> <\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-how-to-keyword-extraction\">Key phrases extraction<\/a><\/li>\n<\/ul>\n<p>We&#8217;ll now use Java as the primary language to show the multiple actions analysis feature. To see the full complete sample, see <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-java\/blob\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/src\/samples\/java\/com\/azure\/ai\/textanalytics\/lro\/AnalyzeBatchActions.java\">Java sample<\/a>. For more information about other languages, refer to <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-net\/blob\/master\/sdk\/textanalytics\/Azure.AI.TextAnalytics\/samples\/Sample_AnalyzeBatchActions.md\">.NET sample<\/a>, <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-js\/blob\/master\/sdk\/textanalytics\/ai-text-analytics\/samples\/v5\/javascript\/beginAnalyzeBatchActions.js\">JS sample<\/a>, <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-python\/blob\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/samples\/sample_analyze_batch_actions.py\">Python sample<\/a>.<\/p>\n<h3>An example: Using Text Analytics for Multiple Actions in Java<\/h3>\n<p>We can use the same Text Analytics client we created <a href=\"#create-a-text-analytics-client\">above<\/a> in the healthcare to analyze the documents input. The output will include all action results.<\/p>\n<p>Begin a long-running multiple actions analysis operation.<\/p>\n<pre><code class=\"java\">SyncPoller&lt;AnalyzeBatchActionsOperationDetail, PagedIterable&lt;AnalyzeBatchActionsResult&gt;&gt; syncPoller =\n    client.beginAnalyzeBatchActions(documents,\n        new TextAnalyticsActions().setDisplayName(\"{tasks_display_name}\")\n            .setRecognizeEntitiesOptions(new RecognizeEntitiesOptions())\n            .setExtractKeyPhrasesOptions(new ExtractKeyPhrasesOptions()),\n        new AnalyzeBatchActionsOptions().setIncludeStatistics(false),\n        Context.NONE);\n\nsyncPoller.waitForCompletion();\n<\/code><\/pre>\n<p>To view the final result of long-running operation. An action result could either be an action error or a successful result. That pattern applies to each document result as well.<\/p>\n<pre><code class=\"java\">for (AnalyzeBatchActionsResult actionsResult : syncPoller.getFinalResult()) {\n    System.out.println(\"Entities recognition action results:\");\n    for (RecognizeEntitiesActionResult actionResult : actionsResult.getRecognizeEntitiesActionResults()) {\n        if (!actionResult.isError()) {\n            for (RecognizeEntitiesResult documentResult : actionResult.getResult()) {\n                if (!documentResult.isError()) {\n                    for (CategorizedEntity entity : documentResult.getEntities()) {\n                        System.out.printf(\"Recognized entity: %s, entity category: %s, confidence score: %f.%n\",\n                            entity.getText(), entity.getCategory(), entity.getConfidenceScore());\n                    }\n                } else {\n                    System.out.printf(\"Cannot recognize entities. Error: %s%n\",\n                        documentResult.getError().getMessage());\n                }\n            }\n        } else {\n            System.out.printf(\"Cannot execute Entities Recognition action. Error: %s%n\",\n                actionResult.getError().getMessage());\n        }\n    }\n\n    System.out.println(\"Key phrases extraction action results:\");\n    for (ExtractKeyPhrasesActionResult actionResult : actionsResult.getExtractKeyPhrasesActionResults()) {\n        if (!actionResult.isError()) {\n            for (ExtractKeyPhraseResult documentResult : actionResult.getResult()) {\n                if (!documentResult.isError()) {\n                    System.out.println(\"Extracted phrases:\");\n                    for (String keyPhrases : documentResult.getKeyPhrases()) {\n                        System.out.printf(\"&bsol;t%s.%n\", keyPhrases);\n                    }\n                } else {\n                    System.out.printf(\"Cannot extract key phrases. Error: %s%n\", \n                        documentResult.getError().getMessage());\n                }\n            }\n        } else {\n            System.out.printf(\"Cannot execute Key Phrases Extraction action. Error: %s%n\",\n                actionResult.getError().getMessage());\n        }\n    }\n}\n<\/code><\/pre>\n<h2>Summary<\/h2>\n<p>This article introduced the new Text Analytics library features for <a href=\"https:\/\/docs.microsoft.com\/azure\/cognitive-services\/text-analytics\/how-tos\/text-analytics-for-health?tabs=ner\">healthcare entities analysis<\/a> and multiple actions analysis.<\/p>\n<p>For more information about the features in this article in other programming languages, see the following:<\/p>\n<ul>\n<li>.NET: <a href=\"https:\/\/docs.microsoft.com\/dotnet\/api\/azure.ai.textanalytics?view=azure-dotnet-preview\">Document Reference<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-net\/blob\/master\/sdk\/textanalytics\/Azure.AI.TextAnalytics\/README.md\">README<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-net\/blob\/master\/sdk\/textanalytics\/Azure.AI.TextAnalytics\/samples\/README.md\">Samples<\/a> <\/li>\n<li>Java: <a href=\"https:\/\/docs.microsoft.com\/java\/api\/com.azure.ai.textanalytics?view=azure-java-preview\">Document Reference<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-java\/blob\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/README.md\">README<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-java\/tree\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/src\/samples\">Samples<\/a> <\/li>\n<li>JavaScript: <a href=\"https:\/\/docs.microsoft.com\/javascript\/api\/@azure\/ai-text-analytics\/?view=azure-node-preview\">Document Reference<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-js\/blob\/master\/sdk\/textanalytics\/ai-text-analytics\/README.md\">README<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-js\/blob\/master\/sdk\/textanalytics\/ai-text-analytics\/samples\/v5\/javascript\/README.md\">Samples<\/a> <\/li>\n<li>Python: <a href=\"https:\/\/docs.microsoft.com\/python\/api\/azure-ai-textanalytics\/azure.ai.textanalytics?view=azure-python-preview\">Document Reference<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-python\/blob\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/README.md\">README<\/a> | <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-python\/blob\/master\/sdk\/textanalytics\/azure-ai-textanalytics\/samples\/README.md\">Samples<\/a><\/li>\n<\/ul>\n<p><!-- FOOTER: DO NOT EDIT OR REMOVE --><\/p>\n<p><div  class=\"d-flex justify-content-center\"><a class=\"cta_button_link btn-primary mb-24\" href=\"https:\/\/aka.ms\/azsdk\/releases\" target=\"_blank\">Azure SDK Releases<\/a><\/div><\/p>\n<h2>Azure SDK Blog Contributions<\/h2>\n<p>Thank you for reading this Azure SDK blog post! We hope that you learned something new and welcome you to share this post. We are open to Azure SDK blog contributions. Please contact us at <a href=\"&#109;&#x61;&#105;&#x6c;&#116;&#x6f;&#58;&#x61;z&#115;&#x64;&#107;&#x62;&#108;&#x6f;&#103;&#x40;&#109;&#105;&#x63;&#114;&#x6f;&#115;&#x6f;&#102;&#x74;&#46;&#x63;o&#109;\">&#x61;z&#115;&#x64;&#107;&#x62;&#108;&#x6f;&#103;&#x40;&#109;&#105;&#x63;&#114;&#x6f;&#115;&#x6f;&#102;&#x74;&#46;&#x63;o&#109;<\/a> with your topic and we&#8217;ll get you set up as a guest blogger.<\/p>\n<h2>Azure SDK Links<\/h2>\n<ul>\n<li>Azure SDK Website: <a href=\"https:\/\/aka.ms\/azsdk\">aka.ms\/azsdk<\/a><\/li>\n<li>Azure SDK Intro (3 minute video): <a href=\"https:\/\/aka.ms\/azsdk\/intro\">aka.ms\/azsdk\/intro<\/a><\/li>\n<li>Azure SDK Intro Deck (PowerPoint deck): <a href=\"https:\/\/aka.ms\/azsdk\/intro\/deck\">aka.ms\/azsdk\/intro\/deck<\/a><\/li>\n<li>Azure SDK Releases: <a href=\"https:\/\/aka.ms\/azsdk\/releases\">aka.ms\/azsdk\/releases<\/a><\/li>\n<li>Azure SDK Blog: <a href=\"https:\/\/aka.ms\/azsdk\/blog\">aka.ms\/azsdk\/blog<\/a><\/li>\n<li>Azure SDK Twitter: <a href=\"https:\/\/twitter.com\/AzureSDK\">twitter.com\/AzureSDK<\/a><\/li>\n<li>Azure SDK Design Guidelines: <a href=\"https:\/\/aka.ms\/azsdk\/guide\">aka.ms\/azsdk\/guide<\/a><\/li>\n<li>Azure SDKs &amp; Tools: <a href=\"https:\/\/azure.microsoft.com\/downloads\">azure.microsoft.com\/downloads<\/a><\/li>\n<li>Azure SDK Central Repository: <a href=\"https:\/\/github.com\/azure\/azure-sdk#azure-sdk\">github.com\/azure\/azure-sdk<\/a><\/li>\n<li>Azure SDK for .NET: <a href=\"https:\/\/github.com\/azure\/azure-sdk-for-net\">github.com\/azure\/azure-sdk-for-net<\/a><\/li>\n<li>Azure SDK for Java: <a href=\"https:\/\/github.com\/azure\/azure-sdk-for-java\">github.com\/azure\/azure-sdk-for-java<\/a><\/li>\n<li>Azure SDK for Python: <a href=\"https:\/\/github.com\/azure\/azure-sdk-for-python\">github.com\/azure\/azure-sdk-for-python<\/a><\/li>\n<li>Azure SDK for JavaScript\/TypeScript: <a href=\"https:\/\/github.com\/azure\/azure-sdk-for-js\">github.com\/azure\/azure-sdk-for-js<\/a><\/li>\n<li>Azure SDK for Android: <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-android\">github.com\/Azure\/azure-sdk-for-android<\/a><\/li>\n<li>Azure SDK for iOS: <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-ios\">github.com\/Azure\/azure-sdk-for-ios<\/a><\/li>\n<li>Azure SDK for Go: <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-go\">github.com\/Azure\/azure-sdk-for-go<\/a><\/li>\n<li>Azure SDK for C: <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-c\">github.com\/Azure\/azure-sdk-for-c<\/a><\/li>\n<li>Azure SDK for C++: <a href=\"https:\/\/github.com\/Azure\/azure-sdk-for-cpp\">github.com\/Azure\/azure-sdk-for-cpp<\/a><\/li>\n<\/ul>\n<p><!-- FOOTER: DO NOT EDIT OR REMOVE --><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This article introduces the new Text Analytics features for analyzing healthcare entities and running multiple actions.<\/p>\n","protected":false},"author":56388,"featured_media":1051,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[160,793,792],"class_list":["post-1050","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure-sdk","tag-java","tag-preview","tag-text-analytics"],"acf":[],"blog_post_summary":"<p>This article introduces the new Text Analytics features for analyzing healthcare entities and running multiple actions.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/posts\/1050","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/users\/56388"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/comments?post=1050"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/posts\/1050\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/media\/1051"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/media?parent=1050"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/categories?post=1050"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/azure-sdk\/wp-json\/wp\/v2\/tags?post=1050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}