Search in sources :

Example 1 with MetadataOptions

use of com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.MetadataOptions in project java-sdk by watson-developer-cloud.

the class NaturalLanguageUnderstandingIT method analyzeHtmlForMetadataIsSuccessful.

/**
 * Analyze html input for metadata.
 *
 * @throws Exception the exception
 */
@Test
public void analyzeHtmlForMetadataIsSuccessful() throws Exception {
    String testHtmlFileName = "src/test/resources/natural_language_understanding/testArticle.html";
    String html = getStringFromInputStream(new FileInputStream(testHtmlFileName));
    String fileTitle = "This 5,000-year-old recipe for beer actually sounds pretty tasty";
    String fileDate = "2016-05-23T20:13:00";
    String fileAuthor = "Annalee Newitz";
    Features features = new Features.Builder().metadata(new MetadataOptions()).build();
    AnalyzeOptions parameters = new AnalyzeOptions.Builder().html(html).features(features).returnAnalyzedText(true).build();
    AnalysisResults results = service.analyze(parameters).execute();
    assertNotNull(results);
    assertEquals(results.getLanguage(), "en");
    assertNotNull(results.getMetadata());
    MetadataResult result = results.getMetadata();
    assertNotNull(result.getTitle());
    assertEquals(result.getTitle(), fileTitle);
    assertNotNull(result.getPublicationDate());
    assertEquals(result.getPublicationDate(), fileDate);
    assertNotNull(result.getAuthors());
    List<Author> authors = result.getAuthors();
    assertEquals(authors.size(), 1);
    assertEquals(authors.get(0).getName(), fileAuthor);
}
Also used : AnalyzeOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.AnalyzeOptions) MetadataOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.MetadataOptions) AnalysisResults(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.AnalysisResults) Author(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.Author) Features(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.Features) FileInputStream(java.io.FileInputStream) MetadataResult(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.MetadataResult) WatsonServiceTest(com.ibm.watson.developer_cloud.WatsonServiceTest) Test(org.junit.Test)

Example 2 with MetadataOptions

use of com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.MetadataOptions in project java-sdk by watson-developer-cloud.

the class NaturalLanguageUnderstandingTest method testModelOptions.

/**
 * Test some of the model constructors. pump up the code coverage numbers
 *
 * @throws InterruptedException the interrupted exception
 */
