Creating events with natural language processing has never been easier than with ApexNLP, a powerful deterministic rule-based system. This tool is designed to recognize and normalize various formats of event expressions seamlessly. Whether you’re scheduling that family dine-out or organizing piano lessons, ApexNLP makes the process incredibly user-friendly.
Overview
ApexNLP is not just another datetime parser. Instead, it combines the joys of natural language processing with event creation, allowing you to track complex schedules like:
- Family Dine Out on the 2nd Friday of every month at 6-9 PM
- Meet John on Monday at the Mall
- Tennis on Mondays, Tuesdays, Fridays at 10 AM
- Paying bills day repeats on the 3rd Tuesday of each month
- Piano lessons Tuesdays and Thursdays at 5-6 PM from 12/1 to 2/23
- Meeting with John tomorrow every day until 12.10.2018
But how does it work? Think of ApexNLP like a translator on a bustling international road of languages. Instead of translating from one language to another, it translates your everyday expressions into structured event data. For example, when you say “Lunch at noon for 30 minutes,” ApexNLP knows to turn that into:
title : Lunch, location : , startDateTime : 2017-04-13 12:00, endDateTime : 2017-04-13 12:30, isAllDay : false, recurrence : null
Installation
To get started with ApexNLP, you need to add the required repositories and libraries in your project:
groovy
repositories {
maven {
url http://dl.bintray.com/6thsolution/apexnlp
}
}
dependencies {
// ApexNLP core library
compile com.sixthsolution.apex:apex:0.1.0-alpha1
// NLP for English
compile com.sixthsolution.apex:english-nlp:0.1.0-alpha1
// ThreeTen
compile org.threeten:threetenbp:1.3.3
}
Note: If you’re using Android, remember to replace the ThreeTen dependency with ThreeTenABP.
Example Usage
Here’s how you can implement ApexNLP in your Android application:
javapublic class ExampleApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
Apex.init(new Apex.ApexBuilder()
.addParser(en, new EnglishParser())
.build());
}
public class ExampleActivity extends Activity {
public Event getEvent(String sentence) {
return Apex.nlp(en, sentence);
}
}
}
Troubleshooting
When using ApexNLP, you might encounter some challenges. Here are some common issues and their solutions:
- If you’re not getting the expected event output, double-check your input sentence for correctness and clarity. Misinterpretations can often stem from unclear language.
- If you are experiencing integration issues, make sure all dependencies are correctly included and that there are no version conflicts with your IDE.
- For missing functionalities or direct trouble with the library, refer to the [GitHub Issues](https://github.com/6thsolution/ApexNLP/issues) page for discussions and fixes from the community.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Conclusion
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