@Test
public void testModelOptions() throws InterruptedException {
    Features features = new Features.Builder().concepts(null).categories(null).emotion(null).entities(null).keywords(null).metadata(null).relations(null).semanticRoles(null).sentiment(null).build();
    // AnalyzeOptions
    AnalyzeOptions analyzeOptions = new AnalyzeOptions.Builder().text("text").html("html").url("url").features(features).clean(true).xpath("xpath").fallbackToRaw(false).returnAnalyzedText(true).language("language").build();
    assertEquals(analyzeOptions.text(), "text");
    assertEquals(analyzeOptions.html(), "html");
    assertEquals(analyzeOptions.url(), "url");
    assertEquals(analyzeOptions.features(), features);
    assertEquals(analyzeOptions.clean(), true);
    assertEquals(analyzeOptions.xpath(), "xpath");
    assertEquals(analyzeOptions.fallbackToRaw(), false);
    assertEquals(analyzeOptions.returnAnalyzedText(), true);
    assertEquals(analyzeOptions.language(), "language");
    analyzeOptions.newBuilder();
    // CategoriesOptions
    CategoriesOptions categoriesOptions = new CategoriesOptions();
    assertNotNull(categoriesOptions);
    // EmotionOptions
    List<String> emotionOptionsTargets = new ArrayList<>(Arrays.asList("target1", "target2"));
    EmotionOptions emotionOptions = new EmotionOptions.Builder().document(true).targets(emotionOptionsTargets).addTargets("target3").build();
    emotionOptionsTargets.add("target3");
    assertEquals(emotionOptions.document(), true);
    assertEquals(emotionOptions.targets(), emotionOptionsTargets);
    emotionOptions.newBuilder();
    // EntitiesOptions
    EntitiesOptions entitiesOptions = new EntitiesOptions.Builder().emotion(true).limit(10).model("model").sentiment(false).mentions(false).build();
    assertEquals(entitiesOptions.emotion(), true);
    assertEquals(entitiesOptions.limit(), 10, 0);
    assertEquals(entitiesOptions.model(), "model");
    assertEquals(entitiesOptions.sentiment(), false);
    assertEquals(entitiesOptions.mentions(), false);
    entitiesOptions.newBuilder();
    // Features
    assertEquals(features.categories(), null);
    assertEquals(features.concepts(), null);
    assertEquals(features.emotion(), null);
    assertEquals(features.entities(), null);
    assertEquals(features.keywords(), null);
    assertEquals(features.metadata(), null);
    assertEquals(features.relations(), null);
    assertEquals(features.semanticRoles(), null);
    assertEquals(features.sentiment(), null);
    features.newBuilder();
    // KeywordsOptions
    KeywordsOptions keywordsOptions = new KeywordsOptions.Builder().emotion(true).limit(10).sentiment(false).build();
    assertEquals(keywordsOptions.emotion(), true);
    assertEquals(keywordsOptions.limit(), 10, 0);
    assertEquals(keywordsOptions.sentiment(), false);
    keywordsOptions.newBuilder();
    // MetadataOptions
    MetadataOptions metadataOptions = new MetadataOptions();
    assertNotNull(metadataOptions);
    // RelationsOptions
    RelationsOptions relationsOptions = new RelationsOptions.Builder().model("model").build();
    assertEquals(relationsOptions.model(), "model");
    relationsOptions.newBuilder();
    // SemanticRolesOptions
    SemanticRolesOptions semanticRolesOptions = new SemanticRolesOptions.Builder().entities(true).keywords(false).limit(10).build();
    assertEquals(semanticRolesOptions.entities(), true);
    assertEquals(semanticRolesOptions.keywords(), false);
    assertEquals(semanticRolesOptions.limit(), 10, 0);
    semanticRolesOptions.newBuilder();
    // SentimentOptions
    List<String> optionsTargets = new ArrayList<>(Arrays.asList("target1", "target2"));
    SentimentOptions sentimentOptions = new SentimentOptions.Builder().document(true).targets(optionsTargets).addTargets("target3").build();
    optionsTargets.add("target3");
    assertEquals(sentimentOptions.document(), true);
    assertEquals(sentimentOptions.targets(), optionsTargets);
    sentimentOptions.newBuilder();
}
Also used : CategoriesOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.CategoriesOptions) SentimentOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.SentimentOptions) AnalyzeOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.AnalyzeOptions) MetadataOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.MetadataOptions) EmotionOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.EmotionOptions) ArrayList(java.util.ArrayList) EntitiesOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.EntitiesOptions) RelationsOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.RelationsOptions) Features(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.Features) SemanticRolesOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.SemanticRolesOptions) KeywordsOptions(com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.KeywordsOptions) WatsonServiceUnitTest(com.ibm.watson.developer_cloud.WatsonServiceUnitTest) Test(org.junit.Test)

Aggregations

AnalyzeOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.AnalyzeOptions)2 Features (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.Features)2 MetadataOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.MetadataOptions)2 Test (org.junit.Test)2 WatsonServiceTest (com.ibm.watson.developer_cloud.WatsonServiceTest)1 WatsonServiceUnitTest (com.ibm.watson.developer_cloud.WatsonServiceUnitTest)1 AnalysisResults (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.AnalysisResults)1 Author (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.Author)1 CategoriesOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.CategoriesOptions)1 EmotionOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.EmotionOptions)1 EntitiesOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.EntitiesOptions)1 KeywordsOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.KeywordsOptions)1 MetadataResult (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.MetadataResult)1 RelationsOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.RelationsOptions)1 SemanticRolesOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.SemanticRolesOptions)1 SentimentOptions (com.ibm.watson.developer_cloud.natural_language_understanding.v1.model.SentimentOptions)1 FileInputStream (java.io.FileInputStream)1 ArrayList (java.util.ArrayList)1